From mboxrd@z Thu Jan 1 00:00:00 1970 Received: (qmail 22222 invoked from network); 30 May 2020 19:22:34 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 30 May 2020 19:22:34 -0000 Content-Type: multipart/mixed; boundary="===============6136341628768355111==" 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: Sat, 30 May 2020 21:22:33 +0200 List-Id: Message-ID: <20200530192233.Eh8wjpkN6_QpTXRA3PdPG9Uzigwd58a1xXY5FgHjAi4@z> GitHub notification mails are now in MIME to allow UTF8. --===============6136341628768355111== 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= --===============6136341628768355111== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-gedit-21382.patch" RnJvbSBhNzJlMzYzOTkwMDA0MjgzMjMyYjRmNTQyMDcwNjI5NmNjYjI4OWUzIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBX ZWQsIDI5IEFwciAyMDIwIDE1OjQ5OjE2ICswNjAwClN1YmplY3Q6IFtQQVRDSCAwMS81Ml0gZ25v bWUtZGVza3RvcDogdXBkYXRlIHRvIDMuMzYuMi4KCi0tLQogY29tbW9uL3NobGlicyAgICAgICAg ICAgICAgICAgIHwgMiArLQogc3JjcGtncy9nbm9tZS1kZXNrdG9wL3RlbXBsYXRlIHwgOCArKysr LS0tLQogMiBmaWxlcyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDUgZGVsZXRpb25zKC0pCgpk aWZmIC0tZ2l0IGEvY29tbW9uL3NobGlicyBiL2NvbW1vbi9zaGxpYnMKaW5kZXggM2YwZjAwNTJi NmYuLjllOWRmYjY5MWE5IDEwMDY0NAotLS0gYS9jb21tb24vc2hsaWJzCisrKyBiL2NvbW1vbi9z aGxpYnMKQEAgLTExNzgsNyArMTE3OCw3IEBAIGxpYmdzdGJhc2VjYW1lcmFiaW5zcmMtMS4wLnNv 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 Z2lyIgogYnVpbGRfb3B0aW9uc19kZWZhdWx0PSJnaXIiCgpGcm9tIGZmNzNhNGI4NDg2Zjc5YjBh MzJhOTJkOTA4YjFiZGM3ZTcyODY2NjggTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5h ZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFN1biwgMyBNYXkgMjAyMCAxMzoxNzow NyArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMDIvNTJdIGdub21lLXNlc3Npb246IHVwZGF0ZSB0byAz LjM2LjAuCgotLS0KIHNyY3BrZ3MvZ25vbWUtc2Vzc2lvbi90ZW1wbGF0ZSB8IDEwICsrKysrKyst LS0KIDEgZmlsZSBjaGFuZ2VkLCA3IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpkaWZm IC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1zZXNzaW9uL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1z ZXNzaW9uL3RlbXBsYXRlCmluZGV4IDQ0NDRmMTYyYmYxLi44OGRlZTIwZWI2ZSAxMDA2NDQKLS0t IGEvc3JjcGtncy9nbm9tZS1zZXNzaW9uL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtc2Vz c2lvbi90ZW1wbGF0ZQpAQCAtMSw5ICsxLDkgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21l LXNlc3Npb24nCiBwa2duYW1lPWdub21lLXNlc3Npb24KLXZlcnNpb249My4zNC4xCit2ZXJzaW9u PTMuMzYuMAogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9bWVzb24KLWNvbmZpZ3VyZV9hcmdzPSIt RHN5c3RlbWRfam91cm5hbD1mYWxzZSIKK2NvbmZpZ3VyZV9hcmdzPSItRHN5c3RlbWRfc2Vzc2lv bj1kaXNhYmxlIC1Ec3lzdGVtZF9qb3VybmFsPWZhbHNlIgogaG9zdG1ha2VkZXBlbmRzPSJnbGli LWRldmVsIGludGx0b29sIHBrZy1jb25maWcgeG1sdG8iCiBtYWtlZGVwZW5kcz0iZWxvZ2luZC1k ZXZlbCBnbm9tZS1kZXNrdG9wLWRldmVsIGd0ayszLWRldmVsIGpzb24tZ2xpYi1kZXZlbAogIGxp YmdsaWItZGV2ZWwgbGliSUNFLWRldmVsIGxpYlNNLWRldmVsIGxpYlh0c3QtZGV2ZWwgc3RhcnR1 cC1ub3RpZmljYXRpb24tZGV2ZWwKQEAgLTE1LDQgKzE1LDggQEAgbWFpbnRhaW5lcj0iRW5ubyBC b2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIs IExHUEwtMi4xLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9H Tk9NRS9nbm9tZS1zZXNzaW9uIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0v JHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09ZDc4 MDFmZTJkNWE3NTFiMTljYjU4MDgxNzcxMzE2YTc2YWFiZDVjNTUwY2Q1OGQ0ZTRjNmE1YTRlZDM1 NjY2MAorY2hlY2tzdW09ZDU0YjM4YjgxOGM4MTJmNjRiODJjYzZhMTI3OWUzY2E1YTZlMzkxZWU2 NjI3OTMzMjJhMzhjYWI1NjcwYmI3YQorCitwb3N0X2luc3RhbGwoKSB7CisJcm0gLXJmICR7REVT VERJUn0vdXNyL2xpYi9zeXN0ZW1kCit9CgpGcm9tIGFiMDc3NmZmZTljZWIyZTlhYjEzNDFjZDcy NjA5NWRmN2RlYjEzYmIgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFi aWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IE1vbiwgMjcgQXByIDIwMjAgMTI6MjA6MTUgKzA2MDAK U3ViamVjdDogW1BBVENIIDAzLzUyXSBuYXV0aWx1czogdXBkYXRlIHRvIDMuMzYuMy4KCi0tLQog c3JjcGtncy9uYXV0aWx1cy90ZW1wbGF0ZSB8IDYgKysrLS0tCiAxIGZpbGUgY2hhbmdlZCwgMyBp bnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbmF1dGls dXMvdGVtcGxhdGUgYi9zcmNwa2dzL25hdXRpbHVzL3RlbXBsYXRlCmluZGV4IDUzN2E4NTE5NzNm Li45NGNiMTA0OTJjYSAxMDA2NDQKLS0tIGEvc3JjcGtncy9uYXV0aWx1cy90ZW1wbGF0ZQorKysg Yi9zcmNwa2dzL25hdXRpbHVzL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBm aWxlIGZvciAnbmF1dGlsdXMnCiBwa2duYW1lPW5hdXRpbHVzCi12ZXJzaW9uPTMuMzYuMS4xCit2 ZXJzaW9uPTMuMzYuMwogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9bWVzb24KIGJ1aWxkX2hlbHBl cj0iZ2lyIgpAQCAtMTYsOCArMTYsOCBAQCBzaG9ydF9kZXNjPSJHTk9NRSBmaWxlIG1hbmFnZXIi CiBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5z ZT0iR1BMLTIuMC1vci1sYXRlciwgTEdQTC0yLjEtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6 Ly93aWtpLmdub21lLm9yZy9OYXV0aWx1cyIKLWRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3Br Z25hbWV9LyR7dmVyc2lvbjo6NH0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNr c3VtPWY5MjUyZjUwODIxMWQ5ZjM2OGE0OWRiNjk3ODkwZjg5NWQwODBmMDk1OTBhZWNhZjMzODAz YTUxOWRlZjdiZGUKK2Rpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lv biUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKK2NoZWNrc3VtPWI2Y2FmYzdhYjFl NzBhNjQzODNkZTM5MWI2MDk3ZmNjY2JmMzZiMjA4Zjg1MDJkOGM0NjQyMzIyNGZkMzBlZjgKIAog YnVpbGRfb3B0aW9ucz0iZ2lyIgogYnVpbGRfb3B0aW9uc19kZWZhdWx0PSJnaXIiCgpGcm9tIDkw ZTlmOTFmNWM3NGJmODZkYjgxMGQ3NmRhMzZmODhjMDEzYzllNjUgTW9uIFNlcCAxNyAwMDowMDow MCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IE1vbiwgMjcg QXByIDIwMjAgMTI6MjY6MDQgKzA2MDAKU3ViamVjdDogW1BBVENIIDA0LzUyXSBnbm9tZS0yMDQ4 OiB1cGRhdGUgdG8gMy4zNi4zLgoKLS0tCiBzcmNwa2dzL2dub21lLTIwNDgvdGVtcGxhdGUgfCA0 ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpk aWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS0yMDQ4L3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS0y MDQ4L3RlbXBsYXRlCmluZGV4IGI1OWNjZjZkZTQ2Li5lNDRmNjgwN2UyNCAxMDA2NDQKLS0tIGEv c3JjcGtncy9nbm9tZS0yMDQ4L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtMjA0OC90ZW1w bGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLTIwNDgnCiBw a2duYW1lPWdub21lLTIwNDgKLXZlcnNpb249My4zNi4wCit2ZXJzaW9uPTMuMzYuMwogcmV2aXNp b249MQogYnVpbGRfc3R5bGU9bWVzb24KIGhvc3RtYWtlZGVwZW5kcz0iZ2V0dGV4dCBnbGliLWRl dmVsIGl0c3Rvb2wgcGtnLWNvbmZpZyB2YWxhIgpAQCAtMTEsNCArMTEsNCBAQCBtYWludGFpbmVy PSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTMuMC1v ci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL0FwcHMvMjA0OCIKIGRp c3RmaWxlcz0iJHtHTk9NRV9TSVRFfS9nbm9tZS0yMDQ4LyR7dmVyc2lvbiUuKn0vZ25vbWUtMjA0 OC0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTFiNzkwZjE0NWQwYmQ2N2E1MzM5YzE2YTcw Njc0ODA3MzQ0ZWQxMTgzMWU4YzAyNDVlZDMxOTU2YjRiMzgyODEKK2NoZWNrc3VtPTEwZDRiMDNi NDNmYjY5MTdlM2E0ZTdlM2Q5NDlkZWE0YzY3ODRmZDA2NjJiM2RmOTE4M2M5ZTdhYzE1ZTM3NzAK CkZyb20gMDgzMjI4YTE1ZjZlNDA2YmExMTVjZmRlMDk1ZDBlNTRjNDkzMDE4OCBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTog TW9uLCAyNyBBcHIgMjAyMCAxMjo0MzowMiArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMDUvNTJdIGdu b21lLW11c2ljOiB1cGRhdGUgdG8gMy4zNi4yLgoKLS0tCiBzcmNwa2dzL2dub21lLW11c2ljL3Rl bXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0 aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtbXVzaWMvdGVtcGxhdGUgYi9zcmNw a2dzL2dub21lLW11c2ljL3RlbXBsYXRlCmluZGV4IDEyNTExNzM2NDA3Li44MDJiY2VhODkxZiAx MDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1tdXNpYy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2du b21lLW11c2ljL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAn Z25vbWUtbXVzaWMnCiBwa2duYW1lPWdub21lLW11c2ljCi12ZXJzaW9uPTMuMzYuMQordmVyc2lv bj0zLjM2LjIKIHJldmlzaW9uPTEKIGJ1aWxkX2hlbHBlcj0iZ2lyIgogYnVpbGRfc3R5bGU9bWVz b24KQEAgLTE1LDUgKzE1LDUgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lk bGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6 Ly93aWtpLmdub21lLm9yZy9BcHBzL011c2ljIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7 cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hl Y2tzdW09N2I4MGY2MzBkMTU4MzM0OTM1YTg3NjAyOTY1NTBjYzkxYjUwZDYwNGZhNjhiNDAyZmU1 MTY1YjE1MzFlYzMzMgorY2hlY2tzdW09YWJhZDQxM2FlYmZhOGY4MTQxYWJjNzE2NDgwOWU4YzQ2 NzdmOGI2NTM4Zjg5MjEyODE5M2UwOTdlMGU5ODJhNQogbGliMzJkaXNhYmxlZD15ZXMKCkZyb20g MTgxZjEyZmExNTM0NWIwNjhmNGZlMmRjYTU3YTNjMjgwNzg5ZjJjMyBNb24gU2VwIDE3IDAwOjAw OjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogTW9uLCAy NyBBcHIgMjAyMCAxMzowMjo0NyArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMDYvNTJdIGRldmhlbHA6 IHVwZGF0ZSB0byAzLjM2LjIuCgotLS0KIHNyY3BrZ3MvZGV2aGVscC90ZW1wbGF0ZSB8IDQgKyst LQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYg LS1naXQgYS9zcmNwa2dzL2RldmhlbHAvdGVtcGxhdGUgYi9zcmNwa2dzL2RldmhlbHAvdGVtcGxh dGUKaW5kZXggYTFjMmRjYmI3NjIuLmJhNzVkZmZkY2U3IDEwMDY0NAotLS0gYS9zcmNwa2dzL2Rl dmhlbHAvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9kZXZoZWxwL3RlbXBsYXRlCkBAIC0xLDYgKzEs NiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZGV2aGVscCcKIHBrZ25hbWU9ZGV2aGVscAotdmVy c2lvbj0zLjM2LjEKK3ZlcnNpb249My4zNi4yCiByZXZpc2lvbj0xCiBidWlsZF9oZWxwZXI9Imdp ciIKIGJ1aWxkX3N0eWxlPW1lc29uCkBAIC0xMSw3ICsxMSw3IEBAIG1haW50YWluZXI9IkVubm8g Qm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVy IgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcvQXBwcy9EZXZoZWxwIgogZGlzdGZp bGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7 dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09NGNmOGVjOTMwMmJjNGE3OWUwMWFjNTNiZDljOGI5 NWE1OTZmNzFmMzUzNTFmNDhiNjMyNjMyMjdmMDlhOGEzZAorY2hlY2tzdW09OGI1YTg0MzE5ZWZi YjJlZjFiYzQwMjJlZTNlZDJkNjY3ODc5NGViYTJkZmE5OTNlNTBlMDNkNmU3YjkzMGM1ZQogCiBk ZXZoZWxwLWRldmVsX3BhY2thZ2UoKSB7CiAJc2hvcnRfZGVzYys9IiAtIGRldmVsb3BtZW50IGZp bGVzIgoKRnJvbSA0ZDlkZjhhNzdlMTc0MzM3NTFkMDRlNGU5MjIzNmZlYjIxOWUwOTM1IE1vbiBT ZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpE YXRlOiBNb24sIDI3IEFwciAyMDIwIDEzOjE3OjQyICswNjAwClN1YmplY3Q6IFtQQVRDSCAwNy81 Ml0gZW9nOiB1cGRhdGUgdG8gMy4zNi4yLgoKLS0tCiBzcmNwa2dzL2VvZy90ZW1wbGF0ZSB8IDQg KystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRp ZmYgLS1naXQgYS9zcmNwa2dzL2VvZy90ZW1wbGF0ZSBiL3NyY3BrZ3MvZW9nL3RlbXBsYXRlCmlu ZGV4IGY1MzQwMDAwZWI1Li4yNzYzOTljYTJjYyAxMDA2NDQKLS0tIGEvc3JjcGtncy9lb2cvdGVt cGxhdGUKKysrIGIvc3JjcGtncy9lb2cvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBs YXRlIGZpbGUgZm9yICdlb2cnCiBwa2duYW1lPWVvZwotdmVyc2lvbj0zLjM2LjEKK3ZlcnNpb249 My4zNi4yCiByZXZpc2lvbj0xCiBidWlsZF9oZWxwZXI9ImdpciIKIGJ1aWxkX3N0eWxlPW1lc29u CkBAIC0xNCw3ICsxNCw3IEBAIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxp bnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8v d2lraS5nbm9tZS5vcmcvQXBwcy9FeWVPZkdub21lIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9 L2VvZy8ke3ZlcnNpb24lLip9L2VvZy0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPWU0NTRh MWE3YWE1ZTNhMzMyMWVhYjAxMTY3NzgxMTBlNWE3YTdiNjNiY2YyMTY3NmVkYTFhN2JlMTg3Yzlj OTUKK2NoZWNrc3VtPTVjMDU2YjAyOTVhOGUwNmQwOTNiOGZjNjBiMTBlMmE4YzE5YWJkYjdiZWFl MWM3ZTdlMDU5NWVjZTJlMWI3OGMKIHNobGliX3Byb3ZpZGVzPSJsaWJlb2cuc28iCiBsaWIzMmRp c2FibGVkPXllcwogCgpGcm9tIDQ5NmY2YzUwYmVlMDczNGE3YjhiMzQ5Y2IzNDlkOGJmMWE4OGZl NmMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9v ay5jb20+CkRhdGU6IFdlZCwgMjkgQXByIDIwMjAgMTY6MDg6MjMgKzA2MDAKU3ViamVjdDogW1BB VENIIDA4LzUyXSBldmluY2U6IHVwZGF0ZSB0byAzLjM2LjEuCgotLS0KIHNyY3BrZ3MvZXZpbmNl L3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRl bGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZXZpbmNlL3RlbXBsYXRlIGIvc3JjcGtn cy9ldmluY2UvdGVtcGxhdGUKaW5kZXggYzMzN2EyNjZjZTAuLmY1ZGZkZGFiMzZhIDEwMDY0NAot LS0gYS9zcmNwa2dzL2V2aW5jZS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2V2aW5jZS90ZW1wbGF0 ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2V2aW5jZScKIHBrZ25hbWU9 ZXZpbmNlCi12ZXJzaW9uPTMuMzYuMAordmVyc2lvbj0zLjM2LjEKIHJldmlzaW9uPTEKIGJ1aWxk X2hlbHBlcj0iZ2lyIgogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQpAQCAtMTksNyArMTksNyBA QCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5z ZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL0Fw cHMvRXZpbmNlIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9u JS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09ODUxZDliNTIzNGQ0 NzlhYjRjOGY3YzVjYmFjZWIwZTkxYWQ3OWNjYmExYTdiNzMzY2RlNzJkYWNjOTI4ZmJhOAorY2hl Y2tzdW09OGNiOGJmZDM1OGEwMmQ4ZWRiYTUxMTE0NTQ4ZTk4MTU0MzIxZTA4OTViZjM3OWE1YmIz MzZhNDU4ZDU5NGJkNwogCiBidWlsZF9vcHRpb25zPSJnaXIiCiBidWlsZF9vcHRpb25zX2RlZmF1 bHQ9ImdpciIKCkZyb20gMWU3ZjJjMjhlMGE1ZDQ0MWViMWMxMDRjMGRlNzVmNTUyMzQ3ZjdlZiBN b24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNv bT4KRGF0ZTogTW9uLCAyNyBBcHIgMjAyMCAxMzozMDo1NiArMDYwMApTdWJqZWN0OiBbUEFUQ0gg MDkvNTJdIGdub21lLW1hcHM6IHVwZGF0ZSB0byAzLjM2LjIuCgotLS0KIHNyY3BrZ3MvZ25vbWUt bWFwcy90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwg MiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLW1hcHMvdGVtcGxhdGUg Yi9zcmNwa2dzL2dub21lLW1hcHMvdGVtcGxhdGUKaW5kZXggMDMwMGJlNjA1OTkuLjlmZGQyN2Ri M2JkIDEwMDY0NAotLS0gYS9zcmNwa2dzL2dub21lLW1hcHMvdGVtcGxhdGUKKysrIGIvc3JjcGtn cy9nbm9tZS1tYXBzL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZv ciAnZ25vbWUtbWFwcycKIHBrZ25hbWU9Z25vbWUtbWFwcwotdmVyc2lvbj0zLjM2LjEKK3ZlcnNp b249My4zNi4yCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1tZXNvbgogaG9zdG1ha2VkZXBlbmRz PSJnbGliLWRldmVsIGdvYmplY3QtaW50cm9zcGVjdGlvbiBpbnRsdG9vbCBwa2ctY29uZmlnIEFw cFN0cmVhbSIKQEAgLTEyLDUgKzEyLDUgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRv eEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0i aHR0cHM6Ly93aWtpLmdub21lLm9yZy9BcHBzL01hcHMiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lU RX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoi Ci1jaGVja3N1bT0xYTMyZWZkOTZhZDg5OGY3N2E2MzZkMmQwNDYzZDc1NzAwOWI0YjgxMjI1OWM4 OWZmZGNiOTFkNmFmYzA1MmY5CitjaGVja3N1bT01YmEyMTliOWRlOTg2NzhjZWZhNTg0OGY2NTM4 ZGI4ZGJkMDdmNmM3NDdmZDQzYTk5MTY3YTI2Njg3OGE5Nzg0CiBub2Nyb3NzPSJldm9sdXRpb24t ZGF0YXNlcnZlciBjcm9zcyBnaXIgZG9lc24ndCB3b3JrIgoKRnJvbSBlZDljMzE4MzdkNTIyMjNj MzVmZjE4MDQ2MzQ5MTVlOWFiMjVjNWI2IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBO YWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBNb24sIDI3IEFwciAyMDIwIDE0OjI3 OjEwICswNjAwClN1YmplY3Q6IFtQQVRDSCAxMC81Ml0gZ2VkaXQ6IHVwZGF0ZSB0byAzLjM2LjIu CgotLS0KIHNyY3BrZ3MvZ2VkaXQvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAy IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nZWRp dC90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ2VkaXQvdGVtcGxhdGUKaW5kZXggNGUyNzNhYWYxODIuLmUz ZWJlYTA1ZWE3IDEwMDY0NAotLS0gYS9zcmNwa2dzL2dlZGl0L3RlbXBsYXRlCisrKyBiL3NyY3Br Z3MvZ2VkaXQvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdn ZWRpdCcKIHBrZ25hbWU9Z2VkaXQKLXZlcnNpb249My4zNi4xCit2ZXJzaW9uPTMuMzYuMgogcmV2 aXNpb249MQogYnVpbGRfaGVscGVyPSJnaXIiCiBidWlsZF9zdHlsZT1tZXNvbgpAQCAtMTcsNyAr MTcsNyBAQCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+Igog bGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUu b3JnL0FwcHMvR2VkaXQiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3Zl cnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT02ZGMzOGVk YTIyN2QxYzM2OGUwMzllOWJmZjQ4NWQwYmVlOWE0OWQ1Zjk1NjBjMzg3ZWUwOGY1ODE4YTRlMzg3 CitjaGVja3N1bT02ODg3NTU0NjQzYzViMWIzODYyYWMzNjRkOTdiN2I1MDIyNGJmZjk1ZTY3NThh ZWFhMDhmNGE0ODJiNTU0MTk3CiBzaGxpYl9wcm92aWRlcz0ibGliZ2VkaXQtMy4zNi5zbyIKIHB5 dGhvbl92ZXJzaW9uPTMKIAoKRnJvbSA5NjljMjM1MTE1ZThjMmI4MjhkODA0NzEwYWE0NjllOTMy YmRkZTNlIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91 dGxvb2suY29tPgpEYXRlOiBNb24sIDI3IEFwciAyMDIwIDE1OjAyOjE0ICswNjAwClN1YmplY3Q6 IFtQQVRDSCAxMS81Ml0gZ25vbWUtY29udGFjdHM6IHVwZGF0ZSB0byAzLjM2LjEuCgotLS0KIHNy Y3BrZ3MvZ25vbWUtY29udGFjdHMvdGVtcGxhdGUgfCA4ICsrKystLS0tCiAxIGZpbGUgY2hhbmdl ZCwgNCBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mv Z25vbWUtY29udGFjdHMvdGVtcGxhdGUgYi9zcmNwa2dzL2dub21lLWNvbnRhY3RzL3RlbXBsYXRl CmluZGV4IDJhODIxM2E3MjQwLi4wMWZiODJiNzgyNiAxMDA2NDQKLS0tIGEvc3JjcGtncy9nbm9t ZS1jb250YWN0cy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dub21lLWNvbnRhY3RzL3RlbXBsYXRl CkBAIC0xLDEwICsxLDEwIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbm9tZS1jb250YWN0cycK IHBrZ25hbWU9Z25vbWUtY29udGFjdHMKLXZlcnNpb249My4zNC4wCi1yZXZpc2lvbj0yCit2ZXJz aW9uPTMuMzYuMQorcmV2aXNpb249MQogd3Jrc3JjPSJnbm9tZS1jb250YWN0cy0ke3ZlcnNpb24l Lip9IgogYnVpbGRfc3R5bGU9bWVzb24KLWhvc3RtYWtlZGVwZW5kcz0iZG9jYm9vay14c2wgZ2V0 dGV4dCBnbGliLWRldmVsIGxpYnhzbHQgcGtnLWNvbmZpZyB2YWxhIgoraG9zdG1ha2VkZXBlbmRz PSJkb2Nib29rLXhzbCBmb2xrcy1kZXZlbCBnZXR0ZXh0IGdsaWItZGV2ZWwgbGlieHNsdCBwa2ct Y29uZmlnIHZhbGEiCiBtYWtlZGVwZW5kcz0iY2hlZXNlLWRldmVsIGZvbGtzLWRldmVsIGdlb2Nv ZGUtZ2xpYi1kZXZlbCBnbm9tZS1kZXNrdG9wLWRldmVsCiAgbGliY2hhbXBsYWluLWRldmVsIGxp Ym5vdGlmeS1kZXZlbCB2YWxhLWRldmVsIGxpYmhhbmR5LWRldmVsIgogZGVwZW5kcz0iZGVza3Rv cC1maWxlLXV0aWxzIgpAQCAtMTMsNCArMTMsNCBAQCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8 Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVw YWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL0FwcHMvQ29udGFjdHMiCiBkaXN0ZmlsZXM9IiR7 R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9u JS4qfS50YXIueHoiCi1jaGVja3N1bT05OTYwMmVjOGQ2NjBjMWYzYzkyY2FlNjM1NmY2NGY3MmZi NmRiNThlNTViY2UyN2E1OTkzMzBiZjdiNjIyZjEyCitjaGVja3N1bT1lZWNiZDIyMDlkOTNjOGQz MWRmOTJmNmNjZjc5MTgzYjQ1NmM2ZTA3YTI4YWUwMTU1Y2JkYTE4YWFiZDM2ZjdiCgpGcm9tIDk0 NTU1NzEyMGE2Zjc4NTc2ZjZmOTZmN2E4ZjAyZGFkZTFkYmFiODYgTW9uIFNlcCAxNyAwMDowMDow MCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFRodSwgMzAg QXByIDIwMjAgMDI6NTI6MTIgKzA2MDAKU3ViamVjdDogW1BBVENIIDEyLzUyXSBnbm9tZS1jbG9j a3M6IHVwZGF0ZSB0byAzLjM2LjIuCgotLS0KIHNyY3BrZ3MvZ25vbWUtY2xvY2tzL3RlbXBsYXRl IHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygt KQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtY2xvY2tzL3RlbXBsYXRlIGIvc3JjcGtncy9n bm9tZS1jbG9ja3MvdGVtcGxhdGUKaW5kZXggM2UwNDliNDJmYjEuLjM0YjE1OWFlNmE2IDEwMDY0 NAotLS0gYS9zcmNwa2dzL2dub21lLWNsb2Nrcy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dub21l LWNsb2Nrcy90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2du b21lLWNsb2NrcycKIHBrZ25hbWU9Z25vbWUtY2xvY2tzCi12ZXJzaW9uPTMuMzYuMAordmVyc2lv bj0zLjM2LjIKIHJldmlzaW9uPTEKIGJ1aWxkX2hlbHBlcj0iZ2lyIgogYnVpbGRfc3R5bGU9bWVz b24KQEAgLTE1LDQgKzE1LDQgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lk bGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6 Ly93aWtpLmdub21lLm9yZy9BcHBzL0Nsb2NrcyIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8k e3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNo ZWNrc3VtPTRjOTc4YjBjN2Y3YjlkYWViZDI3MmQwMTc1ZjhhNTQ0MTVlMjA3OGYxMzRmNDhhZGQ1 Y2YyNDM2MmVlZjQ5YzYKK2NoZWNrc3VtPWYxMWIxYjIyZWMxZjI4NWU1MDk4ODM2ODRjMGIxZjRh NTE0OTZhZWExMDU1OTEyMzllNWIyNmY4OTg2NzUxZTYKCkZyb20gNmE4MWU4ZWU0ZWQyNzY2NTJh N2NmNTVjNzQwZjNlZjNiZjdhOWIxZiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFm aXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogTW9uLCAyNyBBcHIgMjAyMCAxNToyOToz MCArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMTMvNTJdIGdub21lLWVwdWItdGh1bWJuYWlsZXI6IHVw ZGF0ZSB0byAxLjYuCgotLS0KIHNyY3BrZ3MvZ25vbWUtZXB1Yi10aHVtYm5haWxlci90ZW1wbGF0 ZSB8IDYgKysrLS0tCiAxIGZpbGUgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9u cygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtZXB1Yi10aHVtYm5haWxlci90ZW1wbGF0 ZSBiL3NyY3BrZ3MvZ25vbWUtZXB1Yi10aHVtYm5haWxlci90ZW1wbGF0ZQppbmRleCBiMTZlNzA1 NDc1Zi4uZDY3Yjc3ZjFlNDMgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtZXB1Yi10aHVtYm5h aWxlci90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dub21lLWVwdWItdGh1bWJuYWlsZXIvdGVtcGxh dGUKQEAgLTEsMTMgKzEsMTMgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLWVwdWItdGh1 bWJuYWlsZXInCiBwa2duYW1lPWdub21lLWVwdWItdGh1bWJuYWlsZXIKLXZlcnNpb249MS41Cit2 ZXJzaW9uPTEuNgogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogaG9zdG1h a2VkZXBlbmRzPSJwa2ctY29uZmlnIgogbWFrZWRlcGVuZHM9Imdkay1waXhidWYtZGV2ZWwgbGli YXJjaGl2ZS1kZXZlbCBsaWJ4bWwyLWRldmVsIgogc2hvcnRfZGVzYz0iVGh1bWJuYWlsZXIgZm9y IEVQdWIgYW5kIE1PQkkgYm9va3MiCiBtYWludGFpbmVyPSJBbGlmIFJhY2htYXdhZGkgPGFyY2hA c3Vib3NpdG8uY29tPiIKLWxpY2Vuc2U9IkdQTC0zIgorbGljZW5zZT0iR1BMLTIuMC1vci1sYXRl ciIKIGhvbWVwYWdlPSJodHRwczovL2dpdC5nbm9tZS5vcmcvYnJvd3NlL2dub21lLWVwdWItdGh1 bWJuYWlsZXIiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb259 LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT0zMDgyMTBmNTgwMDIxOWY2 NGNhZTQ4MjhlNTliYjhlNmU0YzUzYjg4ODA0OGNmNDg3MjIxYWViNDMzN2Q3OTFhCitjaGVja3N1 bT1iNTAyNDIwZDliMDJlYTBiMGZjNzk4NmVmNWEwOTFhMTJiMjI4NmJlMTRmZWQ5ZTQ3NTk0ZmU5 ZmEwYzU4OThlCgpGcm9tIDVhNzllYmQ5ZTc5ZGVmNGFlN2FiNTI0N2MwNThlM2YzNTIzZGJmZWUg TW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5j b20+CkRhdGU6IE1vbiwgMjcgQXByIDIwMjAgMTY6MjM6NDYgKzA2MDAKU3ViamVjdDogW1BBVENI IDE0LzUyXSBnbm9tZS10ZXJtaW5hbDogdXBkYXRlIHRvIDMuMzYuMi4KCi0tLQogc3JjcGtncy9n bm9tZS10ZXJtaW5hbC90ZW1wbGF0ZSB8IDYgKysrLS0tCiAxIGZpbGUgY2hhbmdlZCwgMyBpbnNl cnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtdGVy bWluYWwvdGVtcGxhdGUgYi9zcmNwa2dzL2dub21lLXRlcm1pbmFsL3RlbXBsYXRlCmluZGV4IGJm M2Q1YmNkZDQyLi4yMmRiYzExYmFkYSAxMDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS10ZXJtaW5h bC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dub21lLXRlcm1pbmFsL3RlbXBsYXRlCkBAIC0xLDYg KzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ25vbWUtdGVybWluYWwnCiBwa2duYW1lPWdu b21lLXRlcm1pbmFsCi12ZXJzaW9uPTMuMzYuMS4xCit2ZXJzaW9uPTMuMzYuMgogcmV2aXNpb249 MQogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9Ii0tZGlzYWJsZS1z dGF0aWMgLS13aXRoLW5hdXRpbHVzLWV4dGVuc2lvbiIKQEAgLTEzLDggKzEzLDggQEAgc2hvcnRf ZGVzYz0iR05PTUUgdGVybWluYWwgZW11bGF0b3IgYXBwbGljYXRpb24iCiBtYWludGFpbmVyPSJF bm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTIuMC1vci1s YXRlciwgR0ZETC0xLjMtb25seSIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL0Fw cHMvVGVybWluYWwiCi1kaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNp b246MDo0fS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09ZjNkNzA4YTFl NzZkNzdjMWM4NWIxMjZmNmUwMDMyMjBhMTVkNGE0NmE1MGZkODA3MGUxYTNhYWJlNjc4YTM3Ngor ZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25h bWV9LSR7dmVyc2lvbn0udGFyLnh6IgorY2hlY2tzdW09NDFkMWI2YTNkYzk3YzA2NmUyOTRhY2Ri N2YzNjkzMWU4MTY2ODYzOGRjYzkyZmZhMjViY2EzZGRlYmFjZGY0NgogbGliMzJkaXNhYmxlZD15 ZXMKIAogaWYgWyAiJENST1NTX0JVSUxEIiBdOyB0aGVuCgpGcm9tIDU5NTc0ZTgxMDA3YzEwNTcy ZWZmZDdiM2EzOGM5ZDc1YmRjN2I5YWQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5h ZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFR1ZSwgMjggQXByIDIwMjAgMTg6MTg6 MDAgKzA2MDAKU3ViamVjdDogW1BBVENIIDE1LzUyXSBnbm9tZS1wb2RjYXN0czogdXBkYXRlIHRv IDAuNC43LgoKLS0tCiAuLi4vZ25vbWUtcG9kY2FzdHMvcGF0Y2hlcy9maXgtYnVpbGQucGF0Y2gg ICAgfCAyMSAtLS0tLS0tLS0tLS0tLS0tCiBzcmNwa2dzL2dub21lLXBvZGNhc3RzL3RlbXBsYXRl ICAgICAgICAgICAgICAgfCAyNCArKysrKysrKysrLS0tLS0tLS0tCiAyIGZpbGVzIGNoYW5nZWQs IDEzIGluc2VydGlvbnMoKyksIDMyIGRlbGV0aW9ucygtKQogZGVsZXRlIG1vZGUgMTAwNjQ0IHNy Y3BrZ3MvZ25vbWUtcG9kY2FzdHMvcGF0Y2hlcy9maXgtYnVpbGQucGF0Y2gKCmRpZmYgLS1naXQg YS9zcmNwa2dzL2dub21lLXBvZGNhc3RzL3BhdGNoZXMvZml4LWJ1aWxkLnBhdGNoIGIvc3JjcGtn cy9nbm9tZS1wb2RjYXN0cy9wYXRjaGVzL2ZpeC1idWlsZC5wYXRjaApkZWxldGVkIGZpbGUgbW9k ZSAxMDA2NDQKaW5kZXggYWViOTU4MWJkNzkuLjAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvZ25v bWUtcG9kY2FzdHMvcGF0Y2hlcy9maXgtYnVpbGQucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwy MSArMCwwIEBACi0tLS0gcG9kY2FzdHMtZ3RrL3NyYy93aWRnZXRzL2VwaXNvZGUucnMub3JpZwky MDE5LTA2LTA5IDE1OjU0OjU5Ljc5MzQ1MTA0NyArMDIwMAotKysrIHBvZGNhc3RzLWd0ay9zcmMv d2lkZ2V0cy9lcGlzb2RlLnJzCTIwMTktMDYtMDkgMTU6NTU6MTkuMTkxMzExNTEyICswMjAwCi1A QCAtNTU5LDcgKzU1OSw3IEBACi0gICAgICAgICAgICAgLnRvdGFsX3NpemUKLSAgICAgICAgICAg ICAuZ2V0X3RleHQoKQotICAgICAgICAgICAgIC5hc19yZWYoKQotLSAgICAgICAgICAgIC5tYXAo fHN8IHMudHJpbV9yaWdodF9tYXRjaGVzKCIgTUIiKSkKLSsgICAgICAgICAgICAubWFwKHxzfCBz LnRyaW1fZW5kX21hdGNoZXMoIiBNQiIpKQotICAgICAgICAgICAgIC5hbmRfdGhlbih8c3wgcy5w YXJzZTo6PGkzMj4oKS5vaygpKQotICAgICAgICAgICAgIC5pc19ub25lKCkKLSAgICAgICAgIHsK LS0tLSBwb2RjYXN0cy1ndGsvc3JjL3dpZGdldHMvc2hvd3Nfdmlldy5ycy5vcmlnCTIwMTktMDYt MDkgMTU6NTQ6MDAuMzIwODc4ODY3ICswMjAwCi0rKysgcG9kY2FzdHMtZ3RrL3NyYy93aWRnZXRz L3Nob3dzX3ZpZXcucnMJMjAxOS0wNi0wOSAxNTo1NDoxMy4xNTE3ODY1NjMgKzAyMDAKLUBAIC04 MCw3ICs4MCw2IEBACi0gfQotIAotIGZuIG9uX2NoaWxkX2FjdGl2YXRlKGNoaWxkOiAmZ3RrOjpG bG93Qm94Q2hpbGQsIHNlbmRlcjogJlNlbmRlcjxBY3Rpb24+KSAtPiBSZXN1bHQ8KCksIEVycm9y PiB7Ci0tICAgIHVzZSBndGs6OldpZGdldEV4dDsKLSAKLSAgICAgLy8gVGhpcyBpcyBzdWNoIGFu IHVnbHkgaGFjay4uLgotICAgICBsZXQgaWQgPSBXaWRnZXRFeHQ6OmdldF9uYW1lKGNoaWxkKQpk aWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1wb2RjYXN0cy90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25v bWUtcG9kY2FzdHMvdGVtcGxhdGUKaW5kZXggNzJlMmRiNmIxMDkuLjNjMjM5ZGY4NDI0IDEwMDY0 NAotLS0gYS9zcmNwa2dzL2dub21lLXBvZGNhc3RzL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25v bWUtcG9kY2FzdHMvdGVtcGxhdGUKQEAgLTEsMjYgKzEsMjggQEAKICMgVGVtcGxhdGUgZmlsZSBm b3IgJ2dub21lLXBvZGNhc3RzJwogcGtnbmFtZT1nbm9tZS1wb2RjYXN0cwotdmVyc2lvbj0wLjQu NgotcmV2aXNpb249MwordmVyc2lvbj0wLjQuNworcmV2aXNpb249MQogd3Jrc3JjPSJwb2RjYXN0 cy0ke3ZlcnNpb259IgogYnVpbGRfc3R5bGU9bWVzb24KLWhvc3RtYWtlZGVwZW5kcz0iY2FyZ28g Z2V0dGV4dC1kZXZlbCBnbGliLWRldmVsIHBrZy1jb25maWciCitidWlsZF9oZWxwZXI9InJ1c3Qi Citob3N0bWFrZWRlcGVuZHM9ImNhcmdvIGdldHRleHQgZ2xpYi1kZXZlbCBwa2ctY29uZmlnIHNx bGl0ZS1kZXZlbCIKIG1ha2VkZXBlbmRzPSJnc3RyZWFtZXIxLWRldmVsIGdzdC1wbHVnaW5zLWJh ZDEtZGV2ZWwgZ3N0LXBsdWdpbnMtYmFzZTEtZGV2ZWwKLSBndGsrMy1kZXZlbCBsaWJoYW5keS1k ZXZlbCBsaWJyZXNzbC1kZXZlbCBzcWxpdGUtZGV2ZWwgdGV4aW5mbyIKKyBndGsrMy1kZXZlbCBs aWJoYW5keS1kZXZlbCBsaWJyZXNzbC1kZXZlbCBzcWxpdGUtZGV2ZWwgcnVzdC1zdGQiCiBzaG9y dF9kZXNjPSJMaXN0ZW4gdG8geW91ciBmYXZvcml0ZSBwb2RjYXN0cyIKIG1haW50YWluZXI9IkVu bm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMy4wLW9yLWxh dGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcvQXBwcy9Qb2RjYXN0cyIKIGRp c3RmaWxlcz0iaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL1dvcmxkL3BvZGNhc3RzLy0vYXJjaGl2 ZS8ke3ZlcnNpb259L3BvZGNhc3RzLSR7dmVyc2lvbn0udGFyLmd6IgotY2hlY2tzdW09OTUzYzYz ZTgxODRjYTFmNzQ4NDE4ZDhhODI2MmQ0MGVhYTQxMDQ3ZjgxZTJkMmM4NzRhMzAzNWQ5ZDlkMGU0 YQotbm9jcm9zcz0icnVzdGMgY2FudCBiZSBjcm9zc2NvbXBpbGVkIGFzIG9mIG5vdyIKLWJyb2tl bj0iZ2V0dGV4dC1ycyBoYXNoIGRvZXMgbm90IGV4aXN0cywgaWYgZml4ZWQgYnVpbGQgZmFpbHMg aW4gZ2lvIDAuNS4wIgorY2hlY2tzdW09YTlhMWI2MmRkMzU2N2UzY2NhMzhlZTI5ZGYyZmFkZDgy ZTJmYjVlODM3YjBhMmEyNmVjYWM3NGU5MzA1MTYxYwogCiBleHBvcnQgR0VUVEVYVF9CSU5fRElS PS91c3IvYmluCiBleHBvcnQgR0VUVEVYVF9MSUJfRElSPSIke1hCUFNfQ1JPU1NfQkFTRX0vdXNy L2xpYi9nZXR0ZXh0IgogZXhwb3J0IEdFVFRFWFRfSU5DTFVERV9ESVI9IiR7WEJQU19DUk9TU19C QVNFfS91c3IvaW5jbHVkZSIKIAotcHJlX2J1aWxkKCkgewotCWNhcmdvIHVwZGF0ZSAtLXBhY2th Z2Ugb3BlbnNzbC1zeXMgLS1wcmVjaXNlIDAuOS40NgotCWNhcmdvIHVwZGF0ZSAtLXBhY2thZ2Ug b3BlbnNzbCAtLXByZWNpc2UgMC4xMC4yMgotfQoraWYgWyAiJENST1NTX0JVSUxEIiBdOyB0aGVu CisJcG9zdF9wYXRjaCgpIHsKKwkJdnNlZCAtaSBzY3JpcHRzL2NhcmdvLnNoIFwKKwkJCS1lICdz JSIkQ0FSR09fVEFSR0VUX0RJUiIvJSYke1JVU1RfVEFSR0VUfS8lJyBcCisJCQktZSAnL0NBUkdP X0hPTUUvZCcKKwl9CitmaQoKRnJvbSAwYzg1ZmRjOGRkMzUyZDdkZTVlYzYwODFkZTNiODdiYjY2 OGIzNzYyIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91 dGxvb2suY29tPgpEYXRlOiBXZWQsIDI5IEFwciAyMDIwIDE0OjQxOjMyICswNjAwClN1YmplY3Q6 IFtQQVRDSCAxNi81Ml0gZ25vbWUtY29udHJvbC1jZW50ZXI6IHVwZGF0ZSB0byAzLjM2LjIuCgot LS0KIHNyY3BrZ3MvZ25vbWUtY29udHJvbC1jZW50ZXIvdGVtcGxhdGUgfCAyMCArKysrKysrKysr KysrKysrLS0tLQogMSBmaWxlIGNoYW5nZWQsIDE2IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25z KC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1jb250cm9sLWNlbnRlci90ZW1wbGF0ZSBi L3NyY3BrZ3MvZ25vbWUtY29udHJvbC1jZW50ZXIvdGVtcGxhdGUKaW5kZXggMGUyNzg3ODk4YWUu LjA3MDM2Y2Y5OWYwIDEwMDY0NAotLS0gYS9zcmNwa2dzL2dub21lLWNvbnRyb2wtY2VudGVyL3Rl bXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtY29udHJvbC1jZW50ZXIvdGVtcGxhdGUKQEAgLTEs NiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbm9tZS1jb250cm9sLWNlbnRlcicKIHBr Z25hbWU9Z25vbWUtY29udHJvbC1jZW50ZXIKLXZlcnNpb249My4zNC4xCit2ZXJzaW9uPTMuMzYu MgogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9bWVzb24KIGJ1aWxkX2hlbHBlcj0iZ2lyIgpAQCAt MTAsMjQgKzEwLDM2IEBAIGhvc3RtYWtlZGVwZW5kcz0iZ2xpYi1kZXZlbCBnc2V0dGluZ3MtZGVz a3RvcC1zY2hlbWFzLWRldmVsIGludGx0b29sIHBrZy1jb25maWcKIG1ha2VkZXBlbmRzPSJNb2Rl bU1hbmFnZXItZGV2ZWwgYWNjb3VudHNzZXJ2aWNlLWRldmVsIGFsc2EtcGx1Z2lucwogIGNvbG9y ZC1ndGstZGV2ZWwgZ25vbWUtYmx1ZXRvb3RoLWRldmVsIGdub21lLWRlc2t0b3AtZGV2ZWwgZ25v bWUtbWVudXMtZGV2ZWwKICBnbm9tZS1vbmxpbmUtYWNjb3VudHMtZGV2ZWwgZ25vbWUtc2V0dGlu Z3MtZGFlbW9uLWRldmVsIGdyaWxvLWRldmVsIGlidXMtZGV2ZWwKLSBsaWJTTS1kZXZlbCBsaWJY eGY4Nm1pc2MtZGV2ZWwgbGliZ25vbWVrYmQtZGV2ZWwgbGliZ3RvcC1kZXZlbAorIGxpYlNNLWRl dmVsIGxpYlh4Zjg2bWlzYy1kZXZlbCBsaWJnbm9tZWtiZC1kZXZlbCBsaWJndG9wLWRldmVsIGxp YmhhbmR5LWRldmVsCiAgbGlicHdxdWFsaXR5LWRldmVsIG1pdC1rcmI1LWRldmVsIG5ldHdvcmst bWFuYWdlci1hcHBsZXQtZGV2ZWwgcG9sa2l0LWRldmVsCiAgcHVsc2VhdWRpby1kZXZlbCBzYW1i YS1kZXZlbCB0emRhdGEgdXBvd2VyLWRldmVsIHZhbGEtZGV2ZWwgY2x1dHRlci1ndGstZGV2ZWwK ICBsaWJ4bWwyLWRldmVsIGxpYlgxMS1kZXZlbCBndGsrMy1kZXZlbCBjdXBzLWRldmVsIGxpYmd1 ZGV2LWRldmVsIGxpYndhY29tLWRldmVsCiAgY2x1dHRlci1kZXZlbCBsaWJzZWNyZXQtZGV2ZWwg bGliY2FuYmVycmEtZGV2ZWwgdWRpc2tzMi1kZXZlbCBnc291bmQtZGV2ZWwKICAkKHZvcHRfaWYg Y2hlZXNlIGNoZWVzZS1kZXZlbCkiCi1kZXBlbmRzPSJhbHNhLXBsdWdpbnMtcHVsc2VhdWRpbyBk ZXNrdG9wLWZpbGUtdXRpbHMKK2RlcGVuZHM9ImFsc2EtcGx1Z2lucy1wdWxzZWF1ZGlvIGRlc2t0 b3AtZmlsZS11dGlscyB1cG93ZXIgY29sb3JkIGN1cHMtcGstaGVscGVyCiAgZ3NldHRpbmdzLWRl c2t0b3Atc2NoZW1hcyBoaWNvbG9yLWljb24tdGhlbWUgaXNvLWNvZGVzIHNvdW5kLXRoZW1lLWZy ZWVkZXNrdG9wCiAgY3JhY2tsaWIiCitjaGVja2RlcGVuZHM9InB5dGhvbjMtZGJ1c21vY2sgeG9y Zy1zZXJ2ZXIteHZmYiIKIHNob3J0X2Rlc2M9IkdOT01FIGNvbnRyb2wgY2VudGVyIgogbWFpbnRh aW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0y LjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2du b21lLWNvbnRyb2wtY2VudGVyIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0v JHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09NWY4 MmVjZDU1NTQxMzZjNDYyMjQ4ZWM1MzYzYjgyZDk1MzU4YjM5ZGZkNjc4NzAwNmQ4MzA3YjQ1MDRl NTE1ZQorY2hlY2tzdW09ZTBhNWVmZjBjNmQ2YzIyZGIwYzU0ZmQwNzA0NjBkZTg3NGQzNjdlZjNm OTA3MmUxNTU5YjcwZjI4Yjg0NzgxNwogCiBidWlsZF9vcHRpb25zPSJjaGVlc2UiCiBkZXNjX29w dGlvbl9jaGVlc2U9IkFkZCBzdXBwb3J0IGZvciBhZGRpbmcgdXNlciBhY2NvdW50IGltYWdlcyB3 aXRoIHlvdXIgd2ViY2FtIgorCitwcmVfY2hlY2soKSB7CisJIyB0ZXN0LW5ldHdvcmstcGFuZWwg bmVlZHMgaWQgZ2VuZXJhdGVkIGJ5IGRidXMtdXVpZGdlbgorCW1rZGlyIC1wIC92YXIvbGliL2Ri dXMKKwlkYnVzLXV1aWRnZW4gLS1lbnN1cmUKK30KKworcG9zdF9jaGVjaygpIHsKKwlybSAtcmYg L3Zhci9saWIvZGJ1cworfQorCiBpZiBbIC16ICIkQ1JPU1NfQlVJTEQiIF07IHRoZW4KIAlidWls ZF9vcHRpb25zX2RlZmF1bHQrPSIgY2hlZXNlIgogZmkKCkZyb20gZjJiZjNiM2FiNGZjNzdjMmFi MDNmOTliNDRiN2ZhOTI0OTAyOTU0MyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFm aXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogU3VuLCAzIE1heSAyMDIwIDEwOjU3OjQ1 ICswNjAwClN1YmplY3Q6IFtQQVRDSCAxNy81Ml0gZ25vbWUtc2V0dGluZ3MtZGFlbW9uOiB1cGRh dGUgdG8gMy4zNi4xLgoKQWRkZWQgYSBwYXRjaCB0byBmaXggYnJpZ2h0bmVzcyBjb250cm9scyB3 aXRoIGVsb2dpbmQuCi0tLQogLi4udC11c2UtbG9naW5kLWZvci1icmlnaHRuZXNzLWNoYW5naW5n LnBhdGNoIHwgMTIxICsrKysrKysrKysrKysrKysrKwogc3JjcGtncy9nbm9tZS1zZXR0aW5ncy1k YWVtb24vdGVtcGxhdGUgICAgICAgIHwgIDEwICstCiAyIGZpbGVzIGNoYW5nZWQsIDEyNiBpbnNl cnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvZ25v bWUtc2V0dGluZ3MtZGFlbW9uL3BhdGNoZXMvZG9udC11c2UtbG9naW5kLWZvci1icmlnaHRuZXNz LWNoYW5naW5nLnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1zZXR0aW5ncy1kYWVt b24vcGF0Y2hlcy9kb250LXVzZS1sb2dpbmQtZm9yLWJyaWdodG5lc3MtY2hhbmdpbmcucGF0Y2gg Yi9zcmNwa2dzL2dub21lLXNldHRpbmdzLWRhZW1vbi9wYXRjaGVzL2RvbnQtdXNlLWxvZ2luZC1m b3ItYnJpZ2h0bmVzcy1jaGFuZ2luZy5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw MDAwMDAwMDAwMC4uYTNhODM0ZTNiNzQKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2dub21l LXNldHRpbmdzLWRhZW1vbi9wYXRjaGVzL2RvbnQtdXNlLWxvZ2luZC1mb3ItYnJpZ2h0bmVzcy1j aGFuZ2luZy5wYXRjaApAQCAtMCwwICsxLDEyMSBAQAorVXBzdHJlYW0gaW50cm9kdWNlZCBicmln aHRuZXNzIGxldmVsIGNoYW5naW5nIHdpdGgKK2h0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9N RS9nbm9tZS1zZXR0aW5ncy1kYWVtb24vLS9jb21taXQvY2QwNTFlNmM3Y2NmYjdlN2IwZWM0NDA0 MDljNTU5YjJlNTEyODRlOAorYnV0IGFwcGFyZW50bHkgdGhpcyBkb2Vzbid0IHdvcmsgd2l0aCBl bG9naW5kIChzZWUgaHR0cHM6Ly9naXRodWIuY29tL2Vsb2dpbmQvZWxvZ2luZC9pc3N1ZXMvMTU4 KSwKK3NvIGxldCdzIHJldmVydCB0aGlzIGZvciBub3cgYW5kIGtlZXAgdXNpbmcgdGhlIG9sZCBt ZWNoYW5pc20uCitkaWZmIC0tZ2l0IHBsdWdpbnMvcG93ZXIvZ3NkLWJhY2tsaWdodC5jIHBsdWdp bnMvcG93ZXIvZ3NkLWJhY2tsaWdodC5jCitpbmRleCA5ZjQwNmM5Li45Yzg3MmY4IDEwMDY0NAor LS0tIHBsdWdpbnMvcG93ZXIvZ3NkLWJhY2tsaWdodC5jCisrKysgcGx1Z2lucy9wb3dlci9nc2Qt YmFja2xpZ2h0LmMKK0BAIC00MCw4ICs0MCw2IEBAIHN0cnVjdCBfR3NkQmFja2xpZ2h0CisgICAg ICAgICBnaW50IGJyaWdodG5lc3Nfc3RlcDsKKyAKKyAjaWZkZWYgX19saW51eF9fCistICAgICAg ICBHREJ1c1Byb3h5ICpsb2dpbmRfcHJveHk7CistCisgICAgICAgICBHVWRldkNsaWVudCAqdWRl djsKKyAgICAgICAgIEdVZGV2RGV2aWNlICp1ZGV2X2RldmljZTsKKyAKK0BAIC02MSwxMCArNTks NiBAQCBlbnVtIHsKKyAgICAgICAgIFBST1BfTEFTVCwKKyB9OworIAorLSNkZWZpbmUgU1lTVEVN RF9EQlVTX05BTUUgICAgICAgICAgICAgICAgICAgICAgICJvcmcuZnJlZWRlc2t0b3AubG9naW4x IgorLSNkZWZpbmUgU1lTVEVNRF9EQlVTX1BBVEggICAgICAgICAgICAgICAgICAgICAgICIvb3Jn L2ZyZWVkZXNrdG9wL2xvZ2luMS9zZXNzaW9uL2F1dG8iCistI2RlZmluZSBTWVNURU1EX0RCVVNf SU5URVJGQUNFICAgICAgICAgICAgICAgICAgIm9yZy5mcmVlZGVza3RvcC5sb2dpbjEuU2Vzc2lv biIKKy0KKyBzdGF0aWMgR1BhcmFtU3BlYyAqcHJvcHNbUFJPUF9MQVNUXTsKKyAKKyBzdGF0aWMg dm9pZCAgICAgZ3NkX2JhY2tsaWdodF9pbml0YWJsZV9pZmFjZV9pbml0IChHSW5pdGFibGVJZmFj ZSAgKmlmYWNlKTsKK0BAIC00ODEsMzEgKzQ3NSwxMyBAQCBnc2RfYmFja2xpZ2h0X3NldF9icmln aHRuZXNzX3ZhbF9hc3luYyAoR3NkQmFja2xpZ2h0ICpiYWNrbGlnaHQsCisgI2lmZGVmIF9fbGlu dXhfXworICAgICAgICAgaWYgKGJhY2tsaWdodC0+dWRldl9kZXZpY2UgIT0gTlVMTCkgeworICAg ICAgICAgICAgICAgICBCYWNrbGlnaHRIZWxwZXJEYXRhICp0YXNrX2RhdGE7CisrICAgICAgICAg ICAgICAgICAgdGFza19kYXRhID0gZ19uZXcwIChCYWNrbGlnaHRIZWxwZXJEYXRhLCAxKTsKKysg ICAgICAgICAgICAgICAgICB0YXNrX2RhdGEtPnZhbHVlID0gYmFja2xpZ2h0LT5icmlnaHRuZXNz X3RhcmdldDsKKysgICAgICAgICAgICAgICAgICBnX3Rhc2tfc2V0X3Rhc2tfZGF0YSAodGFzaywg dGFza19kYXRhLCBiYWNrbGlnaHRfdGFza19kYXRhX2Rlc3Ryb3kpOworIAorLSAgICAgICAgICAg ICAgICBpZiAoYmFja2xpZ2h0LT5sb2dpbmRfcHJveHkpIHsKKy0gICAgICAgICAgICAgICAgICAg ICAgICBnX2RidXNfcHJveHlfY2FsbCAoYmFja2xpZ2h0LT5sb2dpbmRfcHJveHksCistICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJTZXRCcmlnaHRuZXNzIiwKKy0g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ192YXJpYW50X25ldyAo Iihzc3UpIiwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgImJhY2tsaWdodCIsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdfdWRldl9kZXZpY2VfZ2V0X25hbWUgKGJhY2ts aWdodC0+dWRldl9kZXZpY2UpLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBiYWNrbGlnaHQtPmJyaWdodG5lc3NfdGFyZ2V0KSwKKy0g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR19EQlVTX0NBTExfRkxB R1NfTk9ORSwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLTEs IE5VTEwsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEws IE5VTEwpOworLQorLSAgICAgICAgICAgICAgICAgICAgICAgIHBlcmNlbnQgPSBBQlNfVE9fUEVS Q0VOVEFHRSAoYmFja2xpZ2h0LT5icmlnaHRuZXNzX21pbiwKKy0gICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tsaWdodC0+YnJpZ2h0bmVzc19t YXgsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBiYWNrbGlnaHQtPmJyaWdodG5lc3NfdGFyZ2V0KTsKKy0gICAgICAgICAgICAgICAgICAgICAg ICBnX3Rhc2tfcmV0dXJuX2ludCAodGFzaywgcGVyY2VudCk7CistICAgICAgICAgICAgICAgIH0g ZWxzZSB7CistICAgICAgICAgICAgICAgICAgICAgICAgdGFza19kYXRhID0gZ19uZXcwIChCYWNr bGlnaHRIZWxwZXJEYXRhLCAxKTsKKy0gICAgICAgICAgICAgICAgICAgICAgICB0YXNrX2RhdGEt PnZhbHVlID0gYmFja2xpZ2h0LT5icmlnaHRuZXNzX3RhcmdldDsKKy0gICAgICAgICAgICAgICAg ICAgICAgICBnX3Rhc2tfc2V0X3Rhc2tfZGF0YSAodGFzaywgdGFza19kYXRhLCBiYWNrbGlnaHRf dGFza19kYXRhX2Rlc3Ryb3kpOworLQorLSAgICAgICAgICAgICAgICAgICAgICAgIC8qIFRhc2sg aXMgc2V0IHVwIG5vdy4gUXVldWUgaXQgYW5kIGVuc3VyZSB3ZSBhcmUgd29ya2luZyBzb21ldGhp bmcuICovCistICAgICAgICAgICAgICAgICAgICAgICAgZ19xdWV1ZV9wdXNoX3RhaWwgKCZiYWNr bGlnaHQtPnRhc2tzLCB0YXNrKTsKKy0gICAgICAgICAgICAgICAgICAgICAgICBnc2RfYmFja2xp Z2h0X3Byb2Nlc3NfdGFza3F1ZXVlIChiYWNrbGlnaHQpOworLSAgICAgICAgICAgICAgICB9Cisr ICAgICAgICAgICAgICAgICAgLyogVGFzayBpcyBzZXQgdXAgbm93LiBRdWV1ZSBpdCBhbmQgZW5z dXJlIHdlIGFyZSB3b3JraW5nIHNvbWV0aGluZy4gKi8KKysgICAgICAgICAgICAgICAgICBnX3F1 ZXVlX3B1c2hfdGFpbCAoJmJhY2tsaWdodC0+dGFza3MsIHRhc2spOworKyAgICAgICAgICAgICAg ICAgIGdzZF9iYWNrbGlnaHRfcHJvY2Vzc190YXNrcXVldWUgKGJhY2tsaWdodCk7CisgCisgICAg ICAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgIH0KK0BAIC04MjMsNyArNzk5LDYgQEAgZ3Nk X2JhY2tsaWdodF9pbml0YWJsZV9pbml0IChHSW5pdGFibGUgICAgICAgKmluaXRhYmxlLAorIHsK KyAgICAgICAgIEdzZEJhY2tsaWdodCAqYmFja2xpZ2h0ID0gR1NEX0JBQ0tMSUdIVCAoaW5pdGFi bGUpOworICAgICAgICAgR25vbWVSUk91dHB1dCogb3V0cHV0ID0gTlVMTDsKKy0gICAgICAgIEdF cnJvciAqbG9naW5kX2Vycm9yID0gTlVMTDsKKyAKKyAgICAgICAgIGlmIChjYW5jZWxsYWJsZSAh PSBOVUxMKSB7CisgICAgICAgICAgICAgICAgIGdfc2V0X2Vycm9yX2xpdGVyYWwgKGVycm9yLCBH X0lPX0VSUk9SLCBHX0lPX0VSUk9SX05PVF9TVVBQT1JURUQsCitAQCAtODMyLDM4ICs4MDcsNiBA QCBnc2RfYmFja2xpZ2h0X2luaXRhYmxlX2luaXQgKEdJbml0YWJsZSAgICAgICAqaW5pdGFibGUs CisgICAgICAgICB9CisgCisgI2lmZGVmIF9fbGludXhfXworLSAgICAgICAgYmFja2xpZ2h0LT5s b2dpbmRfcHJveHkgPQorLSAgICAgICAgICAgICAgICBnX2RidXNfcHJveHlfbmV3X2Zvcl9idXNf c3luYyAoR19CVVNfVFlQRV9TWVNURU0sCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAwLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgTlVMTCwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIFNZU1RFTURfREJVU19OQU1FLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgU1lTVEVNRF9EQlVTX1BBVEgsCistICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTWVNURU1EX0RCVVNfSU5URVJGQUNFLAor LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgJmxv Z2luZF9lcnJvcik7CistICAgICAgICBpZiAoYmFja2xpZ2h0LT5sb2dpbmRfcHJveHkpIHsKKy0g ICAgICAgICAgICAgICAgLyogQ2hlY2sgdGhhdCB0aGUgU2V0QnJpZ2h0bmVzcyBtZXRob2QgZG9l cyBleGlzdCAqLworLSAgICAgICAgICAgICAgICBnX2RidXNfcHJveHlfY2FsbF9zeW5jIChiYWNr bGlnaHQtPmxvZ2luZF9wcm94eSwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIlNldEJyaWdodG5lc3MiLCBOVUxMLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBHX0RCVVNfQ0FMTF9GTEFHU19OT05FLCAtMSwKKy0gICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgJmxvZ2luZF9lcnJvcik7CistCistICAg ICAgICAgICAgICAgIGlmIChnX2Vycm9yX21hdGNoZXMgKGxvZ2luZF9lcnJvciwgR19EQlVTX0VS Uk9SLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHX0RCVVNfRVJST1Jf SU5WQUxJRF9BUkdTKSkgeworLSAgICAgICAgICAgICAgICAgICAgICAgIC8qIFdlIGFyZSBjYWxs aW5nIHRoZSBtZXRob2Qgd2l0aCBubyBhcmd1bWVudHMsIHNvCistICAgICAgICAgICAgICAgICAg ICAgICAgICogdGhpcyBpcyBleHBlY3RlZC4KKy0gICAgICAgICAgICAgICAgICAgICAgICAgKi8K Ky0gICAgICAgICAgICAgICAgICAgICAgICBnX2NsZWFyX2Vycm9yICgmbG9naW5kX2Vycm9yKTsK Ky0gICAgICAgICAgICAgICAgfSBlbHNlIHsKKy0gICAgICAgICAgICAgICAgICAgICAgICAvKiBG YWlsIG9uIGFueXRoaW5nIGVsc2UgKi8KKy0gICAgICAgICAgICAgICAgICAgICAgICBnX2NsZWFy X29iamVjdCAoJmJhY2tsaWdodC0+bG9naW5kX3Byb3h5KTsKKy0gICAgICAgICAgICAgICAgfQor LSAgICAgICAgfQorLQorLSAgICAgICAgaWYgKGxvZ2luZF9lcnJvcikgeworLSAgICAgICAgICAg ICAgICBnX3dhcm5pbmcgKCJObyBsb2dpbmQgZm91bmQ6ICVzIiwgbG9naW5kX2Vycm9yLT5tZXNz YWdlKTsKKy0gICAgICAgICAgICAgICAgZ19lcnJvcl9mcmVlIChsb2dpbmRfZXJyb3IpOworLSAg ICAgICAgfQorLQorICAgICAgICAgLyogVHJ5IGZpbmRpbmcgYSB1ZGV2IGRldmljZS4gKi8KKyAg ICAgICAgIGlmIChnc2RfYmFja2xpZ2h0X3VkZXZfaW5pdCAoYmFja2xpZ2h0KSkKKyAgICAgICAg ICAgICAgICAgZ290byBmb3VuZDsKK0BAIC05MDUsNyArODQ4LDYgQEAgZ3NkX2JhY2tsaWdodF9m aW5hbGl6ZSAoR09iamVjdCAqb2JqZWN0KQorICNpZmRlZiBfX2xpbnV4X18KKyAgICAgICAgIGdf YXNzZXJ0IChiYWNrbGlnaHQtPmFjdGl2ZV90YXNrID09IE5VTEwpOworICAgICAgICAgZ19hc3Nl cnQgKGdfcXVldWVfaXNfZW1wdHkgKCZiYWNrbGlnaHQtPnRhc2tzKSk7CistICAgICAgICBnX2Ns ZWFyX29iamVjdCAoJmJhY2tsaWdodC0+bG9naW5kX3Byb3h5KTsKKyAgICAgICAgIGdfY2xlYXJf b2JqZWN0ICgmYmFja2xpZ2h0LT51ZGV2KTsKKyAgICAgICAgIGdfY2xlYXJfb2JqZWN0ICgmYmFj a2xpZ2h0LT51ZGV2X2RldmljZSk7CisgICAgICAgICBpZiAoYmFja2xpZ2h0LT5pZGxlX3VwZGF0 ZSkgewpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1zZXR0aW5ncy1kYWVtb24vdGVtcGxhdGUg Yi9zcmNwa2dzL2dub21lLXNldHRpbmdzLWRhZW1vbi90ZW1wbGF0ZQppbmRleCBhNzBlMjhiZTVm YS4uOWNlYjFkMTNkZTkgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtc2V0dGluZ3MtZGFlbW9u L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtc2V0dGluZ3MtZGFlbW9uL3RlbXBsYXRlCkBA IC0xLDEwICsxLDEwIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbm9tZS1zZXR0aW5ncy1kYWVt b24nCiBwa2duYW1lPWdub21lLXNldHRpbmdzLWRhZW1vbgotdmVyc2lvbj0zLjM0LjEKLXJldmlz aW9uPTIKK3ZlcnNpb249My4zNi4xCityZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1tZXNvbgotY29u ZmlndXJlX2FyZ3MrPSItRHN5c3RlbWQ9ZmFsc2UiCi1ob3N0bWFrZWRlcGVuZHM9ImNtYWtlIGRv Y2Jvb2steHNsIGdsaWItZGV2ZWwgbGliZ2xpYi1kZXZlbCBsaWJ4c2x0IHBlcmwgcGtnLWNvbmZp ZyIKK2NvbmZpZ3VyZV9hcmdzPSItRHN5c3RlbWQ9ZmFsc2UiCitob3N0bWFrZWRlcGVuZHM9ImNt YWtlIGRvY2Jvb2steHNsIGdldHRleHQgZ2xpYi1kZXZlbCBsaWJnbGliLWRldmVsIGxpYnhzbHQg cGVybCBwa2ctY29uZmlnIgogbWFrZWRlcGVuZHM9Ik5ldHdvcmtNYW5hZ2VyLWRldmVsIGFsc2Et bGliLWRldmVsIGNvbG9yZC1kZXZlbCBjdXBzLWRldmVsIGdjci1kZXZlbAogIGdlb2NsdWUyLWRl dmVsIGdub21lLWRlc2t0b3AtZGV2ZWwgaWJ1cy1kZXZlbCBsaWJjYW5iZXJyYS1kZXZlbCBsaWJn bm9tZWtiZC1kZXZlbAogIGxpYmd3ZWF0aGVyLWRldmVsIGxpYm5vdGlmeS1kZXZlbCBsaWJyc3Zn LWRldmVsIGxpYndhY29tLWRldmVsIG5zcy1kZXZlbApAQCAtMTgsNyArMTgsNyBAQCBtYWludGFp bmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTMu MC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25v bWUtc2V0dGluZ3MtZGFlbW9uIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0v JHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09OTk4 MWEyMGJhYmY4ZGE3NzQ0YjdmYmUxNzViOWUzNjA3OGJmMDhmM2JmNjVmZTVhZWRlYjgyY2ZlMjdh YzExZgorY2hlY2tzdW09M2UzM2RiZDMxOWI1NjJhNWFiNjAyZGNhYjZkZTNjYTgxYjg1ZjgzNDY2 NzJlOTBlYzYzMmIzNmJiZjE1ZWU0YgogCiBpZiBbICIkQ1JPU1NfQlVJTEQiIF07IHRoZW4KIAlo b3N0bWFrZWRlcGVuZHMrPSIgcG9sa2l0IgoKRnJvbSAwOTU0YTQwOWUzNmM0NjFhZDAyMjFiM2Vj OTkzYzRlNWI2ZWU5ZDJjIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5h YmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBGcmksIDEgTWF5IDIwMjAgMTA6MTE6NTQgKzA2MDAK U3ViamVjdDogW1BBVENIIDE4LzUyXSBnbm9tZS11c2VyLWRvY3M6IHVwZGF0ZSB0byAzLjM2LjIu CgotLS0KIHNyY3BrZ3MvZ25vbWUtdXNlci1kb2NzL3RlbXBsYXRlIHwgOCArKysrLS0tLQogMSBm aWxlIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQg YS9zcmNwa2dzL2dub21lLXVzZXItZG9jcy90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25vbWUtdXNlci1k b2NzL3RlbXBsYXRlCmluZGV4IDRjYjU1Mzk2ZTM3Li5jYTk5MzM0NmUzYSAxMDA2NDQKLS0tIGEv c3JjcGtncy9nbm9tZS11c2VyLWRvY3MvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS11c2Vy LWRvY3MvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbm9t ZS11c2VyLWRvY3MnCiBwa2duYW1lPWdub21lLXVzZXItZG9jcwotdmVyc2lvbj0zLjM0LjAKK3Zl cnNpb249My4zNi4yCiByZXZpc2lvbj0xCiBhcmNocz1ub2FyY2gKIGJ1aWxkX3N0eWxlPWdudS1j b25maWd1cmUKQEAgLTEwLDcgKzEwLDcgQEAgZGVwZW5kcz0ieWVscCIKIHNob3J0X2Rlc2M9IlVz ZXIgZG9jdW1lbnRhdGlvbiBmb3IgR05PTUUiCiBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290 dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iQ0MtQlktMy4wIgotaG9tZXBhZ2U9Imh0dHBz Oi8vZ2l0aHViLmNvbS9HTk9NRS9nbm9tZS11c2VyLWRvY3MiCi0jY2hhbmdlbG9nPSJodHRwczov L3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vR05PTUUvZ25vbWUtdXNlci1kb2NzL21hc3Rlci9O RVdTIgoraG9tZXBhZ2U9Imh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS11c2Vy LWRvY3MiCitjaGFuZ2Vsb2c9Imh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS11 c2VyLWRvY3MvLS9yYXcvMy4zNi4yL05FV1MiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtw a2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVj a3N1bT04Zjk5MDdmZjE1ZmZmOTdkYTc1ZWNlNjQ1Y2M4Njc2NjcwM2FjNTRkNzE2ZDI1NTYzYmE2 N2ZmZWQxYWYyNGVkCitjaGVja3N1bT0xOThmZTRjODM2Nzc1YTVkYzI1NDNhNmE1MjBkZmIwYWM1 YmYyOTJjZGNiMzU4YTU3Yzg2ZjM1ZjcwNWU5OTU4CgpGcm9tIDZlMTg0NjhhNTJlZWVhOWFhNmEw YjRhOWEzOTM1Y2IwZTNkNTNlNjQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlz IDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFN1biwgMyBNYXkgMjAyMCAwMjoyMDo1MiAr MDYwMApTdWJqZWN0OiBbUEFUQ0ggMTkvNTJdIGdub21lLWluaXRpYWwtc2V0dXA6IHVwZGF0ZSB0 byAzLjM2LjIuCgotLS0KIHNyY3BrZ3MvZ25vbWUtaW5pdGlhbC1zZXR1cC90ZW1wbGF0ZSB8IDEw ICsrKysrLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDUgZGVsZXRpb25z KC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1pbml0aWFsLXNldHVwL3RlbXBsYXRlIGIv c3JjcGtncy9nbm9tZS1pbml0aWFsLXNldHVwL3RlbXBsYXRlCmluZGV4IGFiYTVhMDk0YzI4Li43 M2VmOTZiMTk5MyAxMDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1pbml0aWFsLXNldHVwL3RlbXBs YXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtaW5pdGlhbC1zZXR1cC90ZW1wbGF0ZQpAQCAtMSwxMCAr MSwxMCBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ25vbWUtaW5pdGlhbC1zZXR1cCcKIHBrZ25h bWU9Z25vbWUtaW5pdGlhbC1zZXR1cAotdmVyc2lvbj0zLjM0LjEKLXJldmlzaW9uPTIKK3ZlcnNp b249My4zNi4yCityZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1tZXNvbgotY29uZmlndXJlX2FyZ3M9 Ii1Ec29mdHdhcmUtc291cmNlcz1kaXNhYmxlZCAtRHN5c3RlbWQ9ZmFsc2UiCi1ob3N0bWFrZWRl cGVuZHM9InBrZy1jb25maWcgZ2xpYi1kZXZlbCIKK2NvbmZpZ3VyZV9hcmdzPSItRHBhcmVudGFs X2NvbnRyb2xzPWRpc2FibGVkIC1Ec3lzdGVtZD1mYWxzZSIKK2hvc3RtYWtlZGVwZW5kcz0iZ2V0 dGV4dCBwa2ctY29uZmlnIGdsaWItZGV2ZWwiCiBtYWtlZGVwZW5kcz0iTmV0d29ya01hbmFnZXIt ZGV2ZWwgYWNjb3VudHNzZXJ2aWNlLWRldmVsIGxpYmdsaWItZGV2ZWwKICBnbm9tZS1kZXNrdG9w LWRldmVsIGNoZWVzZS1kZXZlbCBsaWJnd2VhdGhlci1kZXZlbCB3ZWJraXQyZ3RrLWRldmVsCiAg Z25vbWUtb25saW5lLWFjY291bnRzLWRldmVsIGdkbS1kZXZlbCBsaWJwd3F1YWxpdHktZGV2ZWwK QEAgLTE3LDQgKzE3LDQgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGlu dXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly93 aWtpLmdub21lLm9yZy9EZXNpZ24vT1MvSW5pdGlhbFNldHVwIgogZGlzdGZpbGVzPSIke0dOT01F X1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFy Lnh6IgotY2hlY2tzdW09ZTcxZjEwZWY2YjYzMWNkOTJmZmRlNzc0ZTQxMzBiMzJiMjQ5NGI0ZGY1 ZWYyODgzNzVkOGIxOTU3ZWVhYmZhMQorY2hlY2tzdW09NGY4YmU0MWFlYTEwMGM1NmRiZjhmMGZl MWUyMzU0ZDJkMWFjMDVjZjFjNzlhMDFjYzk3NWM2YWE4OTE0NTc1NgoKRnJvbSA2MzdiMDcxM2Nl ZTlmZGZiNGUwMWYwZmNkN2Q2MWRmNWFjNmEzZGJmIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpG cm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBGcmksIDEgTWF5IDIwMjAg MDg6Mzg6MTUgKzA2MDAKU3ViamVjdDogW1BBVENIIDIwLzUyXSBldm9sdXRpb24tZGF0YS1zZXJ2 ZXI6IHVwZGF0ZSB0byAzLjM2LjIuCgotLS0KIHNyY3BrZ3MvZXZvbHV0aW9uLWRhdGEtc2VydmVy L3RlbXBsYXRlIHwgNiArKystLS0KIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMg ZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9ldm9sdXRpb24tZGF0YS1zZXJ2ZXIv dGVtcGxhdGUgYi9zcmNwa2dzL2V2b2x1dGlvbi1kYXRhLXNlcnZlci90ZW1wbGF0ZQppbmRleCA0 YWU4MjBiZTA2OC4uZGVjNzJlN2M0MjQgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZXZvbHV0aW9uLWRh dGEtc2VydmVyL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZXZvbHV0aW9uLWRhdGEtc2VydmVyL3Rl bXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZXZvbHV0aW9uLWRh dGEtc2VydmVyJwogcGtnbmFtZT1ldm9sdXRpb24tZGF0YS1zZXJ2ZXIKLXZlcnNpb249My4zNi4x Ci1yZXZpc2lvbj0yCit2ZXJzaW9uPTMuMzYuMgorcmV2aXNpb249MQogYnVpbGRfc3R5bGU9Y21h a2UKIGJ1aWxkX2hlbHBlcj1naXIKIGNvbmZpZ3VyZV9hcmdzPSItREVOQUJMRV9VT0E9T0ZGCkBA IC0xNyw3ICsxNyw3IEBAIGxpY2Vuc2U9IkxHUEwtMi4xLW9ubHkiCiBob21lcGFnZT0iaHR0cHM6 Ly93aWtpLmdub21lLm9yZy9BcHBzL0V2b2x1dGlvbiIKIGNoYW5nZWxvZz0iaHR0cHM6Ly9yYXcu Z2l0aHVidXNlcmNvbnRlbnQuY29tL0dOT01FL2V2b2x1dGlvbi1kYXRhLXNlcnZlci9nbm9tZS0z LTM2L05FV1MiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24l Lip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT0xMzEyMmIyZWRkZGI5 ODMwNjIwN2QyYTM1ZDVjY2FlMjVhOTA3MDI3NjljYTBhMGI1MTY1M2I1OTg0OTg2Nzk2CitjaGVj a3N1bT05OGUyNzRjZmVjMTZjZWU2YTRiM2I5Yzc4OTdmNmUxMTM2ZDAwZTRmMzFhMGQ2NjIxNDky NWFiYmFjNzZlOTdiCiAKIGJ1aWxkX29wdGlvbnM9ImdpciIKIGlmIFsgLXogIiRDUk9TU19CVUlM RCIgXTsgdGhlbgoKRnJvbSA3Zjg2MjUyYThmNmI5NTFhMjM5Mjk0OTEwMzFhZDc3NjI4ZDBiOGEw IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2su Y29tPgpEYXRlOiBGcmksIDEgTWF5IDIwMjAgMDg6Mzg6MjMgKzA2MDAKU3ViamVjdDogW1BBVENI IDIxLzUyXSBldm9sdXRpb246IHVwZGF0ZSB0byAzLjM2LjIuCgotLS0KIHNyY3BrZ3MvZXZvbHV0 aW9uL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAy IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZXZvbHV0aW9uL3RlbXBsYXRlIGIv c3JjcGtncy9ldm9sdXRpb24vdGVtcGxhdGUKaW5kZXggNTYwZWQ5M2RhMDIuLmM5YzNhZmI3ZjZm IDEwMDY0NAotLS0gYS9zcmNwa2dzL2V2b2x1dGlvbi90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2V2 b2x1dGlvbi90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2V2 b2x1dGlvbicKIHBrZ25hbWU9ZXZvbHV0aW9uCi12ZXJzaW9uPTMuMzYuMQordmVyc2lvbj0zLjM2 LjIKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPWNtYWtlCiBjb25maWd1cmVfYXJncz0iLURFTkFC TEVfQVVUT0FSPU9GRiAtREVOQUJMRV9MSUJDUllQVFVJPU9GRiAtREVOQUJMRV9HVEtTUEVMTD1P RkYKQEAgLTE5LDcgKzE5LDcgQEAgbGljZW5zZT0iTEdQTC0yLjEtb3ItbGF0ZXIsIExHUEwtMy4w LW9yLWxhdGVyLCBHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9t ZS5vcmcvQXBwcy9Fdm9sdXRpb24iCiBjaGFuZ2Vsb2c9Imh0dHBzOi8vcmF3LmdpdGh1YnVzZXJj b250ZW50LmNvbS9HTk9NRS9ldm9sdXRpb24vZ25vbWUtMy0zNi9ORVdTIgogZGlzdGZpbGVzPSIk e0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lv bn0udGFyLnh6IgotY2hlY2tzdW09ODczYWNmMWRiZWMzOGU2N2UxNjkwNjQ2NDVhYzNhOWI5YTk0 NGJkMmI2MzMxNjFkZjZlNWYwNTcwMGUzNmNiOAorY2hlY2tzdW09YzUwOTQ4YzFhM2RkYjM5Yjcy YWNkOTNkZTc3Zjk0Nzg3Y2RjMWJlZjMzMGI5NjdiYmI4YjZjNzIzMzQzMzE4YQogc2hsaWJfcHJv dmlkZXM9ImxpYmV2b2x1dGlvbi1jYWxlbmRhci5zbyBsaWJldm9sdXRpb24tdXRpbC5zbyBsaWJl bWFpbC1lbmdpbmUuc28KICBsaWJldm9sdXRpb24tbWFpbC5zbyBsaWJldm9sdXRpb24tc2hlbGwu c28iCiAKCkZyb20gMDJmZmI3M2E4MTg4NTM1MWQwOGQwMWE2YjI1ZjU2ODMyMGZiYzU3NSBNb24g U2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4K RGF0ZTogRnJpLCAxIE1heSAyMDIwIDA4OjM4OjI3ICswNjAwClN1YmplY3Q6IFtQQVRDSCAyMi81 Ml0gZXZvbHV0aW9uLWV3czogdXBkYXRlIHRvIDMuMzYuMi4KCi0tLQogc3JjcGtncy9ldm9sdXRp b24tZXdzL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCsp LCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZXZvbHV0aW9uLWV3cy90ZW1w bGF0ZSBiL3NyY3BrZ3MvZXZvbHV0aW9uLWV3cy90ZW1wbGF0ZQppbmRleCA0ZmY4MTE2NDY2Yy4u YTE3MWY0YzRhMDggMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZXZvbHV0aW9uLWV3cy90ZW1wbGF0ZQor KysgYi9zcmNwa2dzL2V2b2x1dGlvbi1ld3MvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRl bXBsYXRlIGZpbGUgZm9yICdldm9sdXRpb24tZXdzJwogcGtnbmFtZT1ldm9sdXRpb24tZXdzCi12 ZXJzaW9uPTMuMzYuMQordmVyc2lvbj0zLjM2LjIKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPWNt YWtlCiBjb25maWd1cmVfYXJncz0iLURMSUJFWEVDX0lOU1RBTExfRElSPS91c3IvbGliL2V2b2x1 dGlvbiIKQEAgLTEyLDQgKzEyLDQgQEAgbGljZW5zZT0iTEdQTC0yLjEtb3ItbGF0ZXIiCiBob21l cGFnZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9BcHBzL0V2b2x1dGlvbiIKIGNoYW5nZWxvZz0i aHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNvbnRlbnQuY29tL0dOT01FL2V2b2x1dGlvbi1ld3MvZ25v bWUtMy0zNi9ORVdTIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJz aW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09ZDA4ODNjN2Qy Mjc4MjdjYzVjNDQ2OGI3ZTMxYTNlZTM3MGJjZDdkNDFhNGRiYjk1MGFiNWRiMzZjOTU1MWFjMQor Y2hlY2tzdW09MmU0MmU0ODkwNDg3ZjhjN2Y5ZDc3NmE0NDQ0ZGY2ZWZkNTI5OWNhMDAzYTMwMDAy ZWI1ZjAyMjA5MWRjMzU5ZAoKRnJvbSAyZGI2ZDE1NTBiNzc1MDM2NGVkNDdjN2Q3ZjY1MjdhYzVh ODA3NTYxIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91 dGxvb2suY29tPgpEYXRlOiBUdWUsIDUgTWF5IDIwMjAgMTE6MjA6MjMgKzA2MDAKU3ViamVjdDog W1BBVENIIDIzLzUyXSBhdGs6IHVwZGF0ZSB0byAyLjM2LjAuCgotLS0KIHNyY3BrZ3MvYXRrL3Rl bXBsYXRlIHwgNiArKystLS0KIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVs ZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9hdGsvdGVtcGxhdGUgYi9zcmNwa2dzL2F0 ay90ZW1wbGF0ZQppbmRleCA3YzE0YjExNjU5OC4uY2EyMmQzNjYxOTggMTAwNjQ0Ci0tLSBhL3Ny Y3BrZ3MvYXRrL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvYXRrL3RlbXBsYXRlCkBAIC0xLDE4ICsx LDE4IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdhdGsnCiBwa2duYW1lPWF0awotdmVyc2lvbj0y LjM0LjEKK3ZlcnNpb249Mi4zNi4wCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1tZXNvbgogYnVp bGRfaGVscGVyPSJnaXIiCiBjb25maWd1cmVfYXJncz0iLURpbnRyb3NwZWN0aW9uPSQodm9wdF9p ZiBnaXIgdHJ1ZSBmYWxzZSkiCi1ob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcgZ2xpYi1kZXZl bCIKK2hvc3RtYWtlZGVwZW5kcz0iZ2V0dGV4dCBwa2ctY29uZmlnIGdsaWItZGV2ZWwiCiBtYWtl ZGVwZW5kcz0ibGliZ2xpYi1kZXZlbCIKIHNob3J0X2Rlc2M9IlNldCBvZiBpbnRlcmZhY2VzIGZv ciBhY2Nlc3NpYmlsaXR5IgogbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGlu dXgub3JnPiIKIGxpY2Vuc2U9IkxHUEwtMi4xLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8v ZGV2ZWxvcGVyLmdub21lLm9yZy9hdGsvIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9L2F0ay8k e3ZlcnNpb24lLip9L2F0ay0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPWQ0ZjBlM2IzZDIx MjY1ZmNmMmJjMzcxZTExN2RhNTFjNDJlZGUxYTcxZjZkYjFjODM0ZTY5NzZiYjIwOTk3Y2IKK2No ZWNrc3VtPWZiNzYyNDdlMzY5NDAyYmUyM2YxZjVjNjVkMzhhOTYzOWMxMTY0ZDkzNGU0MGY2YTlj ZjNjOWU5NmI2NTI3ODgKIAogIyBQYWNrYWdlIGJ1aWxkIG9wdGlvbnMKIGJ1aWxkX29wdGlvbnM9 ImdpciIKCkZyb20gOWQyODc4ZTQzYjVmMTAyYzExZTkyYzVkZTE4NTNjMWRlZmQyZDJmMCBNb24g U2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4K RGF0ZTogVHVlLCA1IE1heSAyMDIwIDEyOjQzOjUyICswNjAwClN1YmplY3Q6IFtQQVRDSCAyNC81 Ml0gYXQtc3BpMi1jb3JlOiB1cGRhdGUgdG8gMi4zNi4wLgoKLS0tCiBzcmNwa2dzL2F0LXNwaTIt Y29yZS90ZW1wbGF0ZSB8IDkgKysrKy0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgNCBpbnNlcnRpb25z KCspLCA1IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvYXQtc3BpMi1jb3JlL3Rl bXBsYXRlIGIvc3JjcGtncy9hdC1zcGkyLWNvcmUvdGVtcGxhdGUKaW5kZXggYjM4M2ZlOTliZWQu LmZiNzk5YWY3ZTUyIDEwMDY0NAotLS0gYS9zcmNwa2dzL2F0LXNwaTItY29yZS90ZW1wbGF0ZQor KysgYi9zcmNwa2dzL2F0LXNwaTItY29yZS90ZW1wbGF0ZQpAQCAtMSwxOCArMSwxNyBAQAogIyBU ZW1wbGF0ZSBmaWxlIGZvciAnYXQtc3BpMi1jb3JlJwogcGtnbmFtZT1hdC1zcGkyLWNvcmUKLXZl cnNpb249Mi4zNC4wCit2ZXJzaW9uPTIuMzYuMAogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9bWVz b24KIGJ1aWxkX2hlbHBlcj0iZ2lyIgotaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIGRidXMg Z2xpYi1kZXZlbCIKLW1ha2VkZXBlbmRzPSJsaWJnbGliLWRldmVsIGxpYlhleHQtZGV2ZWwgbGli U00tZGV2ZWwgbGliWHRzdC1kZXZlbAotIGxpYlhldmllLWRldmVsIGRidXMtZGV2ZWwiCitob3N0 bWFrZWRlcGVuZHM9ImdldHRleHQgcGtnLWNvbmZpZyBkYnVzIGdsaWItZGV2ZWwiCittYWtlZGVw ZW5kcz0ibGliZ2xpYi1kZXZlbCBsaWJTTS1kZXZlbCBsaWJYdHN0LWRldmVsIGRidXMtZGV2ZWwi CiBzaG9ydF9kZXNjPSJBc3Npc3RpdmUgVGVjaG5vbG9neSBTZXJ2aWNlIFByb3ZpZGVyIEludGVy ZmFjZSIKIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBs aWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vZ2l0bGFiLmdub21l Lm9yZy9HTk9NRS9hdC1zcGkyLWNvcmUiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2du YW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1 bT1kNjI5Y2RiZDY3NGU1MzlmODkxMjAyODUxMmFmNTgzOTkwOTM4YzdiNDllMjUxODRjMTI2YjAw MTIxZWYxMWM2CitjaGVja3N1bT04OGRhNTdkZTBhN2UzYzYwYmMzNDFhOTc0YTgwZmRiYTA5MTYx MmRiMzU0N2M0MTBkNmRlYWIwMzljYTVjMDVhCiAKICMgUGFja2FnZSBidWlsZCBvcHRpb25zCiBi dWlsZF9vcHRpb25zPSJnaXIiCgpGcm9tIGNjNTRjMjQ3ZmZjMDk3ZDcyZmI3YTUxZGE5YWM4ZWQ4 M2JlYjk0MGMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVA b3V0bG9vay5jb20+CkRhdGU6IFR1ZSwgNSBNYXkgMjAyMCAxMjo0NDowMCArMDYwMApTdWJqZWN0 OiBbUEFUQ0ggMjUvNTJdIGF0LXNwaTItYXRrOiB1cGRhdGUgdG8gMi4zNC4yLgoKLS0tCiBzcmNw a2dzL2F0LXNwaTItYXRrL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNl cnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvYXQtc3BpMi1h dGsvdGVtcGxhdGUgYi9zcmNwa2dzL2F0LXNwaTItYXRrL3RlbXBsYXRlCmluZGV4IDQzNTFiNzk5 NmYzLi5hYTdiODgzOWM5ZiAxMDA2NDQKLS0tIGEvc3JjcGtncy9hdC1zcGkyLWF0ay90ZW1wbGF0 ZQorKysgYi9zcmNwa2dzL2F0LXNwaTItYXRrL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBU ZW1wbGF0ZSBmaWxlIGZvciAnYXQtc3BpMi1hdGsnCiBwa2duYW1lPWF0LXNwaTItYXRrCi12ZXJz aW9uPTIuMzQuMQordmVyc2lvbj0yLjM0LjIKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPW1lc29u CiBob3N0bWFrZWRlcGVuZHM9ImxpYnRvb2wgcGtnLWNvbmZpZyBpbnRsdG9vbCBnbGliLWRldmVs IgpAQCAtMTAsNyArMTAsNyBAQCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRs aW51eC5vcmc+IgogbGljZW5zZT0iTEdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cDov L3d3dy5nbm9tZS5vcmciCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3Zl cnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT03NzZkZjkz MDc0OGZkZTcxYzEyOGJlNmMzNjZhOTg3Yjk4YjZlZTY2ZDUwOGVkOWM4ZGIyMzU1YmY0YjljYzE2 CitjaGVja3N1bT05MDEzMjNjZWUwZWVmMDVjMDFlYzRkZWUwNmM3MDFhZWVjYTgxYTMxNGE3ZDYw MjE2ZmEzNjMwMDVlMjdmNGYwCiAKIGF0LXNwaTItYXRrLWRldmVsX3BhY2thZ2UoKSB7CiAJZGVw ZW5kcz0iJHttYWtlZGVwZW5kc30gJHtzb3VyY2Vwa2d9Pj0ke3ZlcnNpb259XyR7cmV2aXNpb259 IgoKRnJvbSAxYWVhYWUwNmIzNzdmN2JkNDVmN2JjOGY2NjYxNjJjZmVlNjhhNTllIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRl OiBXZWQsIDYgTWF5IDIwMjAgMTk6NDc6NTggKzA2MDAKU3ViamVjdDogW1BBVENIIDI2LzUyXSBw eXRob24tYXRzcGk6IHVwZGF0ZSB0byAyLjM2LjAuCgotLS0KIHNyY3BrZ3MvcHl0aG9uLWF0c3Bp L3RlbXBsYXRlIHwgMTEgKysrKy0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA0IGluc2VydGlvbnMo KyksIDcgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9weXRob24tYXRzcGkvdGVt cGxhdGUgYi9zcmNwa2dzL3B5dGhvbi1hdHNwaS90ZW1wbGF0ZQppbmRleCBjZmExZWYzNTM3Ny4u MTBhNmNhN2JjNzIgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvcHl0aG9uLWF0c3BpL3RlbXBsYXRlCisr KyBiL3NyY3BrZ3MvcHl0aG9uLWF0c3BpL3RlbXBsYXRlCkBAIC0xLDIxICsxLDE5IEBACiAjIFRl bXBsYXRlIGZpbGUgZm9yICdweXRob24tYXRzcGknCiBwa2duYW1lPXB5dGhvbi1hdHNwaQotdmVy c2lvbj0yLjMyLjEKK3ZlcnNpb249Mi4zNi4wCiByZXZpc2lvbj0yCiBhcmNocz1ub2FyY2gKIHdy a3NyYz0icHlhdHNwaS0ke3ZlcnNpb259IgogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQotcHlj b21waWxlX21vZHVsZT0icHlhdHNwaSIKLWhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyBweXRo b24gcHl0aG9uMyIKLW1ha2VkZXBlbmRzPSJhdC1zcGkyLWNvcmUtZGV2ZWwgcHl0aG9uLWdvYmpl Y3QtZGV2ZWwKLSBweXRob24zLWdvYmplY3QtZGV2ZWwiCitob3N0bWFrZWRlcGVuZHM9InBrZy1j b25maWcgcHl0aG9uIHB5dGhvbjMgd2hpY2giCittYWtlZGVwZW5kcz0iYXQtc3BpMi1jb3JlLWRl dmVsIHB5dGhvbi1nb2JqZWN0LWRldmVsIgogZGVwZW5kcz0iYXQtc3BpMi1jb3JlIHB5dGhvbi1n b2JqZWN0Igogc2hvcnRfZGVzYz0iUHl0aG9uMiBiaW5kaW5ncyBmb3IgQVQtU1BJIgogbWFpbnRh aW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0y LjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL3B5 YXRzcGkyIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9L3B5YXRzcGkvJHt2ZXJzaW9uJS4qfS9w eWF0c3BpLSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09ODQ5NTRhNWJiZWFjYzgzNjQzZjA1 Nzc4ZDhiZWFmY2FiODIwOGUxMWIzOWIyNDYzN2I0YzRkZDFmODYyMDM4OQorY2hlY2tzdW09NTEz NmMxYmY5MTllMTAxZDRlYzkwMWEyNzZlODZlYTYwZTU4ODFhOGZmNzc2M2UzNTZmMTk4NDBlNWZm ZTFkZAogCiBwcmVfY29uZmlndXJlKCkgewogCW1rZGlyIC1wIGF0c3BpLSR7cHkyX3Zlcn0KQEAg LTQ2LDcgKzQ0LDYgQEAgZG9faW5zdGFsbCgpIHsKIAogcHl0aG9uMy1hdHNwaV9wYWNrYWdlKCkg ewogCWFyY2hzPW5vYXJjaAotCXB5Y29tcGlsZV9tb2R1bGU9InB5YXRzcGkiCiAJZGVwZW5kcz0i YXQtc3BpMi1jb3JlIHB5dGhvbjMtZ29iamVjdCIKIAlzaG9ydF9kZXNjPSIke3Nob3J0X2Rlc2Mv UHl0aG9uMi9QeXRob24zfSIKIAlwa2dfaW5zdGFsbCgpIHsKCkZyb20gMWRhMWEyMTZkN2Y4YzNm OWRjNWJiNWE4ZGEzY2M4YTY3YjZhZTczZCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTog TmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCA1IE1heSAyMDIwIDE1OjQz OjAxICswNjAwClN1YmplY3Q6IFtQQVRDSCAyNy81Ml0gZm9sa3M6IHVwZGF0ZSB0byAwLjE0LjAu CgotLS0KIGNvbW1vbi9zaGxpYnMgICAgICAgICAgfCAgNyArKysrLS0tCiBzcmNwa2dzL2ZvbGtz L3RlbXBsYXRlIHwgMTIgKysrKysrLS0tLS0tCiAyIGZpbGVzIGNoYW5nZWQsIDEwIGluc2VydGlv bnMoKyksIDkgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvY29tbW9uL3NobGlicyBiL2NvbW1v bi9zaGxpYnMKaW5kZXggOWU5ZGZiNjkxYTkuLjljZGE4NDQ4MjRkIDEwMDY0NAotLS0gYS9jb21t b24vc2hsaWJzCisrKyBiL2NvbW1vbi9zaGxpYnMKQEAgLTgzNiw5ICs4MzYsMTAgQEAgbGliZG1y LnNvLjAuMSBkZWVwaW4tbW92aWUtcmVib3JuLTMuMi41XzEKIGxpYmdqcy5zby4wIGdqcy0xLjY1 LjJfMQogbGlidGVsZXBhdGh5LWdsaWIuc28uMCB0ZWxlcGF0aHktZ2xpYi0wLjE1LjVfMQogbGli YWNjb3VudHNzZXJ2aWNlLnNvLjAgYWNjb3VudHNzZXJ2aWNlLTAuNi40XzEKLWxpYmZvbGtzLnNv LjI1IGZvbGtzLTAuOS41XzEKLWxpYmZvbGtzLXRlbGVwYXRoeS5zby4yNSBmb2xrcy0wLjkuNV8x Ci1saWJmb2xrcy1lZHMuc28uMjUgZm9sa3MtMC45LjVfMQorbGliZm9sa3Muc28uMjUgZm9sa3Mt MC4xNC4wXzEKK2xpYmZvbGtzLWR1bW15LnNvLjI1IGZvbGtzLTAuMTQuMF8xCitsaWJmb2xrcy10 ZWxlcGF0aHkuc28uMjUgZm9sa3MtMC4xNC4wXzEKK2xpYmZvbGtzLWVkcy5zby4yNSBmb2xrcy0w LjE0LjBfMQogbGlibmljZS5zby4xMCBsaWJuaWNlLTAuMS4wXzEKIGxpYmd1cG5wLWlnZC0xLjAu c28uNCBndXBucC1pZ2QtMC4yLjBfMQogbGlidGVsZXBhdGh5LWxvZ2dlci5zby4zIHRlbGVwYXRo eS1sb2dnZXItMC42LjBfMQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9mb2xrcy90ZW1wbGF0ZSBiL3Ny Y3BrZ3MvZm9sa3MvdGVtcGxhdGUKaW5kZXggMzMxMGM1NGZhZGQuLmUyMWNhOWMxMDc3IDEwMDY0 NAotLS0gYS9zcmNwa2dzL2ZvbGtzL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZm9sa3MvdGVtcGxh dGUKQEAgLTEsMTIgKzEsMTIgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2ZvbGtzJwogcGtnbmFt ZT1mb2xrcwotdmVyc2lvbj0wLjEzLjEKLXJldmlzaW9uPTIKK3ZlcnNpb249MC4xNC4wCityZXZp c2lvbj0xCiBidWlsZF9zdHlsZT1tZXNvbgogYnVpbGRfaGVscGVyPWdpcgotY29uZmlndXJlX2Fy Z3M9Ii1EYl9sdG89ZmFsc2UgLURsaWJzb2NpYWx3ZWItYmFja2VuZD1mYWxzZSIKLWhvc3RtYWtl ZGVwZW5kcz0icGtnLWNvbmZpZyBpbnRsdG9vbCBnbGliLWRldmVsIHZhbGEgcHl0aG9uIGdvYmpl Y3QtaW50cm9zcGVjdGlvbgotIGV2b2x1dGlvbi1kYXRhLXNlcnZlci1kZXZlbCIKK2NvbmZpZ3Vy ZV9hcmdzPSItRGJfbHRvPWZhbHNlIgoraG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIGludGx0 b29sIGdsaWItZGV2ZWwgdmFsYSBweXRob24zIHB5dGhvbjMtZGJ1c21vY2sKKyBnb2JqZWN0LWlu dHJvc3BlY3Rpb24gZXZvbHV0aW9uLWRhdGEtc2VydmVyLWRldmVsIgogbWFrZWRlcGVuZHM9InJl YWRsaW5lLWRldmVsIHRlbGVwYXRoeS1nbGliLWRldmVsIHplaXRnZWlzdC1kZXZlbAogIGxpYmdl ZTA4LWRldmVsIGV2b2x1dGlvbi1kYXRhLXNlcnZlci1kZXZlbCB0cmFja2VyLWRldmVsIgogZGVw ZW5kcz0iemVpdGdlaXN0IgpAQCAtMTUsNyArMTUsNyBAQCBtYWludGFpbmVyPSJFbm5vIEJvbGFu ZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iTEdQTC0yLjEtb3ItbGF0ZXIiCiBo b21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9Qcm9qZWN0cy9Gb2xrcyIKIGRpc3RmaWxl cz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3Zl cnNpb259LnRhci54eiIKLWNoZWNrc3VtPTNkZjFjNjYzYjgyZmUyMTFhZWFkMmIzMWNhZTFmYzQx ZDEyNGU4NTQzNjM3NTc2MmY2NzQ1YzQ1YmE0NmFhNWQKK2NoZWNrc3VtPWQ2ZTc3OGRhNjM3ZDNi MzNmZDlhNmI0NTExNWU4MTU3ZDg4NjgyMTFkYzA4Yjk0M2QxMDc1YjVlYjcyODJiYjkKIAogZm9s a3MtZGV2ZWxfcGFja2FnZSgpIHsKIAlkZXBlbmRzPSIke21ha2VkZXBlbmRzfSAke3NvdXJjZXBr Z30+PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0iCgpGcm9tIDM0ODMxYjA3YWNmYmI3NDUxNzk5YTBh YjE2ZjVhYTllZjk3ZDczYzQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxt bmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IEZyaSwgMSBNYXkgMjAyMCAwODo0MTo1NiArMDYw MApTdWJqZWN0OiBbUEFUQ0ggMjgvNTJdIGZpbGUtcm9sbGVyOiB1cGRhdGUgdG8gMy4zNi4yLgoK LS0tCiBzcmNwa2dzL2ZpbGUtcm9sbGVyL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdl ZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mv ZmlsZS1yb2xsZXIvdGVtcGxhdGUgYi9zcmNwa2dzL2ZpbGUtcm9sbGVyL3RlbXBsYXRlCmluZGV4 IDVmYjc2ZDk3MzA3Li42YTBjMjgwZjBkNSAxMDA2NDQKLS0tIGEvc3JjcGtncy9maWxlLXJvbGxl ci90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2ZpbGUtcm9sbGVyL3RlbXBsYXRlCkBAIC0xLDYgKzEs NiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZmlsZS1yb2xsZXInCiBwa2duYW1lPWZpbGUtcm9s bGVyCi12ZXJzaW9uPTMuMzYuMAordmVyc2lvbj0zLjM2LjIKIHJldmlzaW9uPTEKIGJ1aWxkX3N0 eWxlPW1lc29uCiBob3N0bWFrZWRlcGVuZHM9ImdldHRleHQgZ2xpYi1kZXZlbCBpdHN0b29sIHBr Zy1jb25maWciCkBAIC0xMiw0ICsxMiw0IEBAIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0 b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9 Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcvQXBwcy9GaWxlUm9sbGVyIgogZGlzdGZpbGVzPSIke0dO T01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0u dGFyLnh6IgotY2hlY2tzdW09YjkxNDRkZThmNTM2ZjU4M2VjMjlkNzAzYzJjMTcwYmYyZDAwYzZj MTY2Y2Q1ZTNmN2VmYWJkYTU1MWYxMDQ3OAorY2hlY2tzdW09MjY4ZjdmZGFkOGQyYTc4ZGZlZDVl ODJlYjg3MTBiYWQzODljMzExYjcyMDY2NmQ2ZjA3YTA0ZWQ1MTA1NmJkMgoKRnJvbSAyYTRhZTc2 ZWJkMGY5MzhiYjdlODAwYzVkOTUzMTBjODhjMTI4MTIxIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAw MQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUdWUsIDUgTWF5IDIw MjAgMDc6NTg6MDIgKzA2MDAKU3ViamVjdDogW1BBVENIIDI5LzUyXSBkY29uZi1lZGl0b3I6IHVw ZGF0ZSB0byAzLjM2LjIuCgotLS0KIHNyY3BrZ3MvZGNvbmYtZWRpdG9yL3RlbXBsYXRlIHwgNCAr Ky0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlm ZiAtLWdpdCBhL3NyY3BrZ3MvZGNvbmYtZWRpdG9yL3RlbXBsYXRlIGIvc3JjcGtncy9kY29uZi1l ZGl0b3IvdGVtcGxhdGUKaW5kZXggZGUyNTBiYmM4YTkuLjNiOGNkOGNiNzJmIDEwMDY0NAotLS0g YS9zcmNwa2dzL2Rjb25mLWVkaXRvci90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2Rjb25mLWVkaXRv ci90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2Rjb25mLWVk aXRvcicKIHBrZ25hbWU9ZGNvbmYtZWRpdG9yCi12ZXJzaW9uPTMuMzYuMAordmVyc2lvbj0zLjM2 LjIKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPW1lc29uCiBob3N0bWFrZWRlcGVuZHM9ImRvY2Jv b2steHNsIGdsaWItZGV2ZWwgbGlieHNsdCBwa2ctY29uZmlnIHZhbGEiCkBAIC0xMCw0ICsxMCw0 IEBAIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNl bnNlPSJHUEwtMy4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcv UHJvamVjdHMvZGNvbmYiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3Zl cnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT03MmVlZDA1 NjcwOTE3ZjhlNDMyMDBlNDBjY2M2YmU2MDIxMWYwYTg3YjAxNzUzNGVhYzFmZDZjNzE3M2EwNjkz CitjaGVja3N1bT1lZGNlYzg4NjdmMDE4NTg5MTI1ZjE3NzQwNzc2MGM2NDJiYmJiNTJmZTUxMjJk YWFjNTkwNTIyM2Q2YjNlMWM3CgpGcm9tIDA2ZTQ1MmQ4OWNmYzcyM2NkNTYyNzIxMmE1NzExMTMx NDEwMTMwZGEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVA b3V0bG9vay5jb20+CkRhdGU6IFR1ZSwgNSBNYXkgMjAyMCAxMDoyMDo1NiArMDYwMApTdWJqZWN0 OiBbUEFUQ0ggMzAvNTJdIHRyYWNrZXI6IHVwZGF0ZSB0byAyLjMuNC4KCi0tLQogc3JjcGtncy90 cmFja2VyL3RlbXBsYXRlIHwgOCArKysrLS0tLQogMSBmaWxlIGNoYW5nZWQsIDQgaW5zZXJ0aW9u cygrKSwgNCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3RyYWNrZXIvdGVtcGxh dGUgYi9zcmNwa2dzL3RyYWNrZXIvdGVtcGxhdGUKaW5kZXggMzcwNzRjYjM0OGQuLmU4MTRmNzdj NzExIDEwMDY0NAotLS0gYS9zcmNwa2dzL3RyYWNrZXIvdGVtcGxhdGUKKysrIGIvc3JjcGtncy90 cmFja2VyL3RlbXBsYXRlCkBAIC0xLDEzICsxLDEzIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICd0 cmFja2VyJwogcGtnbmFtZT10cmFja2VyCi12ZXJzaW9uPTIuMy4xCi1yZXZpc2lvbj0yCit2ZXJz aW9uPTIuMy40CityZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1tZXNvbgogYnVpbGRfaGVscGVyPSJn aXIiCiBjb25maWd1cmVfYXJncz0iLURkb2NzPWZhbHNlIC1EZnRzPXRydWUgLURmdW5jdGlvbmFs X3Rlc3RzPWZhbHNlCiAgLURqb3VybmFsPXRydWUgLURtYW49dHJ1ZSAtRG5ldHdvcmtfbWFuYWdl cj1lbmFibGVkIC1Ec3RlbW1lcj1kaXNhYmxlZAogIC1Ec3lzdGVtZF91c2VyX3NlcnZpY2VzPW5v IgotaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIGdsaWItZGV2ZWwgdmFsYSIKK2hvc3RtYWtl ZGVwZW5kcz0iZ2V0dGV4dCBwa2ctY29uZmlnIGdsaWItZGV2ZWwgdmFsYSIKIG1ha2VkZXBlbmRz PSJkYnVzLWRldmVsIGxpYmdsaWItZGV2ZWwgaWN1LWRldmVsIGpzb24tZ2xpYi1kZXZlbAogIGxp YnNvdXAtZGV2ZWwgbGlieG1sMi1kZXZlbCBzcWxpdGUtZGV2ZWwgTmV0d29ya01hbmFnZXItZGV2 ZWwKICBiYXNoLWNvbXBsZXRpb24iCkBAIC0xNiw3ICsxNiw3IEBAIG1haW50YWluZXI9Ik9ycGhh bmVkIDxvcnBoYW5Adm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgog aG9tZXBhZ2U9Imh0dHBzOi8vbGl2ZS5nbm9tZS5vcmcvVHJhY2tlciIKIGRpc3RmaWxlcz0iJHtH Tk9NRV9TSVRFfS90cmFja2VyLyR7dmVyc2lvbiUuKn0vdHJhY2tlci0ke3ZlcnNpb259LnRhci54 eiIKLWNoZWNrc3VtPWI2NzQ4NzI2ZTQ2NWFkMmY0ZDk5MTU2MDYzNGIxZmQwZGY4ODQxZjNkOTgx YjNiODM3YzQxNjJhYmVkZjA4YTEKK2NoZWNrc3VtPTU3Nzk1MjI0NGFiOTc3Yzc4YjBiODhlMmY2 M2M0MTk3ZWFiYTE2ZTRkNjZiZmY2OTJiN2Y1ODk5M2UwNjUxNmQKIAogaWYgWyAiJENST1NTX0JV SUxEIiBdOyB0aGVuCiAJaG9zdG1ha2VkZXBlbmRzKz0iIGRidXMiCgpGcm9tIGFjMjE1MTczYTYx NzAzYzUyMDEwMjQzM2NhNzc4YzgyNjI4ZjA2YWEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZy b206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFdlZCwgNiBNYXkgMjAyMCAx OTo1NjoxNCArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMzEvNTJdIG9yY2E6IHVwZGF0ZSB0byAzLjM2 LjIuCgotLS0KIHNyY3BrZ3Mvb3JjYS90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQs IDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL29y Y2EvdGVtcGxhdGUgYi9zcmNwa2dzL29yY2EvdGVtcGxhdGUKaW5kZXggZjcwMjAyZTZkNzYuLjhh NzBjODQ5ZjZkIDEwMDY0NAotLS0gYS9zcmNwa2dzL29yY2EvdGVtcGxhdGUKKysrIGIvc3JjcGtn cy9vcmNhL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnb3Jj YScKIHBrZ25hbWU9b3JjYQotdmVyc2lvbj0zLjM2LjEKK3ZlcnNpb249My4zNi4yCiByZXZpc2lv bj0xCiBhcmNocz1ub2FyY2gKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKQEAgLTEzLDcgKzEz LDcgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxp Y2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21lLm9y Zy9Qcm9qZWN0cy9PcmNhIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2 ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09YzFhYzY0 OGI2YmUzMTQ4OGMyNmZmOTU5MTE0Mjg3ODY5ZGY5Y2UzY2EyMTk5OWU0MGRlZDg3NzQxYzk4ODMx ZgorY2hlY2tzdW09Y2YwMDU1Yjc2ZjIxNTljMzNjOWQ5ZjdkZWJiNzY5NDM1YzIwMWJiZmE2ZGNm MGYwMWZkYzU4ZTkyOTQ3YmY0MwogCiBpZiBbICIkQ1JPU1NfQlVJTEQiIF07IHRoZW4KIAlob3N0 bWFrZWRlcGVuZHMrPSIgcHl0aG9uMy1nb2JqZWN0LWRldmVsIgoKRnJvbSBkY2JmYTEzMzc5MDg5 ZTE0NGI1NWU2YTYzMjQ1MzEzNDhiYzVhZDNhIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9t OiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUdWUsIDUgTWF5IDIwMjAgMTE6 MDM6MjkgKzA2MDAKU3ViamVjdDogW1BBVENIIDMyLzUyXSBnbm9tZS1nZXR0aW5nLXN0YXJ0ZWQt ZG9jczogdXBkYXRlIHRvIDMuMzYuMi4KCi0tLQogc3JjcGtncy9nbm9tZS1nZXR0aW5nLXN0YXJ0 ZWQtZG9jcy90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygr KSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLWdldHRpbmctc3Rh cnRlZC1kb2NzL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1nZXR0aW5nLXN0YXJ0ZWQtZG9jcy90 ZW1wbGF0ZQppbmRleCA1YmVjOTM0OTBiYS4uYmVkOWI2OTYxNjIgMTAwNjQ0Ci0tLSBhL3NyY3Br Z3MvZ25vbWUtZ2V0dGluZy1zdGFydGVkLWRvY3MvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9t ZS1nZXR0aW5nLXN0YXJ0ZWQtZG9jcy90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxh dGUgZmlsZSBmb3IgJ2dub21lLWdldHRpbmctc3RhcnRlZC1kb2NzJwogcGtnbmFtZT1nbm9tZS1n ZXR0aW5nLXN0YXJ0ZWQtZG9jcwotdmVyc2lvbj0zLjM0LjAKK3ZlcnNpb249My4zNi4yCiByZXZp c2lvbj0xCiBhcmNocz1ub2FyY2gKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKQEAgLTExLDQg KzExLDQgQEAgbGljZW5zZT0iQ0MtQlktU0EtMy4wIgogaG9tZXBhZ2U9Imh0dHBzOi8vZ2l0bGFi Lmdub21lLm9yZy9HTk9NRS9nbm9tZS1nZXR0aW5nLXN0YXJ0ZWQtZG9jcyIKICNjaGFuZ2Vsb2c9 Imh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS1nZXR0aW5nLXN0YXJ0ZWQtZG9j cy9yYXcvbWFzdGVyL05FV1MiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8k e3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT1mNzBj ZTJjYTIzYWQ3ODYyMTVmM2M5MmVjODU3ODNlM2FhYmVkMDdlNGY3ODcwMGZhMjdmOWIyY2Y3NmUw M2RiCitjaGVja3N1bT0wNDk0Yjg5MTNhOTQ2YjY0NTA1MzZlMTIwYzE1NGFiZDI5MjM4ZWJiYTJm NTI3MzQ1OTJiMWY2NDVlNTIxZGM2CgpGcm9tIDgyYTA4YmMxNzE3YTUwYmY2MTc5YWQyOTIyM2Q5 NTI2ZGI0OTMwNmIgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQu MjVAb3V0bG9vay5jb20+CkRhdGU6IFN1biwgMTkgQXByIDIwMjAgMTY6NTE6NDIgKzA2MDAKU3Vi amVjdDogW1BBVENIIDMzLzUyXSBnbm9tZS1wYW5lbDogdXBkYXRlIHRvIDMuMzYuMS4KCi0tLQog Y29tbW9uL3NobGlicyAgICAgICAgICAgICAgICB8IDMgKystCiBzcmNwa2dzL2dub21lLXBhbmVs L3RlbXBsYXRlIHwgNiArKystLS0KIDIgZmlsZXMgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCA0 IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2NvbW1vbi9zaGxpYnMgYi9jb21tb24vc2hsaWJz CmluZGV4IDljZGE4NDQ4MjRkLi5kZDY2ZjgxN2YyMCAxMDA2NDQKLS0tIGEvY29tbW9uL3NobGli cworKysgYi9jb21tb24vc2hsaWJzCkBAIC01NjgsNyArNTY4LDggQEAgbGlicGFja2FnZWtpdC1n bGliMi5zby4xOCBQYWNrYWdlS2l0LTEuMS4xMl8xCiBsaWJwc2wuc28uNSBsaWJwc2wtMC4yMC4y XzEKIGxpYnNvdXAtMi40LnNvLjEgbGlic291cC0yLjM0LjBfMQogbGlic291cC1nbm9tZS0yLjQu c28uMSBsaWJzb3VwLWdub21lLTIuMzQuMF8xCi1saWJwYW5lbC1hcHBsZXQuc28uMyBnbm9tZS1w YW5lbC0zLjMwLjBfMQorbGliZ25vbWUtcGFuZWwuc28uMCBnbm9tZS1wYW5lbC0zLjM2LjFfMQor bGlicGFuZWwtYXBwbGV0LnNvLjMgZ25vbWUtcGFuZWwtMy4zNi4xXzEKIGxpYnVuaW51bS5zby41 IGxpYnVuaW51bS0yLjdfMQogbGlidW5pcXVlLTMuMC5zby4wIGxpYnVuaXF1ZS0yLjkxLjRfMQog bGlid2Via2l0Mmd0ay00LjAuc28uMzcgd2Via2l0Mmd0ay0yLjYuMl8xCmRpZmYgLS1naXQgYS9z cmNwa2dzL2dub21lLXBhbmVsL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1wYW5lbC90ZW1wbGF0 ZQppbmRleCA3MGYyM2I4YjU1MS4uOWIwMGJmYWI2NTggMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25v bWUtcGFuZWwvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS1wYW5lbC90ZW1wbGF0ZQpAQCAt MSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLXBhbmVsJwogcGtnbmFtZT1n bm9tZS1wYW5lbAotdmVyc2lvbj0zLjM0LjEKLXJldmlzaW9uPTMKK3ZlcnNpb249My4zNi4xCity ZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBjb25maWd1cmVfYXJncz0iYXhf Y3Zfem9uZWluZm9fdHpkaXI9L3Vzci9zaGFyZS96b25laW5mbyIKIGhvc3RtYWtlZGVwZW5kcz0i Z2V0dGV4dC1kZXZlbCBnbGliLWRldmVsIGl0c3Rvb2wgcGtnLWNvbmZpZyB0emRhdGEgZ2V0dGV4 dCIKQEAgLTE0LDcgKzE0LDcgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lk bGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIsIEdGREwtMS4xLW9yLWxhdGVy LCBMR1BMLTIuMS1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL1By b2plY3RzL0dub21lUGFuZWwiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8k e3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT1hNmJj MDI1NTI1MmVlYjRiOTY0YmNiZTU1ZmQ3OTA4YjY5ZjkxNGMwNjJjNWVjOGRmZjVhYzAyNjJkMjli OTBkCitjaGVja3N1bT0xZTIxYjcyNmRkMzk3NTIzYWU3OWQyOWViNTM4YmNhZTA5ZTM0MjdlMjNj Y2Q2M2YyOGViMjVlZjM1NTJhYmQzCiBwYXRjaF9hcmdzPSItTnAxIgogCiBnbm9tZS1wYW5lbC1k ZXZlbF9wYWNrYWdlKCkgewoKRnJvbSBjMmM5MzQzNDAzYTg4MWM5YWQzNjBmYzk3MzFjYWE4MzEw NjBlMDE1IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91 dGxvb2suY29tPgpEYXRlOiBTdW4sIDE5IEFwciAyMDIwIDE3OjI2OjM2ICswNjAwClN1YmplY3Q6 IFtQQVRDSCAzNC81Ml0gbWV0YWNpdHk6IHVwZGF0ZSB0byAzLjM2LjEuCgotLS0KIGNvbW1vbi9z aGxpYnMgICAgICAgICAgICAgfCAxICsKIHNyY3BrZ3MvbWV0YWNpdHkvdGVtcGxhdGUgfCA2ICsr Ky0tLQogMiBmaWxlcyBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpk aWZmIC0tZ2l0IGEvY29tbW9uL3NobGlicyBiL2NvbW1vbi9zaGxpYnMKaW5kZXggZGQ2NmY4MTdm MjAuLjQ4YzJhYmJmMDZmIDEwMDY0NAotLS0gYS9jb21tb24vc2hsaWJzCisrKyBiL2NvbW1vbi9z aGxpYnMKQEAgLTU3MCw2ICs1NzAsNyBAQCBsaWJzb3VwLTIuNC5zby4xIGxpYnNvdXAtMi4zNC4w XzEKIGxpYnNvdXAtZ25vbWUtMi40LnNvLjEgbGlic291cC1nbm9tZS0yLjM0LjBfMQogbGliZ25v bWUtcGFuZWwuc28uMCBnbm9tZS1wYW5lbC0zLjM2LjFfMQogbGlicGFuZWwtYXBwbGV0LnNvLjMg Z25vbWUtcGFuZWwtMy4zNi4xXzEKK2xpYm1ldGFjaXR5LnNvLjEgbWV0YWNpdHktMy4zNi4xXzEK IGxpYnVuaW51bS5zby41IGxpYnVuaW51bS0yLjdfMQogbGlidW5pcXVlLTMuMC5zby4wIGxpYnVu aXF1ZS0yLjkxLjRfMQogbGlid2Via2l0Mmd0ay00LjAuc28uMzcgd2Via2l0Mmd0ay0yLjYuMl8x CmRpZmYgLS1naXQgYS9zcmNwa2dzL21ldGFjaXR5L3RlbXBsYXRlIGIvc3JjcGtncy9tZXRhY2l0 eS90ZW1wbGF0ZQppbmRleCAxZDQxOTI2NzY2OC4uYmI3ZGZjMGJmYzkgMTAwNjQ0Ci0tLSBhL3Ny Y3BrZ3MvbWV0YWNpdHkvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9tZXRhY2l0eS90ZW1wbGF0ZQpA QCAtMSw5ICsxLDkgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ21ldGFjaXR5JwogcGtnbmFtZT1t ZXRhY2l0eQotdmVyc2lvbj0zLjMwLjEKK3ZlcnNpb249My4zNi4xCiByZXZpc2lvbj0xCiBidWls ZF9zdHlsZT1nbnUtY29uZmlndXJlCi1ob3N0bWFrZWRlcGVuZHM9ImdldHRleHQtZGV2ZWwgZ2xp Yi1kZXZlbCBpdHN0b29sIHBrZy1jb25maWcgeWVscC10b29scyB6ZW5pdHkiCitob3N0bWFrZWRl cGVuZHM9ImdldHRleHQgZ2xpYi1kZXZlbCBpdHN0b29sIHBrZy1jb25maWcgeWVscC10b29scyB6 ZW5pdHkiCiBtYWtlZGVwZW5kcz0iZ3NldHRpbmdzLWRlc2t0b3Atc2NoZW1hcy1kZXZlbCBndGsr My1kZXZlbCBsaWJjYW5iZXJyYS1kZXZlbAogIGxpYmdsaWItZGV2ZWwgbGliZ3RvcC1kZXZlbCBs aWJTTS1kZXZlbCBsaWJYY29tcG9zaXRlLWRldmVsIGxpYlhkYW1hZ2UtZGV2ZWwKICBsaWJYZml4 ZXMtZGV2ZWwgbGliWGluZXJhbWEtZGV2ZWwgbGliWHJlbmRlci1kZXZlbCBsaWJYMTEtZGV2ZWwg cGFuZ28tZGV2ZWwKQEAgLTE0LDQgKzE0LDQgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdv dHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFn ZT0iaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL21ldGFjaXR5IgogZGlzdGZpbGVzPSIk e0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lv bn0udGFyLnh6IgotY2hlY2tzdW09MGYxMzExYjdhYTM4ZGU3MWM2NjA4MGJkMmI3NDRkZTJjZDk1 ODBhZmNhZWU5YzYwOTdhN2QzZjVjNDIxNzk4YQorY2hlY2tzdW09MTFmMDc2OTNlMmIyNjY4NDA3 NTkwNjNhNGJjODA3MzQ2MDcwZThlN2ZlYzhmNTNjZDA3NTdmNjY2MmMxYjMyMwoKRnJvbSBkNTdh ODAwZDgyYjdjYzY2MzM5YTcwZTBlZjk0Y2M1MjQyMTA5NzAyIE1vbiBTZXAgMTcgMDA6MDA6MDAg MjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBXZWQsIDI5IEFw ciAyMDIwIDA1OjMyOjEwICswNjAwClN1YmplY3Q6IFtQQVRDSCAzNS81Ml0gZ25vbWUtbWVudXM6 IHVwZGF0ZSB0byAzLjM2LjAuCgotLS0KIHNyY3BrZ3MvZ25vbWUtbWVudXMvdGVtcGxhdGUgfCA2 ICsrKy0tLQogMSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkK CmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLW1lbnVzL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9t ZS1tZW51cy90ZW1wbGF0ZQppbmRleCAyOTEwMjEyOWMzOC4uZTc4N2ZiOGRlNmIgMTAwNjQ0Ci0t LSBhL3NyY3BrZ3MvZ25vbWUtbWVudXMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS1tZW51 cy90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLW1l bnVzJwogcGtnbmFtZT1nbm9tZS1tZW51cwotdmVyc2lvbj0zLjMyLjAKLXJldmlzaW9uPTIKK3Zl cnNpb249My4zNi4wCityZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBidWls ZF9oZWxwZXI9ImdpciIKIGNvbmZpZ3VyZV9hcmdzPSItLWRpc2FibGUtc3RhdGljIgpAQCAtMTIs NyArMTIsNyBAQCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+ IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciwgTEdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFn ZT0iaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLW1lbnVzIgogZGlzdGZpbGVz PSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVy c2lvbn0udGFyLnh6IgotY2hlY2tzdW09Yzg1MGM2NGIyMDc0MjY1ZmU1OWUwOTlhMzQwYjg2ODlj ZjNkZDQ2NThkYzlmZWRkZDJhYjVlOTVmMWE3NGI3NAorY2hlY2tzdW09ZDkzNDhmMzhiZGU5NTZm YzMyNzUzYjI4YzFjZGUxOWMxNzViZmRiZjFmNGQ1YjA2MDAzYjNhYTA5MTUzYmIxZgogCiBidWls ZF9vcHRpb25zPSJnaXIiCiBidWlsZF9vcHRpb25zX2RlZmF1bHQ9ImdpciIKCkZyb20gYzM3NzRl ZGU1ZmI4ZWYyODA5Yzg0YmI1Njc4ZDYxYjkyMDRhZjA4NiBNb24gU2VwIDE3IDAwOjAwOjAwIDIw MDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogRnJpLCAxIE1heSAy MDIwIDA2OjAzOjU1ICswNjAwClN1YmplY3Q6IFtQQVRDSCAzNi81Ml0gZ25vbWUtZmxhc2hiYWNr OiB1cGRhdGUgdG8gMy4zNi4zLgoKQWRkZWQgUEFNIGNvbmZpZyB0byBlbmFibGUgc2NyZWVuIGxv Y2tpbmcuCi0tLQogLi4uL2dub21lLWZsYXNoYmFjay9maWxlcy9nbm9tZS1mbGFzaGJhY2sucGFt IHwgIDYgKysrKwogLi4uL2dub21lLWZsYXNoYmFjay9wYXRjaGVzL2NvbXBpei0wLjgucGF0Y2gg IHwgMjggKysrKysrKysrKysrKysrKysrKwogc3JjcGtncy9nbm9tZS1mbGFzaGJhY2svdGVtcGxh dGUgICAgICAgICAgICAgIHwgMjcgKysrKysrKysrKysrLS0tLS0tCiAzIGZpbGVzIGNoYW5nZWQs IDUyIGluc2VydGlvbnMoKyksIDkgZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3Jj cGtncy9nbm9tZS1mbGFzaGJhY2svZmlsZXMvZ25vbWUtZmxhc2hiYWNrLnBhbQogY3JlYXRlIG1v ZGUgMTAwNjQ0IHNyY3BrZ3MvZ25vbWUtZmxhc2hiYWNrL3BhdGNoZXMvY29tcGl6LTAuOC5wYXRj aAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtZmxhc2hiYWNrL2ZpbGVzL2dub21lLWZsYXNo YmFjay5wYW0gYi9zcmNwa2dzL2dub21lLWZsYXNoYmFjay9maWxlcy9nbm9tZS1mbGFzaGJhY2su cGFtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi5lYmJiNTFkZDBlOAot LS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvZ25vbWUtZmxhc2hiYWNrL2ZpbGVzL2dub21lLWZs YXNoYmFjay5wYW0KQEAgLTAsMCArMSw2IEBACisjJVBBTS0xLjAKK2F1dGggICAgICAgaW5jbHVk ZQlzeXN0ZW0tYXV0aAorYXV0aCAgICAgICBvcHRpb25hbCAgICAgcGFtX2dub21lX2tleXJpbmcu c28KK2FjY291bnQgICAgaW5jbHVkZQlzeXN0ZW0tYXV0aAorcGFzc3dvcmQgICBpbmNsdWRlCXN5 c3RlbS1hdXRoCitzZXNzaW9uICAgIGluY2x1ZGUJc3lzdGVtLWF1dGgKZGlmZiAtLWdpdCBhL3Ny Y3BrZ3MvZ25vbWUtZmxhc2hiYWNrL3BhdGNoZXMvY29tcGl6LTAuOC5wYXRjaCBiL3NyY3BrZ3Mv Z25vbWUtZmxhc2hiYWNrL3BhdGNoZXMvY29tcGl6LTAuOC5wYXRjaApuZXcgZmlsZSBtb2RlIDEw MDY0NAppbmRleCAwMDAwMDAwMDAwMC4uZThhMmE1Yzg3ZmQKLS0tIC9kZXYvbnVsbAorKysgYi9z cmNwa2dzL2dub21lLWZsYXNoYmFjay9wYXRjaGVzL2NvbXBpei0wLjgucGF0Y2gKQEAgLTAsMCAr MSwyOCBAQAorZGlmZiAtLWdpdCBjb25maWd1cmUgY29uZmlndXJlCitpbmRleCAyNmNlYTUxLi5k MjQ2M2NjIDEwMDc1NQorLS0tIGNvbmZpZ3VyZQorKysrIGNvbmZpZ3VyZQorQEAgLTIwODQyLDgg KzIwODQyLDggQEAgZmkKKyBpZiB0ZXN0ICJ4JHdpdGhfY29tcGl6X3Nlc3Npb24iICE9ICJ4bm8i OyB0aGVuIDoKKyAKKyAgIGlmIHRlc3QgLW4gIiRQS0dfQ09ORklHIiAmJiBcCistICAgIHsgeyAk YXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBcJFBLR19DT05GSUcgLS1leGlz dHMgLS1wcmludC1lcnJvcnMgXCJsaWJjb21waXpjb25maWcgPj0gMC45LjE0LjBcIiI7IH0gPiY1 CistICAoJFBLR19DT05GSUcgLS1leGlzdHMgLS1wcmludC1lcnJvcnMgImxpYmNvbXBpemNvbmZp ZyA+PSAwLjkuMTQuMCIpIDI+JjUKKysgICAgeyB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5l bm8tJExJTkVOT306IFwkUEtHX0NPTkZJRyAtLWV4aXN0cyAtLXByaW50LWVycm9ycyBcImxpYmNv bXBpemNvbmZpZyA+PSAwLjguMTYuMFwiIjsgfSA+JjUKKysgICgkUEtHX0NPTkZJRyAtLWV4aXN0 cyAtLXByaW50LWVycm9ycyAibGliY29tcGl6Y29uZmlnID49IDAuOC4xNi4wIikgMj4mNQorICAg YWNfc3RhdHVzPSQ/CisgICAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBc JD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgIHRlc3QgJGFjX3N0YXR1cyA9IDA7IH07IHRoZW4KK2Rp ZmYgLS1naXQgY29uZmlndXJlLmFjIGNvbmZpZ3VyZS5hYworaW5kZXggYjZlMTQ3MC4uZDI4YTcw YiAxMDA2NDQKKy0tLSBjb25maWd1cmUuYWMKKysrKyBjb25maWd1cmUuYWMKK0BAIC0zNDAsNyAr MzQwLDcgQEAgQUNfQVJHX1dJVEgoW2NvbXBpei1zZXNzaW9uXSwKKyAgICAgICAgICAgICBbd2l0 aF9jb21waXpfc2Vzc2lvbj0iJHdpdGh2YWwiXSwgW3dpdGhfY29tcGl6X3Nlc3Npb249ImF1dG8i XSkKKyAKKyBBU19JRihbdGVzdCAieCR3aXRoX2NvbXBpel9zZXNzaW9uIiAhPSAieG5vIl0sIFsK Ky0gIFBLR19DSEVDS19FWElTVFMoW2xpYmNvbXBpemNvbmZpZyA+PSAwLjkuMTQuMF0sCisrICBQ S0dfQ0hFQ0tfRVhJU1RTKFtsaWJjb21waXpjb25maWcgPj0gMC44LjE2LjBdLAorICAgICAgICAg ICAgICAgICAgICBbZm91bmRfY29tcGl6PSJ5ZXMiXSwgW2ZvdW5kX2NvbXBpej0ibm8iXSkKKyAK KyAgIEFTX0lGKFt0ZXN0ICJ4JGZvdW5kX2NvbXBpeiIgPSAieHllcyJdLCBbCmRpZmYgLS1naXQg YS9zcmNwa2dzL2dub21lLWZsYXNoYmFjay90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25vbWUtZmxhc2hi YWNrL3RlbXBsYXRlCmluZGV4IGQzMjEyMGNhYjZmLi4wODU2NmRmNWZkNCAxMDA2NDQKLS0tIGEv c3JjcGtncy9nbm9tZS1mbGFzaGJhY2svdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS1mbGFz aGJhY2svdGVtcGxhdGUKQEAgLTEsMjAgKzEsMjkgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2du b21lLWZsYXNoYmFjaycKIHBrZ25hbWU9Z25vbWUtZmxhc2hiYWNrCi12ZXJzaW9uPTMuMzQuMgor dmVyc2lvbj0zLjM2LjMKIHJldmlzaW9uPTEKIGJ1aWxkX2hlbHBlcj1naXIKIGJ1aWxkX3N0eWxl PWdudS1jb25maWd1cmUKLWNvbmZpZ3VyZV9hcmdzPSItLWVuYWJsZS1jb21waWxlLXdhcm5pbmdz PW1pbmltdW0iCi1ob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcgYXV0b21ha2UgZ2xpYi1kZXZl bCBnZXR0ZXh0IgotbWFrZWRlcGVuZHM9Imd0ayszLWRldmVsIGdzZXR0aW5ncy1kZXNrdG9wLXNj aGVtYXMtZGV2ZWwKLSBsaWJnbGliLWRldmVsIGdkay1waXhidWYtZGV2ZWwgdXBvd2VyLWRldmVs IGlidXMtZGV2ZWwgcG9sa2l0LWRldmVsCi0gcHVsc2VhdWRpby1kZXZlbCBsaWJjYW5iZXJyYS1k ZXZlbCBsaWJ4Y2ItZGV2ZWwgbGliWDExLWRldmVsIHBhbmdvLWRldmVsCi0gbGlieGtiZmlsZS1k ZXZlbCBnbm9tZS1ibHVldG9vdGgtZGV2ZWwgZ25vbWUtZGVza3RvcC1kZXZlbCIKK2NvbmZpZ3Vy ZV9hcmdzPSItLXdpdGgtY29tcGl6LXNlc3Npb24gLS1lbmFibGUtY29tcGlsZS13YXJuaW5ncz1t aW5pbXVtIgoraG9zdG1ha2VkZXBlbmRzPSJnZXR0ZXh0LWRldmVsIHBrZy1jb25maWcgYXV0b21h a2UgZ2xpYi1kZXZlbCBnZXR0ZXh0IGxpYnRvb2wiCittYWtlZGVwZW5kcz0iZ3RrKzMtZGV2ZWwg cGFtLWRldmVsIGdzZXR0aW5ncy1kZXNrdG9wLXNjaGVtYXMtZGV2ZWwgZWxvZ2luZC1kZXZlbAor IGdkbS1kZXZlbCBsaWJjb21waXpjb25maWctZGV2ZWwgbGliZ2xpYi1kZXZlbCBnZGstcGl4YnVm LWRldmVsIHVwb3dlci1kZXZlbCBpYnVzLWRldmVsCisgcG9sa2l0LWRldmVsIHB1bHNlYXVkaW8t ZGV2ZWwgbGliY2FuYmVycmEtZGV2ZWwgbGlieGNiLWRldmVsIGxpYlgxMS1kZXZlbCBwYW5nby1k ZXZlbAorIGxpYnhrYmZpbGUtZGV2ZWwgZ25vbWUtYmx1ZXRvb3RoLWRldmVsIGdub21lLWRlc2t0 b3AtZGV2ZWwgZ25vbWUtcGFuZWwtZGV2ZWwiCiBkZXBlbmRzPSJnbm9tZS1ibHVldG9vdGggZ25v bWUtc2Vzc2lvbiBnbm9tZS1zZXR0aW5ncy1kYWVtb24KLSBnbm9tZS1wYW5lbCBnbm9tZS10aGVt ZXMtc3RhbmRhcmQgbWV0YWNpdHkiCisgZ25vbWUtcGFuZWwgZ25vbWUtdGhlbWVzLWV4dHJhIG1l dGFjaXR5Igogc2hvcnRfZGVzYz0iR05PTUUgMyBzZXNzaW9uIHdpdGggc2ltaWxhciB1c2VyIGV4 cGVyaWVuY2UgdG8gdGhlIEdOT01FIDIueCBzZXJpZXMiCiBtYWludGFpbmVyPSJzaGl6b25pYyA8 cmVhbHRpYXpAZ21haWwuY29tPiIKIGxpY2Vuc2U9IkdQTC0zLjAtb3ItbGF0ZXIiCiBob21lcGFn ZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9Qcm9qZWN0cy9Hbm9tZUZsYXNoYmFjayIKIGRpc3Rm aWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0k e3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTNiZTY1Mzg4Y2QyYzhmMzk3NDFiY2MwNWRhODdl ZjQwMDM1MTgzYTlhMzk1MDJkNjc2OTYyNDJjMmFlYjQ2OWMKK2NoZWNrc3VtPTJkYmE5ZWE0MGYy ZGE4MWMyMjk1NGE4Y2NjMjlmOGYxZmE0Y2E4Mzk1YTZiYjU1MjUwNjYzNTgzMjc1MWMxYTcKKwor cHJlX2NvbmZpZ3VyZSgpIHsKKwlhdXRvcmVjb25mIC12ZmkKK30KKworcG9zdF9pbnN0YWxsKCkg eworCXZpbnN0YWxsICR7RklMRVNESVJ9L2dub21lLWZsYXNoYmFjay5wYW0gNjQ0IC9ldGMvcGFt LmQgZ25vbWUtZmxhc2hiYWNrCisJdnNlZCAtaSAtZSAicy8gLS1zeXN0ZW1kLy9nIiAke0RFU1RE SVJ9L3Vzci9saWJleGVjL2dub21lLWZsYXNoYmFjay17Y29tcGl6LG1ldGFjaXR5fQorfQoKRnJv bSAxYWY2OWU0MTNlMzkzNWI4Y2NlZmVmMTE4NjMyYTBhODhkOTBlZjUyIE1vbiBTZXAgMTcgMDA6 MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBXZWQs IDI5IEFwciAyMDIwIDA2OjU5OjQwICswNjAwClN1YmplY3Q6IFtQQVRDSCAzNy81Ml0gZ3JhcGhl bmU6IHVwZGF0ZSB0byAxLjEwLjAuCgotLS0KIHNyY3BrZ3MvZ3JhcGhlbmUvdGVtcGxhdGUgfCAx MCArKysrKy0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9u cygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ3JhcGhlbmUvdGVtcGxhdGUgYi9zcmNwa2dzL2dy YXBoZW5lL3RlbXBsYXRlCmluZGV4IGYyZmU4MWEzZjQ3Li5jYjczODVmZWRiNyAxMDA2NDQKLS0t IGEvc3JjcGtncy9ncmFwaGVuZS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dyYXBoZW5lL3RlbXBs YXRlCkBAIC0xLDEwICsxLDEwIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdncmFwaGVuZScKIHBr Z25hbWU9Z3JhcGhlbmUKLXZlcnNpb249MS44LjIKLXJldmlzaW9uPTIKK3ZlcnNpb249MS4xMC4w CityZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1tZXNvbgogYnVpbGRfaGVscGVyPSJnaXIiCi1jb25m aWd1cmVfYXJncz0iLUR0ZXN0cz1mYWxzZSAtRGJlbmNobWFya3M9ZmFsc2UKK2NvbmZpZ3VyZV9h cmdzPSItRHRlc3RzPWZhbHNlIC1EYXJtX25lb249ZmFsc2UKICAtRGludHJvc3BlY3Rpb249JCh2 b3B0X2lmIGdpciB0cnVlIGZhbHNlKSIKIGhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyIKIG1h a2VkZXBlbmRzPSJsaWJnbGliLWRldmVsIgpAQCAtMTMsMTMgKzEzLDEzIEBAIG1haW50YWluZXI9 IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJNSVQiCiBob21l cGFnZT0iaHR0cHM6Ly9naXRodWIuY29tL2ViYXNzaS9ncmFwaGVuZSIKIGRpc3RmaWxlcz0iJHtH Tk9NRV9TSVRFfS9ncmFwaGVuZS8ke3ZlcnNpb24lLip9L2dyYXBoZW5lLSR7dmVyc2lvbn0udGFy Lnh6IgotY2hlY2tzdW09YjNmY2YyMDk5NmU1N2IxZjRkZjM5NDFjYWFjMTBmMTQzYmIyOTg5MGE0 MmY3YTY1NDA3Y2QxOTI3MWZjODlmNworY2hlY2tzdW09NDA2ZDk3ZjUxZGQ0Y2E2MWU5MWY4NDY2 NmEwMGMzZTk3NmQzZTY2N2NkMjQ4Yjc2ZDkyZmRiMzVjZTg3NjQ5OQogCiBidWlsZF9vcHRpb25z PSJnaXIiCiBidWlsZF9vcHRpb25zX2RlZmF1bHQ9ImdpciIKIAogcG9zdF9pbnN0YWxsKCkgewot CXZsaWNlbnNlIExJQ0VOU0UKKwl2bGljZW5zZSBMSUNFTlNFLnR4dCBMSUNFTlNFCiB9CiAKIGdy YXBoZW5lLWRldmVsX3BhY2thZ2UoKSB7CgpGcm9tIGQyNzJjNDg0M2Q0NDIyNGMwNDRhZGRlYTc3 YTA0ZTFhYmIxMzdkMmYgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFi aWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFRodSwgMzAgQXByIDIwMjAgMTE6NTM6MjkgKzA2MDAK U3ViamVjdDogW1BBVENIIDM4LzUyXSBtdXR0ZXI6IHVwZGF0ZSB0byAzLjM2LjIuCgotLS0KIGNv bW1vbi9zaGxpYnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IDE4ICsrKysrKy0t LS0tLS0KIC4uLi9wYXRjaGVzL2ZpeC1jb2dsLWVnbC1pbmNsdWRlcy5wYXRjaCAgICAgICB8IDEx IC0tLS0tLS0tCiBzcmNwa2dzL211dHRlci90ZW1wbGF0ZSAgICAgICAgICAgICAgICAgICAgICAg fCAyNyArKysrKysrKysrLS0tLS0tLS0tCiAzIGZpbGVzIGNoYW5nZWQsIDIzIGluc2VydGlvbnMo KyksIDMzIGRlbGV0aW9ucygtKQogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvbXV0dGVyL3Bh dGNoZXMvZml4LWNvZ2wtZWdsLWluY2x1ZGVzLnBhdGNoCgpkaWZmIC0tZ2l0IGEvY29tbW9uL3No bGlicyBiL2NvbW1vbi9zaGxpYnMKaW5kZXggNDhjMmFiYmYwNmYuLjVkNDRlYzFmMDhhIDEwMDY0 NAotLS0gYS9jb21tb24vc2hsaWJzCisrKyBiL2NvbW1vbi9zaGxpYnMKQEAgLTMwMTQsMTUgKzMw MTQsMTUgQEAgbGliZGVjb3JhdGlvbi5zby4wIGNvbXBpei1jb3JlLTAuOC4xNF8xCiBsaWJjb21w aXpjb25maWcuc28uMCBsaWJjb21waXpjb25maWctMC44LjE0XzEKIGxpYmVtZXJhbGRlbmdpbmUu c28uMCBlbWVyYWxkLTAuOC4xNF8xCiBsaWJoYW5ndWwuc28uMSBsaWJoYW5ndWwtMC4xLjBfMQot bGlibXV0dGVyLTUuc28uMCBtdXR0ZXItMy4zNC4xXzEKLWxpYm11dHRlci1jbHV0dGVyLTUuc28g bXV0dGVyLTMuMzQuMV8xCi1saWJtdXR0ZXItY2x1dHRlci01LnNvLjAgbXV0dGVyLTMuMzQuMV8x Ci1saWJtdXR0ZXItY29nbC1wYXRoLTUuc28gbXV0dGVyLTMuMzQuMV8xCi1saWJtdXR0ZXItY29n bC1wYXRoLTUuc28uMCBtdXR0ZXItMy4zNC4xXzEKLWxpYm11dHRlci1jb2dsLTUuc28gbXV0dGVy LTMuMzQuMV8xCi1saWJtdXR0ZXItY29nbC01LnNvLjAgbXV0dGVyLTMuMzQuMV8xCi1saWJtdXR0 ZXItY29nbC1wYW5nby01LnNvIG11dHRlci0zLjM0LjFfMQotbGlibXV0dGVyLWNvZ2wtcGFuZ28t NS5zby4wIG11dHRlci0zLjM0LjFfMQorbGlibXV0dGVyLTYuc28uMCBtdXR0ZXItMy4zNi4yXzEK K2xpYm11dHRlci1jbHV0dGVyLTYuc28gbXV0dGVyLTMuMzYuMl8xCitsaWJtdXR0ZXItY2x1dHRl ci02LnNvLjAgbXV0dGVyLTMuMzYuMl8xCitsaWJtdXR0ZXItY29nbC1wYXRoLTYuc28gbXV0dGVy LTMuMzYuMl8xCitsaWJtdXR0ZXItY29nbC1wYXRoLTYuc28uMCBtdXR0ZXItMy4zNi4yXzEKK2xp Ym11dHRlci1jb2dsLTYuc28gbXV0dGVyLTMuMzYuMl8xCitsaWJtdXR0ZXItY29nbC02LnNvLjAg bXV0dGVyLTMuMzYuMl8xCitsaWJtdXR0ZXItY29nbC1wYW5nby02LnNvIG11dHRlci0zLjM2LjJf MQorbGlibXV0dGVyLWNvZ2wtcGFuZ28tNi5zby4wIG11dHRlci0zLjM2LjJfMQogbGliZ2VvY2x1 ZS0yLnNvLjAgZ2VvY2x1ZTItMi40LjRfMQogbGliZ2VwdWIuc28uMCBsaWJnZXB1Yi0wLjRfMQog bGlic2xvcHkuc28uNy41IHNsb3AtNy41XzEKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbXV0dGVyL3Bh dGNoZXMvZml4LWNvZ2wtZWdsLWluY2x1ZGVzLnBhdGNoIGIvc3JjcGtncy9tdXR0ZXIvcGF0Y2hl cy9maXgtY29nbC1lZ2wtaW5jbHVkZXMucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cmlu ZGV4IGQ5MDk4ODg4N2MzLi4wMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL211dHRlci9wYXRjaGVz L2ZpeC1jb2dsLWVnbC1pbmNsdWRlcy5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDExICswLDAg QEAKLS0tLSBjb2dsL2NvZ2wvbWVzb24uYnVpbGQJMjAxOS0xMC0wOCAxOToxNToxMC4wMDAwMDAw MDAgKzAyMDAKLSsrKyBjb2dsL2NvZ2wvbWVzb24uYnVpbGQJMjAxOS0xMi0xNiAxNTo0NTo0NC4w Mzc2NDA1NDggKzAxMDAKLUBAIC00OCw3ICs0OCw3IEBACi0gYnVpbHRfaGVhZGVycyArPSBbY29n bF9nbF9oZWFkZXJfaF0KLSAKLSBpZiBoYXZlX2VnbAotLSAgY29nbF9lZ2xfaW5jbHVkZXNfc3Ry aW5nID0gJyNpbmNsdWRlIDxFR0wvZWdsLmg+XG4jaW5jbHVkZSA8RUdML2VnbGV4dC5oPicKLSsg IGNvZ2xfZWdsX2luY2x1ZGVzX3N0cmluZyA9ICcjaW5jbHVkZSA8RUdML2VnbC5oPlxuI2luY2x1 ZGUgPEVHTC9lZ2xleHQuaD5cbiNpbmNsdWRlIDxFR0wvZWdsbWVzYWV4dC5oPicKLSBlbHNlCi0g ICBjb2dsX2VnbF9pbmNsdWRlc19zdHJpbmcgPSAnJwotIGVuZGlmCmRpZmYgLS1naXQgYS9zcmNw a2dzL211dHRlci90ZW1wbGF0ZSBiL3NyY3BrZ3MvbXV0dGVyL3RlbXBsYXRlCmluZGV4IDRlMGJk MzJiNjdkLi5iOTgzMTIzNjgwNCAxMDA2NDQKLS0tIGEvc3JjcGtncy9tdXR0ZXIvdGVtcGxhdGUK KysrIGIvc3JjcGtncy9tdXR0ZXIvdGVtcGxhdGUKQEAgLTEsMzQgKzEsMzUgQEAKICMgVGVtcGxh dGUgZmlsZSBmb3IgJ211dHRlcicKIHBrZ25hbWU9bXV0dGVyCi12ZXJzaW9uPTMuMzQuMQotcmV2 aXNpb249MgordmVyc2lvbj0zLjM2LjIKK3JldmlzaW9uPTEKIGJ1aWxkX2hlbHBlcj0iZ2lyIgog YnVpbGRfc3R5bGU9bWVzb24KIGNvbmZpZ3VyZV9hcmdzPSItRGVnbF9kZXZpY2U9dHJ1ZSAtRHVk ZXY9dHJ1ZSAtRG5hdGl2ZV9iYWNrZW5kPXRydWUKLSAtRHByb2ZpbGVyPWZhbHNlIC1EaW50cm9z cGVjdGlvbj10cnVlIC1EeHdheWxhbmRfcGF0aD0vdXNyL2Jpbi9Yd2F5bGFuZCIKKyAtRHByb2Zp bGVyPWZhbHNlIC1EaW50cm9zcGVjdGlvbj10cnVlIC1EeHdheWxhbmRfcGF0aD0vdXNyL2Jpbi9Y d2F5bGFuZAorIC1EeHdheWxhbmRfaW5pdGZkPWRpc2FibGVkIgogaG9zdG1ha2VkZXBlbmRzPSJn ZXR0ZXh0IGdsaWItZGV2ZWwgcGtnLWNvbmZpZyB6ZW5pdHkgd2F5bGFuZC1kZXZlbCB4b3JnLXNl cnZlciIKLW1ha2VkZXBlbmRzPSJlbG9naW5kLWRldmVsIGdsaWItZGV2ZWwgZ25vbWUtZGVza3Rv cC1kZXZlbCBqc29uLWdsaWItZGV2ZWwKLSBsaWJnbGliLWRldmVsIGxpYlNNLWRldmVsIGxpYlh0 c3QtZGV2ZWwgbGliY2FuYmVycmEtZGV2ZWwgbGliaW5wdXQtZGV2ZWwKLSBNZXNhTGliLWRldmVs IHBpcGV3aXJlLWRldmVsIHN0YXJ0dXAtbm90aWZpY2F0aW9uLWRldmVsIHdheWxhbmQtcHJvdG9j b2xzCi0gZ25vbWUtc2V0dGluZ3MtZGFlbW9uLWRldmVsIgorbWFrZWRlcGVuZHM9ImVsb2dpbmQt ZGV2ZWwgZ2xpYi1kZXZlbCBnbm9tZS1kZXNrdG9wLWRldmVsIGdyYXBoZW5lLWRldmVsCisganNv bi1nbGliLWRldmVsIGxpYmdsaWItZGV2ZWwgbGliU00tZGV2ZWwgbGliWHRzdC1kZXZlbCBsaWJj YW5iZXJyYS1kZXZlbAorIGxpYmlucHV0LWRldmVsIE1lc2FMaWItZGV2ZWwgcGlwZXdpcmUtZGV2 ZWwgc3RhcnR1cC1ub3RpZmljYXRpb24tZGV2ZWwKKyB3YXlsYW5kLXByb3RvY29scyBnbm9tZS1z ZXR0aW5ncy1kYWVtb24tZGV2ZWwiCiBkZXBlbmRzPSJkZXNrdG9wLWZpbGUtdXRpbHMgemVuaXR5 Igogc2hvcnRfZGVzYz0iTGlnaHR3ZWlnaHQgR1RLKzMgd2luZG93IG1hbmFnZXIiCiBtYWludGFp bmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTIu MC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL1Byb2plY3RzL011 dHRlci8iCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9 LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT1iYTE4MjZjZjg4YmRiODFl NjM5NDNjYWMwMTRhOGU4YmNmMzVlYzE3OGM1MzI2NDQwMWY5YzcyZmRlYWI3NThlCi1zaGxpYl9w cm92aWRlcz0ibGlibXV0dGVyLWNsdXR0ZXItNS5zbyBsaWJtdXR0ZXItY29nbC01LnNvCi0gbGli bXV0dGVyLWNvZ2wtcGFuZ28tNS5zbyBsaWJtdXR0ZXItY29nbC1wYXRoLTUuc28iCitjaGVja3N1 bT03NWIzNzY0ZWIwNTlmYzkzNWE1NDUyM2E2MmJlYzFiZWRiOTM1Mjg0MDQ2YjZkYWE1MDg2OWIx OTVhZGRkYWY0CitzaGxpYl9wcm92aWRlcz0ibGlibXV0dGVyLWNsdXR0ZXItNi5zbyBsaWJtdXR0 ZXItY29nbC02LnNvCisgbGlibXV0dGVyLWNvZ2wtcGFuZ28tNi5zbyBsaWJtdXR0ZXItY29nbC1w YXRoLTYuc28iCiAKIG11dHRlci1kZXZlbF9wYWNrYWdlKCkgewotCWRlcGVuZHM9ImdzZXR0aW5n cy1kZXNrdG9wLXNjaGVtYXMgZ3RrKzMtZGV2ZWwgY2x1dHRlci1kZXZlbCBsaWJYMTEtZGV2ZWwK LQkgbGliWHRzdC1kZXZlbCBtdXR0ZXItJHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIKKwlkZXBlbmRz PSJnc2V0dGluZ3MtZGVza3RvcC1zY2hlbWFzIGdyYXBoZW5lLWRldmVsIGd0ayszLWRldmVsIGNs dXR0ZXItZGV2ZWwKKwkgbGliWDExLWRldmVsIGxpYlh0c3QtZGV2ZWwgbXV0dGVyLSR7dmVyc2lv bn1fJHtyZXZpc2lvbn0iCiAJc2hvcnRfZGVzYys9IiAtIGRldmVsb3BtZW50IGZpbGVzIgogCXBr Z19pbnN0YWxsKCkgewogCQl2bW92ZSB1c3IvaW5jbHVkZQogCQl2bW92ZSB1c3IvbGliL3BrZ2Nv bmZpZwotCQl2bW92ZSAidXNyL2xpYi9tdXR0ZXItNS8qLmdpciIKKwkJdm1vdmUgInVzci9saWIv bXV0dGVyLTYvKi5naXIiCiAJCXZtb3ZlICJ1c3IvbGliLyouc28iCiAJfQogfQoKRnJvbSA1YWZl MmM3N2UxMDg1Y2M5ZjNlZjdmMTczYTA5OGU2OWUzMzcyYTlmIE1vbiBTZXAgMTcgMDA6MDA6MDAg MjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBNb24sIDQgTWF5 IDIwMjAgMTQ6Mzg6MjMgKzA2MDAKU3ViamVjdDogW1BBVENIIDM5LzUyXSBnbm9tZS1zaGVsbDog dXBkYXRlIHRvIDMuMzYuMi4KCi0tLQogc3JjcGtncy9nbm9tZS1zaGVsbC90ZW1wbGF0ZSB8IDgg KysrKy0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0p CgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1zaGVsbC90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25v bWUtc2hlbGwvdGVtcGxhdGUKaW5kZXggOTZjNWI4MGExOTQuLmI2N2FjNjUzZDkwIDEwMDY0NAot LS0gYS9zcmNwa2dzL2dub21lLXNoZWxsL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtc2hl bGwvdGVtcGxhdGUKQEAgLTEsMTIgKzEsMTIgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21l LXNoZWxsJwogcGtnbmFtZT1nbm9tZS1zaGVsbAotdmVyc2lvbj0zLjM0LjEKK3ZlcnNpb249My4z Ni4yCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1tZXNvbgogYnVpbGRfaGVscGVyPWdpcgogY29u ZmlndXJlX2FyZ3M9Ii1Ec3lzdGVtZD1mYWxzZSIKLWhvc3RtYWtlZGVwZW5kcz0iZ29iamVjdC1p bnRyb3NwZWN0aW9uIGd0ay1kb2MgbGlieHNsdCBwa2ctY29uZmlnIHB5dGhvbjMgc2Fzc2MKLSBh c2NpaWRvYyBwZXJsIGdsaWItZGV2ZWwgbXV0dGVyLWRldmVsIgoraG9zdG1ha2VkZXBlbmRzPSJn ZXR0ZXh0IGdvYmplY3QtaW50cm9zcGVjdGlvbiBndGstZG9jIGxpYnhzbHQgcGtnLWNvbmZpZyBw eXRob24zIHNhc3NjCisgYXNjaWlkb2MgcGVybCBnanMtZGV2ZWwgZ2xpYi1kZXZlbCBtdXR0ZXIt ZGV2ZWwiCiBtYWtlZGVwZW5kcz0iYXQtc3BpMi1hdGsgY2FyaWJvdS1kZXZlbCBldm9sdXRpb24t ZGF0YS1zZXJ2ZXItZGV2ZWwgZm9sa3MtZGV2ZWwKICBnY3ItZGV2ZWwgZ2pzLWRldmVsIGdub21l LWJsdWV0b290aC1kZXZlbCBnbm9tZS1jb250cm9sLWNlbnRlci1kZXZlbCBnbm9tZS1kZXNrdG9w LWRldmVsCiAgZ25vbWUtbWVudXMtZGV2ZWwgZ3NldHRpbmdzLWRlc2t0b3Atc2NoZW1hcy1kZXZl bCBnc3RyZWFtZXIxLWRldmVsIGd0ayszLWRldmVsCkBAIC0yMSw0ICsyMSw0IEBAIGxpY2Vuc2U9 IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9Qcm9q ZWN0cy9Hbm9tZVNoZWxsIgogY2hhbmdlbG9nPSJodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVu dC5jb20vR05PTUUvZ25vbWUtc2hlbGwvZ25vbWUtMy0zMC9ORVdTIgogZGlzdGZpbGVzPSIke0dO T01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0u dGFyLnh6IgotY2hlY2tzdW09Y2NkODY1NTliOWM4OTdjMjE5ZDJkMmViZmRiODQxM2VmYTRjMWJl ZTg0NjQyN2M3NTBjYjhhMzAxYjNmNmQxZQorY2hlY2tzdW09M2IxMjliMmExZjFmMTY1NGExMDEw OThlYThiOTFhNzNhODM2YWFkN2QxNjZmNTJkZDQ2YjFjNjAzN2VjMTc1MwoKRnJvbSA0OGZiZDc5 NTI1ZTAzMTMyOGM4NzRiNzlhM2Y1NjNlNDMwODVkODZjIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAw MQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBNb24sIDQgTWF5IDIw MjAgMTQ6Mzg6MzIgKzA2MDAKU3ViamVjdDogW1BBVENIIDQwLzUyXSBnbm9tZS1zaGVsbC1leHRl bnNpb25zOiB1cGRhdGUgdG8gMy4zNi4yLgoKLS0tCiBzcmNwa2dzL2dub21lLXNoZWxsLWV4dGVu c2lvbnMvdGVtcGxhdGUgfCA2ICsrKy0tLQogMSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygr KSwgMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLXNoZWxsLWV4dGVu c2lvbnMvdGVtcGxhdGUgYi9zcmNwa2dzL2dub21lLXNoZWxsLWV4dGVuc2lvbnMvdGVtcGxhdGUK aW5kZXggOTcxNjhiNDBmNjYuLmUxZGQ0M2JiMTUyIDEwMDY0NAotLS0gYS9zcmNwa2dzL2dub21l LXNoZWxsLWV4dGVuc2lvbnMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS1zaGVsbC1leHRl bnNpb25zL3RlbXBsYXRlCkBAIC0xLDE1ICsxLDE1IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdn bm9tZS1zaGVsbC1leHRlbnNpb25zJwogcGtnbmFtZT1nbm9tZS1zaGVsbC1leHRlbnNpb25zCi12 ZXJzaW9uPTMuMzQuMQordmVyc2lvbj0zLjM2LjIKIHJldmlzaW9uPTEKIGFyY2hzPW5vYXJjaAog YnVpbGRfc3R5bGU9bWVzb24KIGNvbmZpZ3VyZV9hcmdzPSItRGV4dGVuc2lvbl9zZXQ9YWxsIgot aG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIgoraG9zdG1ha2VkZXBlbmRzPSJnZXR0ZXh0IHBr Zy1jb25maWciCiBkZXBlbmRzPSJnbm9tZS1zaGVsbD49JHt2ZXJzaW9ufSBuYXV0aWx1cyB1bnpp cCIKIHNob3J0X2Rlc2M9IkV4dGVuc2lvbnMgZm9yIEdOT01FIHNoZWxsLCBpbmNsdWRpbmcgY2xh c3NpYyBtb2RlIgogbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3Jn PiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly93aWtpLmdu b21lLm9yZy9Qcm9qZWN0cy9Hbm9tZVNoZWxsL0V4dGVuc2lvbnMiCiBkaXN0ZmlsZXM9IiR7R05P TUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50 YXIueHoiCi1jaGVja3N1bT1iMGFkNTExNDNiMWJmNDBkZWY0YTEwZjhmZDBhYjBmZmI0NzIxODMw NDgwMDc5NGU2MmNhZGQyOWQwYWNjNzViCitjaGVja3N1bT05NzgyMDJkZTUxNWNkYjAzYTU4ODU4 NTljNTM4MzY2YmNhOGZkNzg3NjJjZTk4YjE3MmFjMmMwMTI2ZjgwMDNmCgpGcm9tIDViNGUxZmI2 MjQyZjEyYWQyODczYjNkZGE4NzMxMjcyMGY4OTZiNTYgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAx CkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFRodSwgNyBNYXkgMjAy MCAxMjoyNzo1NSArMDYwMApTdWJqZWN0OiBbUEFUQ0ggNDEvNTJdIGdkbTogdXBkYXRlIHRvIDMu MzYuMi4KCi0tLQogc3JjcGtncy9nZG0vdGVtcGxhdGUgfCA4ICsrKystLS0tCiAxIGZpbGUgY2hh bmdlZCwgNCBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3Br Z3MvZ2RtL3RlbXBsYXRlIGIvc3JjcGtncy9nZG0vdGVtcGxhdGUKaW5kZXggYmI1YjQ4NjkyZDQu LjA5OWM0Y2M5ZDRkIDEwMDY0NAotLS0gYS9zcmNwa2dzL2dkbS90ZW1wbGF0ZQorKysgYi9zcmNw a2dzL2dkbS90ZW1wbGF0ZQpAQCAtMSwxMSArMSwxMSBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAn Z2RtJwogcGtnbmFtZT1nZG0KLXZlcnNpb249My4zNC4xCit2ZXJzaW9uPTMuMzYuMgogcmV2aXNp b249MQogYnVpbGRfaGVscGVyPSJnaXIiCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBjb25m aWd1cmVfYXJncz0iJCh2b3B0X2VuYWJsZSBnaXIgaW50cm9zcGVjdGlvbikKLSAtLWRpc2FibGUt c2NoZW1hcy1jb21waWxlIC0tZGlzYWJsZS1zdGF0aWMgLS13aXRoLWRlZmF1bHQtcGFtLWNvbmZp Zz1hcmNoCisgLS1kaXNhYmxlLXN0YXRpYyAtLXdpdGgtZGVmYXVsdC1wYW0tY29uZmlnPWFyY2gK ICAtLXdpdGgtYXQtc3BpLXJlZ2lzdHJ5ZC1kaXJlY3Rvcnk9L3Vzci9saWJleGVjIC0td2l0aG91 dC10Y3Atd3JhcHBlcnMKICAtLXdpdGgtc2NyZWVuc2hvdC1kaXI9L3Zhci9saWIvZ2RtL2dyZWV0 ZXIgLS1zYmluZGlyPS91c3IvYmluIC0td2l0aG91dC1wbHltb3V0aAogIC0td2l0aC14YXV0aC1k aXI9L3J1bi9nZG0gLS13aXRoLXBpZC1maWxlPS9ydW4vZ2RtL2dkbS5waWQKQEAgLTE0LDE0ICsx NCwxNCBAQCBob3N0bWFrZWRlcGVuZHM9ImRjb25mIGdldHRleHQgaXRzdG9vbCBwa2ctY29uZmln IgogbWFrZWRlcGVuZHM9ImFjY291bnRzc2VydmljZS1kZXZlbCBlbG9naW5kLWRldmVsIGdldHRl eHQtZGV2ZWwgZ2xpYi1kZXZlbAogIGlzby1jb2RlcyBsaWJTTS1kZXZlbCBsaWJjYW5iZXJyYS1k ZXZlbCBuc3MtZGV2ZWwgcGFtLWRldmVsIHVwb3dlci1kZXZlbCIKIGRlcGVuZHM9Imdub21lLXNl dHRpbmdzLWRhZW1vbiBnbm9tZS1zaGVsbCB4b3JnLXNlcnZlciB4b3JnLXNlcnZlci14d2F5bGFu ZAotIHhyZGIiCisgeHJkYiBnc2V0dGluZ3MtZGVza3RvcC1zY2hlbWFzIgogY2hlY2tkZXBlbmRz PSJjaGVjay1kZXZlbCIKIHNob3J0X2Rlc2M9IkdOT01FIERpc3BsYXkgTWFuYWdlciIKIG1haW50 YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwt Mi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcvUHJvamVjdHMv R0RNIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8k e3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09ZTg1ZGY2NTdhYThkOTM2MWFm NGZiMTIyMDE0ZDhmMTIzYTkzYmZlNDVhNzY2MmZiYTJiMzczZDgzOWRiZDhkMworY2hlY2tzdW09 M2Y1NjFjMTBhZTJlNTk0MmIwMzAyNmYwMmMwYWE3ZDg3MTJlMzgyNzA4YjE3YTA5NzA4NzRkZjgx NzViODNhOAogCiBjb25mX2ZpbGVzPSIKIAkvZXRjL2dkbS9jdXN0b20uY29uZgoKRnJvbSAxNWE0 NjllY2FlNTIyYWUyNmQyZjcyMTc5NjdmYjA5OTNkNDRhYjJiIE1vbiBTZXAgMTcgMDA6MDA6MDAg MjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBGcmksIDEgTWF5 IDIwMjAgMTg6MjQ6MDIgKzA1MzAKU3ViamVjdDogW1BBVENIIDQyLzUyXSBidWRnaWUtZGVza3Rv cDogcmVidWlsZCBhZ2FpbnN0CiBsaWJnbm9tZS1kZXNrdG9wLTMuc28uMTkKCi0tLQogLi4uL3Bh dGNoZXMvTXV0dGVyLTMuMzUuOTAtc3VwcG9ydC0xOTE4LnBhdGNoIHwgMTI3MTMgKysrKysrKysr KysrKysrKwogc3JjcGtncy9idWRnaWUtZGVza3RvcC90ZW1wbGF0ZSAgICAgICAgICAgICAgIHwg ICAgIDkgKy0KIDIgZmlsZXMgY2hhbmdlZCwgMTI3MTggaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlv bnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2J1ZGdpZS1kZXNrdG9wL3BhdGNoZXMv TXV0dGVyLTMuMzUuOTAtc3VwcG9ydC0xOTE4LnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9i dWRnaWUtZGVza3RvcC9wYXRjaGVzL011dHRlci0zLjM1LjkwLXN1cHBvcnQtMTkxOC5wYXRjaCBi L3NyY3BrZ3MvYnVkZ2llLWRlc2t0b3AvcGF0Y2hlcy9NdXR0ZXItMy4zNS45MC1zdXBwb3J0LTE5 MTgucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLmJmZjFiYWQw MzlmCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9idWRnaWUtZGVza3RvcC9wYXRjaGVzL011 dHRlci0zLjM1LjkwLXN1cHBvcnQtMTkxOC5wYXRjaApAQCAtMCwwICsxLDEyNzEzIEBACitGcm9t IDlkMDlhMWIxNWJiZjY2NzgwY2M4OWVmZjNjNGI4NGU2NjZiMGJmZGEgTW9uIFNlcCAxNyAwMDow MDowMCAyMDAxCitGcm9tOiBEYXZpZCBNb2hhbW1lZCA8Zm9zc2ZyZWVkb21AdXNlcnMubm9yZXBs eS5naXRodWIuY29tPgorRGF0ZTogVHVlLCAxOCBGZWIgMjAyMCAwNjo0MDoxMiArMDAwMAorU3Vi amVjdDogW1BBVENIXSBNdXR0ZXIgMy4zNiBzdXBwb3J0ICgjMTkxOCkKKworKiBBZGQgbXV0dGVy IDMuMzUuMiBzdXBwb3J0CisKKyogTXV0dGVyIGNvbXBpbGVyIGZsYWdzIG5lZWRzIHRvIGJlIHNw ZWNpZmllZCBiZWZvcmUgZGVwZW5kZW5jeSBjaGVja3MKKworKiBSZWdlbmVyYXRlIHZhcGkgZm9y IDMuMzUuOTAKKworT3JpZ2luOiBodHRwczovL2dpdGh1Yi5jb20vc29sdXMtcHJvamVjdC9idWRn aWUtZGVza3RvcC9jb21taXRzLzlkMDlhMWIxNWIKKy0tLQorIHNyYy93bS9tZXNvbi5idWlsZCAg ICAgICAgICAgICAgICB8ICAgMTIgKy0KKyBzcmMvd20vd20udmFsYSAgICAgICAgICAgICAgICAg ICAgfCAgIDE2ICstCisgdmFwaS9DbHV0dGVyLTYubWV0YWRhdGEgICAgICAgICAgIHwgIDIwNCAr CisgdmFwaS9Db2dsLTYubWV0YWRhdGEgICAgICAgICAgICAgIHwgICAyNyArCisgdmFwaS9NZXRh LTYubWV0YWRhdGEgICAgICAgICAgICAgIHwgICA4MCArCisgdmFwaS9ncmFwaGVuZS1nb2JqZWN0 LTEuMC52YXBpICAgIHwgIDY5MSArKysKKyB2YXBpL2xpYm11dHRlci02LmRlcHMgICAgICAgICAg ICAgfCAgICA2ICsKKyB2YXBpL2xpYm11dHRlci02LnZhcGkgICAgICAgICAgICAgfCAxNDc1ICsr KysrCisgdmFwaS9tdXR0ZXItY2x1dHRlci02LWN1c3RvbS52YWxhIHwgIDE0NyArCisgdmFwaS9t dXR0ZXItY2x1dHRlci02LmRlcHMgICAgICAgIHwgICAgNCArCisgdmFwaS9tdXR0ZXItY2x1dHRl ci02LnZhcGkgICAgICAgIHwgODY4NyArKysrKysrKysrKysrKysrKysrKysrKysrKysrKworIHZh cGkvbXV0dGVyLWNvZ2wtNi1jdXN0b20udmFsYSAgICB8ICAxMjUgKworIHZhcGkvbXV0dGVyLWNv Z2wtNi5kZXBzICAgICAgICAgICB8ICAgIDEgKworIHZhcGkvbXV0dGVyLWNvZ2wtNi52YXBpICAg ICAgICAgICB8IDEwNzcgKysrKworIDE0IGZpbGVzIGNoYW5nZWQsIDEyNTQ5IGluc2VydGlvbnMo KyksIDMgZGVsZXRpb25zKC0pCisgY3JlYXRlIG1vZGUgMTAwNjQ0IHZhcGkvQ2x1dHRlci02Lm1l dGFkYXRhCisgY3JlYXRlIG1vZGUgMTAwNjQ0IHZhcGkvQ29nbC02Lm1ldGFkYXRhCisgY3JlYXRl IG1vZGUgMTAwNjQ0IHZhcGkvTWV0YS02Lm1ldGFkYXRhCisgY3JlYXRlIG1vZGUgMTAwNjQ0IHZh cGkvZ3JhcGhlbmUtZ29iamVjdC0xLjAudmFwaQorIGNyZWF0ZSBtb2RlIDEwMDY0NCB2YXBpL2xp Ym11dHRlci02LmRlcHMKKyBjcmVhdGUgbW9kZSAxMDA2NDQgdmFwaS9saWJtdXR0ZXItNi52YXBp CisgY3JlYXRlIG1vZGUgMTAwNjQ0IHZhcGkvbXV0dGVyLWNsdXR0ZXItNi1jdXN0b20udmFsYQor IGNyZWF0ZSBtb2RlIDEwMDY0NCB2YXBpL211dHRlci1jbHV0dGVyLTYuZGVwcworIGNyZWF0ZSBt b2RlIDEwMDY0NCB2YXBpL211dHRlci1jbHV0dGVyLTYudmFwaQorIGNyZWF0ZSBtb2RlIDEwMDY0 NCB2YXBpL211dHRlci1jb2dsLTYtY3VzdG9tLnZhbGEKKyBjcmVhdGUgbW9kZSAxMDA2NDQgdmFw aS9tdXR0ZXItY29nbC02LmRlcHMKKyBjcmVhdGUgbW9kZSAxMDA2NDQgdmFwaS9tdXR0ZXItY29n bC02LnZhcGkKKworZGlmZiAtLWdpdCBhL3NyYy93bS9tZXNvbi5idWlsZCBiL3NyYy93bS9tZXNv bi5idWlsZAoraW5kZXggZTM5Yjg2NzguLjRiY2MwZjllIDEwMDY0NAorLS0tIGEvc3JjL3dtL21l c29uLmJ1aWxkCisrKysgYi9zcmMvd20vbWVzb24uYnVpbGQKK0BAIC0yNSwxMSArMjUsMTkgQEAg aWYgbm90IGRlcF9tdXR0ZXIuZm91bmQoKQorICAgICAgICAgbWVzc2FnZSgnVXNpbmcgbmV3IGxp Ym11dHRlci00IEFCSSBmcm9tIEdOT01FIDMuMzInKQorICAgICAgICAgdmFwaV9tdXR0ZXIgPSAn bGlibXV0dGVyLTQnCisgICAgIGVsc2UKKy0gICAgICAgIGRlcF9tdXR0ZXIgPSBkZXBlbmRlbmN5 KCdsaWJtdXR0ZXItNScsIHZlcnNpb246IGdub21lX21pbmltdW1fdmVyc2lvbikKKysgICAgICAg IGRlcF9tdXR0ZXIgPSBkZXBlbmRlbmN5KCdsaWJtdXR0ZXItNScsIHZlcnNpb246IGdub21lX21p bmltdW1fdmVyc2lvbiwgcmVxdWlyZWQ6IGZhbHNlKQorKyAgICAgICAgYnVkZ2llX3dtX3N0YXR1 c192YWxhX2FyZ3MgKz0gWyctRCcsICdIQVZFX01VVFRFUl81J10KKyAgICAgICAgIGlmIGRlcF9t dXR0ZXIuZm91bmQoKQorICAgICAgICAgICAgIG1lc3NhZ2UoJ1VzaW5nIG5ldyBsaWJtdXR0ZXIt NSBBQkkgZnJvbSBHTk9NRSAzLjM0JykKKyAgICAgICAgICAgICB2YXBpX211dHRlciA9ICdsaWJt dXR0ZXItNScKKy0gICAgICAgICAgICBidWRnaWVfd21fc3RhdHVzX3ZhbGFfYXJncyArPSBbJy1E JywgJ0hBVkVfTVVUVEVSXzUnXQorKyAgICAgICAgZWxzZQorKyAgICAgICAgICAgIGRlcF9tdXR0 ZXIgPSBkZXBlbmRlbmN5KCdsaWJtdXR0ZXItNicsIHZlcnNpb246IGdub21lX21pbmltdW1fdmVy c2lvbikKKysgICAgICAgICAgICBidWRnaWVfd21fc3RhdHVzX3ZhbGFfYXJncyArPSBbJy1EJywg J0hBVkVfTVVUVEVSXzYnXQorKyAgICAgICAgICAgIGlmIGRlcF9tdXR0ZXIuZm91bmQoKQorKyAg ICAgICAgICAgICAgICBkZXBfZ3JhcGhlbmUgPSBkZXBlbmRlbmN5KCdncmFwaGVuZS1nb2JqZWN0 LTEuMCcsIHZlcnNpb246ICc+PSAxLjEwJykKKysgICAgICAgICAgICAgICAgbWVzc2FnZSgnVXNp bmcgbmV3IGxpYm11dHRlci02IEFCSSBmcm9tIEdOT01FIDMuMzYnKQorKyAgICAgICAgICAgICAg ICB2YXBpX211dHRlciA9ICdsaWJtdXR0ZXItNicKKysgICAgICAgICAgICBlbmRpZgorICAgICAg ICAgZW5kaWYKKyAgICAgZW5kaWYKKyBlbmRpZgorZGlmZiAtLWdpdCBhL3NyYy93bS93bS52YWxh IGIvc3JjL3dtL3dtLnZhbGEKK2luZGV4IGZlZTg5NDQzLi5iYjQ2Y2QwNiAxMDA2NDQKKy0tLSBh L3NyYy93bS93bS52YWxhCisrKysgYi9zcmMvd20vd20udmFsYQorQEAgLTEzNyw4ICsxMzcsMTMg QEAgcHVibGljIGNsYXNzIEJ1ZGdpZVdNIDogTWV0YS5QbHVnaW4KKyAgICAgcHVibGljIHN0YXRp YyBzdHJpbmdbXT8gb2xkX2FyZ3M7CisgICAgIHB1YmxpYyBzdGF0aWMgYm9vbCB3YXlsYW5kID0g ZmFsc2U7CisgCisrI2lmIEhBVkVfTVVUVEVSXzYKKysgICAgc3RhdGljIEdyYXBoZW5lLlBvaW50 IFBWX0NFTlRFUjsKKysgICAgc3RhdGljIEdyYXBoZW5lLlBvaW50IFBWX05PUk07CisrI2Vsc2UK KyAgICAgc3RhdGljIENsdXR0ZXIuUG9pbnQgUFZfQ0VOVEVSOworICAgICBzdGF0aWMgQ2x1dHRl ci5Qb2ludCBQVl9OT1JNOworKyNlbmRpZgorIAorICAgICBwcml2YXRlIE1ldGEuQmFja2dyb3Vu ZEdyb3VwPyBiYWNrZ3JvdW5kX2dyb3VwOworIAorQEAgLTE3MSwxMCArMTc2LDE1IEBAIHB1Ymxp YyBjbGFzcyBCdWRnaWVXTSA6IE1ldGEuUGx1Z2luCisgICAgICAgICAgICAgbGljZW5zZSA9ICJH UEwtMi4wIiwKKyAgICAgICAgICAgICBkZXNjcmlwdGlvbiA9ICJCdWRnaWUgV2luZG93IE1hbmFn ZXIiCisgICAgICAgICB9OworKyNpZiBIQVZFX01VVFRFUl82CisrICAgICAgICBQVl9DRU5URVIg PSBHcmFwaGVuZS5Qb2ludCgpOworKyAgICAgICAgUFZfTk9STSA9IEdyYXBoZW5lLlBvaW50KCk7 CisrI2Vsc2UKKyAgICAgICAgIFBWX0NFTlRFUiA9IENsdXR0ZXIuUG9pbnQuYWxsb2MoKTsKKysg ICAgICAgIFBWX05PUk0gPSBDbHV0dGVyLlBvaW50LmFsbG9jKCk7CisrI2VuZGlmCisgICAgICAg ICBQVl9DRU5URVIueCA9IDAuNWY7CisgICAgICAgICBQVl9DRU5URVIueSA9IDAuNWY7CistICAg ICAgICBQVl9OT1JNID0gQ2x1dHRlci5Qb2ludC5hbGxvYygpOworICAgICAgICAgUFZfTk9STS54 ID0gMC4wZjsKKyAgICAgICAgIFBWX05PUk0ueSA9IDAuMGY7CisgICAgIH0KK0BAIC0xMDAxLDcg KzEwMTEsMTEgQEAgcHVibGljIGNsYXNzIEJ1ZGdpZVdNIDogTWV0YS5QbHVnaW4KKyAgICAgICAg IHRpbGVfcHJldmlldy5zZXQoInNjYWxlLXgiLCBOT1RJRklDQVRJT05fTUFQX1NDQUxFX1gsICJz Y2FsZS15IiwgTk9USUZJQ0FUSU9OX01BUF9TQ0FMRV9ZLAorICAgICAgICAgICAgICJwaXZvdC1w b2ludCIsIFBWX0NFTlRFUik7CisgCisrI2lmIEhBVkVfTVVUVEVSXzYKKysgICAgICAgIC8vdGls ZV9wcmV2aWV3Lmxvd2VyKHdpbl9hY3Rvcik7CisrI2Vsc2UKKyAgICAgICAgIHRpbGVfcHJldmll dy5sb3dlcih3aW5fYWN0b3IpOworKyNlbmRpZgorICAgICAgICAgdGlsZV9wcmV2aWV3LnRpbGVf cmVjdCA9IHRpbGVfcmVjdDsKKyAKKyAgICAgICAgIHRpbGVfcHJldmlldy5zaG93KCk7CitkaWZm IC0tZ2l0IGEvdmFwaS9DbHV0dGVyLTYubWV0YWRhdGEgYi92YXBpL0NsdXR0ZXItNi5tZXRhZGF0 YQorbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAwLi44YzI2YTEyMgorLS0tIC9k ZXYvbnVsbAorKysrIGIvdmFwaS9DbHV0dGVyLTYubWV0YWRhdGEKK0BAIC0wLDAgKzEsMjA0IEBA CisrLy8gTm9uIG1pbmktb2JqZWN0CisrQWN0b3JCb3ggc3RydWN0CisrQ29sb3Igc3RydWN0Cisr Rm9nIHN0cnVjdAorK0dlb21ldHJ5IHN0cnVjdAorK0tub3Qgc3RydWN0CisrUGF0aE5vZGUgc3Ry dWN0CisrUGVyc3BlY3RpdmUgc3RydWN0CisrVW5pdHMgc3RydWN0CisrVmVydGV4IHN0cnVjdAor KworKyoucmVmIHVub3duZWQKKysKKytpbml0LmFyZ3YgdW5vd25lZAorK2luaXRfd2l0aF9hcmdz CisrCS5hcmd2IHVub3duZWQKKytBY3RvcgorKwkuYXBwbHlfdHJhbnNmb3JtLm1hdHJpeCByZWYK KysJLmdldF9hYnNfYWxsb2NhdGlvbl92ZXJ0aWNlcy52ZXJ0cyBvdXQ9ZmFsc2UKKysJLmdldF9h bGxvY2F0aW9uX3ZlcnRpY2VzLnZlcnRzIG91dD1mYWxzZQorK0NhbnZhcworKwkubmV3IHN5bWJv bF90eXBlPSJjb25zdHJ1Y3RvciIKKytFdmVudC50eXBlI21ldGhvZCBuYW1lPSJnZXRfdHlwZSIK KytJbWFnZQorKwkubmV3IHN5bWJvbF90eXBlPSJjb25zdHJ1Y3RvciIKKysKKysvLyA/Pz8KKytB Y3Rvci5oYXNfcG9pbnRlciNtZXRob2QgbmFtZT0iZ2V0X2hhc19wb2ludGVyIgorK0luaXRFcnJv ciBlcnJvcmRvbWFpbj1mYWxzZQorKworKy8vIE5vdCBhbGwgYmFja2luZyBzeW1ib2xzIGFyZSBk ZXByZWNhdGVkCisrQWN0b3IucGljayBkZXByZWNhdGVkPWZhbHNlCisrCisrLy8gTnVsbGFibGUg cmV0dXJuIHZhbHVlcworK0FjdG9yCisrCS5nZXRfcGFyZW50IG51bGxhYmxlCisrdmFsdWVfZ2V0 X2NvbG9yIG51bGxhYmxlCisrCisrLy8gbWV0aG9kL3ZpcnR1YWwtbWV0aG9kL3NpZ25hbCBkb24n dCBtYXRjaAorK0FjdG9yCisrCS5ldmVudCNtZXRob2QgbmFtZT0iZW1pdF9ldmVudCIKKysJLmdl dF9wYWludF92b2x1bWUjbWV0aG9kIHNraXAKKysJLnF1ZXVlX3JlZHJhdyNzaWduYWwgc2tpcAor KwkucXVldWVfcmVkcmF3I3ZpcnR1YWxfbWV0aG9kIHNraXAKKytDb250YWluZXIKKysJLmFkZF9h Y3RvciBza2lwPWZhbHNlCisrVGV4dAorKwkuYWN0aXZhdGUjbWV0aG9kIG5hbWU9InRyeV9hY3Rp dmF0ZSIKKysJLmluc2VydF90ZXh0I3NpZ25hbCBza2lwCisrVGV4dEJ1ZmZlci5nZXRfdGV4dCN2 aXJ0dWFsX21ldGhvZCBuYW1lPSJnZXRfdGV4dF93aXRoX2xlbmd0aCIKKysKKysvLyB2aXJ0dWFs L2Fic3RyYWN0IGRpc3RpbmN0aW9uCisrQ29udGFpbmVyCisrCS5sb3dlciB2aXJ0dWFsCisrCS5y YWlzZSB2aXJ0dWFsCisrCS4qX2NoaWxkX21ldGEjdmlydHVhbF9tZXRob2QgdmlydHVhbAorKwku Zm9yZWFjaF93aXRoX2ludGVybmFscyN2aXJ0dWFsX21ldGhvZCB2aXJ0dWFsCisrCisrLy8gRGVm YXVsdCB2YWx1ZXMKKytDb250YWluZXIKKysJLmxvd2VyLnNpYmxpbmcgbnVsbGFibGUgZGVmYXVs dD1udWxsCisrCS5yYWlzZS5zaWJsaW5nIG51bGxhYmxlIGRlZmF1bHQ9bnVsbAorK1N0YWdlLnJl YWRfcGl4ZWxzCisrCS53aWR0aCBkZWZhdWx0PS0xCisrCS5oZWlnaHQgZGVmYXVsdD0tMQorK1Rl eHQKKysJLnBvc2l0aW9uX3RvX2Nvb3Jkcy5saW5lX2hlaWdodCBkZWZhdWx0PW51bGwKKysKKysv LyBSZXBhcmVudGVkIGZ1bmNzIG1ldGhvZHMgY2FuJ3QgYmUgaW5zdGFuY2UgbWV0aG9kcworK2Zl YXR1cmVfYXZhaWxhYmxlIHNraXAKKytmZWF0dXJlX2dldF9hbGwgc2tpcAorKworKy8vIFNraXBw ZWQgYnkgZy1pIGZvciB1bmtub3duIHJlYXNvbnMKKytMYXlvdXRNYW5hZ2VyCisrCS5jcmVhdGVf Y2hpbGRfbWV0YSBza2lwPWZhbHNlCisrCisrLy8gVmFyaWFkaWMgYXJndW1lbnRzCisrQWN0b3IK KysJLmFuaW1hdGUgc2tpcD1mYWxzZQorKwkuYW5pbWF0ZV93aXRoX2FscGhhIHNraXA9ZmFsc2UK KysJLmFuaW1hdGVfd2l0aF90aW1lbGluZSBza2lwPWZhbHNlCisrQm94CisrCS5wYWNrIHNraXA9 ZmFsc2UKKysJLnBhY2tfYWZ0ZXIgc2tpcD1mYWxzZQorKwkucGFja19hdCBza2lwPWZhbHNlCisr CS5wYWNrX2JlZm9yZSBza2lwPWZhbHNlCisrQ29udGFpbmVyCisrCS5hZGRfdmFsaXN0IHNraXA9 ZmFsc2UKKysJLmNoaWxkX2dldCBza2lwPWZhbHNlCisrCS5jaGlsZF9zZXQgc2tpcD1mYWxzZQor KwkucmVtb3ZlIHNraXA9ZmFsc2UKKysJLnJlbW92ZV92YWxpc3Qgc2tpcD1mYWxzZQorK0ludGVy dmFsCisrCS5uZXcgc2tpcD1mYWxzZQorKwkuZ2V0X2ludGVydmFsIHNraXA9ZmFsc2UKKysJLnNl dF9maW5hbCBza2lwPWZhbHNlCisrCS5zZXRfaW5pdGlhbCBza2lwPWZhbHNlCisrCS5zZXRfaW50 ZXJ2YWwgc2tpcD1mYWxzZQorK0xheW91dE1hbmFnZXIKKysJLmNoaWxkX2dldCBza2lwPWZhbHNl CisrCS5jaGlsZF9zZXQgc2tpcD1mYWxzZQorK1NjcmlwdAorKwkuZ2V0X29iamVjdHMgc2tpcD1m YWxzZQorKworKy8vIENoYW5naW5nIGVycm9yIGRvbWFpbnMKKytUZXh0dXJlCisrCS5uZXdfZnJv bV9maWxlIHRocm93cz0iQ2x1dHRlci5UZXh0dXJlRXJyb3IiCisrCisrLy8gU2tpcHBlZCB1cHN0 cmVhbSBmb3IgdW5rbm93biByZWFzb25zCisrQWxwaGEucmVnaXN0ZXJfZnVuYyBza2lwPWZhbHNl CisrSW50ZXJ2YWwucmVnaXN0ZXJfcHJvZ3Jlc3NfZnVuYyBza2lwPWZhbHNlCisrZ2V0X29wdGlv bl9ncm91cCBza2lwPWZhbHNlCisrZ2V0X29wdGlvbl9ncm91cF93aXRob3V0X2luaXQgc2tpcD1m YWxzZQorK3RocmVhZHNfYWRkX2lkbGUgc2tpcD1mYWxzZQorK3RocmVhZHNfYWRkX2lkbGVfZnVs bCBza2lwPWZhbHNlCisrdGhyZWFkc19hZGRfdGltZW91dCBza2lwPWZhbHNlCisrdGhyZWFkc19h ZGRfdGltZW91dF9mdWxsIHNraXA9ZmFsc2UKKysKKysvLyBzdHJ1Y3QvY2xhc3MgY29uZnVzaW9u CisrQWN0b3JCb3gKKysJLm5ldyBza2lwCisrCS5mcm9tX3ZlcnRpY2VzIHNraXAKKytVbml0cy5m cm9tXyogc2tpcAorK0NvbG9yCisrCS5uZXcgc2tpcAorK1ZlcnRleC5uZXcgc2tpcAorKworKy8v IENsYXNzIG1ldGhvZHMKKytjb250YWluZXJfY2xhc3NfZmluZF9jaGlsZF9wcm9wZXJ0eSBza2lw CisrY29udGFpbmVyX2NsYXNzX2xpc3RfY2hpbGRfcHJvcGVydGllcyBza2lwCisrCisrLy8gTW92 ZSBzeW1ib2xzCisrZ2V0X2FjdG9yX2J5X2dpZCBwYXJlbnQ9IkNsdXR0ZXIuQWN0b3IiIG5hbWU9 ImdldF9ieV9naWQiCisrdW5pdHNfZnJvbV8qIHNraXAKKysKKysvLyBDbGFzc2VzIG1hcmtlZCBh cyBvdXQgYnV0IG5vdCBkb3VibGUgcHRyCisrQWN0b3IKKysJLmdldF9tYXJnaW4ubWFyZ2luIG91 dD1mYWxzZQorK0RyYWdBY3Rpb24KKysJLmdldF9kcmFnX2FyZWEuZHJhZ19hcmVhIG91dD1mYWxz ZQorK0lucHV0RGV2aWNlCisrCS5nZXRfY29vcmRzLnBvaW50IG91dD1mYWxzZQorK1JlY3QKKysJ LmdldF9jZW50ZXIuY2VudGVyIG91dD1mYWxzZQorKwkuaW50ZXJzZWN0aW9uLnJlcyBvdXQ9ZmFs c2UKKysJLnVuaW9uLnJlcyBvdXQ9ZmFsc2UKKytUaW1lbGluZQorKwkuZ2V0X2N1YmljX2Jlemll cl9wcm9ncmVzcy5jXyogb3V0PWZhbHNlCisrWm9vbUFjdGlvbgorKwkuZ2V0X2ZvY2FsX3BvaW50 LnBvaW50IG91dD1mYWxzZQorKwkuZ2V0X3RyYW5zZm9ybWVkX2ZvY2FsX3BvaW50LnBvaW50IG91 dD1mYWxzZQorKworKy8vIFN0cnVjdCByZXR1cm4gdmFsdWVzCisrY29sb3JfZ2V0X3N0YXRpYyBu dWxsYWJsZQorKworKy8vIFJlbW92ZSBmb3IgY2x1dHRlci0yLjAKKysvLy8vLy8vLy8vLy8vLy8v Ly8vLy8vLy8vCisrCisrU3RhZ2UKKysgCS5ldmVudCBuYW1lPSJlbWl0X2V2ZW50IgorKworKy8v ICpFdmVudCBzaG91bGQgYmUgY29tcGFjdCBjbGFzc2VzIGRlcml2ZWQgZnJvbSBDbHV0dGVyLkV2 ZW50CisrRXZlbnQudHlwZSBza2lwPWZhbHNlCisrQW55RXZlbnQgc3RydWN0PWZhbHNlIGJhc2Vf dHlwZT0iQ2x1dHRlci5FdmVudCIKKytCdXR0b25FdmVudCBzdHJ1Y3Q9ZmFsc2UgYmFzZV90eXBl PSJDbHV0dGVyLkV2ZW50IgorK0Nyb3NzaW5nRXZlbnQgc3RydWN0PWZhbHNlIGJhc2VfdHlwZT0i Q2x1dHRlci5FdmVudCIKKytLZXlFdmVudCBzdHJ1Y3Q9ZmFsc2UgYmFzZV90eXBlPSJDbHV0dGVy LkV2ZW50IgorK01vdGlvbkV2ZW50IHN0cnVjdD1mYWxzZSBiYXNlX3R5cGU9IkNsdXR0ZXIuRXZl bnQiCisrU2Nyb2xsRXZlbnQgc3RydWN0PWZhbHNlIGJhc2VfdHlwZT0iQ2x1dHRlci5FdmVudCIK KytTdGFnZVN0YXRlRXZlbnQgc3RydWN0PWZhbHNlIGJhc2VfdHlwZT0iQ2x1dHRlci5FdmVudCIK KytUb3VjaEV2ZW50IHN0cnVjdD1mYWxzZSBiYXNlX3R5cGU9IkNsdXR0ZXIuRXZlbnQiCisrVG91 Y2hwYWRQaW5jaEV2ZW50IHN0cnVjdD1mYWxzZSBiYXNlX3R5cGU9IkNsdXR0ZXIuRXZlbnQiCisr VG91Y2hwYWRTd2lwZUV2ZW50IHN0cnVjdD1mYWxzZSBiYXNlX3R5cGU9IkNsdXR0ZXIuRXZlbnQi CisrCisrLy8gS2V5c3ltcyB1c2VkIHRvIGJlIENMVVRURVJfWCBpbnN0ZWFkIG9mIENMVVRURVJf S0VZX1gKKysqI2NvbnN0YW50IHNraXAKKytDT0dMIHNraXA9ZmFsc2UKKytDVVJSRU5UX1RJTUUg c2tpcD1mYWxzZQorK0ZMQVZPVVIgc2tpcD1mYWxzZQorK1BBVEhfUkVMQVRJVkUgc2tpcD1mYWxz ZQorK1BSSU9SSVRZX1JFRFJBVyBza2lwPWZhbHNlCisrCisrLy8gQ2x1dHRlciBkZXZzIGRvbid0 IGxpa2UgdXMgY3JlYXRpbmcgbmVzdGVkIG5hbWVzcGFjZXMKKyt2YWx1ZV8qIG5hbWU9InZhbHVl XyguKykiIHBhcmVudD0iQ2x1dHRlci5WYWx1ZSIKKyt0aHJlYWRzXyogbmFtZT0idGhyZWFkc18o LispIiBwYXJlbnQ9IkNsdXR0ZXIuVGhyZWFkcyIKKyt0aHJlYWRzX2FkZF9pZGxlIG5hbWU9ImFk ZCIgcGFyZW50PSJDbHV0dGVyLlRocmVhZHMuSWRsZSIKKyt0aHJlYWRzX2FkZF9pZGxlX2Z1bGwg bmFtZT0iYWRkX2Z1bGwiIHBhcmVudD0iQ2x1dHRlci5UaHJlYWRzLklkbGUiCisrdGhyZWFkc19h ZGRfdGltZW91dCBuYW1lPSJhZGQiIHBhcmVudD0iQ2x1dHRlci5UaHJlYWRzLlRpbWVvdXQiCisr dGhyZWFkc19hZGRfdGltZW91dF9mdWxsIG5hbWU9ImFkZF9mdWxsIiBwYXJlbnQ9IkNsdXR0ZXIu VGhyZWFkcy5UaW1lb3V0IgorKworKy8vIEJhY2t3YXJkcyBjb21wYXRpYmlsaXR5CisrQ29sb3Iu YWxsb2Mgc3ltYm9sX3R5cGU9ImZ1bmN0aW9uIgorK1BvaW50LmFsbG9jIHN5bWJvbF90eXBlPSJm dW5jdGlvbiIKKytSZWN0LmFsbG9jIHN5bWJvbF90eXBlPSJmdW5jdGlvbiIKKytTaXplLmFsbG9j IHN5bWJvbF90eXBlPSJmdW5jdGlvbiIKKytWZXJ0ZXguYWxsb2Mgc3ltYm9sX3R5cGU9ImZ1bmN0 aW9uIgorKworK0JpbkFsaWdubWVudCBkZXByZWNhdGVkPWZhbHNlIGRlcHJlY2F0ZWRfc2luY2U9 bnVsbAorK0JpbkFsaWdubWVudC4qIGRlcHJlY2F0ZWQKKytCaW5BbGlnbm1lbnQuc3RhcnQgZGVw cmVjYXRlZD1mYWxzZQorK0JpbkxheW91dC5uZXcuKl9hbGlnbiBkZWZhdWx0PUNsdXR0ZXIuQmlu QWxpZ25tZW50LlNUQVJUCisrCisrLy8gUG9zc2libHkga2VlcAorK0tFWV8qIHNraXA9ZmFsc2Ug bmFtZT0iS0VZXyguKykiIHR5cGU9InVpbnQiIHBhcmVudD0iQ2x1dHRlci5LZXkiCitkaWZmIC0t Z2l0IGEvdmFwaS9Db2dsLTYubWV0YWRhdGEgYi92YXBpL0NvZ2wtNi5tZXRhZGF0YQorbmV3IGZp bGUgbW9kZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAwLi4wOTJiNWUyOQorLS0tIC9kZXYvbnVsbAor KysrIGIvdmFwaS9Db2dsLTYubWV0YWRhdGEKK0BAIC0wLDAgKzEsMjcgQEAKKytDb2dsIGNoZWFk ZXJfZmlsZW5hbWU9ImNvZ2wvY29nbC5oIgorKworK0NvbG9yIHN0cnVjdAorKyAgLm5ldyBza2lw CisrICAuZnJlZSBza2lwCisrCisrY3JlYXRlX3Byb2dyYW0gc2tpcAorK2NyZWF0ZV9zaGFkZXIg c2tpcAorKworKworK2lzX2JpdG1hcCBza2lwCisraXNfbWF0ZXJpYWwgc2tpcAorK2lzX29mZnNj cmVlbiBza2lwCisraXNfcHJvZ3JhbSBza2lwCisraXNfc2hhZGVyIHNraXAKKytpc190ZXh0dXJl IHNraXAKKytpc192ZXJ0ZXhfYnVmZmVyIHNraXAKKysKKytNYXRyaXggc3RydWN0CisrICAuZ2V0 X2FycmF5IGFycmF5PXRydWUgYXJyYXlfbGVuZ3RoX2lkeD0tMQorKyAgLmdldF9pbnZlcnNlLmlu dmVyc2Ugb3V0PXRydWUKKysgIC5tdWx0aXBseSBza2lwCisrICAuaW5pdF9mcm9tX2FycmF5IHNr aXAKKysgIC5pbml0X2lkZW50aXR5IHNraXAKKysgIC50cmFuc2Zvcm1fcG9pbnQuKiByZWY9dHJ1 ZQorKworK3Byb2dyYW1fKiBza2lwCitkaWZmIC0tZ2l0IGEvdmFwaS9NZXRhLTYubWV0YWRhdGEg Yi92YXBpL01ldGEtNi5tZXRhZGF0YQorbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAwMDAw MDAwLi4xZDk4NDc3OAorLS0tIC9kZXYvbnVsbAorKysrIGIvdmFwaS9NZXRhLTYubWV0YWRhdGEK K0BAIC0wLDAgKzEsODAgQEAKKytCYWNrZW5kIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1i YWNrZW5kLmgiCisrQmFja2dyb3VuZCBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtYmFja2dy b3VuZC5oIgorK0JhY2tncm91bmRBY3RvciBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtYmFj a2dyb3VuZC1hY3Rvci5oIgorK0JhY2tncm91bmRHcm91cCBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRh L21ldGEtYmFja2dyb3VuZC1ncm91cC5oIgorK0JhY2tncm91bmRJbWFnZSBjaGVhZGVyX2ZpbGVu YW1lPSJtZXRhL21ldGEtYmFja2dyb3VuZC1pbWFnZS5oIgorK0JhY2tncm91bmRJbWFnZUNhY2hl IGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1iYWNrZ3JvdW5kLWltYWdlLmgiCisrQmFycmll ciBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL2JhcnJpZXIuaCIKKytCYXJyaWVyRXZlbnQgY2hlYWRl cl9maWxlbmFtZT0ibWV0YS9iYXJyaWVyLmgiCisrQ2xvc2VEaWFsb2cgY2hlYWRlcl9maWxlbmFt ZT0ibWV0YS9tZXRhLWNsb3NlLWRpYWxvZy5oIgorK0N1cnNvclRyYWNrZXIgY2hlYWRlcl9maWxl bmFtZT0ibWV0YS9tZXRhLWN1cnNvci10cmFja2VyLmgiCisrRGlzcGxheSBjaGVhZGVyX2ZpbGVu YW1lPSJtZXRhL2Rpc3BsYXkuaCIKKytEbmQgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLWRu ZC5oIgorK0lkbGVNb25pdG9yIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1pZGxlLW1vbml0 b3IuaCIKKytJbmhpYml0U2hvcnRjdXRzRGlhbG9nIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0 YS1pbmhpYml0LXNob3J0Y3V0cy1kaWFsb2cuaCIKKytMYXVuY2hDb250ZXh0IGNoZWFkZXJfZmls ZW5hbWU9Im1ldGEvbWV0YS1sYXVuY2gtY29udGV4dC5oIgorK01ldGEgY2hlYWRlcl9maWxlbmFt ZT0ibWV0YS9tYWluLmgiCisrTW9uaXRvck1hbmFnZXIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9t ZXRhLW1vbml0b3ItbWFuYWdlci5oIgorK1ByZWZlcmVuY2UgY2hlYWRlcl9maWxlbmFtZT0ibWV0 YS9wcmVmcy5oIgorK1JlbW90ZUFjY2Vzc0NvbnRyb2xsZXIgY2hlYWRlcl9maWxlbmFtZT0ibWV0 YS9tZXRhLXJlbW90ZS1hY2Nlc3MtY29udHJvbGxlci5oIgorK1JlbW90ZUFjY2Vzc0hhbmRsZSBj aGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtcmVtb3RlLWFjY2Vzcy1jb250cm9sbGVyLmgiCisr U2V0dGluZ3MgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLXNldHRpbmdzLmgiCisrU2hhZG93 RmFjdG9yeSBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtc2hhZG93LWZhY3RvcnkuaCIKKytT aGFwZWRUZXh0dXJlIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1zaGFwZWQtdGV4dHVyZS5o IgorK1NvdW5kUGxheWVyIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1zb3VuZC1wbGF5ZXIu aCIKKytTdGFnZSBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtc3RhZ2UuaCIKKytTdGFydHVw Tm90aWZpY2F0aW9uIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1zdGFydHVwLW5vdGlmaWNh dGlvbi5oIgorK1RoZW1lIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvdGhlbWUuaCIKKytXaW5kb3cg Y2hlYWRlcl9maWxlbmFtZT0ibWV0YS93aW5kb3cuaCIKKytXaW5kb3dBY3RvciBjaGVhZGVyX2Zp bGVuYW1lPSJtZXRhL21ldGEtd2luZG93LWFjdG9yLmgiCisrV2luZG93R3JvdXAgY2hlYWRlcl9m aWxlbmFtZT0ibWV0YS9tZXRhLXdpbmRvdy1ncm91cC5oIgorK1dpbmRvd1NoYXBlIGNoZWFkZXJf ZmlsZW5hbWU9Im1ldGEvbWV0YS13aW5kb3ctc2hhcGUuaCIKKytXb3Jrc3BhY2UgY2hlYWRlcl9m aWxlbmFtZT0ibWV0YS93b3Jrc3BhY2UuaCIKKytXb3Jrc3BhY2VNYW5hZ2VyIGNoZWFkZXJfZmls ZW5hbWU9Im1ldGEvbWV0YS13b3Jrc3BhY2UtbWFuYWdlci5oIgorK1gxMURpc3BsYXkgY2hlYWRl cl9maWxlbmFtZT0ibWV0YS9tZXRhLXgxMS1kaXNwbGF5LmgiCisrUmVjdGFuZ2xlIHN0cnVjdAor K1BsdWdpbiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtcGx1Z2luLmgiCisrUGx1Z2luSW5m byBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtcGx1Z2luLmgiCisrcHJlZnNfKiBjaGVhZGVy X2ZpbGVuYW1lPSJtZXRhL3ByZWZzLmgiIHBhcmVudD0iTWV0YS5QcmVmcyIKKythZGRfdmVyYm9z ZV90b3BpYyBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS91dGlsLmgi CisreDExX2Vycm9yX3RyYXBfcG9wIHBhcmVudD0iTWV0YS5VdGlsIiBjaGVhZGVyX2ZpbGVuYW1l PSJtZXRhL3V0aWwuaCIKKyt4MTFfZXJyb3JfdHJhcF9wdXNoIHBhcmVudD0iTWV0YS5VdGlsIiBj aGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIKKyt4MTFfZXJyb3JfdHJhcF9wb3Bfd2l0aF9y ZXR1cm4gcGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvdXRpbC5oIgor K2V4dGVybmFsX2JpbmRpbmdfbmFtZV9mb3JfYWN0aW9uIHBhcmVudD0iTWV0YS5VdGlsIiBjaGVh ZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIKKytnZXRfbG9jYWxlX2RpcmVjdGlvbiBwYXJlbnQ9 Ik1ldGEuVXRpbCIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS91dGlsLmgiCisrZ3Jhdml0eV90b19z dHJpbmcgcGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvdXRpbC5oIgor K2lzX2RlYnVnZ2luZyBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS91 dGlsLmgiCisraXNfc3luY2luZyBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hlYWRlcl9maWxlbmFtZT0i bWV0YS91dGlsLmgiCisraXNfdmVyYm9zZSBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hlYWRlcl9maWxl bmFtZT0ibWV0YS91dGlsLmgiCisraXNfd2F5bGFuZF9jb21wb3NpdG9yIHBhcmVudD0iTWV0YS5V dGlsIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIKKytsYXRlcl9hZGQgcGFyZW50PSJN ZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvdXRpbC5oIgorK2xhdGVyX3JlbW92ZSBw YXJlbnQ9Ik1ldGEuVXRpbCIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS91dGlsLmgiCisrcG9wX25v X21zZ19wcmVmaXggcGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvdXRp bC5oIgorK3B1c2hfbm9fbXNnX3ByZWZpeCBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hlYWRlcl9maWxl bmFtZT0ibWV0YS91dGlsLmgiCisrcmVjdCBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hlYWRlcl9maWxl bmFtZT0ibWV0YS91dGlsLmgiCisrcmVtb3ZlX3ZlcmJvc2VfdG9waWMgcGFyZW50PSJNZXRhLlV0 aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvdXRpbC5oIgorK3Vuc2lnbmVkX2xvbmdfZXF1YWwg cGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvdXRpbC5oIgorK3Vuc2ln bmVkX2xvbmdfaGFzaCBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS91 dGlsLmgiCisrc2hvd19kaWFsb2cgcGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9 Im1ldGEvdXRpbC5oIgorK2dldF9zdGFnZV9mb3JfZGlzcGxheSBwYXJlbnQ9Ik1ldGEuQ29tcG9z aXRvciIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9jb21wb3NpdG9yLW11dHRlci5oIgorK2dldF93 aW5kb3dfYWN0b3JzIHBhcmVudD0iTWV0YS5Db21wb3NpdG9yIiBjaGVhZGVyX2ZpbGVuYW1lPSJt ZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgiCisrZ2V0X3dpbmRvd19ncm91cF9mb3JfZGlzcGxheSBw YXJlbnQ9Ik1ldGEuQ29tcG9zaXRvciIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9jb21wb3NpdG9y LW11dHRlci5oIgorK2dldF90b3Bfd2luZG93X2dyb3VwX2Zvcl9kaXNwbGF5IHBhcmVudD0iTWV0 YS5Db21wb3NpdG9yIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgi CisrZ2V0X2ZlZWRiYWNrX2dyb3VwX2Zvcl9kaXNwbGF5IHBhcmVudD0iTWV0YS5Db21wb3NpdG9y IiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgiCisrZGlzYWJsZV91 bnJlZGlyZWN0X2Zvcl9kaXNwbGF5IHBhcmVudD0iTWV0YS5Db21wb3NpdG9yIiBjaGVhZGVyX2Zp bGVuYW1lPSJtZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgiCisrZW5hYmxlX3VucmVkaXJlY3RfZm9y X2Rpc3BsYXkgcGFyZW50PSJNZXRhLkNvbXBvc2l0b3IiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEv Y29tcG9zaXRvci1tdXR0ZXIuaCIKKytzZXRfc3RhZ2VfaW5wdXRfcmVnaW9uIHBhcmVudD0iTWV0 YS5Db21wb3NpdG9yIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgi CisrZW1wdHlfc3RhZ2VfaW5wdXRfcmVnaW9uIHBhcmVudD0iTWV0YS5Db21wb3NpdG9yIiBjaGVh ZGVyX2ZpbGVuYW1lPSJtZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgiCisrZm9jdXNfc3RhZ2Vfd2lu ZG93IHBhcmVudD0iTWV0YS5Db21wb3NpdG9yIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL2NvbXBv c2l0b3ItbXV0dGVyLmgiCisra2V5YmluZGluZ3Nfc2V0X2N1c3RvbV9oYW5kbGVyIHBhcmVudD0i TWV0YS5LZXlCaW5kaW5nIiBuYW1lPSJzZXRfY3VzdG9tX2hhbmRsZXIiCisrS2V5SGFuZGxlckZ1 bmMuZXZlbnQgdHlwZT0iQ2x1dHRlci5LZXlFdmVudD8iCisrZ2V0X2JhY2tlbmQgcGFyZW50PSJN ZXRhLkJhY2tlbmQiCisrV2luZG93LmZvY3VzI3NpZ25hbCBza2lwPXRydWUKKytXaW5kb3cuZ2V0 X3h3aW5kb3cgc2tpcD1mYWxzZQorK2dldF9vcHRpb25fY29udGV4dCBza2lwPWZhbHNlCisrc2V0 X2dub21lX3dtX2tleWJpbmRpbmdzIHNraXA9ZmFsc2UKKytzZXRfd21fbmFtZSBza2lwPWZhbHNl CisraW5pdCBza2lwPWZhbHNlCisrcnVuIHNraXA9ZmFsc2UKKytzaG93X2RpYWxvZyBza2lwPWZh bHNlCisrZ2V0X2JhY2tlbmQgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLWJhY2tlbmQuaCIK K2RpZmYgLS1naXQgYS92YXBpL2dyYXBoZW5lLWdvYmplY3QtMS4wLnZhcGkgYi92YXBpL2dyYXBo ZW5lLWdvYmplY3QtMS4wLnZhcGkKK25ldyBmaWxlIG1vZGUgMTAwNjQ0CitpbmRleCAwMDAwMDAw MC4uNjk4MDE1MzUKKy0tLSAvZGV2L251bGwKKysrKyBiL3ZhcGkvZ3JhcGhlbmUtZ29iamVjdC0x LjAudmFwaQorQEAgLTAsMCArMSw2OTEgQEAKKysvKiBncmFwaGVuZS1nb2JqZWN0LTEuMC52YXBp IGdlbmVyYXRlZCBieSB2YXBpZ2VuLCBkbyBub3QgbW9kaWZ5LiAqLworKworK1tDQ29kZSAoY3By ZWZpeCA9ICJHcmFwaGVuZSIsIGdpcl9uYW1lc3BhY2UgPSAiR3JhcGhlbmUiLCBnaXJfdmVyc2lv biA9ICIxLjAiLCBsb3dlcl9jYXNlX2NwcmVmaXggPSAiZ3JhcGhlbmVfIildCisrbmFtZXNwYWNl IEdyYXBoZW5lIHsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmpl Y3QuaCIsIGNuYW1lID0gImdyYXBoZW5lX2JveF90IiwgdHlwZV9pZCA9ICJncmFwaGVuZV9ib3hf Z2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwlwdWJsaWMgc3Ry dWN0IEJveCB7CisrCQlwdWJsaWMgYm9vbCBjb250YWluc19ib3ggKEdyYXBoZW5lLkJveCBiKTsK KysJCXB1YmxpYyBib29sIGNvbnRhaW5zX3BvaW50IChHcmFwaGVuZS5Qb2ludDNEIHBvaW50KTsK KysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5Cb3g/IGVtcHR5ICgpOworKwkJcHVi bGljIGJvb2wgZXF1YWwgKEdyYXBoZW5lLkJveCBiKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Cb3gg ZXhwYW5kIChHcmFwaGVuZS5Qb2ludDNEIHBvaW50KTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Cb3gg ZXhwYW5kX3NjYWxhciAoZmxvYXQgc2NhbGFyKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Cb3ggZXhw YW5kX3ZlYzMgKEdyYXBoZW5lLlZlYzMgdmVjKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5TcGhlcmUg Z2V0X2JvdW5kaW5nX3NwaGVyZSAoKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludDNEIGdldF9j ZW50ZXIgKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X2RlcHRoICgpOworKwkJcHVibGljIGZsb2F0 IGdldF9oZWlnaHQgKCk7CisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQzRCBnZXRfbWF4ICgpOwor KwkJcHVibGljIEdyYXBoZW5lLlBvaW50M0QgZ2V0X21pbiAoKTsKKysJCXB1YmxpYyBHcmFwaGVu ZS5WZWMzIGdldF9zaXplICgpOworKwkJcHVibGljIHZvaWQgZ2V0X3ZlcnRpY2VzIChbQ0NvZGUg KGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gcmVmIEdyYXBoZW5lLlZlYzMgdmVydGljZXNbOF0pOwor KwkJcHVibGljIGZsb2F0IGdldF93aWR0aCAoKTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBH cmFwaGVuZS5Cb3g/IGluZmluaXRlICgpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuQm94 PyBpbml0IChHcmFwaGVuZS5Qb2ludDNEPyBtaW4sIEdyYXBoZW5lLlBvaW50M0Q/IG1heCk7Cisr CQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5Cb3g/IGluaXRfZnJvbV9ib3ggKEdyYXBoZW5lLkJv eCBzcmMpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuQm94PyBpbml0X2Zyb21fcG9pbnRz IChbQ0NvZGUgKGFycmF5X2xlbmd0aF9jbmFtZSA9ICJuX3BvaW50cyIsIGFycmF5X2xlbmd0aF9w b3MgPSAwLjUsIGFycmF5X2xlbmd0aF90eXBlID0gImd1aW50IildIEdyYXBoZW5lLlBvaW50M0Rb XSBwb2ludHMpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuQm94PyBpbml0X2Zyb21fdmVj MyAoR3JhcGhlbmUuVmVjMz8gbWluLCBHcmFwaGVuZS5WZWMzPyBtYXgpOworKwkJcHVibGljIHVu b3duZWQgR3JhcGhlbmUuQm94PyBpbml0X2Zyb21fdmVjdG9ycyAoW0NDb2RlIChhcnJheV9sZW5n dGhfY25hbWUgPSAibl92ZWN0b3JzIiwgYXJyYXlfbGVuZ3RoX3BvcyA9IDAuNSwgYXJyYXlfbGVu Z3RoX3R5cGUgPSAiZ3VpbnQiKV0gR3JhcGhlbmUuVmVjM1tdIHZlY3RvcnMpOworKwkJcHVibGlj IGJvb2wgaW50ZXJzZWN0aW9uIChHcmFwaGVuZS5Cb3ggYiwgb3V0IEdyYXBoZW5lLkJveCByZXMp OworKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLkJveD8gbWludXNfb25lICgpOwor KwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLkJveD8gb25lICgpOworKwkJcHVibGlj IHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLkJveD8gb25lX21pbnVzX29uZSAoKTsKKysJCXB1Ymxp YyBHcmFwaGVuZS5Cb3ggdW5pb24gKEdyYXBoZW5lLkJveCBiKTsKKysJCXB1YmxpYyBzdGF0aWMg dW5vd25lZCBHcmFwaGVuZS5Cb3g/IHplcm8gKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdyYXBoZW5lX2V1bGVyX3Qi LCB0eXBlX2lkID0gImdyYXBoZW5lX2V1bGVyX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChz aW5jZSA9ICIxLjIiKV0KKysJcHVibGljIHN0cnVjdCBFdWxlciB7CisrCQlwdWJsaWMgYm9vbCBl cXVhbCAoR3JhcGhlbmUuRXVsZXIgYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQor KwkJcHVibGljIGZsb2F0IGdldF9hbHBoYSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEw IildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X2JldGEgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF9nYW1tYSAoKTsKKysJCXB1YmxpYyBHcmFwaGVu ZS5FdWxlck9yZGVyIGdldF9vcmRlciAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfeCAoKTsKKysJ CXB1YmxpYyBmbG9hdCBnZXRfeSAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfeiAoKTsKKysJCXB1 YmxpYyB1bm93bmVkIEdyYXBoZW5lLkV1bGVyPyBpbml0IChmbG9hdCB4LCBmbG9hdCB5LCBmbG9h dCB6KTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLkV1bGVyPyBpbml0X2Zyb21fZXVsZXIg KEdyYXBoZW5lLkV1bGVyPyBzcmMpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuRXVsZXI/ IGluaXRfZnJvbV9tYXRyaXggKEdyYXBoZW5lLk1hdHJpeD8gbSwgR3JhcGhlbmUuRXVsZXJPcmRl ciBvcmRlcik7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5FdWxlcj8gaW5pdF9mcm9tX3F1 YXRlcm5pb24gKEdyYXBoZW5lLlF1YXRlcm5pb24/IHEsIEdyYXBoZW5lLkV1bGVyT3JkZXIgb3Jk ZXIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdy YXBoZW5lLkV1bGVyPyBpbml0X2Zyb21fcmFkaWFucyAoZmxvYXQgeCwgZmxvYXQgeSwgZmxvYXQg eiwgR3JhcGhlbmUuRXVsZXJPcmRlciBvcmRlcik7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVu ZS5FdWxlcj8gaW5pdF9mcm9tX3ZlYzMgKEdyYXBoZW5lLlZlYzM/IHYsIEdyYXBoZW5lLkV1bGVy T3JkZXIgb3JkZXIpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuRXVsZXI/IGluaXRfd2l0 aF9vcmRlciAoZmxvYXQgeCwgZmxvYXQgeSwgZmxvYXQgeiwgR3JhcGhlbmUuRXVsZXJPcmRlciBv cmRlcik7CisrCQlwdWJsaWMgR3JhcGhlbmUuRXVsZXIgcmVvcmRlciAoR3JhcGhlbmUuRXVsZXJP cmRlciBvcmRlcik7CisrCQlwdWJsaWMgR3JhcGhlbmUuTWF0cml4IHRvX21hdHJpeCAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgR3JhcGhlbmUuUXVhdGVybmlv biB0b19xdWF0ZXJuaW9uICgpOworKwkJcHVibGljIEdyYXBoZW5lLlZlYzMgdG9fdmVjMyAoKTsK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwg Y25hbWUgPSAiZ3JhcGhlbmVfZnJ1c3R1bV90IiwgdHlwZV9pZCA9ICJncmFwaGVuZV9mcnVzdHVt X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJcHVibGljIHN0 cnVjdCBGcnVzdHVtIHsKKysJCXB1YmxpYyBib29sIGNvbnRhaW5zX3BvaW50IChHcmFwaGVuZS5Q b2ludDNEIHBvaW50KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBi b29sIGVxdWFsIChHcmFwaGVuZS5GcnVzdHVtIGIpOworKwkJcHVibGljIHZvaWQgZ2V0X3BsYW5l cyAoW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIHJlZiBHcmFwaGVuZS5QbGFuZSBwbGFu ZXNbNl0pOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuRnJ1c3R1bT8gaW5pdCAoR3JhcGhl bmUuUGxhbmUgcDAsIEdyYXBoZW5lLlBsYW5lIHAxLCBHcmFwaGVuZS5QbGFuZSBwMiwgR3JhcGhl bmUuUGxhbmUgcDMsIEdyYXBoZW5lLlBsYW5lIHA0LCBHcmFwaGVuZS5QbGFuZSBwNSk7CisrCQlw dWJsaWMgdW5vd25lZCBHcmFwaGVuZS5GcnVzdHVtPyBpbml0X2Zyb21fZnJ1c3R1bSAoR3JhcGhl bmUuRnJ1c3R1bSBzcmMpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuRnJ1c3R1bT8gaW5p dF9mcm9tX21hdHJpeCAoR3JhcGhlbmUuTWF0cml4IG1hdHJpeCk7CisrCQlwdWJsaWMgYm9vbCBp bnRlcnNlY3RzX2JveCAoR3JhcGhlbmUuQm94IGJveCk7CisrCQlwdWJsaWMgYm9vbCBpbnRlcnNl Y3RzX3NwaGVyZSAoR3JhcGhlbmUuU3BoZXJlIHNwaGVyZSk7CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdyYXBoZW5lX21h dHJpeF90IiwgdHlwZV9pZCA9ICJncmFwaGVuZV9tYXRyaXhfZ2V0X3R5cGUgKCkiKV0KKysJcHVi bGljIHN0cnVjdCBNYXRyaXggeworKwkJcHVibGljIGJvb2wgZGVjb21wb3NlIChvdXQgR3JhcGhl bmUuVmVjMyB0cmFuc2xhdGUsIG91dCBHcmFwaGVuZS5WZWMzIHNjYWxlLCBvdXQgR3JhcGhlbmUu UXVhdGVybmlvbiByb3RhdGUsIG91dCBHcmFwaGVuZS5WZWMzIHNoZWFyLCBvdXQgR3JhcGhlbmUu VmVjNCBwZXJzcGVjdGl2ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJs aWMgZmxvYXQgZGV0ZXJtaW5hbnQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQor KwkJcHVibGljIGJvb2wgZXF1YWwgKEdyYXBoZW5lLk1hdHJpeCBiKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgYm9vbCBlcXVhbF9mYXN0IChHcmFwaGVuZS5NYXRy aXggYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUu VmVjNCBnZXRfcm93ICh1aW50IGluZGV4Xyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIild CisrCQlwdWJsaWMgZmxvYXQgZ2V0X3ZhbHVlICh1aW50IHJvdywgdWludCBjb2wpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF94X3NjYWxlICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfeF90cmFu c2xhdGlvbiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9h dCBnZXRfeV9zY2FsZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJs aWMgZmxvYXQgZ2V0X3lfdHJhbnNsYXRpb24gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3pfc2NhbGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF96X3RyYW5zbGF0aW9uICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuTWF0cml4 PyBpbml0X2Zyb21fMmQgKGRvdWJsZSB4eCwgZG91YmxlIHl4LCBkb3VibGUgeHksIGRvdWJsZSB5 eSwgZG91YmxlIHhfMCwgZG91YmxlIHlfMCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIild CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5NYXRyaXg/IGluaXRfZnJvbV9mbG9hdCAoW0ND b2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIGZsb2F0IHZbMTZdKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLk1hdHJpeD8gaW5pdF9m cm9tX21hdHJpeCAoR3JhcGhlbmUuTWF0cml4IHNyYyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5NYXRyaXg/IGluaXRfZnJvbV92ZWM0 IChHcmFwaGVuZS5WZWM0IHYwLCBHcmFwaGVuZS5WZWM0IHYxLCBHcmFwaGVuZS5WZWM0IHYyLCBH cmFwaGVuZS5WZWM0IHYzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1Ymxp YyB1bm93bmVkIEdyYXBoZW5lLk1hdHJpeD8gaW5pdF9mcnVzdHVtIChmbG9hdCBsZWZ0LCBmbG9h dCByaWdodCwgZmxvYXQgYm90dG9tLCBmbG9hdCB0b3AsIGZsb2F0IHpfbmVhciwgZmxvYXQgel9m YXIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3Jh cGhlbmUuTWF0cml4PyBpbml0X2lkZW50aXR5ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuTWF0cml4PyBpbml0X2xvb2tfYXQgKEdy YXBoZW5lLlZlYzMgZXllLCBHcmFwaGVuZS5WZWMzIGNlbnRlciwgR3JhcGhlbmUuVmVjMyB1cCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVu ZS5NYXRyaXg/IGluaXRfb3J0aG8gKGZsb2F0IGxlZnQsIGZsb2F0IHJpZ2h0LCBmbG9hdCB0b3As IGZsb2F0IGJvdHRvbSwgZmxvYXQgel9uZWFyLCBmbG9hdCB6X2Zhcik7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5NYXRyaXg/IGluaXRf cGVyc3BlY3RpdmUgKGZsb2F0IGZvdnksIGZsb2F0IGFzcGVjdCwgZmxvYXQgel9uZWFyLCBmbG9h dCB6X2Zhcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25l ZCBHcmFwaGVuZS5NYXRyaXg/IGluaXRfcm90YXRlIChmbG9hdCBhbmdsZSwgR3JhcGhlbmUuVmVj MyBheGlzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVk IEdyYXBoZW5lLk1hdHJpeD8gaW5pdF9zY2FsZSAoZmxvYXQgeCwgZmxvYXQgeSwgZmxvYXQgeik7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVu ZS5NYXRyaXg/IGluaXRfc2tldyAoZmxvYXQgeF9za2V3LCBmbG9hdCB5X3NrZXcpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuTWF0cml4 PyBpbml0X3RyYW5zbGF0ZSAoR3JhcGhlbmUuUG9pbnQzRCBwKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5NYXRyaXggaW50ZXJwb2xhdGUgKEdyYXBo ZW5lLk1hdHJpeCBiLCBkb3VibGUgZmFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyBib29sIGludmVyc2UgKG91dCBHcmFwaGVuZS5NYXRyaXggcmVzKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBib29sIGlzXzJkICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGJvb2wgaXNfYmFja2ZhY2Vfdmlz aWJsZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBib29sIGlz X2lkZW50aXR5ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGJv b2wgaXNfc2luZ3VsYXIgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJs aWMgR3JhcGhlbmUuTWF0cml4IG11bHRpcGx5IChHcmFwaGVuZS5NYXRyaXggYik7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGJvb2wgbmVhciAoR3JhcGhlbmUuTWF0 cml4IGIsIGZsb2F0IGVwc2lsb24pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJ cHVibGljIEdyYXBoZW5lLk1hdHJpeCBub3JtYWxpemUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuTWF0cml4IHBlcnNwZWN0aXZlIChmbG9hdCBk ZXB0aCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCBwcmlu dCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5Q b2ludCBwcm9qZWN0X3BvaW50IChHcmFwaGVuZS5Qb2ludCBwKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5RdWFkIHByb2plY3RfcmVjdCAoR3JhcGhl bmUuUmVjdCByKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFw aGVuZS5SZWN0IHByb2plY3RfcmVjdF9ib3VuZHMgKEdyYXBoZW5lLlJlY3Qgcik7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCByb3RhdGUgKGZsb2F0IGFuZ2xl LCBHcmFwaGVuZS5WZWMzIGF4aXMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJ cHVibGljIHZvaWQgcm90YXRlX2V1bGVyIChHcmFwaGVuZS5FdWxlciBlKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHJvdGF0ZV9xdWF0ZXJuaW9uIChHcmFw aGVuZS5RdWF0ZXJuaW9uIHEpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVi bGljIHZvaWQgcm90YXRlX3ggKGZsb2F0IGFuZ2xlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjAiKV0KKysJCXB1YmxpYyB2b2lkIHJvdGF0ZV95IChmbG9hdCBhbmdsZSk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCByb3RhdGVfeiAoZmxvYXQgYW5nbGUp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgc2NhbGUgKGZs b2F0IGZhY3Rvcl94LCBmbG9hdCBmYWN0b3JfeSwgZmxvYXQgZmFjdG9yX3opOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgc2tld194eSAoZmxvYXQgZmFjdG9y KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNrZXdfeHog KGZsb2F0IGZhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg dm9pZCBza2V3X3l6IChmbG9hdCBmYWN0b3IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIp XQorKwkJcHVibGljIGJvb2wgdG9fMmQgKG91dCBkb3VibGUgeHgsIG91dCBkb3VibGUgeXgsIG91 dCBkb3VibGUgeHksIG91dCBkb3VibGUgeXksIG91dCBkb3VibGUgeF8wLCBvdXQgZG91YmxlIHlf MCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCB0b19mbG9h dCAoW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIHJlZiBmbG9hdCB2WzE2XSk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuUmVjdCB0cmFuc2Zv cm1fYm91bmRzIChHcmFwaGVuZS5SZWN0IHIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIp XQorKwkJcHVibGljIEdyYXBoZW5lLkJveCB0cmFuc2Zvcm1fYm94IChHcmFwaGVuZS5Cb3ggYik7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQg dHJhbnNmb3JtX3BvaW50IChHcmFwaGVuZS5Qb2ludCBwKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjIiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludDNEIHRyYW5zZm9ybV9wb2ludDNkIChH cmFwaGVuZS5Qb2ludDNEIHApOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVi bGljIEdyYXBoZW5lLlJheSB0cmFuc2Zvcm1fcmF5IChHcmFwaGVuZS5SYXkgcik7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuUXVhZCB0cmFuc2Zvcm1f cmVjdCAoR3JhcGhlbmUuUmVjdCByKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJ CXB1YmxpYyBHcmFwaGVuZS5TcGhlcmUgdHJhbnNmb3JtX3NwaGVyZSAoR3JhcGhlbmUuU3BoZXJl IHMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZl YzMgdHJhbnNmb3JtX3ZlYzMgKEdyYXBoZW5lLlZlYzMgdik7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjNCB0cmFuc2Zvcm1fdmVjNCAoR3JhcGhl bmUuVmVjNCB2KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lk IHRyYW5zbGF0ZSAoR3JhcGhlbmUuUG9pbnQzRCBwb3MpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLk1hdHJpeCB0cmFuc3Bvc2UgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQzRCB1bnByb2pl Y3RfcG9pbnQzZCAoR3JhcGhlbmUuTWF0cml4IG1vZGVsdmlldywgR3JhcGhlbmUuUG9pbnQzRCBw b2ludCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUu UmVjdCB1bnRyYW5zZm9ybV9ib3VuZHMgKEdyYXBoZW5lLlJlY3QgciwgR3JhcGhlbmUuUmVjdCBi b3VuZHMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGJvb2wgdW50 cmFuc2Zvcm1fcG9pbnQgKEdyYXBoZW5lLlBvaW50IHAsIEdyYXBoZW5lLlJlY3QgYm91bmRzLCBv dXQgR3JhcGhlbmUuUG9pbnQgcmVzKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfcGxhbmVfdCIsIHR5cGVf aWQgPSAiZ3JhcGhlbmVfcGxhbmVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0g IjEuMiIpXQorKwlwdWJsaWMgc3RydWN0IFBsYW5lIHsKKysJCXB1YmxpYyBmbG9hdCBkaXN0YW5j ZSAoR3JhcGhlbmUuUG9pbnQzRCBwb2ludCk7CisrCQlwdWJsaWMgYm9vbCBlcXVhbCAoR3JhcGhl bmUuUGxhbmUgYik7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X2NvbnN0YW50ICgpOworKwkJcHVibGlj IEdyYXBoZW5lLlZlYzMgZ2V0X25vcm1hbCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5l LlBsYW5lPyBpbml0IChHcmFwaGVuZS5WZWMzPyBub3JtYWwsIGZsb2F0IGNvbnN0YW50KTsKKysJ CXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlBsYW5lPyBpbml0X2Zyb21fcGxhbmUgKEdyYXBoZW5l LlBsYW5lIHNyYyk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5QbGFuZT8gaW5pdF9mcm9t X3BvaW50IChHcmFwaGVuZS5WZWMzIG5vcm1hbCwgR3JhcGhlbmUuUG9pbnQzRCBwb2ludCk7Cisr CQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5QbGFuZT8gaW5pdF9mcm9tX3BvaW50cyAoR3JhcGhl bmUuUG9pbnQzRCBhLCBHcmFwaGVuZS5Qb2ludDNEIGIsIEdyYXBoZW5lLlBvaW50M0QgYyk7Cisr CQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5QbGFuZT8gaW5pdF9mcm9tX3ZlYzQgKEdyYXBoZW5l LlZlYzQgc3JjKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5QbGFuZSBuZWdhdGUgKCk7CisrCQlwdWJs aWMgR3JhcGhlbmUuUGxhbmUgbm9ybWFsaXplICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5QbGFuZSB0cmFuc2Zvcm0gKEdyYXBoZW5lLk1hdHJp eCBtYXRyaXgsIEdyYXBoZW5lLk1hdHJpeD8gbm9ybWFsX21hdHJpeCk7CisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdyYXBo ZW5lX3BvaW50X3QiLCB0eXBlX2lkID0gImdyYXBoZW5lX3BvaW50X2dldF90eXBlICgpIildCisr CVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIHN0cnVjdCBQb2ludCB7CisrCQlw dWJsaWMgZmxvYXQgeDsKKysJCXB1YmxpYyBmbG9hdCB5OworKwkJcHVibGljIGZsb2F0IGRpc3Rh bmNlIChHcmFwaGVuZS5Qb2ludCBiLCBvdXQgZmxvYXQgZF94LCBvdXQgZmxvYXQgZF95KTsKKysJ CXB1YmxpYyBib29sIGVxdWFsIChHcmFwaGVuZS5Qb2ludCBiKTsKKysJCXB1YmxpYyB1bm93bmVk IEdyYXBoZW5lLlBvaW50PyBpbml0IChmbG9hdCB4LCBmbG9hdCB5KTsKKysJCXB1YmxpYyB1bm93 bmVkIEdyYXBoZW5lLlBvaW50PyBpbml0X2Zyb21fcG9pbnQgKEdyYXBoZW5lLlBvaW50IHNyYyk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVu ZS5Qb2ludD8gaW5pdF9mcm9tX3ZlYzIgKEdyYXBoZW5lLlZlYzIgc3JjKTsKKysJCXB1YmxpYyBH cmFwaGVuZS5Qb2ludCBpbnRlcnBvbGF0ZSAoR3JhcGhlbmUuUG9pbnQgYiwgZG91YmxlIGZhY3Rv cik7CisrCQlwdWJsaWMgYm9vbCBuZWFyIChHcmFwaGVuZS5Qb2ludCBiLCBmbG9hdCBlcHNpbG9u KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMy IHRvX3ZlYzIgKCk7CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuUG9pbnQ/IHpl cm8gKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmpl Y3QuaCIsIGNuYW1lID0gImdyYXBoZW5lX3BvaW50M2RfdCIsIGxvd2VyX2Nhc2VfY3N1ZmZpeCA9 ICJwb2ludDNkIiwgdHlwZV9pZCA9ICJncmFwaGVuZV9wb2ludDNkX2dldF90eXBlICgpIildCisr CVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIHN0cnVjdCBQb2ludDNEIHsKKysJ CXB1YmxpYyBmbG9hdCB4OworKwkJcHVibGljIGZsb2F0IHk7CisrCQlwdWJsaWMgZmxvYXQgejsK KysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludDNEIGNyb3NzIChHcmFwaGVuZS5Qb2ludDNEIGIpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIGZsb2F0IGRpc3RhbmNlIChH cmFwaGVuZS5Qb2ludDNEIGIsIG91dCBHcmFwaGVuZS5WZWMzIGRlbHRhKTsKKysJCXB1YmxpYyBm bG9hdCBkb3QgKEdyYXBoZW5lLlBvaW50M0QgYik7CisrCQlwdWJsaWMgYm9vbCBlcXVhbCAoR3Jh cGhlbmUuUG9pbnQzRCBiKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlBvaW50M0Q/IGlu aXQgKGZsb2F0IHgsIGZsb2F0IHksIGZsb2F0IHopOworKwkJcHVibGljIHVub3duZWQgR3JhcGhl bmUuUG9pbnQzRD8gaW5pdF9mcm9tX3BvaW50IChHcmFwaGVuZS5Qb2ludDNEIHNyYyk7CisrCQlw dWJsaWMgdW5vd25lZCBHcmFwaGVuZS5Qb2ludDNEPyBpbml0X2Zyb21fdmVjMyAoR3JhcGhlbmUu VmVjMyB2KTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludDNEIGludGVycG9sYXRlIChHcmFwaGVu ZS5Qb2ludDNEIGIsIGRvdWJsZSBmYWN0b3IpOworKwkJcHVibGljIGZsb2F0IGxlbmd0aCAoKTsK KysJCXB1YmxpYyBib29sIG5lYXIgKEdyYXBoZW5lLlBvaW50M0QgYiwgZmxvYXQgZXBzaWxvbik7 CisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQzRCBub3JtYWxpemUgKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQzRCBub3JtYWxpemVfdmll d3BvcnQgKEdyYXBoZW5lLlJlY3Qgdmlld3BvcnQsIGZsb2F0IHpfbmVhciwgZmxvYXQgel9mYXIp OworKwkJcHVibGljIEdyYXBoZW5lLlBvaW50M0Qgc2NhbGUgKGZsb2F0IGZhY3Rvcik7CisrCQlw dWJsaWMgR3JhcGhlbmUuVmVjMyB0b192ZWMzICgpOworKwkJcHVibGljIHN0YXRpYyB1bm93bmVk IEdyYXBoZW5lLlBvaW50M0Q/IHplcm8gKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdyYXBoZW5lX3F1YWRfdCIsIHR5 cGVfaWQgPSAiZ3JhcGhlbmVfcXVhZF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCXB1YmxpYyBzdHJ1Y3QgUXVhZCB7CisrCQlwdWJsaWMgR3JhcGhlbmUuUmVj dCBib3VuZHMgKCk7CisrCQlwdWJsaWMgYm9vbCBjb250YWlucyAoR3JhcGhlbmUuUG9pbnQgcCk7 CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5Qb2ludD8gZ2V0X3BvaW50ICh1aW50IGluZGV4 Xyk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5RdWFkPyBpbml0IChHcmFwaGVuZS5Qb2lu dCBwMSwgR3JhcGhlbmUuUG9pbnQgcDIsIEdyYXBoZW5lLlBvaW50IHAzLCBHcmFwaGVuZS5Qb2lu dCBwNCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdW5vd25lZCBH cmFwaGVuZS5RdWFkPyBpbml0X2Zyb21fcG9pbnRzIChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZh bHNlKV0gR3JhcGhlbmUuUG9pbnQgcG9pbnRzWzRdKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBo ZW5lLlF1YWQ/IGluaXRfZnJvbV9yZWN0IChHcmFwaGVuZS5SZWN0IHIpOworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJncmFw aGVuZV9xdWF0ZXJuaW9uX3QiLCB0eXBlX2lkID0gImdyYXBoZW5lX3F1YXRlcm5pb25fZ2V0X3R5 cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgc3RydWN0IFF1 YXRlcm5pb24geworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBHcmFw aGVuZS5RdWF0ZXJuaW9uIGFkZCAoR3JhcGhlbmUuUXVhdGVybmlvbiBiKTsKKysJCXB1YmxpYyBm bG9hdCBkb3QgKEdyYXBoZW5lLlF1YXRlcm5pb24gYik7CisrCQlwdWJsaWMgYm9vbCBlcXVhbCAo R3JhcGhlbmUuUXVhdGVybmlvbiBiKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlF1YXRl cm5pb24/IGluaXQgKGZsb2F0IHgsIGZsb2F0IHksIGZsb2F0IHosIGZsb2F0IHcpOworKwkJcHVi bGljIHVub3duZWQgR3JhcGhlbmUuUXVhdGVybmlvbj8gaW5pdF9mcm9tX2FuZ2xlX3ZlYzMgKGZs b2F0IGFuZ2xlLCBHcmFwaGVuZS5WZWMzIGF4aXMpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhl bmUuUXVhdGVybmlvbj8gaW5pdF9mcm9tX2FuZ2xlcyAoZmxvYXQgZGVnX3gsIGZsb2F0IGRlZ195 LCBmbG9hdCBkZWdfeik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMg dW5vd25lZCBHcmFwaGVuZS5RdWF0ZXJuaW9uPyBpbml0X2Zyb21fZXVsZXIgKEdyYXBoZW5lLkV1 bGVyIGUpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUXVhdGVybmlvbj8gaW5pdF9mcm9t X21hdHJpeCAoR3JhcGhlbmUuTWF0cml4IG0pOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUu UXVhdGVybmlvbj8gaW5pdF9mcm9tX3F1YXRlcm5pb24gKEdyYXBoZW5lLlF1YXRlcm5pb24gc3Jj KTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlF1YXRlcm5pb24/IGluaXRfZnJvbV9yYWRp YW5zIChmbG9hdCByYWRfeCwgZmxvYXQgcmFkX3ksIGZsb2F0IHJhZF96KTsKKysJCXB1YmxpYyB1 bm93bmVkIEdyYXBoZW5lLlF1YXRlcm5pb24/IGluaXRfZnJvbV92ZWM0IChHcmFwaGVuZS5WZWM0 IHNyYyk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5RdWF0ZXJuaW9uPyBpbml0X2lkZW50 aXR5ICgpOworKwkJcHVibGljIEdyYXBoZW5lLlF1YXRlcm5pb24gaW52ZXJ0ICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5RdWF0ZXJuaW9uIG11 bHRpcGx5IChHcmFwaGVuZS5RdWF0ZXJuaW9uIGIpOworKwkJcHVibGljIEdyYXBoZW5lLlF1YXRl cm5pb24gbm9ybWFsaXplICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1 YmxpYyBHcmFwaGVuZS5RdWF0ZXJuaW9uIHNjYWxlIChmbG9hdCBmYWN0b3IpOworKwkJcHVibGlj IEdyYXBoZW5lLlF1YXRlcm5pb24gc2xlcnAgKEdyYXBoZW5lLlF1YXRlcm5pb24gYiwgZmxvYXQg ZmFjdG9yKTsKKysJCXB1YmxpYyB2b2lkIHRvX2FuZ2xlX3ZlYzMgKG91dCBmbG9hdCBhbmdsZSwg b3V0IEdyYXBoZW5lLlZlYzMgYXhpcyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisr CQlwdWJsaWMgdm9pZCB0b19hbmdsZXMgKG91dCBmbG9hdCBkZWdfeCwgb3V0IGZsb2F0IGRlZ195 LCBvdXQgZmxvYXQgZGVnX3opOworKwkJcHVibGljIEdyYXBoZW5lLk1hdHJpeCB0b19tYXRyaXgg KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCB0b19yYWRp YW5zIChvdXQgZmxvYXQgcmFkX3gsIG91dCBmbG9hdCByYWRfeSwgb3V0IGZsb2F0IHJhZF96KTsK KysJCXB1YmxpYyBHcmFwaGVuZS5WZWM0IHRvX3ZlYzQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdyYXBoZW5lX3Jh eV90IiwgdHlwZV9pZCA9ICJncmFwaGVuZV9yYXlfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24g KHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgc3RydWN0IFJheSB7CisrCQlwdWJsaWMgYm9vbCBl cXVhbCAoR3JhcGhlbmUuUmF5IGIpOworKwkJcHVibGljIEdyYXBoZW5lLlBvaW50M0QgZ2V0X2Ns b3Nlc3RfcG9pbnRfdG9fcG9pbnQgKEdyYXBoZW5lLlBvaW50M0QgcCk7CisrCQlwdWJsaWMgR3Jh cGhlbmUuVmVjMyBnZXRfZGlyZWN0aW9uICgpOworKwkJcHVibGljIGZsb2F0IGdldF9kaXN0YW5j ZV90b19wbGFuZSAoR3JhcGhlbmUuUGxhbmUgcCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X2Rpc3Rh bmNlX3RvX3BvaW50IChHcmFwaGVuZS5Qb2ludDNEIHApOworKwkJcHVibGljIEdyYXBoZW5lLlBv aW50M0QgZ2V0X29yaWdpbiAoKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludDNEIGdldF9wb3Np dGlvbl9hdCAoZmxvYXQgdCk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5SYXk/IGluaXQg KEdyYXBoZW5lLlBvaW50M0Q/IG9yaWdpbiwgR3JhcGhlbmUuVmVjMz8gZGlyZWN0aW9uKTsKKysJ CXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlJheT8gaW5pdF9mcm9tX3JheSAoR3JhcGhlbmUuUmF5 IHNyYyk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5SYXk/IGluaXRfZnJvbV92ZWMzIChH cmFwaGVuZS5WZWMzPyBvcmlnaW4sIEdyYXBoZW5lLlZlYzM/IGRpcmVjdGlvbik7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlJheUludGVyc2VjdGlv bktpbmQgaW50ZXJzZWN0X2JveCAoR3JhcGhlbmUuQm94IGIsIG91dCBmbG9hdCB0X291dCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlJheUludGVy c2VjdGlvbktpbmQgaW50ZXJzZWN0X3NwaGVyZSAoR3JhcGhlbmUuU3BoZXJlIHMsIG91dCBmbG9h dCB0X291dCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIEdyYXBo ZW5lLlJheUludGVyc2VjdGlvbktpbmQgaW50ZXJzZWN0X3RyaWFuZ2xlIChHcmFwaGVuZS5Ucmlh bmdsZSB0LCBvdXQgZmxvYXQgdF9vdXQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0K KysJCXB1YmxpYyBib29sIGludGVyc2VjdHNfYm94IChHcmFwaGVuZS5Cb3ggYik7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGJvb2wgaW50ZXJzZWN0c19zcGhlcmUg KEdyYXBoZW5lLlNwaGVyZSBzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlw dWJsaWMgYm9vbCBpbnRlcnNlY3RzX3RyaWFuZ2xlIChHcmFwaGVuZS5UcmlhbmdsZSB0KTsKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25h bWUgPSAiZ3JhcGhlbmVfcmVjdF90IiwgdHlwZV9pZCA9ICJncmFwaGVuZV9yZWN0X2dldF90eXBl ICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIHN0cnVjdCBSZWN0 IHsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludCBvcmlnaW47CisrCQlwdWJsaWMgR3JhcGhlbmUu U2l6ZSBzaXplOworKwkJcHVibGljIHN0YXRpYyBHcmFwaGVuZS5SZWN0PyBhbGxvYyAoKTsKKysJ CXB1YmxpYyBib29sIGNvbnRhaW5zX3BvaW50IChHcmFwaGVuZS5Qb2ludCBwKTsKKysJCXB1Ymxp YyBib29sIGNvbnRhaW5zX3JlY3QgKEdyYXBoZW5lLlJlY3QgYik7CisrCQlwdWJsaWMgYm9vbCBl cXVhbCAoR3JhcGhlbmUuUmVjdCBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJ CXB1YmxpYyBHcmFwaGVuZS5SZWN0IGV4cGFuZCAoR3JhcGhlbmUuUG9pbnQgcCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF9hcmVhICgpOworKwkJ cHVibGljIEdyYXBoZW5lLlBvaW50IGdldF9ib3R0b21fbGVmdCAoKTsKKysJCXB1YmxpYyBHcmFw aGVuZS5Qb2ludCBnZXRfYm90dG9tX3JpZ2h0ICgpOworKwkJcHVibGljIEdyYXBoZW5lLlBvaW50 IGdldF9jZW50ZXIgKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X2hlaWdodCAoKTsKKysJCXB1Ymxp YyBHcmFwaGVuZS5Qb2ludCBnZXRfdG9wX2xlZnQgKCk7CisrCQlwdWJsaWMgR3JhcGhlbmUuUG9p bnQgZ2V0X3RvcF9yaWdodCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1 YmxpYyB2b2lkIGdldF92ZXJ0aWNlcyAoW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIHJl ZiBHcmFwaGVuZS5WZWMyIHZlcnRpY2VzWzRdKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfd2lkdGgg KCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X3ggKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X3kgKCk7 CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5SZWN0PyBpbml0IChmbG9hdCB4LCBmbG9hdCB5 LCBmbG9hdCB3aWR0aCwgZmxvYXQgaGVpZ2h0KTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5l LlJlY3Q/IGluaXRfZnJvbV9yZWN0IChHcmFwaGVuZS5SZWN0IHNyYyk7CisrCQlwdWJsaWMgdW5v d25lZCBHcmFwaGVuZS5SZWN0PyBpbnNldCAoZmxvYXQgZF94LCBmbG9hdCBkX3kpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlJlY3QgaW5zZXRfciAo ZmxvYXQgZF94LCBmbG9hdCBkX3kpOworKwkJcHVibGljIEdyYXBoZW5lLlJlY3QgaW50ZXJwb2xh dGUgKEdyYXBoZW5lLlJlY3QgYiwgZG91YmxlIGZhY3Rvcik7CisrCQlwdWJsaWMgYm9vbCBpbnRl cnNlY3Rpb24gKEdyYXBoZW5lLlJlY3QgYiwgb3V0IEdyYXBoZW5lLlJlY3QgcmVzKTsKKysJCXB1 YmxpYyB1bm93bmVkIEdyYXBoZW5lLlJlY3Q/IG5vcm1hbGl6ZSAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5SZWN0IG5vcm1hbGl6ZV9yICgpOwor KwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUmVjdD8gb2Zmc2V0IChmbG9hdCBkX3gsIGZsb2F0 IGRfeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgR3JhcGhlbmUu UmVjdCBvZmZzZXRfciAoZmxvYXQgZF94LCBmbG9hdCBkX3kpOworKwkJW1ZlcnNpb24gKGRlcHJl Y2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIxLjQiKV0K KysJCXB1YmxpYyBHcmFwaGVuZS5SZWN0IHJvdW5kICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5SZWN0IHJvdW5kX2V4dGVudHMgKCk7CisrCQlb VmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS40Iiwgc2lu Y2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5SZWN0PyByb3VuZF90b19w aXhlbCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgR3JhcGhl bmUuUmVjdCBzY2FsZSAoZmxvYXQgc19oLCBmbG9hdCBzX3YpOworKwkJcHVibGljIEdyYXBoZW5l LlJlY3QgdW5pb24gKEdyYXBoZW5lLlJlY3QgYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40 IildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuUmVjdD8gemVybyAoKTsKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25h bWUgPSAiZ3JhcGhlbmVfc2ltZDRmX3QiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGlj IHN0cnVjdCBTaW1kNEYgeworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFw aGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJncmFwaGVuZV9zaW1kNHg0Zl90IiwgaGFzX3R5cGVf aWQgPSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgU2ltZDRYNEYgeworKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJncmFwaGVu ZV9zaXplX3QiLCB0eXBlX2lkID0gImdyYXBoZW5lX3NpemVfZ2V0X3R5cGUgKCkiKV0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgc3RydWN0IFNpemUgeworKwkJcHVibGlj IGZsb2F0IHdpZHRoOworKwkJcHVibGljIGZsb2F0IGhlaWdodDsKKysJCXB1YmxpYyBib29sIGVx dWFsIChHcmFwaGVuZS5TaXplIGIpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuU2l6ZT8g aW5pdCAoZmxvYXQgd2lkdGgsIGZsb2F0IGhlaWdodCk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFw aGVuZS5TaXplPyBpbml0X2Zyb21fc2l6ZSAoR3JhcGhlbmUuU2l6ZSBzcmMpOworKwkJcHVibGlj IEdyYXBoZW5lLlNpemUgaW50ZXJwb2xhdGUgKEdyYXBoZW5lLlNpemUgYiwgZG91YmxlIGZhY3Rv cik7CisrCQlwdWJsaWMgR3JhcGhlbmUuU2l6ZSBzY2FsZSAoZmxvYXQgZmFjdG9yKTsKKysJCXB1 YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5TaXplPyB6ZXJvICgpOworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJncmFw aGVuZV9zcGhlcmVfdCIsIHR5cGVfaWQgPSAiZ3JhcGhlbmVfc3BoZXJlX2dldF90eXBlICgpIild CisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJcHVibGljIHN0cnVjdCBTcGhlcmUgewor KwkJcHVibGljIGJvb2wgY29udGFpbnNfcG9pbnQgKEdyYXBoZW5lLlBvaW50M0QgcG9pbnQpOwor KwkJcHVibGljIGZsb2F0IGRpc3RhbmNlIChHcmFwaGVuZS5Qb2ludDNEIHBvaW50KTsKKysJCXB1 YmxpYyBib29sIGVxdWFsIChHcmFwaGVuZS5TcGhlcmUgYik7CisrCQlwdWJsaWMgR3JhcGhlbmUu Qm94IGdldF9ib3VuZGluZ19ib3ggKCk7CisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQzRCBnZXRf Y2VudGVyICgpOworKwkJcHVibGljIGZsb2F0IGdldF9yYWRpdXMgKCk7CisrCQlwdWJsaWMgdW5v d25lZCBHcmFwaGVuZS5TcGhlcmU/IGluaXQgKEdyYXBoZW5lLlBvaW50M0Q/IGNlbnRlciwgZmxv YXQgcmFkaXVzKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlNwaGVyZT8gaW5pdF9mcm9t X3BvaW50cyAoW0NDb2RlIChhcnJheV9sZW5ndGhfY25hbWUgPSAibl9wb2ludHMiLCBhcnJheV9s ZW5ndGhfcG9zID0gMC41LCBhcnJheV9sZW5ndGhfdHlwZSA9ICJndWludCIpXSBHcmFwaGVuZS5Q b2ludDNEW10gcG9pbnRzLCBHcmFwaGVuZS5Qb2ludDNEPyBjZW50ZXIpOworKwkJcHVibGljIHVu b3duZWQgR3JhcGhlbmUuU3BoZXJlPyBpbml0X2Zyb21fdmVjdG9ycyAoW0NDb2RlIChhcnJheV9s ZW5ndGhfY25hbWUgPSAibl92ZWN0b3JzIiwgYXJyYXlfbGVuZ3RoX3BvcyA9IDAuNSwgYXJyYXlf bGVuZ3RoX3R5cGUgPSAiZ3VpbnQiKV0gR3JhcGhlbmUuVmVjM1tdIHZlY3RvcnMsIEdyYXBoZW5l LlBvaW50M0Q/IGNlbnRlcik7CisrCQlwdWJsaWMgYm9vbCBpc19lbXB0eSAoKTsKKysJCXB1Ymxp YyBHcmFwaGVuZS5TcGhlcmUgdHJhbnNsYXRlIChHcmFwaGVuZS5Qb2ludDNEIHBvaW50KTsKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25h bWUgPSAiZ3JhcGhlbmVfdHJpYW5nbGVfdCIsIHR5cGVfaWQgPSAiZ3JhcGhlbmVfdHJpYW5nbGVf Z2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwlwdWJsaWMgc3Ry dWN0IFRyaWFuZ2xlIHsKKysJCXB1YmxpYyBib29sIGNvbnRhaW5zX3BvaW50IChHcmFwaGVuZS5Q b2ludDNEIHApOworKwkJcHVibGljIGJvb2wgZXF1YWwgKEdyYXBoZW5lLlRyaWFuZ2xlIGIpOwor KwkJcHVibGljIGZsb2F0IGdldF9hcmVhICgpOworKwkJcHVibGljIGJvb2wgZ2V0X2Jhcnljb29y ZHMgKEdyYXBoZW5lLlBvaW50M0Q/IHAsIG91dCBHcmFwaGVuZS5WZWMyIHJlcyk7CisrCQlwdWJs aWMgR3JhcGhlbmUuQm94IGdldF9ib3VuZGluZ19ib3ggKCk7CisrCQlwdWJsaWMgR3JhcGhlbmUu UG9pbnQzRCBnZXRfbWlkcG9pbnQgKCk7CisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMyBnZXRfbm9y bWFsICgpOworKwkJcHVibGljIEdyYXBoZW5lLlBsYW5lIGdldF9wbGFuZSAoKTsKKysJCXB1Ymxp YyB2b2lkIGdldF9wb2ludHMgKG91dCBHcmFwaGVuZS5Qb2ludDNEIGEsIG91dCBHcmFwaGVuZS5Q b2ludDNEIGIsIG91dCBHcmFwaGVuZS5Qb2ludDNEIGMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyBib29sIGdldF91diAoR3JhcGhlbmUuUG9pbnQzRD8gcCwgR3Jh cGhlbmUuVmVjMiB1dl9hLCBHcmFwaGVuZS5WZWMyIHV2X2IsIEdyYXBoZW5lLlZlYzIgdXZfYywg b3V0IEdyYXBoZW5lLlZlYzIgcmVzKTsKKysJCXB1YmxpYyB2b2lkIGdldF92ZXJ0aWNlcyAob3V0 IEdyYXBoZW5lLlZlYzMgYSwgb3V0IEdyYXBoZW5lLlZlYzMgYiwgb3V0IEdyYXBoZW5lLlZlYzMg Yyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHVub3duZWQgR3Jh cGhlbmUuVHJpYW5nbGU/IGluaXRfZnJvbV9mbG9hdCAoW0NDb2RlIChhcnJheV9sZW5ndGggPSBm YWxzZSldIGZsb2F0IGFbM10sIFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSBmbG9hdCBi WzNdLCBbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gZmxvYXQgY1szXSk7CisrCQlwdWJs aWMgdW5vd25lZCBHcmFwaGVuZS5UcmlhbmdsZT8gaW5pdF9mcm9tX3BvaW50M2QgKEdyYXBoZW5l LlBvaW50M0Q/IGEsIEdyYXBoZW5lLlBvaW50M0Q/IGIsIEdyYXBoZW5lLlBvaW50M0Q/IGMpOwor KwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuVHJpYW5nbGU/IGluaXRfZnJvbV92ZWMzIChHcmFw aGVuZS5WZWMzPyBhLCBHcmFwaGVuZS5WZWMzPyBiLCBHcmFwaGVuZS5WZWMzPyBjKTsKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUg PSAiZ3JhcGhlbmVfdmVjMl90IiwgdHlwZV9pZCA9ICJncmFwaGVuZV92ZWMyX2dldF90eXBlICgp IildCisrCXB1YmxpYyBzdHJ1Y3QgVmVjMiB7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIild CisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMiBhZGQgKEdyYXBoZW5lLlZlYzIgYik7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMiBkaXZpZGUgKEdy YXBoZW5lLlZlYzIgYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg ZmxvYXQgZG90IChHcmFwaGVuZS5WZWMyIGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIp XQorKwkJcHVibGljIGJvb2wgZXF1YWwgKEdyYXBoZW5lLlZlYzIgdjIpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF94ICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF95ICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuVmVjMj8gaW5pdCAo ZmxvYXQgeCwgZmxvYXQgeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJs aWMgdW5vd25lZCBHcmFwaGVuZS5WZWMyPyBpbml0X2Zyb21fZmxvYXQgKFtDQ29kZSAoYXJyYXlf bGVuZ3RoID0gZmFsc2UpXSBmbG9hdCBzcmNbMl0pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuVmVjMj8gaW5pdF9mcm9tX3ZlYzIgKEdy YXBoZW5lLlZlYzIgc3JjKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJs aWMgR3JhcGhlbmUuVmVjMiBpbnRlcnBvbGF0ZSAoR3JhcGhlbmUuVmVjMiB2MiwgZG91YmxlIGZh Y3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgbGVu Z3RoICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5l LlZlYzIgbWF4IChHcmFwaGVuZS5WZWMyIGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIp XQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzIgbWluIChHcmFwaGVuZS5WZWMyIGIpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzIgbXVsdGlwbHkg KEdyYXBoZW5lLlZlYzIgYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJs aWMgYm9vbCBuZWFyIChHcmFwaGVuZS5WZWMyIHYyLCBmbG9hdCBlcHNpbG9uKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMyIG5lZ2F0ZSAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMyIG5v cm1hbGl6ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBzdGF0 aWMgdW5vd25lZCBHcmFwaGVuZS5WZWMyPyBvbmUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4yIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMiBzY2FsZSAoZmxvYXQgZmFjdG9yKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMyIHN1YnRy YWN0IChHcmFwaGVuZS5WZWMyIGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJ cHVibGljIHZvaWQgdG9fZmxvYXQgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSByZWYg ZmxvYXQgZGVzdFsyXSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg c3RhdGljIHVub3duZWQgR3JhcGhlbmUuVmVjMj8geF9heGlzICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLlZlYzI/IHlf YXhpcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBzdGF0aWMg dW5vd25lZCBHcmFwaGVuZS5WZWMyPyB6ZXJvICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJncmFwaGVuZV92ZWMzX3Qi LCB0eXBlX2lkID0gImdyYXBoZW5lX3ZlYzNfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIHN0cnVj dCBWZWMzIHsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVu ZS5WZWMzIGFkZCAoR3JhcGhlbmUuVmVjMyBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMzIGNyb3NzIChHcmFwaGVuZS5WZWMzIGIpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzMgZGl2aWRl IChHcmFwaGVuZS5WZWMzIGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVi bGljIGZsb2F0IGRvdCAoR3JhcGhlbmUuVmVjMyBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjIiKV0KKysJCXB1YmxpYyBib29sIGVxdWFsIChHcmFwaGVuZS5WZWMzIHYyKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfeCAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMyIGdldF94eSAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMzIGdl dF94eTAgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhl bmUuVmVjNCBnZXRfeHl6MCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyBHcmFwaGVuZS5WZWM0IGdldF94eXoxICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzQgZ2V0X3h5encgKGZsb2F0IHcpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF95ICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF96ICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuVmVjMz8g aW5pdCAoZmxvYXQgeCwgZmxvYXQgeSwgZmxvYXQgeik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5WZWMzPyBpbml0X2Zyb21fZmxvYXQg KFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSBmbG9hdCBzcmNbM10pOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuVmVjMz8gaW5p dF9mcm9tX3ZlYzMgKEdyYXBoZW5lLlZlYzMgc3JjKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEwIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMyBpbnRlcnBvbGF0ZSAoR3JhcGhlbmUuVmVj MyB2MiwgZG91YmxlIGZhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlw dWJsaWMgZmxvYXQgbGVuZ3RoICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJ cHVibGljIEdyYXBoZW5lLlZlYzMgbWF4IChHcmFwaGVuZS5WZWMzIGIpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzMgbWluIChHcmFwaGVuZS5W ZWMzIGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5l LlZlYzMgbXVsdGlwbHkgKEdyYXBoZW5lLlZlYzMgYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4yIildCisrCQlwdWJsaWMgYm9vbCBuZWFyIChHcmFwaGVuZS5WZWMzIHYyLCBmbG9hdCBlcHNp bG9uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5W ZWMzIG5lZ2F0ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBH cmFwaGVuZS5WZWMzIG5vcm1hbGl6ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0K KysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5WZWMzPyBvbmUgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMyBzY2FsZSAoZmxv YXQgZmFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFw aGVuZS5WZWMzIHN1YnRyYWN0IChHcmFwaGVuZS5WZWMzIGIpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgdG9fZmxvYXQgKFtDQ29kZSAoYXJyYXlfbGVuZ3Ro ID0gZmFsc2UpXSByZWYgZmxvYXQgZGVzdFszXSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuVmVjMz8geF9heGlzICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdy YXBoZW5lLlZlYzM/IHlfYXhpcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJ CXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5WZWMzPyB6X2F4aXMgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUu VmVjMz8gemVybyAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhl bmUtZ29iamVjdC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfdmVjNF90IiwgdHlwZV9pZCA9ICJncmFw aGVuZV92ZWM0X2dldF90eXBlICgpIildCisrCXB1YmxpYyBzdHJ1Y3QgVmVjNCB7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjNCBhZGQgKEdyYXBo ZW5lLlZlYzQgYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3Jh cGhlbmUuVmVjNCBkaXZpZGUgKEdyYXBoZW5lLlZlYzQgYik7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgZG90IChHcmFwaGVuZS5WZWM0IGIpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIGJvb2wgZXF1YWwgKEdyYXBoZW5lLlZl YzQgdjIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGdl dF93ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGdl dF94ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5l LlZlYzIgZ2V0X3h5ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGlj IEdyYXBoZW5lLlZlYzMgZ2V0X3h5eiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0K KysJCXB1YmxpYyBmbG9hdCBnZXRfeSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0K KysJCXB1YmxpYyBmbG9hdCBnZXRfeiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0K KysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlZlYzQ/IGluaXQgKGZsb2F0IHgsIGZsb2F0IHks IGZsb2F0IHosIGZsb2F0IHcpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVi bGljIHVub3duZWQgR3JhcGhlbmUuVmVjND8gaW5pdF9mcm9tX2Zsb2F0IChbQ0NvZGUgKGFycmF5 X2xlbmd0aCA9IGZhbHNlKV0gZmxvYXQgc3JjWzRdKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlZlYzQ/IGluaXRfZnJvbV92ZWMyIChH cmFwaGVuZS5WZWMyIHNyYywgZmxvYXQgeiwgZmxvYXQgdyk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5WZWM0PyBpbml0X2Zyb21fdmVj MyAoR3JhcGhlbmUuVmVjMyBzcmMsIGZsb2F0IHcpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuVmVjND8gaW5pdF9mcm9tX3ZlYzQgKEdy YXBoZW5lLlZlYzQgc3JjKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJs aWMgR3JhcGhlbmUuVmVjNCBpbnRlcnBvbGF0ZSAoR3JhcGhlbmUuVmVjNCB2MiwgZG91YmxlIGZh Y3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgbGVu Z3RoICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5l LlZlYzQgbWF4IChHcmFwaGVuZS5WZWM0IGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIp XQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzQgbWluIChHcmFwaGVuZS5WZWM0IGIpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzQgbXVsdGlwbHkg KEdyYXBoZW5lLlZlYzQgYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJs aWMgYm9vbCBuZWFyIChHcmFwaGVuZS5WZWM0IHYyLCBmbG9hdCBlcHNpbG9uKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWM0IG5lZ2F0ZSAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWM0IG5v cm1hbGl6ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBzdGF0 aWMgdW5vd25lZCBHcmFwaGVuZS5WZWM0PyBvbmUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4yIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjNCBzY2FsZSAoZmxvYXQgZmFjdG9yKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWM0IHN1YnRy YWN0IChHcmFwaGVuZS5WZWM0IGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJ cHVibGljIHZvaWQgdG9fZmxvYXQgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSByZWYg ZmxvYXQgZGVzdFs0XSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg c3RhdGljIHVub3duZWQgR3JhcGhlbmUuVmVjND8gd19heGlzICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLlZlYzQ/IHhf YXhpcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBzdGF0aWMg dW5vd25lZCBHcmFwaGVuZS5WZWM0PyB5X2F4aXMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4wIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuVmVjND8gel9heGlzICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVk IEdyYXBoZW5lLlZlYzQ/IHplcm8gKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdyYXBoZW5lX2V1bGVyX29yZGVyX3Qi LCBjcHJlZml4ID0gIkdSQVBIRU5FX0VVTEVSX09SREVSXyIsIGhhc190eXBlX2lkID0gZmFsc2Up XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBlbnVtIEV1bGVyT3JkZXIg eworKwkJREVGQVVMVCwKKysJCVhZWiwKKysJCVlaWCwKKysJCVpYWSwKKysJCVhaWSwKKysJCVlY WiwKKysJCVpZWCwKKysJCVNYWVosCisrCQlTWFlYLAorKwkJU1haWSwKKysJCVNYWlgsCisrCQlT WVpYLAorKwkJU1laWSwKKysJCVNZWFosCisrCQlTWVhZLAorKwkJU1pYWSwKKysJCVNaWFosCisr CQlTWllYLAorKwkJU1pZWiwKKysJCVJaWVgsCisrCQlSWFlYLAorKwkJUllaWCwKKysJCVJYWlgs CisrCQlSWFpZLAorKwkJUllaWSwKKysJCVJaWFksCisrCQlSWVhZLAorKwkJUllYWiwKKysJCVJa WFosCisrCQlSWFlaLAorKwkJUlpZWgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJncmFwaGVuZV9yYXlfaW50ZXJzZWN0aW9u X2tpbmRfdCIsIGNwcmVmaXggPSAiR1JBUEhFTkVfUkFZX0lOVEVSU0VDVElPTl9LSU5EXyIsIGhh c190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJs aWMgZW51bSBSYXlJbnRlcnNlY3Rpb25LaW5kIHsKKysJCU5PTkUsCisrCQlFTlRFUiwKKysJCUxF QVZFCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3Qu aCIsIGNuYW1lID0gIkdSQVBIRU5FX0hBU19HQ0MiKV0KKysJcHVibGljIGNvbnN0IGludCBIQVNf R0NDOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwg Y25hbWUgPSAiR1JBUEhFTkVfSEFTX1NDQUxBUiIpXQorKwlwdWJsaWMgY29uc3QgaW50IEhBU19T Q0FMQVI7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0Lmgi LCBjbmFtZSA9ICJHUkFQSEVORV9IQVNfU1NFIildCisrCXB1YmxpYyBjb25zdCBpbnQgSEFTX1NT RTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNu YW1lID0gIkdSQVBIRU5FX1BJIildCisrCXB1YmxpYyBjb25zdCBkb3VibGUgUEk7CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJHUkFQ SEVORV9QSV8yIildCisrCXB1YmxpYyBjb25zdCBkb3VibGUgUElfMjsKKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gIkdSQVBIRU5FX1NJ TURfUyIpXQorKwlwdWJsaWMgY29uc3Qgc3RyaW5nIFNJTURfUzsKKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gIkdSQVBIRU5FX1ZFQzJf TEVOIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGNvbnN0IGludCBW RUMyX0xFTjsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3Qu aCIsIGNuYW1lID0gIkdSQVBIRU5FX1ZFQzNfTEVOIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIx LjAiKV0KKysJcHVibGljIGNvbnN0IGludCBWRUMzX0xFTjsKKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gIkdSQVBIRU5FX1ZFQzRfTEVO IildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGNvbnN0IGludCBWRUM0 X0xFTjsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIs IGNuYW1lID0gImZhbHNlIildCisrCXB1YmxpYyBjb25zdCBpbnQgQGZhbHNlOworKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAidHJ1ZSIp XQorKwlwdWJsaWMgY29uc3QgaW50IEB0cnVlOworK30KK2RpZmYgLS1naXQgYS92YXBpL2xpYm11 dHRlci02LmRlcHMgYi92YXBpL2xpYm11dHRlci02LmRlcHMKK25ldyBmaWxlIG1vZGUgMTAwNjQ0 CitpbmRleCAwMDAwMDAwMC4uMjIzNTI1ZTQKKy0tLSAvZGV2L251bGwKKysrKyBiL3ZhcGkvbGli bXV0dGVyLTYuZGVwcworQEAgLTAsMCArMSw2IEBACisrZ3RrKy0zLjAKKytqc29uLWdsaWItMS4w CisrbXV0dGVyLWNsdXR0ZXItNgorK3gxMQorK3hmaXhlcy00LjAKKytncmFwaGVuZS1nb2JqZWN0 LTEuMAorZGlmZiAtLWdpdCBhL3ZhcGkvbGlibXV0dGVyLTYudmFwaSBiL3ZhcGkvbGlibXV0dGVy LTYudmFwaQorbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAwLi4zMWY0ODAxYwor LS0tIC9kZXYvbnVsbAorKysrIGIvdmFwaS9saWJtdXR0ZXItNi52YXBpCitAQCAtMCwwICsxLDE0 NzUgQEAKKysvKiBsaWJtdXR0ZXItNi52YXBpIGdlbmVyYXRlZCBieSB2YXBpZ2VuLCBkbyBub3Qg bW9kaWZ5LiAqLworKworK1tDQ29kZSAoY3ByZWZpeCA9ICJNZXRhIiwgZ2lyX25hbWVzcGFjZSA9 ICJNZXRhIiwgZ2lyX3ZlcnNpb24gPSAiNiIsIGxvd2VyX2Nhc2VfY3ByZWZpeCA9ICJtZXRhXyIp XQorK25hbWVzcGFjZSBNZXRhIHsKKysJbmFtZXNwYWNlIENvbXBvc2l0b3IgeworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvY29tcG9zaXRvci1tdXR0ZXIuaCIsIGNuYW1lID0g Im1ldGFfZGlzYWJsZV91bnJlZGlyZWN0X2Zvcl9kaXNwbGF5IildCisrCQlwdWJsaWMgc3RhdGlj IHZvaWQgZGlzYWJsZV91bnJlZGlyZWN0X2Zvcl9kaXNwbGF5IChNZXRhLkRpc3BsYXkgZGlzcGxh eSk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9jb21wb3NpdG9yLW11dHRl ci5oIiwgY25hbWUgPSAibWV0YV9lbmFibGVfdW5yZWRpcmVjdF9mb3JfZGlzcGxheSIpXQorKwkJ cHVibGljIHN0YXRpYyB2b2lkIGVuYWJsZV91bnJlZGlyZWN0X2Zvcl9kaXNwbGF5IChNZXRhLkRp c3BsYXkgZGlzcGxheSk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9jb21w b3NpdG9yLW11dHRlci5oIiwgY25hbWUgPSAibWV0YV9mb2N1c19zdGFnZV93aW5kb3ciKV0KKysJ CXB1YmxpYyBzdGF0aWMgdm9pZCBmb2N1c19zdGFnZV93aW5kb3cgKE1ldGEuRGlzcGxheSBkaXNw bGF5LCB1aW50MzIgdGltZXN0YW1wKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJt ZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgiLCBjbmFtZSA9ICJtZXRhX2dldF9mZWVkYmFja19ncm91 cF9mb3JfZGlzcGxheSIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3Ig Z2V0X2ZlZWRiYWNrX2dyb3VwX2Zvcl9kaXNwbGF5IChNZXRhLkRpc3BsYXkgZGlzcGxheSk7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9jb21wb3NpdG9yLW11dHRlci5oIiwg Y25hbWUgPSAibWV0YV9nZXRfc3RhZ2VfZm9yX2Rpc3BsYXkiKV0KKysJCXB1YmxpYyBzdGF0aWMg dW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF9zdGFnZV9mb3JfZGlzcGxheSAoTWV0YS5EaXNwbGF5 IGRpc3BsYXkpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvY29tcG9zaXRv ci1tdXR0ZXIuaCIsIGNuYW1lID0gIm1ldGFfZ2V0X3RvcF93aW5kb3dfZ3JvdXBfZm9yX2Rpc3Bs YXkiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF90b3Bfd2lu ZG93X2dyb3VwX2Zvcl9kaXNwbGF5IChNZXRhLkRpc3BsYXkgZGlzcGxheSk7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9jb21wb3NpdG9yLW11dHRlci5oIiwgY25hbWUgPSAi bWV0YV9nZXRfd2luZG93X2FjdG9ycyIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdMaWIu TGlzdDxDbHV0dGVyLkFjdG9yPiBnZXRfd2luZG93X2FjdG9ycyAoTWV0YS5EaXNwbGF5IGRpc3Bs YXkpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvY29tcG9zaXRvci1tdXR0 ZXIuaCIsIGNuYW1lID0gIm1ldGFfZ2V0X3dpbmRvd19ncm91cF9mb3JfZGlzcGxheSIpXQorKwkJ cHVibGljIHN0YXRpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X3dpbmRvd19ncm91cF9mb3Jf ZGlzcGxheSAoTWV0YS5EaXNwbGF5IGRpc3BsYXkpOworKwl9CisrCW5hbWVzcGFjZSBQcmVmcyB7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAi bWV0YV9wcmVmc19iZWxsX2lzX2F1ZGlibGUiKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBwcmVm c19iZWxsX2lzX2F1ZGlibGUgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0 YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19jaGFuZ2Vfd29ya3NwYWNlX25hbWUiKV0K KysJCXB1YmxpYyBzdGF0aWMgdm9pZCBwcmVmc19jaGFuZ2Vfd29ya3NwYWNlX25hbWUgKGludCBp LCBzdHJpbmcgbmFtZSk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVm cy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfYWN0aW9uX2RvdWJsZV9jbGlja190aXRsZWJh ciIpXQorKwkJcHVibGljIHN0YXRpYyBHRGVza3RvcC5UaXRsZWJhckFjdGlvbiBwcmVmc19nZXRf YWN0aW9uX2RvdWJsZV9jbGlja190aXRsZWJhciAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9hY3Rpb25fbWlk ZGxlX2NsaWNrX3RpdGxlYmFyIildCisrCQlwdWJsaWMgc3RhdGljIEdEZXNrdG9wLlRpdGxlYmFy QWN0aW9uIHByZWZzX2dldF9hY3Rpb25fbWlkZGxlX2NsaWNrX3RpdGxlYmFyICgpOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJl ZnNfZ2V0X2FjdGlvbl9yaWdodF9jbGlja190aXRsZWJhciIpXQorKwkJcHVibGljIHN0YXRpYyBH RGVza3RvcC5UaXRsZWJhckFjdGlvbiBwcmVmc19nZXRfYWN0aW9uX3JpZ2h0X2NsaWNrX3RpdGxl YmFyICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNu YW1lID0gIm1ldGFfcHJlZnNfZ2V0X2F0dGFjaF9tb2RhbF9kaWFsb2dzIildCisrCQlwdWJsaWMg c3RhdGljIGJvb2wgcHJlZnNfZ2V0X2F0dGFjaF9tb2RhbF9kaWFsb2dzICgpOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNf Z2V0X2F1dG9fbWF4aW1pemUiKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBwcmVmc19nZXRfYXV0 b19tYXhpbWl6ZSAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZz LmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9hdXRvX3JhaXNlIildCisrCQlwdWJsaWMgc3Rh dGljIGJvb2wgcHJlZnNfZ2V0X2F1dG9fcmFpc2UgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfYXV0b19yYWlz ZV9kZWxheSIpXQorKwkJcHVibGljIHN0YXRpYyBpbnQgcHJlZnNfZ2V0X2F1dG9fcmFpc2VfZGVs YXkgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25h bWUgPSAibWV0YV9wcmVmc19nZXRfYnV0dG9uX2xheW91dCIpXQorKwkJcHVibGljIHN0YXRpYyBN ZXRhLkJ1dHRvbkxheW91dCBwcmVmc19nZXRfYnV0dG9uX2xheW91dCAoKTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dl dF9jZW50ZXJfbmV3X3dpbmRvd3MiKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBwcmVmc19nZXRf Y2VudGVyX25ld193aW5kb3dzICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1l dGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X2NvbXBvc2l0aW5nX21hbmFnZXIi KV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBwcmVmc19nZXRfY29tcG9zaXRpbmdfbWFuYWdlciAo KTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9 ICJtZXRhX3ByZWZzX2dldF9jdXJzb3Jfc2l6ZSIpXQorKwkJcHVibGljIHN0YXRpYyBpbnQgcHJl ZnNfZ2V0X2N1cnNvcl9zaXplICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1l dGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X2N1cnNvcl90aGVtZSIpXQorKwkJ cHVibGljIHN0YXRpYyB1bm93bmVkIHN0cmluZyBwcmVmc19nZXRfY3Vyc29yX3RoZW1lICgpOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1l dGFfcHJlZnNfZ2V0X2Rpc2FibGVfd29ya2Fyb3VuZHMiKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9v bCBwcmVmc19nZXRfZGlzYWJsZV93b3JrYXJvdW5kcyAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9kcmFnX3Ro cmVzaG9sZCIpXQorKwkJcHVibGljIHN0YXRpYyBpbnQgcHJlZnNfZ2V0X2RyYWdfdGhyZXNob2xk ICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1l ID0gIm1ldGFfcHJlZnNfZ2V0X2RyYWdnYWJsZV9ib3JkZXJfd2lkdGgiKV0KKysJCXB1YmxpYyBz dGF0aWMgaW50IHByZWZzX2dldF9kcmFnZ2FibGVfYm9yZGVyX3dpZHRoICgpOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNf Z2V0X2R5bmFtaWNfd29ya3NwYWNlcyIpXQorKwkJcHVibGljIHN0YXRpYyBib29sIHByZWZzX2dl dF9keW5hbWljX3dvcmtzcGFjZXMgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi bWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfZWRnZV90aWxpbmciKV0KKysJ CXB1YmxpYyBzdGF0aWMgYm9vbCBwcmVmc19nZXRfZWRnZV90aWxpbmcgKCk7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19n ZXRfZm9jdXNfY2hhbmdlX29uX3BvaW50ZXJfcmVzdCIpXQorKwkJcHVibGljIHN0YXRpYyBib29s IHByZWZzX2dldF9mb2N1c19jaGFuZ2Vfb25fcG9pbnRlcl9yZXN0ICgpOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0 X2ZvY3VzX21vZGUiKV0KKysJCXB1YmxpYyBzdGF0aWMgR0Rlc2t0b3AuRm9jdXNNb2RlIHByZWZz X2dldF9mb2N1c19tb2RlICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEv cHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X2ZvY3VzX25ld193aW5kb3dzIildCisr CQlwdWJsaWMgc3RhdGljIEdEZXNrdG9wLkZvY3VzTmV3V2luZG93cyBwcmVmc19nZXRfZm9jdXNf bmV3X3dpbmRvd3MgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVm cy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfZm9yY2VfZnVsbHNjcmVlbiIpXQorKwkJcHVi bGljIHN0YXRpYyBib29sIHByZWZzX2dldF9mb3JjZV9mdWxsc2NyZWVuICgpOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNf Z2V0X2dub21lX2FjY2Vzc2liaWxpdHkiKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBwcmVmc19n ZXRfZ25vbWVfYWNjZXNzaWJpbGl0eSAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9nbm9tZV9hbmltYXRpb25z IildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wgcHJlZnNfZ2V0X2dub21lX2FuaW1hdGlvbnMgKCk7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAi bWV0YV9wcmVmc19nZXRfa2V5YmluZGluZ19hY3Rpb24iKV0KKysJCXB1YmxpYyBzdGF0aWMgTWV0 YS5LZXlCaW5kaW5nQWN0aW9uIHByZWZzX2dldF9rZXliaW5kaW5nX2FjdGlvbiAoc3RyaW5nIG5h bWUpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1l ID0gIm1ldGFfcHJlZnNfZ2V0X21vdXNlX2J1dHRvbl9tZW51IildCisrCQlwdWJsaWMgc3RhdGlj IGludCBwcmVmc19nZXRfbW91c2VfYnV0dG9uX21lbnUgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfbW91c2Vf YnV0dG9uX21vZHMiKV0KKysJCXB1YmxpYyBzdGF0aWMgTWV0YS5WaXJ0dWFsTW9kaWZpZXIgcHJl ZnNfZ2V0X21vdXNlX2J1dHRvbl9tb2RzICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X21vdXNlX2J1dHRvbl9y ZXNpemUiKV0KKysJCXB1YmxpYyBzdGF0aWMgaW50IHByZWZzX2dldF9tb3VzZV9idXR0b25fcmVz aXplICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNu YW1lID0gIm1ldGFfcHJlZnNfZ2V0X251bV93b3Jrc3BhY2VzIildCisrCQlwdWJsaWMgc3RhdGlj IGludCBwcmVmc19nZXRfbnVtX3dvcmtzcGFjZXMgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfcmFpc2Vfb25f Y2xpY2siKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBwcmVmc19nZXRfcmFpc2Vfb25fY2xpY2sg KCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUg PSAibWV0YV9wcmVmc19nZXRfc2hvd19mYWxsYmFja19hcHBfbWVudSIpXQorKwkJcHVibGljIHN0 YXRpYyBib29sIHByZWZzX2dldF9zaG93X2ZhbGxiYWNrX2FwcF9tZW51ICgpOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNf Z2V0X3RpdGxlYmFyX2ZvbnQiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBQYW5nby5Gb250 RGVzY3JpcHRpb24gcHJlZnNfZ2V0X3RpdGxlYmFyX2ZvbnQgKCk7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfdmlz dWFsX2JlbGwiKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBwcmVmc19nZXRfdmlzdWFsX2JlbGwg KCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUg PSAibWV0YV9wcmVmc19nZXRfdmlzdWFsX2JlbGxfdHlwZSIpXQorKwkJcHVibGljIHN0YXRpYyBH RGVza3RvcC5WaXN1YWxCZWxsVHlwZSBwcmVmc19nZXRfdmlzdWFsX2JlbGxfdHlwZSAoKTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRh X3ByZWZzX2dldF93b3Jrc3BhY2VfbmFtZSIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIHN0 cmluZyBwcmVmc19nZXRfd29ya3NwYWNlX25hbWUgKGludCBpKTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF93b3Jr c3BhY2VzX29ubHlfb25fcHJpbWFyeSIpXQorKwkJcHVibGljIHN0YXRpYyBib29sIHByZWZzX2dl dF93b3Jrc3BhY2VzX29ubHlfb25fcHJpbWFyeSAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2luaXQiKV0KKysJCXB1 YmxpYyBzdGF0aWMgdm9pZCBwcmVmc19pbml0ICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfc2V0X2ZvcmNlX2Z1bGxz Y3JlZW4iKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBwcmVmc19zZXRfZm9yY2VfZnVsbHNjcmVl biAoYm9vbCB3aGV0aGVyKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3By ZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX3NldF9udW1fd29ya3NwYWNlcyIpXQorKwkJcHVi bGljIHN0YXRpYyB2b2lkIHByZWZzX3NldF9udW1fd29ya3NwYWNlcyAoaW50IG5fd29ya3NwYWNl cyk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUg PSAibWV0YV9wcmVmc19zZXRfc2hvd19mYWxsYmFja19hcHBfbWVudSIpXQorKwkJcHVibGljIHN0 YXRpYyB2b2lkIHByZWZzX3NldF9zaG93X2ZhbGxiYWNrX2FwcF9tZW51IChib29sIHdoZXRoZXIp OworKwl9CisrCW5hbWVzcGFjZSBVdGlsIHsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJtZXRhL3V0aWwuaCIsIGNuYW1lID0gIm1ldGFfYWRkX3ZlcmJvc2VfdG9waWMiKV0KKysJCXB1 YmxpYyBzdGF0aWMgdm9pZCBhZGRfdmVyYm9zZV90b3BpYyAoTWV0YS5EZWJ1Z1RvcGljIHRvcGlj KTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3V0aWwuaCIsIGNuYW1lID0g Im1ldGFfZXh0ZXJuYWxfYmluZGluZ19uYW1lX2Zvcl9hY3Rpb24iKV0KKysJCXB1YmxpYyBzdGF0 aWMgc3RyaW5nIGV4dGVybmFsX2JpbmRpbmdfbmFtZV9mb3JfYWN0aW9uICh1aW50IGtleWJpbmRp bmdfYWN0aW9uKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3V0aWwuaCIs IGNuYW1lID0gIm1ldGFfZ2V0X2xvY2FsZV9kaXJlY3Rpb24iKV0KKysJCXB1YmxpYyBzdGF0aWMg TWV0YS5Mb2NhbGVEaXJlY3Rpb24gZ2V0X2xvY2FsZV9kaXJlY3Rpb24gKCk7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX2dyYXZpdHlf dG9fc3RyaW5nIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgc3RyaW5nIGdyYXZpdHlfdG9f c3RyaW5nIChpbnQgZ3Jhdml0eSk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0 YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX2lzX2RlYnVnZ2luZyIpXQorKwkJcHVibGljIHN0YXRp YyBib29sIGlzX2RlYnVnZ2luZyAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJt ZXRhL3V0aWwuaCIsIGNuYW1lID0gIm1ldGFfaXNfc3luY2luZyIpXQorKwkJcHVibGljIHN0YXRp YyBib29sIGlzX3N5bmNpbmcgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0 YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX2lzX3ZlcmJvc2UiKV0KKysJCXB1YmxpYyBzdGF0aWMg Ym9vbCBpc192ZXJib3NlICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEv dXRpbC5oIiwgY25hbWUgPSAibWV0YV9pc193YXlsYW5kX2NvbXBvc2l0b3IiKV0KKysJCXB1Ymxp YyBzdGF0aWMgYm9vbCBpc193YXlsYW5kX2NvbXBvc2l0b3IgKCk7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX2xhdGVyX2FkZCIpXQor KwkJcHVibGljIHN0YXRpYyB1aW50IGxhdGVyX2FkZCAoTWV0YS5MYXRlclR5cGUgd2hlbiwgb3du ZWQgR0xpYi5Tb3VyY2VGdW5jIGZ1bmMpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g Im1ldGEvdXRpbC5oIiwgY25hbWUgPSAibWV0YV9sYXRlcl9yZW1vdmUiKV0KKysJCXB1YmxpYyBz dGF0aWMgdm9pZCBsYXRlcl9yZW1vdmUgKHVpbnQgbGF0ZXJfaWQpOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRpbC5oIiwgY25hbWUgPSAibWV0YV9wb3Bfbm9fbXNnX3By ZWZpeCIpXQorKwkJcHVibGljIHN0YXRpYyB2b2lkIHBvcF9ub19tc2dfcHJlZml4ICgpOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRpbC5oIiwgY25hbWUgPSAibWV0YV9w dXNoX25vX21zZ19wcmVmaXgiKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBwdXNoX25vX21zZ19w cmVmaXggKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgiLCBj bmFtZSA9ICJtZXRhX3JlY3QiKV0KKysJCXB1YmxpYyBzdGF0aWMgTWV0YS5SZWN0YW5nbGU/IHJl Y3QgKGludCB4LCBpbnQgeSwgaW50IHdpZHRoLCBpbnQgaGVpZ2h0KTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJtZXRhL3V0aWwuaCIsIGNuYW1lID0gIm1ldGFfcmVtb3ZlX3ZlcmJv c2VfdG9waWMiKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCByZW1vdmVfdmVyYm9zZV90b3BpYyAo TWV0YS5EZWJ1Z1RvcGljIHRvcGljKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJt ZXRhL3V0aWwuaCIsIGNuYW1lID0gIm1ldGFfc2hvd19kaWFsb2ciKV0KKysJCXB1YmxpYyBzdGF0 aWMgR0xpYi5QaWQgc2hvd19kaWFsb2cgKHN0cmluZyB0eXBlLCBzdHJpbmcgbWVzc2FnZSwgc3Ry aW5nIHRpbWVvdXQsIHN0cmluZyBkaXNwbGF5LCBzdHJpbmcgb2tfdGV4dCwgc3RyaW5nIGNhbmNl bF90ZXh0LCBzdHJpbmcgaWNvbl9uYW1lLCBpbnQgdHJhbnNpZW50X2ZvciwgR0xpYi5TTGlzdDx2 b2lkKj4gY29sdW1ucywgR0xpYi5TTGlzdDx2b2lkKj4gZW50cmllcyk7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX3Vuc2lnbmVkX2xv bmdfZXF1YWwiKV0KKysJCXB1YmxpYyBzdGF0aWMgaW50IHVuc2lnbmVkX2xvbmdfZXF1YWwgKHZv aWQqIHYxLCB2b2lkKiB2Mik7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91 dGlsLmgiLCBjbmFtZSA9ICJtZXRhX3Vuc2lnbmVkX2xvbmdfaGFzaCIpXQorKwkJcHVibGljIHN0 YXRpYyB1aW50IHVuc2lnbmVkX2xvbmdfaGFzaCAodm9pZCogdik7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX3gxMV9lcnJvcl90cmFw X3BvcCIpXQorKwkJcHVibGljIHN0YXRpYyB2b2lkIHgxMV9lcnJvcl90cmFwX3BvcCAoTWV0YS5Y MTFEaXNwbGF5IHgxMV9kaXNwbGF5KTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJt ZXRhL3V0aWwuaCIsIGNuYW1lID0gIm1ldGFfeDExX2Vycm9yX3RyYXBfcG9wX3dpdGhfcmV0dXJu IildCisrCQlwdWJsaWMgc3RhdGljIGludCB4MTFfZXJyb3JfdHJhcF9wb3Bfd2l0aF9yZXR1cm4g KE1ldGEuWDExRGlzcGxheSB4MTFfZGlzcGxheSk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX3gxMV9lcnJvcl90cmFwX3B1c2giKV0K KysJCXB1YmxpYyBzdGF0aWMgdm9pZCB4MTFfZXJyb3JfdHJhcF9wdXNoIChNZXRhLlgxMURpc3Bs YXkgeDExX2Rpc3BsYXkpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRh L21ldGEtYmFja2VuZC5oIiwgdHlwZV9pZCA9ICJtZXRhX2JhY2tlbmRfZ2V0X3R5cGUgKCkiKV0K KysJcHVibGljIGFic3RyYWN0IGNsYXNzIEJhY2tlbmQgOiBHTGliLk9iamVjdCwgR0xpYi5Jbml0 YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlw cm90ZWN0ZWQgQmFja2VuZCAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRh L21ldGEtYmFja2VuZC5oIiwgY25hbWUgPSAibWV0YV9nZXRfYmFja2VuZCIpXQorKwkJcHVibGlj IHN0YXRpYyB1bm93bmVkIE1ldGEuQmFja2VuZCBnZXRfYmFja2VuZCAoKTsKKysJCXB1YmxpYyB1 bm93bmVkIE1ldGEuRG5kIGdldF9kbmQgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLlJlbW90 ZUFjY2Vzc0NvbnRyb2xsZXIgZ2V0X3JlbW90ZV9hY2Nlc3NfY29udHJvbGxlciAoKTsKKysJCXB1 YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X3N0YWdlICgpOworKwkJcHVibGljIHZvaWQg bG9ja19sYXlvdXRfZ3JvdXAgKHVpbnQgaWR4KTsKKysJCXB1YmxpYyB2b2lkIHNldF9rZXltYXAg KHN0cmluZyBsYXlvdXRzLCBzdHJpbmcgdmFyaWFudHMsIHN0cmluZyBvcHRpb25zKTsKKysJCXB1 YmxpYyB2b2lkIHNldF9udW1sb2NrIChib29sIG51bWxvY2tfc3RhdGUpOworKwkJcHVibGljIHNp Z25hbCB2b2lkIGtleW1hcF9jaGFuZ2VkICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGtleW1h cF9sYXlvdXRfZ3JvdXBfY2hhbmdlZCAodWludCBvYmplY3QpOworKwkJcHVibGljIHNpZ25hbCB2 b2lkIGxhc3RfZGV2aWNlX2NoYW5nZWQgKENsdXR0ZXIuSW5wdXREZXZpY2Ugb2JqZWN0KTsKKysJ CXB1YmxpYyBzaWduYWwgdm9pZCBsaWRfaXNfY2xvc2VkX2NoYW5nZWQgKGJvb2wgb2JqZWN0KTsK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLWJhY2tncm91bmQu aCIsIHR5cGVfaWQgPSAibWV0YV9iYWNrZ3JvdW5kX2dldF90eXBlICgpIildCisrCXB1YmxpYyBj bGFzcyBCYWNrZ3JvdW5kIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0 X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHVibGljIEJhY2tncm91bmQgKE1ldGEuRGlzcGxheSBk aXNwbGF5KTsKKysJCXB1YmxpYyBzdGF0aWMgdm9pZCByZWZyZXNoX2FsbCAoKTsKKysJCXB1Ymxp YyB2b2lkIHNldF9ibGVuZCAoR0xpYi5GaWxlIGZpbGUxLCBHTGliLkZpbGUgZmlsZTIsIGRvdWJs ZSBibGVuZF9mYWN0b3IsIEdEZXNrdG9wLkJhY2tncm91bmRTdHlsZSBzdHlsZSk7CisrCQlwdWJs aWMgdm9pZCBzZXRfY29sb3IgKENsdXR0ZXIuQ29sb3IgY29sb3IpOworKwkJcHVibGljIHZvaWQg c2V0X2ZpbGUgKEdMaWIuRmlsZT8gZmlsZSwgR0Rlc2t0b3AuQmFja2dyb3VuZFN0eWxlIHN0eWxl KTsKKysJCXB1YmxpYyB2b2lkIHNldF9ncmFkaWVudCAoR0Rlc2t0b3AuQmFja2dyb3VuZFNoYWRp bmcgc2hhZGluZ19kaXJlY3Rpb24sIENsdXR0ZXIuQ29sb3IgY29sb3IsIENsdXR0ZXIuQ29sb3Ig c2Vjb25kX2NvbG9yKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIE1ldGEuRGlz cGxheSBtZXRhX2Rpc3BsYXkgeyBvd25lZCBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIHNp Z25hbCB2b2lkIGNoYW5nZWQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g Im1ldGEvbWV0YS1iYWNrZ3JvdW5kLWFjdG9yLmgiLCB0eXBlX2lkID0gIm1ldGFfYmFja2dyb3Vu ZF9hY3Rvcl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgQmFja2dyb3VuZEFjdG9yIDog Q2x1dHRlci5BY3RvciwgQXRrLkltcGxlbWVudG9yLCBDbHV0dGVyLkFuaW1hdGFibGUsIENsdXR0 ZXIuQ29udGFpbmVyLCBDbHV0dGVyLlNjcmlwdGFibGUgeworKwkJW0NDb2RlIChoYXNfY29uc3Ry dWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFjdG9yKiIpXQorKwkJcHVibGlj IEJhY2tncm91bmRBY3RvciAoTWV0YS5EaXNwbGF5IGRpc3BsYXksIGludCBtb25pdG9yKTsKKysJ CXB1YmxpYyB2b2lkIHNldF9iYWNrZ3JvdW5kIChNZXRhLkJhY2tncm91bmQgYmFja2dyb3VuZCk7 CisrCQlwdWJsaWMgdm9pZCBzZXRfZ3JhZGllbnQgKGJvb2wgZW5hYmxlZCwgaW50IGhlaWdodCwg ZG91YmxlIHRvbmVfc3RhcnQpOworKwkJcHVibGljIHZvaWQgc2V0X21vbml0b3IgKGludCBtb25p dG9yKTsKKysJCXB1YmxpYyB2b2lkIHNldF92aWduZXR0ZSAoYm9vbCBlbmFibGVkLCBkb3VibGUg YnJpZ2h0bmVzcywgZG91YmxlIHNoYXJwbmVzcyk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJ CXB1YmxpYyBNZXRhLkJhY2tncm91bmQgYmFja2dyb3VuZCB7IG93bmVkIGdldDsgc2V0OyB9Cisr CQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBkb3VibGUgYnJpZ2h0bmVzcyB7IGdldDsg c2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIGdyYWRpZW50IHsg Z2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGludCBncmFkaWVu dF9oZWlnaHQgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMg ZG91YmxlIGdyYWRpZW50X21heF9kYXJrbmVzcyB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nv ck1ldGhvZF0KKysJCXB1YmxpYyBNZXRhLkRpc3BsYXkgbWV0YV9kaXNwbGF5IHsgb3duZWQgZ2V0 OyBjb25zdHJ1Y3Q7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGludCBtb25p dG9yIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGlj IGJvb2wgdmlnbmV0dGUgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlw dWJsaWMgZG91YmxlIHZpZ25ldHRlX3NoYXJwbmVzcyB7IGdldDsgc2V0OyB9CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1iYWNrZ3JvdW5kLWdyb3VwLmgiLCB0 eXBlX2lkID0gIm1ldGFfYmFja2dyb3VuZF9ncm91cF9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMg Y2xhc3MgQmFja2dyb3VuZEdyb3VwIDogQ2x1dHRlci5BY3RvciwgQXRrLkltcGxlbWVudG9yLCBD bHV0dGVyLkFuaW1hdGFibGUsIENsdXR0ZXIuQ29udGFpbmVyLCBDbHV0dGVyLlNjcmlwdGFibGUg eworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1 dHRlckFjdG9yKiIpXQorKwkJcHVibGljIEJhY2tncm91bmRHcm91cCAoKTsKKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLWJhY2tncm91bmQtaW1hZ2UuaCIsIHR5 cGVfaWQgPSAibWV0YV9iYWNrZ3JvdW5kX2ltYWdlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBj bGFzcyBCYWNrZ3JvdW5kSW1hZ2UgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25z dHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgQmFja2dyb3VuZEltYWdlICgp OworKwkJcHVibGljIGJvb2wgZ2V0X3N1Y2Nlc3MgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDb2ds LlRleHR1cmUgZ2V0X3RleHR1cmUgKCk7CisrCQlwdWJsaWMgYm9vbCBpc19sb2FkZWQgKCk7Cisr CQlwdWJsaWMgc2lnbmFsIHZvaWQgbG9hZGVkICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJtZXRhL21ldGEtYmFja2dyb3VuZC1pbWFnZS5oIiwgdHlwZV9pZCA9ICJtZXRh X2JhY2tncm91bmRfaW1hZ2VfY2FjaGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIEJh Y2tncm91bmRJbWFnZUNhY2hlIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3Ry dWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIEJhY2tncm91bmRJbWFnZUNhY2hl ICgpOworKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIE1ldGEuQmFja2dyb3VuZEltYWdlQ2FjaGUg Z2V0X2RlZmF1bHQgKCk7CisrCQlwdWJsaWMgTWV0YS5CYWNrZ3JvdW5kSW1hZ2UgbG9hZCAoR0xp Yi5GaWxlIGZpbGUpOworKwkJcHVibGljIHZvaWQgcHVyZ2UgKEdMaWIuRmlsZSBmaWxlKTsKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9iYXJyaWVyLmgiLCB0eXBlX2lk ID0gIm1ldGFfYmFycmllcl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgQmFycmllciA6 IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNl KV0KKysJCXByb3RlY3RlZCBCYXJyaWVyICgpOworKwkJcHVibGljIHZvaWQgZGVzdHJveSAoKTsK KysJCXB1YmxpYyBib29sIGlzX2FjdGl2ZSAoKTsKKysJCXB1YmxpYyB2b2lkIHJlbGVhc2UgKE1l dGEuQmFycmllckV2ZW50IGV2ZW50KTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGlj IE1ldGEuQmFycmllckRpcmVjdGlvbiBkaXJlY3Rpb25zIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJ CVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIE1ldGEuRGlzcGxheSBkaXNwbGF5IHsgb3du ZWQgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGlu dCB4MSB7IGdldDsgY29uc3RydWN0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1Ymxp YyBpbnQgeDIgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlw dWJsaWMgaW50IHkxIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQor KwkJcHVibGljIGludCB5MiB7IGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgc2lnbmFsIHZv aWQgaGl0IChNZXRhLkJhcnJpZXJFdmVudCBldmVudCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQg bGVmdCAoTWV0YS5CYXJyaWVyRXZlbnQgZXZlbnQpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJtZXRhL2JhcnJpZXIuaCIsIGNvcHlfZnVuY3Rpb24gPSAiZ19ib3hlZF9jb3B5 IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0eXBlX2lkID0gIm1ldGFfYmFycmll cl9ldmVudF9nZXRfdHlwZSAoKSIpXQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIEJhcnJp ZXJFdmVudCB7CisrCQlwdWJsaWMgaW50IGR0OworKwkJcHVibGljIGRvdWJsZSBkeDsKKysJCXB1 YmxpYyBkb3VibGUgZHk7CisrCQlwdWJsaWMgaW50IGV2ZW50X2lkOworKwkJcHVibGljIGJvb2wg Z3JhYmJlZDsKKysJCXB1YmxpYyBib29sIHJlbGVhc2VkOworKwkJcHVibGljIHVpbnQzMiB0aW1l OworKwkJcHVibGljIGRvdWJsZSB4OworKwkJcHVibGljIGRvdWJsZSB5OworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtY3Vyc29yLXRyYWNrZXIuaCIsIHR5cGVf aWQgPSAibWV0YV9jdXJzb3JfdHJhY2tlcl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3Mg Q3Vyc29yVHJhY2tlciA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9m dW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBDdXJzb3JUcmFja2VyICgpOworKwkJcHVi bGljIHN0YXRpYyB1bm93bmVkIE1ldGEuQ3Vyc29yVHJhY2tlciBnZXRfZm9yX2Rpc3BsYXkgKE1l dGEuRGlzcGxheSBkaXNwbGF5KTsKKysJCXB1YmxpYyB2b2lkIGdldF9ob3QgKG91dCBpbnQgeCwg b3V0IGludCB5KTsKKysJCXB1YmxpYyB2b2lkIGdldF9wb2ludGVyIChpbnQgeCwgaW50IHksIENs dXR0ZXIuTW9kaWZpZXJUeXBlIG1vZHMpOworKwkJcHVibGljIGJvb2wgZ2V0X3BvaW50ZXJfdmlz aWJsZSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENvZ2wuVGV4dHVyZSBnZXRfc3ByaXRlICgpOwor KwkJcHVibGljIHZvaWQgc2V0X3BvaW50ZXJfdmlzaWJsZSAoYm9vbCB2aXNpYmxlKTsKKysJCXB1 YmxpYyBzaWduYWwgdm9pZCBjdXJzb3JfY2hhbmdlZCAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9p ZCBjdXJzb3JfbW92ZWQgKGZsb2F0IHgsIGZsb2F0IHkpOworKwkJcHVibGljIHNpZ25hbCB2b2lk IHZpc2liaWxpdHlfY2hhbmdlZCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAibWV0YS9kaXNwbGF5LmgiLCB0eXBlX2lkID0gIm1ldGFfZGlzcGxheV9nZXRfdHlwZSAoKSIp XQorKwlwdWJsaWMgY2xhc3MgRGlzcGxheSA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFz X2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBEaXNwbGF5ICgpOwor KwkJcHVibGljIHZvaWQgYWRkX2lnbm9yZWRfY3Jvc3Npbmdfc2VyaWFsICh1bG9uZyBzZXJpYWwp OworKwkJcHVibGljIHVpbnQgYWRkX2tleWJpbmRpbmcgKHN0cmluZyBuYW1lLCBHTGliLlNldHRp bmdzIHNldHRpbmdzLCBNZXRhLktleUJpbmRpbmdGbGFncyBmbGFncywgb3duZWQgTWV0YS5LZXlI YW5kbGVyRnVuYyBoYW5kbGVyKTsKKysJCXB1YmxpYyBib29sIGJlZ2luX2dyYWJfb3AgKE1ldGEu V2luZG93IHdpbmRvdywgTWV0YS5HcmFiT3Agb3AsIGJvb2wgcG9pbnRlcl9hbHJlYWR5X2dyYWJi ZWQsIGJvb2wgZnJhbWVfYWN0aW9uLCBpbnQgYnV0dG9uLCB1bG9uZyBtb2RtYXNrLCB1aW50MzIg dGltZXN0YW1wLCBpbnQgcm9vdF94LCBpbnQgcm9vdF95KTsKKysJCXB1YmxpYyB2b2lkIGNsZWFy X21vdXNlX21vZGUgKCk7CisrCQlwdWJsaWMgdm9pZCBjbG9zZSAodWludDMyIHRpbWVzdGFtcCk7 CisrCQlwdWJsaWMgdm9pZCBlbmRfZ3JhYl9vcCAodWludDMyIHRpbWVzdGFtcCk7CisrCQlwdWJs aWMgdm9pZCBmb2N1c19kZWZhdWx0X3dpbmRvdyAodWludDMyIHRpbWVzdGFtcCk7CisrCQlwdWJs aWMgdm9pZCBmcmVlemVfa2V5Ym9hcmQgKHVpbnQzMiB0aW1lc3RhbXApOworKwkJcHVibGljIGlu dCBnZXRfY3VycmVudF9tb25pdG9yICgpOworKwkJcHVibGljIHVpbnQzMiBnZXRfY3VycmVudF90 aW1lICgpOworKwkJcHVibGljIHVpbnQzMiBnZXRfY3VycmVudF90aW1lX3JvdW5kdHJpcCAoKTsK KysJCXB1YmxpYyB1bm93bmVkIE1ldGEuV2luZG93IGdldF9mb2N1c193aW5kb3cgKCk7CisrCQlw dWJsaWMgTWV0YS5HcmFiT3AgZ2V0X2dyYWJfb3AgKCk7CisrCQlwdWJsaWMgdWludCBnZXRfa2V5 YmluZGluZ19hY3Rpb24gKHVpbnQga2V5Y29kZSwgdWxvbmcgbWFzayk7CisrCQlwdWJsaWMgdWlu dDMyIGdldF9sYXN0X3VzZXJfdGltZSAoKTsKKysJCXB1YmxpYyBNZXRhLlJlY3RhbmdsZSBnZXRf bW9uaXRvcl9nZW9tZXRyeSAoaW50IG1vbml0b3IpOworKwkJcHVibGljIGJvb2wgZ2V0X21vbml0 b3JfaW5fZnVsbHNjcmVlbiAoaW50IG1vbml0b3IpOworKwkJcHVibGljIGludCBnZXRfbW9uaXRv cl9pbmRleF9mb3JfcmVjdCAoTWV0YS5SZWN0YW5nbGUgcmVjdCk7CisrCQlwdWJsaWMgaW50IGdl dF9tb25pdG9yX25laWdoYm9yX2luZGV4IChpbnQgd2hpY2hfbW9uaXRvciwgTWV0YS5EaXNwbGF5 RGlyZWN0aW9uIGRpcik7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X21vbml0b3Jfc2NhbGUgKGludCBt b25pdG9yKTsKKysJCXB1YmxpYyBpbnQgZ2V0X25fbW9uaXRvcnMgKCk7CisrCQlwdWJsaWMgc3Ry aW5nIGdldF9wYWRfYWN0aW9uX2xhYmVsIChDbHV0dGVyLklucHV0RGV2aWNlIHBhZCwgTWV0YS5Q YWRBY3Rpb25UeXBlIGFjdGlvbl90eXBlLCB1aW50IGFjdGlvbl9udW1iZXIpOworKwkJcHVibGlj IGludCBnZXRfcHJpbWFyeV9tb25pdG9yICgpOworKwkJcHVibGljIHVub3duZWQgTWV0YS5TZWxl Y3Rpb24gZ2V0X3NlbGVjdGlvbiAoKTsKKysJCXB1YmxpYyB2b2lkIGdldF9zaXplIChvdXQgaW50 IHdpZHRoLCBvdXQgaW50IGhlaWdodCk7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLlNvdW5kUGxh eWVyIGdldF9zb3VuZF9wbGF5ZXIgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLldpbmRvdyBn ZXRfdGFiX2N1cnJlbnQgKE1ldGEuVGFiTGlzdCB0eXBlLCBNZXRhLldvcmtzcGFjZSB3b3Jrc3Bh Y2UpOworKwkJcHVibGljIEdMaWIuTGlzdDx3ZWFrIE1ldGEuV2luZG93PiBnZXRfdGFiX2xpc3Qg KE1ldGEuVGFiTGlzdCB0eXBlLCBNZXRhLldvcmtzcGFjZT8gd29ya3NwYWNlKTsKKysJCXB1Ymxp YyB1bm93bmVkIE1ldGEuV2luZG93IGdldF90YWJfbmV4dCAoTWV0YS5UYWJMaXN0IHR5cGUsIE1l dGEuV29ya3NwYWNlIHdvcmtzcGFjZSwgTWV0YS5XaW5kb3c/IHdpbmRvdywgYm9vbCBiYWNrd2Fy ZCk7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLldvcmtzcGFjZU1hbmFnZXIgZ2V0X3dvcmtzcGFj ZV9tYW5hZ2VyICgpOworKwkJcHVibGljIHVpbnQgZ3JhYl9hY2NlbGVyYXRvciAoc3RyaW5nIGFj Y2VsZXJhdG9yLCBNZXRhLktleUJpbmRpbmdGbGFncyBmbGFncyk7CisrCQlwdWJsaWMgYm9vbCBp c19wb2ludGVyX2VtdWxhdGluZ19zZXF1ZW5jZSAoQ2x1dHRlci5FdmVudFNlcXVlbmNlPyBzZXF1 ZW5jZSk7CisrCQlwdWJsaWMgYm9vbCByZW1vdmVfa2V5YmluZGluZyAoc3RyaW5nIG5hbWUpOwor KwkJcHVibGljIHZvaWQgcmVxdWVzdF9wYWRfb3NkIChDbHV0dGVyLklucHV0RGV2aWNlIHBhZCwg Ym9vbCBlZGl0aW9uX21vZGUpOworKwkJcHVibGljIHZvaWQgc2V0X2N1cnNvciAoTWV0YS5DdXJz b3IgY3Vyc29yKTsKKysJCXB1YmxpYyB2b2lkIHNldF9pbnB1dF9mb2N1cyAoTWV0YS5XaW5kb3cg d2luZG93LCBib29sIGZvY3VzX2ZyYW1lLCB1aW50MzIgdGltZXN0YW1wKTsKKysJCXB1YmxpYyBH TGliLlNMaXN0PHdlYWsgTWV0YS5XaW5kb3c+IHNvcnRfd2luZG93c19ieV9zdGFja2luZyAoR0xp Yi5TTGlzdDxNZXRhLldpbmRvdz4gd2luZG93cyk7CisrCQlwdWJsaWMgYm9vbCBzdXBwb3J0c19l eHRlbmRlZF9iYXJyaWVycyAoKTsKKysJCXB1YmxpYyB2b2lkIHVuZnJlZXplX2tleWJvYXJkICh1 aW50MzIgdGltZXN0YW1wKTsKKysJCXB1YmxpYyBib29sIHVuZ3JhYl9hY2NlbGVyYXRvciAodWlu dCBhY3Rpb25faWQpOworKwkJcHVibGljIHZvaWQgdW5ncmFiX2tleWJvYXJkICh1aW50MzIgdGlt ZXN0YW1wKTsKKysJCXB1YmxpYyB2b2lkIHVuc2V0X2lucHV0X2ZvY3VzICh1aW50MzIgdGltZXN0 YW1wKTsKKysJCXB1YmxpYyBib29sIHhzZXJ2ZXJfdGltZV9pc19iZWZvcmUgKHVpbnQzMiB0aW1l MSwgdWludDMyIHRpbWUyKTsKKysJCXB1YmxpYyBNZXRhLldpbmRvdyBmb2N1c193aW5kb3cgeyBn ZXQ7IH0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCBhY2NlbGVyYXRvcl9hY3RpdmF0ZWQgKHVpbnQg b2JqZWN0LCBDbHV0dGVyLklucHV0RGV2aWNlIHAwLCB1aW50IHAxKTsKKysJCXB1YmxpYyBzaWdu YWwgdm9pZCBjbG9zaW5nICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGN1cnNvcl91cGRhdGVk ICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGdsX3ZpZGVvX21lbW9yeV9wdXJnZWQgKCk7Cisr CQlwdWJsaWMgc2lnbmFsIHZvaWQgZ3JhYl9vcF9iZWdpbiAoTWV0YS5EaXNwbGF5IG9iamVjdCwg TWV0YS5XaW5kb3cgcDAsIE1ldGEuR3JhYk9wIHAxKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBn cmFiX29wX2VuZCAoTWV0YS5EaXNwbGF5IG9iamVjdCwgTWV0YS5XaW5kb3cgcDAsIE1ldGEuR3Jh Yk9wIHAxKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBpbl9mdWxsc2NyZWVuX2NoYW5nZWQgKCk7 CisrCQlwdWJsaWMgc2lnbmFsIGJvb2wgbW9kaWZpZXJzX2FjY2VsZXJhdG9yX2FjdGl2YXRlZCAo KTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBvdmVybGF5X2tleSAoKTsKKysJCXB1YmxpYyBzaWdu YWwgdm9pZCBwYWRfbW9kZV9zd2l0Y2ggKENsdXR0ZXIuSW5wdXREZXZpY2Ugb2JqZWN0LCB1aW50 IHAwLCB1aW50IHAxKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCByZXN0YWNrZWQgKCk7CisrCQlw dWJsaWMgc2lnbmFsIGJvb2wgcmVzdGFydCAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBzaG93 X29zZCAoaW50IG9iamVjdCwgc3RyaW5nIHAwLCBzdHJpbmcgcDEpOworKwkJcHVibGljIHNpZ25h bCB1bm93bmVkIENsdXR0ZXIuQWN0b3I/IHNob3dfcGFkX29zZCAoQ2x1dHRlci5JbnB1dERldmlj ZSBwYWQsIEdMaWIuU2V0dGluZ3Mgc2V0dGluZ3MsIHN0cmluZyBsYXlvdXRfcGF0aCwgYm9vbCBl ZGl0aW9uX21vZGUsIGludCBtb25pdG9yX2lkeCk7CisrCQlwdWJsaWMgc2lnbmFsIGJvb2wgc2hv d19yZXNpemVfcG9wdXAgKGJvb2wgb2JqZWN0LCBNZXRhLlJlY3RhbmdsZSBwMCwgaW50IHAxLCBp bnQgcDIpOworKwkJcHVibGljIHNpZ25hbCBib29sIHNob3dfcmVzdGFydF9tZXNzYWdlIChzdHJp bmc/IG1lc3NhZ2UpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHNob3dpbmdfZGVza3RvcF9jaGFu Z2VkICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHdpbmRvd19jcmVhdGVkIChNZXRhLldpbmRv dyBvYmplY3QpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHdpbmRvd19kZW1hbmRzX2F0dGVudGlv biAoTWV0YS5XaW5kb3cgb2JqZWN0KTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCB3aW5kb3dfZW50 ZXJlZF9tb25pdG9yIChpbnQgb2JqZWN0LCBNZXRhLldpbmRvdyBwMCk7CisrCQlwdWJsaWMgc2ln bmFsIHZvaWQgd2luZG93X2xlZnRfbW9uaXRvciAoaW50IG9iamVjdCwgTWV0YS5XaW5kb3cgcDAp OworKwkJcHVibGljIHNpZ25hbCB2b2lkIHdpbmRvd19tYXJrZWRfdXJnZW50IChNZXRhLldpbmRv dyBvYmplY3QpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHdvcmthcmVhc19jaGFuZ2VkICgpOwor KwkJcHVibGljIHNpZ25hbCB2b2lkIHgxMV9kaXNwbGF5X2Nsb3NpbmcgKCk7CisrCQlwdWJsaWMg c2lnbmFsIHZvaWQgeDExX2Rpc3BsYXlfb3BlbmVkICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lk IHgxMV9kaXNwbGF5X3NldHVwICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJtZXRhL21ldGEtZG5kLmgiLCB0eXBlX2lkID0gIm1ldGFfZG5kX2dldF90eXBlICgpIildCisr CXB1YmxpYyBjbGFzcyBEbmQgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1 Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgRG5kICgpOworKwkJcHVibGljIHNp Z25hbCB2b2lkIGRuZF9lbnRlciAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBkbmRfbGVhdmUg KCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgZG5kX3Bvc2l0aW9uX2NoYW5nZSAoaW50IG9iamVj dCwgaW50IHAwKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWlu LmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFzcyBG cmFtZSB7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1pZGxl LW1vbml0b3IuaCIsIHR5cGVfaWQgPSAibWV0YV9pZGxlX21vbml0b3JfZ2V0X3R5cGUgKCkiKV0K KysJcHVibGljIGNsYXNzIElkbGVNb25pdG9yIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlICho YXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIElkbGVNb25pdG9y ICgpOworKwkJcHVibGljIHVpbnQgYWRkX2lkbGVfd2F0Y2ggKHVpbnQ2NCBpbnRlcnZhbF9tc2Vj LCBvd25lZCBNZXRhLklkbGVNb25pdG9yV2F0Y2hGdW5jPyBjYWxsYmFjayk7CisrCQlwdWJsaWMg dWludCBhZGRfdXNlcl9hY3RpdmVfd2F0Y2ggKG93bmVkIE1ldGEuSWRsZU1vbml0b3JXYXRjaEZ1 bmM/IGNhbGxiYWNrKTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBNZXRhLklkbGVNb25pdG9y IGdldF9jb3JlICgpOworKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIE1ldGEuSWRsZU1vbml0b3Ig Z2V0X2Zvcl9kZXZpY2UgKENsdXR0ZXIuSW5wdXREZXZpY2UgZGV2aWNlKTsKKysJCXB1YmxpYyBp bnQ2NCBnZXRfaWRsZXRpbWUgKCk7CisrCQlwdWJsaWMgdm9pZCByZW1vdmVfd2F0Y2ggKHVpbnQg aWQpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgQ2x1dHRlci5JbnB1dERldmlj ZSBkZXZpY2UgeyBvd25lZCBnZXQ7IGNvbnN0cnVjdDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNvcHlfZnVuY3Rpb24gPSAiZ19ib3hlZF9jb3B5 IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0eXBlX2lkID0gIm1ldGFfa2V5X2Jp bmRpbmdfZ2V0X3R5cGUgKCkiKV0KKysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFzcyBLZXlCaW5k aW5nIHsKKysJCXB1YmxpYyB1aW50IGdldF9tYXNrICgpOworKwkJcHVibGljIE1ldGEuVmlydHVh bE1vZGlmaWVyIGdldF9tb2RpZmllcnMgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0 X25hbWUgKCk7CisrCQlwdWJsaWMgYm9vbCBpc19idWlsdGluICgpOworKwkJcHVibGljIGJvb2wg aXNfcmV2ZXJzZWQgKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gIm1ldGFfa2V5YmluZGluZ3Nfc2V0 X2N1c3RvbV9oYW5kbGVyIildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wgc2V0X2N1c3RvbV9oYW5k bGVyIChzdHJpbmcgbmFtZSwgb3duZWQgTWV0YS5LZXlIYW5kbGVyRnVuYz8gaGFuZGxlcik7Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1sYXVuY2gtY29udGV4 dC5oIiwgdHlwZV9pZCA9ICJtZXRhX2xhdW5jaF9jb250ZXh0X2dldF90eXBlICgpIildCisrCXB1 YmxpYyBjbGFzcyBMYXVuY2hDb250ZXh0IDogR0xpYi5BcHBMYXVuY2hDb250ZXh0IHsKKysJCVtD Q29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBMYXVu Y2hDb250ZXh0ICgpOworKwkJcHVibGljIHZvaWQgc2V0X3RpbWVzdGFtcCAodWludDMyIHRpbWVz dGFtcCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfd29ya3NwYWNlIChNZXRhLldvcmtzcGFjZSB3b3Jr c3BhY2UpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgTWV0YS5EaXNwbGF5IGRp c3BsYXkgeyBvd25lZCBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisr CQlwdWJsaWMgdWludCB0aW1lc3RhbXAgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRo b2RdCisrCQlwdWJsaWMgTWV0YS5Xb3Jrc3BhY2Ugd29ya3NwYWNlIHsgb3duZWQgZ2V0OyBzZXQ7 IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLW1vbml0b3It bWFuYWdlci5oIiwgdHlwZV9pZCA9ICJtZXRhX21vbml0b3JfbWFuYWdlcl9nZXRfdHlwZSAoKSIp XQorKwlwdWJsaWMgY2xhc3MgTW9uaXRvck1hbmFnZXIgOiBHTGliLk9iamVjdCB7CisrCQlbQ0Nv ZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgTW9uaXRv ck1hbmFnZXIgKCk7CisrCQlwdWJsaWMgYm9vbCBjYW5fc3dpdGNoX2NvbmZpZyAoKTsKKysJCXB1 YmxpYyBzdGF0aWMgdW5vd25lZCBNZXRhLk1vbml0b3JNYW5hZ2VyIEBnZXQgKCk7CisrCQlwdWJs aWMgc3RhdGljIGludCBnZXRfZGlzcGxheV9jb25maWd1cmF0aW9uX3RpbWVvdXQgKCk7CisrCQlw dWJsaWMgYm9vbCBnZXRfaXNfYnVpbHRpbl9kaXNwbGF5X29uICgpOworKwkJcHVibGljIGludCBn ZXRfbW9uaXRvcl9mb3JfY29ubmVjdG9yIChzdHJpbmcgY29ubmVjdG9yKTsKKysJCXB1YmxpYyBN ZXRhLk1vbml0b3JTd2l0Y2hDb25maWdUeXBlIGdldF9zd2l0Y2hfY29uZmlnICgpOworKwkJcHVi bGljIHZvaWQgc3dpdGNoX2NvbmZpZyAoTWV0YS5Nb25pdG9yU3dpdGNoQ29uZmlnVHlwZSBjb25m aWdfdHlwZSk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBNZXRhLkJhY2tlbmQg YmFja2VuZCB7IG93bmVkIGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQg Y29uZmlybV9kaXNwbGF5X2NoYW5nZSAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBtb25pdG9y c19jaGFuZ2VkICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIG1vbml0b3JzX2NoYW5nZWRfaW50 ZXJuYWwgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgcG93ZXJfc2F2ZV9tb2RlX2NoYW5nZWQg KCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1wbHVnaW4u aCIsIHR5cGVfaWQgPSAibWV0YV9wbHVnaW5fZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGFic3Ry YWN0IGNsYXNzIFBsdWdpbiA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVj dF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBQbHVnaW4gKCk7CisrCQlwdWJsaWMg Ym9vbCBiZWdpbl9tb2RhbCAoTWV0YS5Nb2RhbE9wdGlvbnMgb3B0aW9ucywgdWludDMyIHRpbWVz dGFtcCk7CisrCQlwdWJsaWMgdm9pZCBjb21wbGV0ZV9kaXNwbGF5X2NoYW5nZSAoYm9vbCBvayk7 CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBjb25maXJtX2Rpc3BsYXlf Y2hhbmdlICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgZGVzdHJv eSAoTWV0YS5XaW5kb3dBY3RvciBhY3Rvcik7CisrCQlwdWJsaWMgdm9pZCBkZXN0cm95X2NvbXBs ZXRlZCAoTWV0YS5XaW5kb3dBY3RvciBhY3Rvcik7CisrCQlwdWJsaWMgdm9pZCBlbmRfbW9kYWwg KHVpbnQzMiB0aW1lc3RhbXApOworKwkJcHVibGljIHVub3duZWQgTWV0YS5EaXNwbGF5IGdldF9k aXNwbGF5ICgpOworKwkJcHVibGljIHVub3duZWQgTWV0YS5QbHVnaW5JbmZvPyBnZXRfaW5mbyAo KTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGhpZGVfdGlsZV9wcmV2 aWV3ICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIGJvb2wga2V5YmluZGlu Z19maWx0ZXIgKE1ldGEuS2V5QmluZGluZyBiaW5kaW5nKTsKKysJCVtOb1dyYXBwZXJdCisrCQlw dWJsaWMgdmlydHVhbCB2b2lkIGtpbGxfc3dpdGNoX3dvcmtzcGFjZSAoKTsKKysJCVtOb1dyYXBw ZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGtpbGxfd2luZG93X2VmZmVjdHMgKE1ldGEuV2lu ZG93QWN0b3IgYWN0b3IpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQg bG9jYXRlX3BvaW50ZXIgKCk7CisrCQlwdWJsaWMgc3RhdGljIHZvaWQgbWFuYWdlcl9zZXRfcGx1 Z2luX3R5cGUgKEdMaWIuVHlwZSBndHlwZSk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZp cnR1YWwgdm9pZCBtYXAgKE1ldGEuV2luZG93QWN0b3IgYWN0b3IpOworKwkJcHVibGljIHZvaWQg bWFwX2NvbXBsZXRlZCAoTWV0YS5XaW5kb3dBY3RvciBhY3Rvcik7CisrCQlbTm9XcmFwcGVyXQor KwkJcHVibGljIHZpcnR1YWwgdm9pZCBtaW5pbWl6ZSAoTWV0YS5XaW5kb3dBY3RvciBhY3Rvcik7 CisrCQlwdWJsaWMgdm9pZCBtaW5pbWl6ZV9jb21wbGV0ZWQgKE1ldGEuV2luZG93QWN0b3IgYWN0 b3IpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHVub3duZWQgTWV0YS5QbHVn aW5JbmZvPyBwbHVnaW5faW5mbyAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVh bCB2b2lkIHNob3dfdGlsZV9wcmV2aWV3IChNZXRhLldpbmRvdyB3aW5kb3csIE1ldGEuUmVjdGFu Z2xlIHRpbGVfcmVjdCwgaW50IHRpbGVfbW9uaXRvcl9udW1iZXIpOworKwkJW05vV3JhcHBlcl0K KysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgc2hvd193aW5kb3dfbWVudSAoTWV0YS5XaW5kb3cgd2lu ZG93LCBNZXRhLldpbmRvd01lbnVUeXBlIG1lbnUsIGludCB4LCBpbnQgeSk7CisrCQlbTm9XcmFw cGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBzaG93X3dpbmRvd19tZW51X2Zvcl9yZWN0IChN ZXRhLldpbmRvdyB3aW5kb3csIE1ldGEuV2luZG93TWVudVR5cGUgbWVudSwgTWV0YS5SZWN0YW5n bGUgcmVjdCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBzaXplX2No YW5nZSAoTWV0YS5XaW5kb3dBY3RvciBhY3RvciwgTWV0YS5TaXplQ2hhbmdlIHdoaWNoX2NoYW5n ZSwgTWV0YS5SZWN0YW5nbGUgb2xkX2ZyYW1lX3JlY3QsIE1ldGEuUmVjdGFuZ2xlIG9sZF9idWZm ZXJfcmVjdCk7CisrCQlwdWJsaWMgdm9pZCBzaXplX2NoYW5nZV9jb21wbGV0ZWQgKE1ldGEuV2lu ZG93QWN0b3IgYWN0b3IpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQg c2l6ZV9jaGFuZ2VkIChNZXRhLldpbmRvd0FjdG9yIGFjdG9yKTsKKysJCVtOb1dyYXBwZXJdCisr CQlwdWJsaWMgdmlydHVhbCB2b2lkIHN0YXJ0ICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1Ymxp YyB2aXJ0dWFsIHZvaWQgc3dpdGNoX3dvcmtzcGFjZSAoaW50IGZyb20sIGludCB0bywgTWV0YS5N b3Rpb25EaXJlY3Rpb24gZGlyZWN0aW9uKTsKKysJCXB1YmxpYyB2b2lkIHN3aXRjaF93b3Jrc3Bh Y2VfY29tcGxldGVkICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQg dW5taW5pbWl6ZSAoTWV0YS5XaW5kb3dBY3RvciBhY3Rvcik7CisrCQlwdWJsaWMgdm9pZCB1bm1p bmltaXplX2NvbXBsZXRlZCAoTWV0YS5XaW5kb3dBY3RvciBhY3Rvcik7CisrCQlbTm9XcmFwcGVy XQorKwkJcHVibGljIHZpcnR1YWwgYm9vbCB4ZXZlbnRfZmlsdGVyIChYLkV2ZW50IGV2ZW50KTsK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLXJlbW90ZS1hY2Nl c3MtY29udHJvbGxlci5oIiwgdHlwZV9pZCA9ICJtZXRhX3JlbW90ZV9hY2Nlc3NfY29udHJvbGxl cl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgUmVtb3RlQWNjZXNzQ29udHJvbGxlciA6 IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNl KV0KKysJCXByb3RlY3RlZCBSZW1vdGVBY2Nlc3NDb250cm9sbGVyICgpOworKwkJcHVibGljIHNp Z25hbCB2b2lkIG5ld19oYW5kbGUgKE1ldGEuUmVtb3RlQWNjZXNzSGFuZGxlIG9iamVjdCk7Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1yZW1vdGUtYWNjZXNz LWNvbnRyb2xsZXIuaCIsIHR5cGVfaWQgPSAibWV0YV9yZW1vdGVfYWNjZXNzX2hhbmRsZV9nZXRf dHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgUmVtb3RlQWNjZXNzSGFuZGxlIDogR0xpYi5PYmpl Y3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJv dGVjdGVkIFJlbW90ZUFjY2Vzc0hhbmRsZSAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgc3Rv cCAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBzdG9wcGVkICgpOworKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIHR5cGVfaWQgPSAibWV0YV9zZWxlY3Rp b25fZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFNlbGVjdGlvbiA6IEdMaWIuT2JqZWN0 IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1Ymxp YyBTZWxlY3Rpb24gKE1ldGEuRGlzcGxheSBkaXNwbGF5KTsKKysJCXB1YmxpYyBHTGliLkxpc3Q8 c3RyaW5nPiBnZXRfbWltZXR5cGVzIChNZXRhLlNlbGVjdGlvblR5cGUgc2VsZWN0aW9uX3R5cGUp OworKwkJcHVibGljIHZvaWQgc2V0X293bmVyIChNZXRhLlNlbGVjdGlvblR5cGUgc2VsZWN0aW9u X3R5cGUsIE1ldGEuU2VsZWN0aW9uU291cmNlIG93bmVyKTsKKysJCXB1YmxpYyBhc3luYyBib29s IHRyYW5zZmVyX2FzeW5jIChNZXRhLlNlbGVjdGlvblR5cGUgc2VsZWN0aW9uX3R5cGUsIHN0cmlu ZyBtaW1ldHlwZSwgc3NpemVfdCBzaXplLCBHTGliLk91dHB1dFN0cmVhbSBvdXRwdXQsIEdMaWIu Q2FuY2VsbGFibGU/IGNhbmNlbGxhYmxlKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJCXB1YmxpYyB2 b2lkIHVuc2V0X293bmVyIChNZXRhLlNlbGVjdGlvblR5cGUgc2VsZWN0aW9uX3R5cGUsIE1ldGEu U2VsZWN0aW9uU291cmNlIG93bmVyKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBvd25lcl9jaGFu Z2VkICh1aW50IG9iamVjdCwgTWV0YS5TZWxlY3Rpb25Tb3VyY2UgcDApOworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIHR5cGVfaWQgPSAibWV0YV9zZWxl Y3Rpb25fc291cmNlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBTZWxlY3Rpb25Tb3Vy Y2UgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBm YWxzZSldCisrCQlwcm90ZWN0ZWQgU2VsZWN0aW9uU291cmNlICgpOworKwkJcHVibGljIHZpcnR1 YWwgR0xpYi5MaXN0PHN0cmluZz4gZ2V0X21pbWV0eXBlcyAoKTsKKysJCXB1YmxpYyBib29sIGlz X2FjdGl2ZSAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIGFzeW5jIEdMaWIuSW5wdXRTdHJlYW0gcmVh ZF9hc3luYyAoc3RyaW5nIG1pbWV0eXBlLCBHTGliLkNhbmNlbGxhYmxlPyBjYW5jZWxsYWJsZSkg dGhyb3dzIEdMaWIuRXJyb3I7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBhY3RpdmF0 ZWQgKCk7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBkZWFjdGl2YXRlZCAoKTsKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCB0eXBlX2lkID0g Im1ldGFfc2VsZWN0aW9uX3NvdXJjZV9tZW1vcnlfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNs YXNzIFNlbGVjdGlvblNvdXJjZU1lbW9yeSA6IE1ldGEuU2VsZWN0aW9uU291cmNlIHsKKysJCVtD Q29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIk1ldGFTZWxlY3Rp b25Tb3VyY2UqIildCisrCQlwdWJsaWMgU2VsZWN0aW9uU291cmNlTWVtb3J5IChzdHJpbmcgbWlt ZXR5cGUsIEdMaWIuQnl0ZXMgY29udGVudCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gIm1ldGEvbWV0YS1zZXR0aW5ncy5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtD b21wYWN0XQorKwlwdWJsaWMgY2xhc3MgU2V0dGluZ3MgeworKwkJcHVibGljIGludCBnZXRfZm9u dF9kcGkgKCk7CisrCQlwdWJsaWMgaW50IGdldF91aV9zY2FsaW5nX2ZhY3RvciAoKTsKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCByZWZfZnVuY3Rpb24g PSAibWV0YV9zaGFkb3dfcmVmIiwgdHlwZV9pZCA9ICJtZXRhX3NoYWRvd19nZXRfdHlwZSAoKSIs IHVucmVmX2Z1bmN0aW9uID0gIm1ldGFfc2hhZG93X3VucmVmIildCisrCVtDb21wYWN0XQorKwlw dWJsaWMgY2xhc3MgU2hhZG93IHsKKysJCXB1YmxpYyB2b2lkIGdldF9ib3VuZHMgKGludCB3aW5k b3dfeCwgaW50IHdpbmRvd195LCBpbnQgd2luZG93X3dpZHRoLCBpbnQgd2luZG93X2hlaWdodCwg Q2Fpcm8uUmVjdGFuZ2xlSW50IGJvdW5kcyk7CisrCQlwdWJsaWMgdm9pZCBwYWludCAoQ29nbC5G cmFtZWJ1ZmZlciBmcmFtZWJ1ZmZlciwgaW50IHdpbmRvd194LCBpbnQgd2luZG93X3ksIGludCB3 aW5kb3dfd2lkdGgsIGludCB3aW5kb3dfaGVpZ2h0LCB1aW50OCBvcGFjaXR5LCBDYWlyby5SZWdp b24/IGNsaXAsIGJvb2wgY2xpcF9zdHJpY3RseSk7CisrCQlwdWJsaWMgTWV0YS5TaGFkb3cgQHJl ZiAoKTsKKysJCXB1YmxpYyB2b2lkIHVucmVmICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJtZXRhL21ldGEtc2hhZG93LWZhY3RvcnkuaCIsIHR5cGVfaWQgPSAibWV0YV9z aGFkb3dfZmFjdG9yeV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgU2hhZG93RmFjdG9y eSA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZh bHNlKV0KKysJCXB1YmxpYyBTaGFkb3dGYWN0b3J5ICgpOworKwkJcHVibGljIHN0YXRpYyB1bm93 bmVkIE1ldGEuU2hhZG93RmFjdG9yeSBnZXRfZGVmYXVsdCAoKTsKKysJCXB1YmxpYyBNZXRhLlNo YWRvd1BhcmFtcyBnZXRfcGFyYW1zIChzdHJpbmcgY2xhc3NfbmFtZSwgYm9vbCBmb2N1c2VkKTsK KysJCXB1YmxpYyBNZXRhLlNoYWRvdyBnZXRfc2hhZG93IChNZXRhLldpbmRvd1NoYXBlIHNoYXBl LCBpbnQgd2lkdGgsIGludCBoZWlnaHQsIHN0cmluZyBjbGFzc19uYW1lLCBib29sIGZvY3VzZWQp OworKwkJcHVibGljIHZvaWQgc2V0X3BhcmFtcyAoc3RyaW5nIGNsYXNzX25hbWUsIGJvb2wgZm9j dXNlZCwgTWV0YS5TaGFkb3dQYXJhbXMgQHBhcmFtcyk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQg Y2hhbmdlZCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRh LXNoYXBlZC10ZXh0dXJlLmgiLCB0eXBlX2lkID0gIm1ldGFfc2hhcGVkX3RleHR1cmVfZ2V0X3R5 cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFNoYXBlZFRleHR1cmUgOiBHTGliLk9iamVjdCwgQ2x1 dHRlci5Db250ZW50IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNl KV0KKysJCXByb3RlY3RlZCBTaGFwZWRUZXh0dXJlICgpOworKwkJcHVibGljIENhaXJvLlN1cmZh Y2U/IGdldF9pbWFnZSAoQ2Fpcm8uUmVjdGFuZ2xlSW50PyBjbGlwKTsKKysJCXB1YmxpYyB1bm93 bmVkIENvZ2wuVGV4dHVyZSBnZXRfdGV4dHVyZSAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9jcmVh dGVfbWlwbWFwcyAoYm9vbCBjcmVhdGVfbWlwbWFwcyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfbWFz a190ZXh0dXJlIChDb2dsLlRleHR1cmUgbWFza190ZXh0dXJlKTsKKysJCXB1YmxpYyB2b2lkIHNl dF9vcGFxdWVfcmVnaW9uIChvd25lZCBDYWlyby5SZWdpb24gb3BhcXVlX3JlZ2lvbik7CisrCQlw dWJsaWMgc2lnbmFsIHZvaWQgc2l6ZV9jaGFuZ2VkICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJtZXRhL21ldGEtc291bmQtcGxheWVyLmgiLCB0eXBlX2lkID0gIm1ldGFf c291bmRfcGxheWVyX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBTb3VuZFBsYXllciA6 IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNl KV0KKysJCXByb3RlY3RlZCBTb3VuZFBsYXllciAoKTsKKysJCXB1YmxpYyB2b2lkIHBsYXlfZnJv bV9maWxlIChHTGliLkZpbGUgZmlsZSwgc3RyaW5nIGRlc2NyaXB0aW9uLCBHTGliLkNhbmNlbGxh YmxlPyBjYW5jZWxsYWJsZSA9IG51bGwpOworKwkJcHVibGljIHZvaWQgcGxheV9mcm9tX3RoZW1l IChzdHJpbmcgbmFtZSwgc3RyaW5nIGRlc2NyaXB0aW9uLCBHTGliLkNhbmNlbGxhYmxlPyBjYW5j ZWxsYWJsZSA9IG51bGwpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRh L21ldGEtc3RhZ2UuaCIsIHR5cGVfaWQgPSAibWV0YV9zdGFnZV9nZXRfdHlwZSAoKSIpXQorKwlw dWJsaWMgY2xhc3MgU3RhZ2UgOiBDbHV0dGVyLlN0YWdlLCBBdGsuSW1wbGVtZW50b3IsIENsdXR0 ZXIuQW5pbWF0YWJsZSwgQ2x1dHRlci5Db250YWluZXIsIENsdXR0ZXIuU2NyaXB0YWJsZSB7Cisr CQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQg U3RhZ2UgKCk7CisrCQlwdWJsaWMgc3RhdGljIGJvb2wgaXNfZm9jdXNlZCAoTWV0YS5EaXNwbGF5 IGRpc3BsYXkpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGFjdG9yc19wYWludGVkICgpOworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtc3RhcnR1cC1ub3RpZmlj YXRpb24uaCIsIHR5cGVfaWQgPSAibWV0YV9zdGFydHVwX25vdGlmaWNhdGlvbl9nZXRfdHlwZSAo KSIpXQorKwlwdWJsaWMgY2xhc3MgU3RhcnR1cE5vdGlmaWNhdGlvbiA6IEdMaWIuT2JqZWN0IHsK KysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3Rl ZCBTdGFydHVwTm90aWZpY2F0aW9uICgpOworKwkJcHVibGljIE1ldGEuTGF1bmNoQ29udGV4dCBj cmVhdGVfbGF1bmNoZXIgKCk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBNZXRh LkRpc3BsYXkgZGlzcGxheSB7IG93bmVkIGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgc2ln bmFsIHZvaWQgY2hhbmdlZCAodm9pZCogb2JqZWN0KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCB0eXBlX2lkID0gIm1ldGFfc3RhcnR1cF9zZXF1ZW5j ZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgU3RhcnR1cFNlcXVlbmNlIDogR0xpYi5P YmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJ cHJvdGVjdGVkIFN0YXJ0dXBTZXF1ZW5jZSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBn ZXRfYXBwbGljYXRpb25faWQgKCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfY29tcGxldGVkICgpOwor KwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9pY29uX25hbWUgKCk7CisrCQlwdWJsaWMgdW5v d25lZCBzdHJpbmcgZ2V0X2lkICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9uYW1l ICgpOworKwkJcHVibGljIHVpbnQ2NCBnZXRfdGltZXN0YW1wICgpOworKwkJcHVibGljIHVub3du ZWQgc3RyaW5nIGdldF93bWNsYXNzICgpOworKwkJcHVibGljIGludCBnZXRfd29ya3NwYWNlICgp OworKwkJcHVibGljIHN0cmluZyBhcHBsaWNhdGlvbl9pZCB7IGdldDsgY29uc3RydWN0OyB9Cisr CQlwdWJsaWMgc3RyaW5nIGljb25fbmFtZSB7IGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMg c3RyaW5nIGlkIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBzdHJpbmcgbmFtZSB7IGdl dDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgdWludDY0IHRpbWVzdGFtcCB7IGdldDsgY29uc3Ry dWN0OyB9CisrCQlwdWJsaWMgc3RyaW5nIHdtY2xhc3MgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJ cHVibGljIGludCB3b3Jrc3BhY2UgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJW0hhc0VtaXR0ZXJd CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgY29tcGxldGUgKCk7CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gIm1ldGEvdGhlbWUuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlb Q29tcGFjdF0KKysJcHVibGljIGNsYXNzIFRoZW1lIHsKKysJCXB1YmxpYyB2b2lkIGZyZWUgKCk7 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvd2luZG93LmgiLCB0eXBl X2lkID0gIm1ldGFfd2luZG93X2dldF90eXBlICgpIildCisrCXB1YmxpYyBhYnN0cmFjdCBjbGFz cyBXaW5kb3cgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rp b24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgV2luZG93ICgpOworKwkJcHVibGljIHZvaWQgYWN0 aXZhdGUgKHVpbnQzMiBjdXJyZW50X3RpbWUpOworKwkJcHVibGljIHZvaWQgYWN0aXZhdGVfd2l0 aF93b3Jrc3BhY2UgKHVpbnQzMiBjdXJyZW50X3RpbWUsIE1ldGEuV29ya3NwYWNlIHdvcmtzcGFj ZSk7CisrCQlwdWJsaWMgYm9vbCBhbGxvd3NfbW92ZSAoKTsKKysJCXB1YmxpYyBib29sIGFsbG93 c19yZXNpemUgKCk7CisrCQlwdWJsaWMgdm9pZCBiZWdpbl9ncmFiX29wIChNZXRhLkdyYWJPcCBv cCwgYm9vbCBmcmFtZV9hY3Rpb24sIHVpbnQzMiB0aW1lc3RhbXApOworKwkJcHVibGljIGJvb2wg Y2FuX2Nsb3NlICgpOworKwkJcHVibGljIGJvb2wgY2FuX21heGltaXplICgpOworKwkJcHVibGlj IGJvb2wgY2FuX21pbmltaXplICgpOworKwkJcHVibGljIGJvb2wgY2FuX3NoYWRlICgpOworKwkJ cHVibGljIHZvaWQgY2hhbmdlX3dvcmtzcGFjZSAoTWV0YS5Xb3Jrc3BhY2Ugd29ya3NwYWNlKTsK KysJCXB1YmxpYyB2b2lkIGNoYW5nZV93b3Jrc3BhY2VfYnlfaW5kZXggKGludCBzcGFjZV9pbmRl eCwgYm9vbCBhcHBlbmQpOworKwkJcHVibGljIHZvaWQgY2hlY2tfYWxpdmUgKHVpbnQzMiB0aW1l c3RhbXApOworKwkJcHVibGljIE1ldGEuUmVjdGFuZ2xlIGNsaWVudF9yZWN0X3RvX2ZyYW1lX3Jl Y3QgKE1ldGEuUmVjdGFuZ2xlIGNsaWVudF9yZWN0KTsKKysJCXB1YmxpYyB2b2lkIGNvbXB1dGVf Z3JvdXAgKCk7CisrCQlwdWJsaWMgdm9pZCBAZGVsZXRlICh1aW50MzIgdGltZXN0YW1wKTsKKysJ CXB1YmxpYyB1bm93bmVkIE1ldGEuV2luZG93IGZpbmRfcm9vdF9hbmNlc3RvciAoKTsKKysJCXB1 YmxpYyB2b2lkIGZvY3VzICh1aW50MzIgdGltZXN0YW1wKTsKKysJCXB1YmxpYyB2b2lkIGZvcmVh Y2hfYW5jZXN0b3IgKE1ldGEuV2luZG93Rm9yZWFjaEZ1bmMgZnVuYyk7CisrCQlwdWJsaWMgdm9p ZCBmb3JlYWNoX3RyYW5zaWVudCAoTWV0YS5XaW5kb3dGb3JlYWNoRnVuYyBmdW5jKTsKKysJCXB1 YmxpYyBNZXRhLlJlY3RhbmdsZSBmcmFtZV9yZWN0X3RvX2NsaWVudF9yZWN0IChNZXRhLlJlY3Rh bmdsZSBmcmFtZV9yZWN0KTsKKysJCXB1YmxpYyBNZXRhLlJlY3RhbmdsZSBnZXRfYnVmZmVyX3Jl Y3QgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X2NsaWVudF9tYWNoaW5lICgpOwor KwkJcHVibGljIE1ldGEuV2luZG93Q2xpZW50VHlwZSBnZXRfY2xpZW50X3R5cGUgKCk7CisrCQlw dWJsaWMgdW5vd25lZCBHTGliLk9iamVjdCBnZXRfY29tcG9zaXRvcl9wcml2YXRlICgpOworKwkJ cHVibGljIHVub3duZWQgc3RyaW5nIGdldF9kZXNjcmlwdGlvbiAoKTsKKysJCXB1YmxpYyB1bm93 bmVkIE1ldGEuRGlzcGxheSBnZXRfZGlzcGxheSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENhaXJv LlJlZ2lvbj8gZ2V0X2ZyYW1lX2JvdW5kcyAoKTsKKysJCXB1YmxpYyBNZXRhLlJlY3RhbmdsZSBn ZXRfZnJhbWVfcmVjdCAoKTsKKysJCXB1YmxpYyBNZXRhLkZyYW1lVHlwZSBnZXRfZnJhbWVfdHlw ZSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfZ3RrX2FwcF9tZW51X29iamVjdF9w YXRoICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9ndGtfYXBwbGljYXRpb25faWQg KCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X2d0a19hcHBsaWNhdGlvbl9vYmplY3Rf cGF0aCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfZ3RrX21lbnViYXJfb2JqZWN0 X3BhdGggKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X2d0a190aGVtZV92YXJpYW50 ICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9ndGtfdW5pcXVlX2J1c19uYW1lICgp OworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9ndGtfd2luZG93X29iamVjdF9wYXRoICgp OworKwkJcHVibGljIGJvb2wgZ2V0X2ljb25fZ2VvbWV0cnkgKG91dCBNZXRhLlJlY3RhbmdsZSBy ZWN0KTsKKysJCXB1YmxpYyB1aW50NjQgZ2V0X2lkICgpOworKwkJcHVibGljIE1ldGEuU3RhY2tM YXllciBnZXRfbGF5ZXIgKCk7CisrCQlwdWJsaWMgTWV0YS5NYXhpbWl6ZUZsYWdzIGdldF9tYXhp bWl6ZWQgKCk7CisrCQlwdWJsaWMgaW50IGdldF9tb25pdG9yICgpOworKwkJcHVibGljIHVub3du ZWQgc3RyaW5nIGdldF9tdXR0ZXJfaGludHMgKCk7CisrCQlwdWJsaWMgaW50IGdldF9waWQgKCk7 CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X3JvbGUgKCk7CisrCQlwdWJsaWMgdW5vd25l ZCBzdHJpbmcgZ2V0X3NhbmRib3hlZF9hcHBfaWQgKCk7CisrCQlwdWJsaWMgdWludCBnZXRfc3Rh YmxlX3NlcXVlbmNlICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9zdGFydHVwX2lk ICgpOworKwkJcHVibGljIHVub3duZWQgTWV0YS5XaW5kb3c/IGdldF90aWxlX21hdGNoICgpOwor KwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF90aXRsZSAoKTsKKysJCXB1YmxpYyB1bm93bmVk IE1ldGEuV2luZG93IGdldF90cmFuc2llbnRfZm9yICgpOworKwkJcHVibGljIHVpbnQzMiBnZXRf dXNlcl90aW1lICgpOworKwkJcHVibGljIE1ldGEuV2luZG93VHlwZSBnZXRfd2luZG93X3R5cGUg KCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X3dtX2NsYXNzICgpOworKwkJcHVibGlj IHVub3duZWQgc3RyaW5nIGdldF93bV9jbGFzc19pbnN0YW5jZSAoKTsKKysJCXB1YmxpYyBNZXRh LlJlY3RhbmdsZSBnZXRfd29ya19hcmVhX2FsbF9tb25pdG9ycyAoKTsKKysJCXB1YmxpYyBNZXRh LlJlY3RhbmdsZSBnZXRfd29ya19hcmVhX2N1cnJlbnRfbW9uaXRvciAoKTsKKysJCXB1YmxpYyBN ZXRhLlJlY3RhbmdsZSBnZXRfd29ya19hcmVhX2Zvcl9tb25pdG9yIChpbnQgd2hpY2hfbW9uaXRv cik7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLldvcmtzcGFjZSBnZXRfd29ya3NwYWNlICgpOwor KwkJcHVibGljIFguV2luZG93IGdldF94d2luZG93ICgpOworKwkJcHVibGljIHZvaWQgZ3JvdXBf bGVhZGVyX2NoYW5nZWQgKCk7CisrCQlwdWJsaWMgYm9vbCBoYXNfZm9jdXMgKCk7CisrCQlwdWJs aWMgYm9vbCBpc19hYm92ZSAoKTsKKysJCXB1YmxpYyBib29sIGlzX2Fsd2F5c19vbl9hbGxfd29y a3NwYWNlcyAoKTsKKysJCXB1YmxpYyBib29sIGlzX2FuY2VzdG9yX29mX3RyYW5zaWVudCAoTWV0 YS5XaW5kb3cgdHJhbnNpZW50KTsKKysJCXB1YmxpYyBib29sIGlzX2F0dGFjaGVkX2RpYWxvZyAo KTsKKysJCXB1YmxpYyBib29sIGlzX2NsaWVudF9kZWNvcmF0ZWQgKCk7CisrCQlwdWJsaWMgYm9v bCBpc19mdWxsc2NyZWVuICgpOworKwkJcHVibGljIGJvb2wgaXNfaGlkZGVuICgpOworKwkJcHVi bGljIGJvb2wgaXNfbW9uaXRvcl9zaXplZCAoKTsKKysJCXB1YmxpYyBib29sIGlzX29uX2FsbF93 b3Jrc3BhY2VzICgpOworKwkJcHVibGljIGJvb2wgaXNfb25fcHJpbWFyeV9tb25pdG9yICgpOwor KwkJcHVibGljIGJvb2wgaXNfb3ZlcnJpZGVfcmVkaXJlY3QgKCk7CisrCQlwdWJsaWMgYm9vbCBp c19yZW1vdGUgKCk7CisrCQlwdWJsaWMgYm9vbCBpc19zY3JlZW5fc2l6ZWQgKCk7CisrCQlwdWJs aWMgYm9vbCBpc19zaGFkZWQgKCk7CisrCQlwdWJsaWMgYm9vbCBpc19za2lwX3Rhc2tiYXIgKCk7 CisrCQlwdWJsaWMgdm9pZCBraWxsICgpOworKwkJcHVibGljIGJvb2wgbG9jYXRlZF9vbl93b3Jr c3BhY2UgKE1ldGEuV29ya3NwYWNlIHdvcmtzcGFjZSk7CisrCQlwdWJsaWMgdm9pZCBsb3dlciAo KTsKKysJCXB1YmxpYyB2b2lkIG1ha2VfYWJvdmUgKCk7CisrCQlwdWJsaWMgdm9pZCBtYWtlX2Z1 bGxzY3JlZW4gKCk7CisrCQlwdWJsaWMgdm9pZCBtYXhpbWl6ZSAoTWV0YS5NYXhpbWl6ZUZsYWdz IGRpcmVjdGlvbnMpOworKwkJcHVibGljIHZvaWQgbWluaW1pemUgKCk7CisrCQlwdWJsaWMgdm9p ZCBtb3ZlX2ZyYW1lIChib29sIHVzZXJfb3AsIGludCByb290X3hfbncsIGludCByb290X3lfbncp OworKwkJcHVibGljIHZvaWQgbW92ZV9yZXNpemVfZnJhbWUgKGJvb2wgdXNlcl9vcCwgaW50IHJv b3RfeF9udywgaW50IHJvb3RfeV9udywgaW50IHcsIGludCBoKTsKKysJCXB1YmxpYyB2b2lkIG1v dmVfdG9fbW9uaXRvciAoaW50IG1vbml0b3IpOworKwkJcHVibGljIHZvaWQgcmFpc2UgKCk7Cisr CQlwdWJsaWMgYm9vbCByZXF1ZXN0ZWRfYnlwYXNzX2NvbXBvc2l0b3IgKCk7CisrCQlwdWJsaWMg Ym9vbCByZXF1ZXN0ZWRfZG9udF9ieXBhc3NfY29tcG9zaXRvciAoKTsKKysJCXB1YmxpYyB2b2lk IHNldF9jb21wb3NpdG9yX3ByaXZhdGUgKEdMaWIuT2JqZWN0IHByaXYpOworKwkJcHVibGljIHZv aWQgc2V0X2RlbWFuZHNfYXR0ZW50aW9uICgpOworKwkJcHVibGljIHZvaWQgc2V0X2ljb25fZ2Vv bWV0cnkgKE1ldGEuUmVjdGFuZ2xlPyByZWN0KTsKKysJCXB1YmxpYyB2b2lkIHNoYWRlICh1aW50 MzIgdGltZXN0YW1wKTsKKysJCXB1YmxpYyB2b2lkIHNob3ZlX3RpdGxlYmFyX29uc2NyZWVuICgp OworKwkJcHVibGljIGJvb2wgc2hvd2luZ19vbl9pdHNfd29ya3NwYWNlICgpOworKwkJcHVibGlj IHZvaWQgc2h1dGRvd25fZ3JvdXAgKCk7CisrCQlwdWJsaWMgdm9pZCBzdGljayAoKTsKKysJCXB1 YmxpYyBib29sIHRpdGxlYmFyX2lzX29uc2NyZWVuICgpOworKwkJcHVibGljIHZvaWQgdW5tYWtl X2Fib3ZlICgpOworKwkJcHVibGljIHZvaWQgdW5tYWtlX2Z1bGxzY3JlZW4gKCk7CisrCQlwdWJs aWMgdm9pZCB1bm1heGltaXplIChNZXRhLk1heGltaXplRmxhZ3MgZGlyZWN0aW9ucyk7CisrCQlw dWJsaWMgdm9pZCB1bm1pbmltaXplICgpOworKwkJcHVibGljIHZvaWQgdW5zZXRfZGVtYW5kc19h dHRlbnRpb24gKCk7CisrCQlwdWJsaWMgdm9pZCB1bnNoYWRlICh1aW50MzIgdGltZXN0YW1wKTsK KysJCXB1YmxpYyB2b2lkIHVuc3RpY2sgKCk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1 YmxpYyBib29sIGFib3ZlIHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1Ymxp YyBib29sIGFwcGVhcnNfZm9jdXNlZCB7IGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisr CQlwdWJsaWMgYm9vbCBkZWNvcmF0ZWQgeyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQor KwkJcHVibGljIGJvb2wgZGVtYW5kc19hdHRlbnRpb24geyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29y TWV0aG9kXQorKwkJcHVibGljIGJvb2wgZnVsbHNjcmVlbiB7IGdldDsgfQorKwkJcHVibGljIHN0 cmluZyBndGtfYXBwX21lbnVfb2JqZWN0X3BhdGggeyBnZXQ7IH0KKysJCXB1YmxpYyBzdHJpbmcg Z3RrX2FwcGxpY2F0aW9uX2lkIHsgZ2V0OyB9CisrCQlwdWJsaWMgc3RyaW5nIGd0a19hcHBsaWNh dGlvbl9vYmplY3RfcGF0aCB7IGdldDsgfQorKwkJcHVibGljIHN0cmluZyBndGtfbWVudWJhcl9v YmplY3RfcGF0aCB7IGdldDsgfQorKwkJcHVibGljIHN0cmluZyBndGtfdW5pcXVlX2J1c19uYW1l IHsgZ2V0OyB9CisrCQlwdWJsaWMgc3RyaW5nIGd0a193aW5kb3dfb2JqZWN0X3BhdGggeyBnZXQ7 IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIHZvaWQqIGljb24geyBnZXQ7IH0K KysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wgbWF4aW1pemVkX2hvcml6b250 YWxseSB7IGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9vbCBtYXhp bWl6ZWRfdmVydGljYWxseSB7IGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJs aWMgdm9pZCogbWluaV9pY29uIHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1 YmxpYyBib29sIG1pbmltaXplZCB7IGdldDsgfQorKwkJcHVibGljIHN0cmluZyBtdXR0ZXJfaGlu dHMgeyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wgb25fYWxs X3dvcmtzcGFjZXMgeyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJv b2wgcmVzaXplYWJsZSB7IGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMg Ym9vbCBza2lwX3Rhc2tiYXIgeyBnZXQ7IH0KKysJCXB1YmxpYyBzdHJpbmcgdGl0bGUgeyBnZXQ7 IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wgdXJnZW50IHsgZ2V0OyB9 CisrCQlwdWJsaWMgdWludCB1c2VyX3RpbWUgeyBnZXQ7IH0KKysJCXB1YmxpYyBNZXRhLldpbmRv d1R5cGUgd2luZG93X3R5cGUgeyBnZXQ7IH0KKysJCXB1YmxpYyBzdHJpbmcgd21fY2xhc3MgeyBn ZXQ7IH0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCBwb3NpdGlvbl9jaGFuZ2VkICgpOworKwkJcHVi bGljIHNpZ25hbCB2b2lkIHJhaXNlZCAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBzaG93biAo KTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBzaXplX2NoYW5nZWQgKCk7CisrCQlwdWJsaWMgc2ln bmFsIHZvaWQgdW5tYW5hZ2VkICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHdvcmtzcGFjZV9j aGFuZ2VkICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEt d2luZG93LWFjdG9yLmgiLCB0eXBlX2lkID0gIm1ldGFfd2luZG93X2FjdG9yX2dldF90eXBlICgp IildCisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBXaW5kb3dBY3RvciA6IENsdXR0ZXIuQWN0b3Is IEF0ay5JbXBsZW1lbnRvciwgQ2x1dHRlci5BbmltYXRhYmxlLCBDbHV0dGVyLkNvbnRhaW5lciwg Q2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9 IGZhbHNlKV0KKysJCXByb3RlY3RlZCBXaW5kb3dBY3RvciAoKTsKKysJCXB1YmxpYyBDYWlyby5T dXJmYWNlPyBnZXRfaW1hZ2UgKENhaXJvLlJlY3RhbmdsZUludD8gY2xpcCk7CisrCQlwdWJsaWMg dW5vd25lZCBNZXRhLldpbmRvdyBnZXRfbWV0YV93aW5kb3cgKCk7CisrCQlwdWJsaWMgdW5vd25l ZCBNZXRhLlNoYXBlZFRleHR1cmUgZ2V0X3RleHR1cmUgKCk7CisrCQlwdWJsaWMgYm9vbCBpc19k ZXN0cm95ZWQgKCk7CisrCQlwdWJsaWMgdm9pZCBzeW5jX3Zpc2liaWxpdHkgKCk7CisrCQlwdWJs aWMgTWV0YS5XaW5kb3cgbWV0YV93aW5kb3cgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVibGlj IHNpZ25hbCB2b2lkIGRhbWFnZWQgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgZWZmZWN0c19j b21wbGV0ZWQgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgZmlyc3RfZnJhbWUgKCk7CisrCQlw dWJsaWMgc2lnbmFsIHZvaWQgdGhhd2VkICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJtZXRhL21ldGEtd2luZG93LWdyb3VwLmgiLCB0eXBlX2lkID0gIm1ldGFfd2luZG93 X2dyb3VwX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBXaW5kb3dHcm91cCA6IENsdXR0 ZXIuQWN0b3IsIEF0ay5JbXBsZW1lbnRvciwgQ2x1dHRlci5BbmltYXRhYmxlLCBDbHV0dGVyLkNv bnRhaW5lciwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9m dW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBXaW5kb3dHcm91cCAoKTsKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLXdpbmRvdy1zaGFwZS5oIiwgcmVm X2Z1bmN0aW9uID0gIm1ldGFfd2luZG93X3NoYXBlX3JlZiIsIHR5cGVfaWQgPSAibWV0YV93aW5k b3dfc2hhcGVfZ2V0X3R5cGUgKCkiLCB1bnJlZl9mdW5jdGlvbiA9ICJtZXRhX3dpbmRvd19zaGFw ZV91bnJlZiIpXQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIFdpbmRvd1NoYXBlIHsKKysJ CVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1YmxpYyBXaW5k b3dTaGFwZSAoQ2Fpcm8uUmVnaW9uIHJlZ2lvbik7CisrCQlwdWJsaWMgYm9vbCBlcXVhbCAoTWV0 YS5XaW5kb3dTaGFwZSBzaGFwZV9iKTsKKysJCXB1YmxpYyB2b2lkIGdldF9ib3JkZXJzIChpbnQg Ym9yZGVyX3RvcCwgaW50IGJvcmRlcl9yaWdodCwgaW50IGJvcmRlcl9ib3R0b20sIGludCBib3Jk ZXJfbGVmdCk7CisrCQlwdWJsaWMgdWludCBoYXNoICgpOworKwkJcHVibGljIE1ldGEuV2luZG93 U2hhcGUgQHJlZiAoKTsKKysJCXB1YmxpYyBDYWlyby5SZWdpb24gdG9fcmVnaW9uIChpbnQgY2Vu dGVyX3dpZHRoLCBpbnQgY2VudGVyX2hlaWdodCk7CisrCQlwdWJsaWMgdm9pZCB1bnJlZiAoKTsK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS93b3Jrc3BhY2UuaCIsIHR5 cGVfaWQgPSAibWV0YV93b3Jrc3BhY2VfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFdv cmtzcGFjZSA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlv biA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBXb3Jrc3BhY2UgKCk7CisrCQlwdWJsaWMgdm9pZCBh Y3RpdmF0ZSAodWludDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMgdm9pZCBhY3RpdmF0ZV93aXRo X2ZvY3VzIChNZXRhLldpbmRvdyBmb2N1c190aGlzLCB1aW50MzIgdGltZXN0YW1wKTsKKysJCXB1 YmxpYyB1bm93bmVkIE1ldGEuRGlzcGxheSBnZXRfZGlzcGxheSAoKTsKKysJCXB1YmxpYyB1bm93 bmVkIE1ldGEuV29ya3NwYWNlIGdldF9uZWlnaGJvciAoTWV0YS5Nb3Rpb25EaXJlY3Rpb24gZGly ZWN0aW9uKTsKKysJCXB1YmxpYyBNZXRhLlJlY3RhbmdsZSBnZXRfd29ya19hcmVhX2FsbF9tb25p dG9ycyAoKTsKKysJCXB1YmxpYyBNZXRhLlJlY3RhbmdsZSBnZXRfd29ya19hcmVhX2Zvcl9tb25p dG9yIChpbnQgd2hpY2hfbW9uaXRvcik7CisrCQlwdWJsaWMgaW50IGluZGV4ICgpOworKwkJcHVi bGljIEdMaWIuTGlzdDx3ZWFrIE1ldGEuV2luZG93PiBsaXN0X3dpbmRvd3MgKCk7CisrCQlwdWJs aWMgdm9pZCBzZXRfYnVpbHRpbl9zdHJ1dHMgKEdMaWIuU0xpc3Q8TWV0YS5TdHJ1dD8+IHN0cnV0 cyk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyB1aW50IG5fd2luZG93cyB7IGdl dDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgdWludCB3b3Jrc3BhY2VfaW5k ZXggeyBnZXQ7IH0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCB3aW5kb3dfYWRkZWQgKE1ldGEuV2lu ZG93IG9iamVjdCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgd2luZG93X3JlbW92ZWQgKE1ldGEu V2luZG93IG9iamVjdCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEv bWV0YS13b3Jrc3BhY2UtbWFuYWdlci5oIiwgdHlwZV9pZCA9ICJtZXRhX3dvcmtzcGFjZV9tYW5h Z2VyX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBXb3Jrc3BhY2VNYW5hZ2VyIDogR0xp Yi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQor KwkJcHJvdGVjdGVkIFdvcmtzcGFjZU1hbmFnZXIgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRh LldvcmtzcGFjZSBhcHBlbmRfbmV3X3dvcmtzcGFjZSAoYm9vbCBhY3RpdmF0ZSwgdWludDMyIHRp bWVzdGFtcCk7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLldvcmtzcGFjZSBnZXRfYWN0aXZlX3dv cmtzcGFjZSAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0X2FjdGl2ZV93b3Jrc3BhY2VfaW5kZXggKCk7 CisrCQlwdWJsaWMgaW50IGdldF9uX3dvcmtzcGFjZXMgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBN ZXRhLldvcmtzcGFjZT8gZ2V0X3dvcmtzcGFjZV9ieV9pbmRleCAoaW50IGluZGV4KTsKKysJCXB1 YmxpYyB2b2lkIG92ZXJyaWRlX3dvcmtzcGFjZV9sYXlvdXQgKE1ldGEuRGlzcGxheUNvcm5lciBz dGFydGluZ19jb3JuZXIsIGJvb2wgdmVydGljYWxfbGF5b3V0LCBpbnQgbl9yb3dzLCBpbnQgbl9j b2x1bW5zKTsKKysJCXB1YmxpYyB2b2lkIHJlbW92ZV93b3Jrc3BhY2UgKE1ldGEuV29ya3NwYWNl IHdvcmtzcGFjZSwgdWludDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMgdm9pZCByZW9yZGVyX3dv cmtzcGFjZSAoTWV0YS5Xb3Jrc3BhY2Ugd29ya3NwYWNlLCBpbnQgbmV3X2luZGV4KTsKKysJCVtO b0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGludCBsYXlvdXRfY29sdW1ucyB7IGdldDsgfQor KwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgaW50IGxheW91dF9yb3dzIHsgZ2V0OyB9 CisrCQlwdWJsaWMgaW50IG5fd29ya3NwYWNlcyB7IGdldDsgfQorKwkJcHVibGljIHNpZ25hbCB2 b2lkIGFjdGl2ZV93b3Jrc3BhY2VfY2hhbmdlZCAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBz aG93aW5nX2Rlc2t0b3BfY2hhbmdlZCAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCB3b3Jrc3Bh Y2VfYWRkZWQgKGludCBvYmplY3QpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHdvcmtzcGFjZV9y ZW1vdmVkIChpbnQgb2JqZWN0KTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCB3b3Jrc3BhY2Vfc3dp dGNoZWQgKGludCBvYmplY3QsIGludCBwMCwgTWV0YS5Nb3Rpb25EaXJlY3Rpb24gcDEpOworKwkJ cHVibGljIHNpZ25hbCB2b2lkIHdvcmtzcGFjZXNfcmVvcmRlcmVkICgpOworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEteDExLWRpc3BsYXkuaCIsIHR5cGVfaWQg PSAibWV0YV94MTFfZGlzcGxheV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgWDExRGlz cGxheSA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9 IGZhbHNlKV0KKysJCXByb3RlY3RlZCBYMTFEaXNwbGF5ICgpOworKwkJcHVibGljIHZvaWQgY2xl YXJfc3RhZ2VfaW5wdXRfcmVnaW9uICgpOworKwkJcHVibGljIGludCBnZXRfZGFtYWdlX2V2ZW50 X2Jhc2UgKCk7CisrCQlwdWJsaWMgaW50IGdldF9zY3JlZW5fbnVtYmVyICgpOworKwkJcHVibGlj IGludCBnZXRfc2hhcGVfZXZlbnRfYmFzZSAoKTsKKysJCXB1YmxpYyBib29sIGhhc19zaGFwZSAo KTsKKysJCXB1YmxpYyB2b2lkIHNldF9jbV9zZWxlY3Rpb24gKCk7CisrCQlwdWJsaWMgdm9pZCBz ZXRfc3RhZ2VfaW5wdXRfcmVnaW9uIChYLlhzZXJ2ZXJSZWdpb24gcmVnaW9uKTsKKysJCXB1Ymxp YyBib29sIHh3aW5kb3dfaXNfYV9ub19mb2N1c193aW5kb3cgKFguV2luZG93IHh3aW5kb3cpOwor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtY2xvc2UtZGlhbG9n LmgiLCB0eXBlX2NuYW1lID0gIk1ldGFDbG9zZURpYWxvZ0ludGVyZmFjZSIsIHR5cGVfaWQgPSAi bWV0YV9jbG9zZV9kaWFsb2dfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGludGVyZmFjZSBDbG9z ZURpYWxvZyA6IEdMaWIuT2JqZWN0IHsKKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lkIGZvY3VzICgp OworKwkJcHVibGljIGFic3RyYWN0IHZvaWQgaGlkZSAoKTsKKysJCXB1YmxpYyBib29sIGlzX3Zp c2libGUgKCk7CisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBzaG93ICgpOworKwkJW05vQWNjZXNz b3JNZXRob2RdCisrCQlwdWJsaWMgYWJzdHJhY3QgTWV0YS5XaW5kb3cgd2luZG93IHsgb3duZWQg Z2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtIYXNFbWl0dGVyXQorKwkJcHVibGljIHNpZ25hbCB2b2lk IHJlc3BvbnNlIChNZXRhLkNsb3NlRGlhbG9nUmVzcG9uc2UgcmVzcG9uc2UpOworKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtaW5oaWJpdC1zaG9ydGN1dHMtZGlh bG9nLmgiLCB0eXBlX2NuYW1lID0gIk1ldGFJbmhpYml0U2hvcnRjdXRzRGlhbG9nSW50ZXJmYWNl IiwgdHlwZV9pZCA9ICJtZXRhX2luaGliaXRfc2hvcnRjdXRzX2RpYWxvZ19nZXRfdHlwZSAoKSIp XQorKwlwdWJsaWMgaW50ZXJmYWNlIEluaGliaXRTaG9ydGN1dHNEaWFsb2cgOiBHTGliLk9iamVj dCB7CisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBoaWRlICgpOworKwkJcHVibGljIGFic3RyYWN0 IHZvaWQgc2hvdyAoKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGFic3RyYWN0 IE1ldGEuV2luZG93IHdpbmRvdyB7IG93bmVkIGdldDsgY29uc3RydWN0OyB9CisrCQlbSGFzRW1p dHRlcl0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCByZXNwb25zZSAoTWV0YS5JbmhpYml0U2hvcnRj dXRzRGlhbG9nUmVzcG9uc2UgcmVzcG9uc2UpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJtZXRhL21haW4uaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgc3Ry dWN0IEJ1dHRvbkxheW91dCB7CisrCQlbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0KKysJ CXB1YmxpYyB3ZWFrIE1ldGEuQnV0dG9uRnVuY3Rpb24gbGVmdF9idXR0b25zWzRdOworKwkJW0ND b2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldCisrCQlwdWJsaWMgd2VhayBib29sIGxlZnRfYnV0 dG9uc19oYXNfc3BhY2VyWzRdOworKwkJW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldCisr CQlwdWJsaWMgd2VhayBNZXRhLkJ1dHRvbkZ1bmN0aW9uIHJpZ2h0X2J1dHRvbnNbNF07CisrCQlb Q0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0KKysJCXB1YmxpYyB3ZWFrIGJvb2wgcmlnaHRf YnV0dG9uc19oYXNfc3BhY2VyWzRdOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJtZXRhL21haW4uaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgc3RydWN0IEVk Z2UgeworKwkJcHVibGljIE1ldGEuUmVjdGFuZ2xlIHJlY3Q7CisrCQlwdWJsaWMgTWV0YS5TaWRl IHNpZGVfdHlwZTsKKysJCXB1YmxpYyBNZXRhLkVkZ2VUeXBlIGVkZ2VfdHlwZTsKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBoYXNfdHlwZV9pZCA9IGZh bHNlKV0KKysJcHVibGljIHN0cnVjdCBGcmFtZUJvcmRlcnMgeworKwkJcHVibGljIEd0ay5Cb3Jk ZXIgdmlzaWJsZTsKKysJCXB1YmxpYyBHdGsuQm9yZGVyIGludmlzaWJsZTsKKysJCXB1YmxpYyBH dGsuQm9yZGVyIHRvdGFsOworKwkJcHVibGljIHZvaWQgY2xlYXIgKCk7CisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1wbHVnaW4uaCIsIGhhc190eXBlX2lkID0g ZmFsc2UpXQorKwlwdWJsaWMgc3RydWN0IFBsdWdpbkluZm8geworKwkJcHVibGljIHdlYWsgc3Ry aW5nIG5hbWU7CisrCQlwdWJsaWMgd2VhayBzdHJpbmcgdmVyc2lvbjsKKysJCXB1YmxpYyB3ZWFr IHN0cmluZyBhdXRob3I7CisrCQlwdWJsaWMgd2VhayBzdHJpbmcgbGljZW5zZTsKKysJCXB1Ymxp YyB3ZWFrIHN0cmluZyBkZXNjcmlwdGlvbjsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAibWV0YS9tYWluLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIHN0cnVj dCBQbHVnaW5WZXJzaW9uIHsKKysJCXB1YmxpYyB1aW50IHZlcnNpb25fbWFqb3I7CisrCQlwdWJs aWMgdWludCB2ZXJzaW9uX21pbm9yOworKwkJcHVibGljIHVpbnQgdmVyc2lvbl9taWNybzsKKysJ CXB1YmxpYyB1aW50IHZlcnNpb25fYXBpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJtZXRhL21haW4uaCIsIGNvcHlfZnVuY3Rpb24gPSAiZ19ib3hlZF9jb3B5IiwgZnJlZV9m dW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0eXBlX2lkID0gIm1ldGFfcmVjdGFuZ2xlX2dldF90 eXBlICgpIildCisrCXB1YmxpYyBzdHJ1Y3QgUmVjdGFuZ2xlIHsKKysJCXB1YmxpYyBpbnQgeDsK KysJCXB1YmxpYyBpbnQgeTsKKysJCXB1YmxpYyBpbnQgd2lkdGg7CisrCQlwdWJsaWMgaW50IGhl aWdodDsKKysJCXB1YmxpYyBpbnQgYXJlYSAoKTsKKysJCXB1YmxpYyBib29sIGNvbnRhaW5zX3Jl Y3QgKE1ldGEuUmVjdGFuZ2xlIGlubmVyX3JlY3QpOworKwkJcHVibGljIE1ldGEuUmVjdGFuZ2xl PyBjb3B5ICgpOworKwkJcHVibGljIGJvb2wgY291bGRfZml0X3JlY3QgKE1ldGEuUmVjdGFuZ2xl IGlubmVyX3JlY3QpOworKwkJcHVibGljIGJvb2wgZXF1YWwgKE1ldGEuUmVjdGFuZ2xlIHNyYzIp OworKwkJcHVibGljIHZvaWQgZnJlZSAoKTsKKysJCXB1YmxpYyBib29sIGhvcml6X292ZXJsYXAg KE1ldGEuUmVjdGFuZ2xlIHJlY3QyKTsKKysJCXB1YmxpYyBib29sIGludGVyc2VjdCAoTWV0YS5S ZWN0YW5nbGUgc3JjMiwgb3V0IE1ldGEuUmVjdGFuZ2xlIGRlc3QpOworKwkJcHVibGljIGJvb2wg b3ZlcmxhcCAoTWV0YS5SZWN0YW5nbGUgcmVjdDIpOworKwkJcHVibGljIE1ldGEuUmVjdGFuZ2xl IHVuaW9uIChNZXRhLlJlY3RhbmdsZSByZWN0Mik7CisrCQlwdWJsaWMgYm9vbCB2ZXJ0X292ZXJs YXAgKE1ldGEuUmVjdGFuZ2xlIHJlY3QyKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAibWV0YS9tYWluLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIHN0cnVj dCBTaGFkb3dQYXJhbXMgeworKwkJcHVibGljIGludCByYWRpdXM7CisrCQlwdWJsaWMgaW50IHRv cF9mYWRlOworKwkJcHVibGljIGludCB4X29mZnNldDsKKysJCXB1YmxpYyBpbnQgeV9vZmZzZXQ7 CisrCQlwdWJsaWMgdWludDggb3BhY2l0eTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAibWV0YS9tYWluLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIHN0cnVj dCBTdHJ1dCB7CisrCQlwdWJsaWMgTWV0YS5SZWN0YW5nbGUgcmVjdDsKKysJCXB1YmxpYyBNZXRh LlNpZGUgc2lkZTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWlu LmgiLCBjcHJlZml4ID0gIk1FVEFfQkFSUklFUl9ESVJFQ1RJT05fIiwgdHlwZV9pZCA9ICJtZXRh X2JhcnJpZXJfZGlyZWN0aW9uX2dldF90eXBlICgpIildCisrCVtGbGFnc10KKysJcHVibGljIGVu dW0gQmFycmllckRpcmVjdGlvbiB7CisrCQlQT1NJVElWRV9YLAorKwkJUE9TSVRJVkVfWSwKKysJ CU5FR0FUSVZFX1gsCisrCQlORUdBVElWRV9ZCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX0JVVFRPTl9GVU5DVElPTl8iLCB0 eXBlX2lkID0gIm1ldGFfYnV0dG9uX2Z1bmN0aW9uX2dldF90eXBlICgpIildCisrCXB1YmxpYyBl bnVtIEJ1dHRvbkZ1bmN0aW9uIHsKKysJCU1FTlUsCisrCQlNSU5JTUlaRSwKKysJCU1BWElNSVpF LAorKwkJQ0xPU0UsCisrCQlMQVNUCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g Im1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX0NMT1NFX0RJQUxPR19SRVNQT05TRV8iLCB0 eXBlX2lkID0gIm1ldGFfY2xvc2VfZGlhbG9nX3Jlc3BvbnNlX2dldF90eXBlICgpIildCisrCXB1 YmxpYyBlbnVtIENsb3NlRGlhbG9nUmVzcG9uc2UgeworKwkJV0FJVCwKKysJCUZPUkNFX0NMT1NF CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZp eCA9ICJNRVRBX0NPTVBfRUZGRUNUXyIsIHR5cGVfaWQgPSAibWV0YV9jb21wX2VmZmVjdF9nZXRf dHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBDb21wRWZmZWN0IHsKKysJCUNSRUFURSwKKysJCVVO TUlOSU1JWkUsCisrCQlERVNUUk9ZLAorKwkJTUlOSU1JWkUsCisrCQlOT05FCisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX0NV UlNPUl8iLCB0eXBlX2lkID0gIm1ldGFfY3Vyc29yX2dldF90eXBlICgpIildCisrCXB1YmxpYyBl bnVtIEN1cnNvciB7CisrCQlOT05FLAorKwkJREVGQVVMVCwKKysJCU5PUlRIX1JFU0laRSwKKysJ CVNPVVRIX1JFU0laRSwKKysJCVdFU1RfUkVTSVpFLAorKwkJRUFTVF9SRVNJWkUsCisrCQlTRV9S RVNJWkUsCisrCQlTV19SRVNJWkUsCisrCQlORV9SRVNJWkUsCisrCQlOV19SRVNJWkUsCisrCQlN T1ZFX09SX1JFU0laRV9XSU5ET1csCisrCQlCVVNZLAorKwkJRE5EX0lOX0RSQUcsCisrCQlETkRf TU9WRSwKKysJCURORF9DT1BZLAorKwkJRE5EX1VOU1VQUE9SVEVEX1RBUkdFVCwKKysJCVBPSU5U SU5HX0hBTkQsCisrCQlDUk9TU0hBSVIsCisrCQlJQkVBTSwKKysJCUxBU1QKKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfREVC VUdfIiwgdHlwZV9pZCA9ICJtZXRhX2RlYnVnX3RvcGljX2dldF90eXBlICgpIildCisrCVtGbGFn c10KKysJcHVibGljIGVudW0gRGVidWdUb3BpYyB7CisrCQlWRVJCT1NFLAorKwkJRk9DVVMsCisr CQlXT1JLQVJFQSwKKysJCVNUQUNLLAorKwkJVEhFTUVTLAorKwkJU00sCisrCQlFVkVOVFMsCisr CQlXSU5ET1dfU1RBVEUsCisrCQlXSU5ET1dfT1BTLAorKwkJR0VPTUVUUlksCisrCQlQTEFDRU1F TlQsCisrCQlQSU5HLAorKwkJWElORVJBTUEsCisrCQlLRVlCSU5ESU5HUywKKysJCVNZTkMsCisr CQlFUlJPUlMsCisrCQlTVEFSVFVQLAorKwkJUFJFRlMsCisrCQlHUk9VUFMsCisrCQlSRVNJWklO RywKKysJCVNIQVBFUywKKysJCUNPTVBPU0lUT1IsCisrCQlFREdFX1JFU0lTVEFOQ0UsCisrCQlE QlVTCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3By ZWZpeCA9ICJNRVRBX0RJUkVDVElPTl8iLCB0eXBlX2lkID0gIm1ldGFfZGlyZWN0aW9uX2dldF90 eXBlICgpIildCisrCVtGbGFnc10KKysJcHVibGljIGVudW0gRGlyZWN0aW9uIHsKKysJCUxFRlQs CisrCQlSSUdIVCwKKysJCVRPUCwKKysJCUJPVFRPTSwKKysJCVVQLAorKwkJRE9XTiwKKysJCUhP UklaT05UQUwsCisrCQlWRVJUSUNBTAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9ESVNQTEFZXyIsIHR5cGVfaWQgPSAibWV0 YV9kaXNwbGF5X2Nvcm5lcl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBEaXNwbGF5Q29y bmVyIHsKKysJCVRPUExFRlQsCisrCQlUT1BSSUdIVCwKKysJCUJPVFRPTUxFRlQsCisrCQlCT1RU T01SSUdIVAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIs IGNwcmVmaXggPSAiTUVUQV9ESVNQTEFZXyIsIHR5cGVfaWQgPSAibWV0YV9kaXNwbGF5X2RpcmVj dGlvbl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBEaXNwbGF5RGlyZWN0aW9uIHsKKysJ CVVQLAorKwkJRE9XTiwKKysJCUxFRlQsCisrCQlSSUdIVAorKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9FREdFXyIsIHR5cGVf aWQgPSAibWV0YV9lZGdlX3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gRWRnZVR5 cGUgeworKwkJV0lORE9XLAorKwkJTU9OSVRPUiwKKysJCVNDUkVFTgorKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9FWElUXyIs IHR5cGVfaWQgPSAibWV0YV9leGl0X2NvZGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0g RXhpdENvZGUgeworKwkJU1VDQ0VTUywKKysJCUVSUk9SCisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX0ZSQU1FXyIsIHR5cGVf aWQgPSAibWV0YV9mcmFtZV9mbGFnc19nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCXB1Ymxp YyBlbnVtIEZyYW1lRmxhZ3MgeworKwkJQUxMT1dTX0RFTEVURSwKKysJCUFMTE9XU19NRU5VLAor KwkJQUxMT1dTX01JTklNSVpFLAorKwkJQUxMT1dTX01BWElNSVpFLAorKwkJQUxMT1dTX1ZFUlRJ Q0FMX1JFU0laRSwKKysJCUFMTE9XU19IT1JJWk9OVEFMX1JFU0laRSwKKysJCUhBU19GT0NVUywK KysJCVNIQURFRCwKKysJCVNUVUNLLAorKwkJTUFYSU1JWkVELAorKwkJQUxMT1dTX1NIQURFLAor KwkJQUxMT1dTX01PVkUsCisrCQlGVUxMU0NSRUVOLAorKwkJQUJPVkUsCisrCQlUSUxFRF9MRUZU LAorKwkJVElMRURfUklHSFQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0 YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfRlJBTUVfVFlQRV8iLCB0eXBlX2lkID0gIm1ldGFf ZnJhbWVfdHlwZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBGcmFtZVR5cGUgeworKwkJ Tk9STUFMLAorKwkJRElBTE9HLAorKwkJTU9EQUxfRElBTE9HLAorKwkJVVRJTElUWSwKKysJCU1F TlUsCisrCQlCT1JERVIsCisrCQlBVFRBQ0hFRCwKKysJCUxBU1Q7CisrCQlwdWJsaWMgdW5vd25l ZCBzdHJpbmcgdG9fc3RyaW5nICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9HUkFCX09QXyIsIHR5cGVfaWQgPSAibWV0 YV9ncmFiX29wX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIEdyYWJPcCB7CisrCQlOT05F LAorKwkJV0lORE9XX0JBU0UsCisrCQlDT01QT1NJVE9SLAorKwkJV0FZTEFORF9QT1BVUCwKKysJ CUZSQU1FX0JVVFRPTiwKKysJCU1PVklORywKKysJCVJFU0laSU5HX05XLAorKwkJUkVTSVpJTkdf TiwKKysJCVJFU0laSU5HX05FLAorKwkJUkVTSVpJTkdfRSwKKysJCVJFU0laSU5HX1NXLAorKwkJ UkVTSVpJTkdfUywKKysJCVJFU0laSU5HX1NFLAorKwkJUkVTSVpJTkdfVywKKysJCUtFWUJPQVJE X01PVklORywKKysJCUtFWUJPQVJEX1JFU0laSU5HX1VOS05PV04sCisrCQlLRVlCT0FSRF9SRVNJ WklOR19OVywKKysJCUtFWUJPQVJEX1JFU0laSU5HX04sCisrCQlLRVlCT0FSRF9SRVNJWklOR19O RSwKKysJCUtFWUJPQVJEX1JFU0laSU5HX0UsCisrCQlLRVlCT0FSRF9SRVNJWklOR19TVywKKysJ CUtFWUJPQVJEX1JFU0laSU5HX1MsCisrCQlLRVlCT0FSRF9SRVNJWklOR19TRSwKKysJCUtFWUJP QVJEX1JFU0laSU5HX1cKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9t YWluLmgiLCBjcHJlZml4ID0gIk1FVEFfSU5ISUJJVF9TSE9SVENVVFNfRElBTE9HX1JFU1BPTlNF XyIsIHR5cGVfaWQgPSAibWV0YV9pbmhpYml0X3Nob3J0Y3V0c19kaWFsb2dfcmVzcG9uc2VfZ2V0 X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gSW5oaWJpdFNob3J0Y3V0c0RpYWxvZ1Jlc3BvbnNl IHsKKysJCUFMTE9XLAorKwkJREVOWQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9LRVlCSU5ESU5HX0FDVElPTl8iLCB0eXBl X2lkID0gIm1ldGFfa2V5X2JpbmRpbmdfYWN0aW9uX2dldF90eXBlICgpIildCisrCXB1YmxpYyBl bnVtIEtleUJpbmRpbmdBY3Rpb24geworKwkJTk9ORSwKKysJCVdPUktTUEFDRV8xLAorKwkJV09S S1NQQUNFXzIsCisrCQlXT1JLU1BBQ0VfMywKKysJCVdPUktTUEFDRV80LAorKwkJV09SS1NQQUNF XzUsCisrCQlXT1JLU1BBQ0VfNiwKKysJCVdPUktTUEFDRV83LAorKwkJV09SS1NQQUNFXzgsCisr CQlXT1JLU1BBQ0VfOSwKKysJCVdPUktTUEFDRV8xMCwKKysJCVdPUktTUEFDRV8xMSwKKysJCVdP UktTUEFDRV8xMiwKKysJCVdPUktTUEFDRV9MRUZULAorKwkJV09SS1NQQUNFX1JJR0hULAorKwkJ V09SS1NQQUNFX1VQLAorKwkJV09SS1NQQUNFX0RPV04sCisrCQlXT1JLU1BBQ0VfTEFTVCwKKysJ CVNXSVRDSF9BUFBMSUNBVElPTlMsCisrCQlTV0lUQ0hfQVBQTElDQVRJT05TX0JBQ0tXQVJELAor KwkJU1dJVENIX0dST1VQLAorKwkJU1dJVENIX0dST1VQX0JBQ0tXQVJELAorKwkJU1dJVENIX1dJ TkRPV1MsCisrCQlTV0lUQ0hfV0lORE9XU19CQUNLV0FSRCwKKysJCVNXSVRDSF9QQU5FTFMsCisr CQlTV0lUQ0hfUEFORUxTX0JBQ0tXQVJELAorKwkJQ1lDTEVfR1JPVVAsCisrCQlDWUNMRV9HUk9V UF9CQUNLV0FSRCwKKysJCUNZQ0xFX1dJTkRPV1MsCisrCQlDWUNMRV9XSU5ET1dTX0JBQ0tXQVJE LAorKwkJQ1lDTEVfUEFORUxTLAorKwkJQ1lDTEVfUEFORUxTX0JBQ0tXQVJELAorKwkJU0hPV19E RVNLVE9QLAorKwkJUEFORUxfTUFJTl9NRU5VLAorKwkJUEFORUxfUlVOX0RJQUxPRywKKysJCVRP R0dMRV9SRUNPUkRJTkcsCisrCQlTRVRfU1BFV19NQVJLLAorKwkJQUNUSVZBVEVfV0lORE9XX01F TlUsCisrCQlUT0dHTEVfRlVMTFNDUkVFTiwKKysJCVRPR0dMRV9NQVhJTUlaRUQsCisrCQlUT0dH TEVfVElMRURfTEVGVCwKKysJCVRPR0dMRV9USUxFRF9SSUdIVCwKKysJCVRPR0dMRV9BQk9WRSwK KysJCU1BWElNSVpFLAorKwkJVU5NQVhJTUlaRSwKKysJCVRPR0dMRV9TSEFERUQsCisrCQlNSU5J TUlaRSwKKysJCUNMT1NFLAorKwkJQkVHSU5fTU9WRSwKKysJCUJFR0lOX1JFU0laRSwKKysJCVRP R0dMRV9PTl9BTExfV09SS1NQQUNFUywKKysJCU1PVkVfVE9fV09SS1NQQUNFXzEsCisrCQlNT1ZF X1RPX1dPUktTUEFDRV8yLAorKwkJTU9WRV9UT19XT1JLU1BBQ0VfMywKKysJCU1PVkVfVE9fV09S S1NQQUNFXzQsCisrCQlNT1ZFX1RPX1dPUktTUEFDRV81LAorKwkJTU9WRV9UT19XT1JLU1BBQ0Vf NiwKKysJCU1PVkVfVE9fV09SS1NQQUNFXzcsCisrCQlNT1ZFX1RPX1dPUktTUEFDRV84LAorKwkJ TU9WRV9UT19XT1JLU1BBQ0VfOSwKKysJCU1PVkVfVE9fV09SS1NQQUNFXzEwLAorKwkJTU9WRV9U T19XT1JLU1BBQ0VfMTEsCisrCQlNT1ZFX1RPX1dPUktTUEFDRV8xMiwKKysJCU1PVkVfVE9fV09S S1NQQUNFX0xFRlQsCisrCQlNT1ZFX1RPX1dPUktTUEFDRV9SSUdIVCwKKysJCU1PVkVfVE9fV09S S1NQQUNFX1VQLAorKwkJTU9WRV9UT19XT1JLU1BBQ0VfRE9XTiwKKysJCU1PVkVfVE9fV09SS1NQ QUNFX0xBU1QsCisrCQlNT1ZFX1RPX01PTklUT1JfTEVGVCwKKysJCU1PVkVfVE9fTU9OSVRPUl9S SUdIVCwKKysJCU1PVkVfVE9fTU9OSVRPUl9VUCwKKysJCU1PVkVfVE9fTU9OSVRPUl9ET1dOLAor KwkJUkFJU0VfT1JfTE9XRVIsCisrCQlSQUlTRSwKKysJCUxPV0VSLAorKwkJTUFYSU1JWkVfVkVS VElDQUxMWSwKKysJCU1BWElNSVpFX0hPUklaT05UQUxMWSwKKysJCU1PVkVfVE9fQ09STkVSX05X LAorKwkJTU9WRV9UT19DT1JORVJfTkUsCisrCQlNT1ZFX1RPX0NPUk5FUl9TVywKKysJCU1PVkVf VE9fQ09STkVSX1NFLAorKwkJTU9WRV9UT19TSURFX04sCisrCQlNT1ZFX1RPX1NJREVfUywKKysJ CU1PVkVfVE9fU0lERV9FLAorKwkJTU9WRV9UT19TSURFX1csCisrCQlNT1ZFX1RPX0NFTlRFUiwK KysJCU9WRVJMQVlfS0VZLAorKwkJTE9DQVRFX1BPSU5URVJfS0VZLAorKwkJSVNPX05FWFRfR1JP VVAsCisrCQlBTFdBWVNfT05fVE9QLAorKwkJU1dJVENIX01PTklUT1IsCisrCQlST1RBVEVfTU9O SVRPUiwKKysJCUxBU1QKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9t YWluLmgiLCBjcHJlZml4ID0gIk1FVEFfS0VZX0JJTkRJTkdfIiwgdHlwZV9pZCA9ICJtZXRhX2tl eV9iaW5kaW5nX2ZsYWdzX2dldF90eXBlICgpIildCisrCVtGbGFnc10KKysJcHVibGljIGVudW0g S2V5QmluZGluZ0ZsYWdzIHsKKysJCU5PTkUsCisrCQlQRVJfV0lORE9XLAorKwkJQlVJTFRJTiwK KysJCUlTX1JFVkVSU0VELAorKwkJTk9OX01BU0tBQkxFLAorKwkJSUdOT1JFX0FVVE9SRVBFQVQs CisrCQlOT19BVVRPX0dSQUIKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0 YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfTEFURVJfIiwgdHlwZV9pZCA9ICJtZXRhX2xhdGVy X3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gTGF0ZXJUeXBlIHsKKysJCVJFU0la RSwKKysJCUNBTENfU0hPV0lORywKKysJCUNIRUNLX0ZVTExTQ1JFRU4sCisrCQlTWU5DX1NUQUNL LAorKwkJQkVGT1JFX1JFRFJBVywKKysJCUlETEUKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfTE9DQUxFX0RJUkVDVElPTl8i LCB0eXBlX2lkID0gIm1ldGFfbG9jYWxlX2RpcmVjdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlwdWJs aWMgZW51bSBMb2NhbGVEaXJlY3Rpb24geworKwkJTFRSLAorKwkJUlRMCisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX01BWElN SVpFXyIsIHR5cGVfaWQgPSAibWV0YV9tYXhpbWl6ZV9mbGFnc19nZXRfdHlwZSAoKSIpXQorKwlb RmxhZ3NdCisrCXB1YmxpYyBlbnVtIE1heGltaXplRmxhZ3MgeworKwkJSE9SSVpPTlRBTCwKKysJ CVZFUlRJQ0FMLAorKwkJQk9USAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJt ZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9NT0RBTF8iLCB0eXBlX2lkID0gIm1ldGFfbW9k YWxfb3B0aW9uc19nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCXB1YmxpYyBlbnVtIE1vZGFs T3B0aW9ucyB7CisrCQlQT0lOVEVSX0FMUkVBRFlfR1JBQkJFRCwKKysJCUtFWUJPQVJEX0FMUkVB RFlfR1JBQkJFRAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4u aCIsIGNwcmVmaXggPSAiTUVUQV9NT05JVE9SX1NXSVRDSF9DT05GSUdfIiwgdHlwZV9pZCA9ICJt ZXRhX21vbml0b3Jfc3dpdGNoX2NvbmZpZ190eXBlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBl bnVtIE1vbml0b3JTd2l0Y2hDb25maWdUeXBlIHsKKysJCUFMTF9NSVJST1IsCisrCQlBTExfTElO RUFSLAorKwkJRVhURVJOQUwsCisrCQlCVUlMVElOLAorKwkJVU5LTk9XTgorKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9NT1RJ T05fIiwgdHlwZV9pZCA9ICJtZXRhX21vdGlvbl9kaXJlY3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJ cHVibGljIGVudW0gTW90aW9uRGlyZWN0aW9uIHsKKysJCVVQLAorKwkJRE9XTiwKKysJCUxFRlQs CisrCQlSSUdIVCwKKysJCVVQX0xFRlQsCisrCQlVUF9SSUdIVCwKKysJCURPV05fTEVGVCwKKysJ CURPV05fUklHSFQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWlu LmgiLCBjcHJlZml4ID0gIk1FVEFfUEFEX0FDVElPTl8iLCB0eXBlX2lkID0gIm1ldGFfcGFkX2Fj dGlvbl90eXBlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIFBhZEFjdGlvblR5cGUgewor KwkJQlVUVE9OLAorKwkJUklORywKKysJCVNUUklQCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNwcmVmaXggPSAiTUVUQV9QUkVGXyIsIHR5cGVfaWQg PSAibWV0YV9wcmVmZXJlbmNlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIFByZWZlcmVu Y2UgeworKwkJTU9VU0VfQlVUVE9OX01PRFMsCisrCQlGT0NVU19NT0RFLAorKwkJRk9DVVNfTkVX X1dJTkRPV1MsCisrCQlBVFRBQ0hfTU9EQUxfRElBTE9HUywKKysJCVJBSVNFX09OX0NMSUNLLAor KwkJQUNUSU9OX0RPVUJMRV9DTElDS19USVRMRUJBUiwKKysJCUFDVElPTl9NSURETEVfQ0xJQ0tf VElUTEVCQVIsCisrCQlBQ1RJT05fUklHSFRfQ0xJQ0tfVElUTEVCQVIsCisrCQlBVVRPX1JBSVNF LAorKwkJQVVUT19SQUlTRV9ERUxBWSwKKysJCUZPQ1VTX0NIQU5HRV9PTl9QT0lOVEVSX1JFU1Qs CisrCQlUSVRMRUJBUl9GT05ULAorKwkJTlVNX1dPUktTUEFDRVMsCisrCQlEWU5BTUlDX1dPUktT UEFDRVMsCisrCQlLRVlCSU5ESU5HUywKKysJCURJU0FCTEVfV09SS0FST1VORFMsCisrCQlCVVRU T05fTEFZT1VULAorKwkJV09SS1NQQUNFX05BTUVTLAorKwkJVklTVUFMX0JFTEwsCisrCQlBVURJ QkxFX0JFTEwsCisrCQlWSVNVQUxfQkVMTF9UWVBFLAorKwkJR05PTUVfQUNDRVNTSUJJTElUWSwK KysJCUdOT01FX0FOSU1BVElPTlMsCisrCQlDVVJTT1JfVEhFTUUsCisrCQlDVVJTT1JfU0laRSwK KysJCVJFU0laRV9XSVRIX1JJR0hUX0JVVFRPTiwKKysJCUVER0VfVElMSU5HLAorKwkJRk9SQ0Vf RlVMTFNDUkVFTiwKKysJCVdPUktTUEFDRVNfT05MWV9PTl9QUklNQVJZLAorKwkJRFJBR0dBQkxF X0JPUkRFUl9XSURUSCwKKysJCUFVVE9fTUFYSU1JWkUsCisrCQlDRU5URVJfTkVXX1dJTkRPV1Ms CisrCQlEUkFHX1RIUkVTSE9MRCwKKysJCUxPQ0FURV9QT0lOVEVSOworKwkJcHVibGljIHVub3du ZWQgc3RyaW5nIHRvX3N0cmluZyAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfIiwgdHlwZV9pZCA9ICJtZXRhX3NlbGVj dGlvbl90eXBlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIFNlbGVjdGlvblR5cGUgewor KwkJU0VMRUNUSU9OX1BSSU1BUlksCisrCQlTRUxFQ1RJT05fQ0xJUEJPQVJELAorKwkJU0VMRUNU SU9OX0RORCwKKysJCU5fU0VMRUNUSU9OX1RZUEVTCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX1NIQURPV19NT0RFXyIsIHR5 cGVfaWQgPSAibWV0YV9zaGFkb3dfbW9kZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBT aGFkb3dNb2RlIHsKKysJCUFVVE8sCisrCQlGT1JDRURfT0ZGLAorKwkJRk9SQ0VEX09OCisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJN RVRBX1NJREVfIiwgdHlwZV9pZCA9ICJtZXRhX3NpZGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGlj IGVudW0gU2lkZSB7CisrCQlMRUZULAorKwkJUklHSFQsCisrCQlUT1AsCisrCQlCT1RUT00KKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0g Ik1FVEFfU0laRV9DSEFOR0VfIiwgdHlwZV9pZCA9ICJtZXRhX3NpemVfY2hhbmdlX2dldF90eXBl ICgpIildCisrCXB1YmxpYyBlbnVtIFNpemVDaGFuZ2UgeworKwkJTUFYSU1JWkUsCisrCQlVTk1B WElNSVpFLAorKwkJRlVMTFNDUkVFTiwKKysJCVVORlVMTFNDUkVFTgorKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9MQVlFUl8i LCB0eXBlX2lkID0gIm1ldGFfc3RhY2tfbGF5ZXJfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVu dW0gU3RhY2tMYXllciB7CisrCQlERVNLVE9QLAorKwkJQk9UVE9NLAorKwkJTk9STUFMLAorKwkJ VE9QLAorKwkJRE9DSywKKysJCU9WRVJSSURFX1JFRElSRUNULAorKwkJTEFTVAorKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9U QUJfTElTVF8iLCB0eXBlX2lkID0gIm1ldGFfdGFiX2xpc3RfZ2V0X3R5cGUgKCkiKV0KKysJcHVi bGljIGVudW0gVGFiTGlzdCB7CisrCQlOT1JNQUwsCisrCQlET0NLUywKKysJCUdST1VQLAorKwkJ Tk9STUFMX0FMTAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4u aCIsIGNwcmVmaXggPSAiTUVUQV9UQUJfU0hPV18iLCB0eXBlX2lkID0gIm1ldGFfdGFiX3Nob3df dHlwZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBUYWJTaG93VHlwZSB7CisrCQlJQ09O LAorKwkJSU5TVEFOVExZCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEv bWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX1ZJUlRVQUxfIiwgdHlwZV9pZCA9ICJtZXRhX3ZpcnR1 YWxfbW9kaWZpZXJfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlwdWJsaWMgZW51bSBWaXJ0 dWFsTW9kaWZpZXIgeworKwkJU0hJRlRfTUFTSywKKysJCUNPTlRST0xfTUFTSywKKysJCUFMVF9N QVNLLAorKwkJTUVUQV9NQVNLLAorKwkJU1VQRVJfTUFTSywKKysJCUhZUEVSX01BU0ssCisrCQlN T0QyX01BU0ssCisrCQlNT0QzX01BU0ssCisrCQlNT0Q0X01BU0ssCisrCQlNT0Q1X01BU0sKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0g Ik1FVEFfV0lORE9XX0NMSUVOVF9UWVBFXyIsIHR5cGVfaWQgPSAibWV0YV93aW5kb3dfY2xpZW50 X3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gV2luZG93Q2xpZW50VHlwZSB7Cisr CQlXQVlMQU5ELAorKwkJWDExCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1l dGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX1dJTkRPV19NRU5VXyIsIHR5cGVfaWQgPSAibWV0 YV93aW5kb3dfbWVudV90eXBlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIFdpbmRvd01l bnVUeXBlIHsKKysJCVdNLAorKwkJQVBQCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX1dJTkRPV18iLCB0eXBlX2lkID0gIm1l dGFfd2luZG93X3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gV2luZG93VHlwZSB7 CisrCQlOT1JNQUwsCisrCQlERVNLVE9QLAorKwkJRE9DSywKKysJCURJQUxPRywKKysJCU1PREFM X0RJQUxPRywKKysJCVRPT0xCQVIsCisrCQlNRU5VLAorKwkJVVRJTElUWSwKKysJCVNQTEFTSFND UkVFTiwKKysJCURST1BET1dOX01FTlUsCisrCQlQT1BVUF9NRU5VLAorKwkJVE9PTFRJUCwKKysJ CU5PVElGSUNBVElPTiwKKysJCUNPTUJPLAorKwkJRE5ELAorKwkJT1ZFUlJJREVfT1RIRVIKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBpbnN0YW5jZV9w b3MgPSAyLjkpXQorKwlwdWJsaWMgZGVsZWdhdGUgdm9pZCBJZGxlTW9uaXRvcldhdGNoRnVuYyAo TWV0YS5JZGxlTW9uaXRvciBtb25pdG9yLCB1aW50IHdhdGNoX2lkKTsKKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgaW5zdGFuY2VfcG9zID0gNC45KV0KKysJcHVi bGljIGRlbGVnYXRlIHZvaWQgS2V5SGFuZGxlckZ1bmMgKE1ldGEuRGlzcGxheSBkaXNwbGF5LCBN ZXRhLldpbmRvdyB3aW5kb3csIFtDQ29kZSAodHlwZSA9ICJDbHV0dGVyS2V5RXZlbnQqIildIENs dXR0ZXIuS2V5RXZlbnQ/IGV2ZW50LCBNZXRhLktleUJpbmRpbmcgYmluZGluZyk7CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGluc3RhbmNlX3BvcyA9IDEuOSld CisrCXB1YmxpYyBkZWxlZ2F0ZSB2b2lkIFByZWZzQ2hhbmdlZEZ1bmMgKE1ldGEuUHJlZmVyZW5j ZSBwcmVmKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgaW5z dGFuY2VfcG9zID0gMS45KV0KKysJcHVibGljIGRlbGVnYXRlIGJvb2wgV2luZG93Rm9yZWFjaEZ1 bmMgKE1ldGEuV2luZG93IHdpbmRvdyk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJt ZXRhL21haW4uaCIsIGNuYW1lID0gIk1FVEFfQ1VSUkVOVF9USU1FIildCisrCXB1YmxpYyBjb25z dCBpbnQgQ1VSUkVOVF9USU1FOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9t YWluLmgiLCBjbmFtZSA9ICJNRVRBX0RFRkFVTFRfSUNPTl9OQU1FIildCisrCXB1YmxpYyBjb25z dCBzdHJpbmcgREVGQVVMVF9JQ09OX05BTUU7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJtZXRhL21haW4uaCIsIGNuYW1lID0gIk1FVEFfSUNPTl9IRUlHSFQiKV0KKysJcHVibGljIGNv bnN0IGludCBJQ09OX0hFSUdIVDsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEv bWFpbi5oIiwgY25hbWUgPSAiTUVUQV9JQ09OX1dJRFRIIildCisrCXB1YmxpYyBjb25zdCBpbnQg SUNPTl9XSURUSDsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwg Y25hbWUgPSAiTUVUQV9NQUpPUl9WRVJTSU9OIildCisrCXB1YmxpYyBjb25zdCBpbnQgTUFKT1Jf VkVSU0lPTjsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY25h bWUgPSAiTUVUQV9NSUNST19WRVJTSU9OIildCisrCXB1YmxpYyBjb25zdCBpbnQgTUlDUk9fVkVS U0lPTjsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY25hbWUg PSAiTUVUQV9NSU5JX0lDT05fSEVJR0hUIildCisrCXB1YmxpYyBjb25zdCBpbnQgTUlOSV9JQ09O X0hFSUdIVDsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY25h bWUgPSAiTUVUQV9NSU5JX0lDT05fV0lEVEgiKV0KKysJcHVibGljIGNvbnN0IGludCBNSU5JX0lD T05fV0lEVEg7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNu YW1lID0gIk1FVEFfTUlOT1JfVkVSU0lPTiIpXQorKwlwdWJsaWMgY29uc3QgaW50IE1JTk9SX1ZF UlNJT047CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNuYW1l ID0gIk1FVEFfUExVR0lOX0FQSV9WRVJTSU9OIildCisrCXB1YmxpYyBjb25zdCBpbnQgUExVR0lO X0FQSV9WRVJTSU9OOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgi LCBjbmFtZSA9ICJNRVRBX1BSSU9SSVRZX0JFRk9SRV9SRURSQVciKV0KKysJcHVibGljIGNvbnN0 IGludCBQUklPUklUWV9CRUZPUkVfUkVEUkFXOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAibWV0YS9tYWluLmgiLCBjbmFtZSA9ICJNRVRBX1BSSU9SSVRZX1BSRUZTX05PVElGWSIpXQor KwlwdWJsaWMgY29uc3QgaW50IFBSSU9SSVRZX1BSRUZTX05PVElGWTsKKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY25hbWUgPSAiTUVUQV9QUklPUklUWV9SRURS QVciKV0KKysJcHVibGljIGNvbnN0IGludCBQUklPUklUWV9SRURSQVc7CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNuYW1lID0gIk1FVEFfUFJJT1JJVFlfUkVT SVpFIildCisrCXB1YmxpYyBjb25zdCBpbnQgUFJJT1JJVFlfUkVTSVpFOworKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjbmFtZSA9ICJNRVRBX1ZJUlRVQUxfQ09S RV9LRVlCT0FSRF9JRCIpXQorKwlwdWJsaWMgY29uc3QgaW50IFZJUlRVQUxfQ09SRV9LRVlCT0FS RF9JRDsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY25hbWUg PSAiTUVUQV9WSVJUVUFMX0NPUkVfUE9JTlRFUl9JRCIpXQorKwlwdWJsaWMgY29uc3QgaW50IFZJ UlRVQUxfQ09SRV9QT0lOVEVSX0lEOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0 YS9tYWluLmgiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGFjdGl2YXRlX3Nlc3Npb24gKCk7Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIpXQorKwlwdWJsaWMgc3Rh dGljIHZvaWQgYWRkX2NsdXR0ZXJfZGVidWdfZmxhZ3MgKENsdXR0ZXIuRGVidWdGbGFnIGRlYnVn X2ZsYWdzLCBDbHV0dGVyLkRyYXdEZWJ1Z0ZsYWcgZHJhd19mbGFncywgQ2x1dHRlci5QaWNrRGVi dWdGbGFnIHBpY2tfZmxhZ3MpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9t YWluLmgiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIGV4aXQgKE1ldGEuRXhpdENvZGUgY29kZSk7 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIpXQorKwlwdWJsaWMg c3RhdGljIHN0cmluZyBnX3V0Zjhfc3RybmR1cCAoc3RyaW5nIHNyYywgc2l6ZV90IG4pOworKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiKV0KKysJcHVibGljIHN0YXRp YyB1bm93bmVkIEdMaWIuT3B0aW9uQ29udGV4dCBnZXRfb3B0aW9uX2NvbnRleHQgKCk7CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIpXQorKwlwdWJsaWMgc3RhdGlj IGJvb2wgZ2V0X3JlcGxhY2VfY3VycmVudF93bSAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gIm1ldGEvbWFpbi5oIildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBpbml0ICgpOworKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiKV0KKysJcHVibGljIHN0YXRp YyBib29sIGlzX3Jlc3RhcnQgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRh L21haW4uaCIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgcXVpdCAoTWV0YS5FeGl0Q29kZSBjb2Rl KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIildCisrCXB1Ymxp YyBzdGF0aWMgdm9pZCByZWdpc3Rlcl93aXRoX3Nlc3Npb24gKCk7CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgcmVtb3Zl X2NsdXR0ZXJfZGVidWdfZmxhZ3MgKENsdXR0ZXIuRGVidWdGbGFnIGRlYnVnX2ZsYWdzLCBDbHV0 dGVyLkRyYXdEZWJ1Z0ZsYWcgZHJhd19mbGFncywgQ2x1dHRlci5QaWNrRGVidWdGbGFnIHBpY2tf ZmxhZ3MpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiKV0KKysJ cHVibGljIHN0YXRpYyB2b2lkIHJlc3RhcnQgKHN0cmluZz8gbWVzc2FnZSk7CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIpXQorKwlwdWJsaWMgc3RhdGljIGludCBy dW4gKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIpXQorKwlw dWJsaWMgc3RhdGljIHZvaWQgc2V0X2dub21lX3dtX2tleWJpbmRpbmdzIChzdHJpbmcgd21fa2V5 YmluZGluZ3MpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiKV0K KysJcHVibGljIHN0YXRpYyB2b2lkIHNldF93bV9uYW1lIChzdHJpbmcgd21fbmFtZSk7CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIpXQorKwlwdWJsaWMgc3RhdGlj IHZvaWQgdGVzdF9pbml0ICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9t YWluLmgiKV0KKysJcHVibGljIHN0YXRpYyBib29sIHgxMV9pbml0X2dka19kaXNwbGF5ICgpIHRo cm93cyBHTGliLkVycm9yOworK30KK2RpZmYgLS1naXQgYS92YXBpL211dHRlci1jbHV0dGVyLTYt Y3VzdG9tLnZhbGEgYi92YXBpL211dHRlci1jbHV0dGVyLTYtY3VzdG9tLnZhbGEKK25ldyBmaWxl IG1vZGUgMTAwNjQ0CitpbmRleCAwMDAwMDAwMC4uODkyMjRiZTYKKy0tLSAvZGV2L251bGwKKysr KyBiL3ZhcGkvbXV0dGVyLWNsdXR0ZXItNi1jdXN0b20udmFsYQorQEAgLTAsMCArMSwxNDcgQEAK KytuYW1lc3BhY2UgQ2x1dHRlciB7CisrCisrICBwdWJsaWMgc3RydWN0IE1hdHJpeCA6IENvZ2wu TWF0cml4IHsKKysgIH0KKysKKysgIHB1YmxpYyBjbGFzcyBCYWNrZW5kIDogR0xpYi5PYmplY3Qg eworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMgdmlydHVhbCB2b2lkIGFkZF9vcHRpb25z IChHTGliLk9wdGlvbkdyb3VwIGdyb3VwKTsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVibGlj IHZpcnR1YWwgYm9vbCBjcmVhdGVfY29udGV4dCAoKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysgICAg W05vV3JhcHBlcl0KKysgICAgcHVibGljIHZpcnR1YWwgdW5vd25lZCBDbHV0dGVyLlN0YWdlV2lu ZG93IGNyZWF0ZV9zdGFnZSAoQ2x1dHRlci5TdGFnZSB3cmFwcGVyKSB0aHJvd3MgR0xpYi5FcnJv cjsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVibGljIHZpcnR1YWwgdm9pZCBlbnN1cmVfY29u dGV4dCAoQ2x1dHRlci5TdGFnZSBzdGFnZSk7CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1Ymxp YyB2aXJ0dWFsIENsdXR0ZXIuRmVhdHVyZUZsYWdzIGdldF9mZWF0dXJlcyAoKTsKKysgICAgW05v V3JhcHBlcl0KKysgICAgcHVibGljIHZpcnR1YWwgdm9pZCBpbml0X2V2ZW50cyAoKTsKKysgICAg W05vV3JhcHBlcl0KKysgICAgcHVibGljIHZpcnR1YWwgdm9pZCBpbml0X2ZlYXR1cmVzICgpOwor KyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMgdmlydHVhbCBib29sIHBvc3RfcGFyc2UgKCkg dGhyb3dzIEdMaWIuRXJyb3I7CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1YmxpYyB2aXJ0dWFs IGJvb2wgcHJlX3BhcnNlICgpIHRocm93cyBHTGliLkVycm9yOworKyAgICBbTm9XcmFwcGVyXQor KyAgICBwdWJsaWMgdmlydHVhbCB2b2lkIHJlZHJhdyAoQ2x1dHRlci5TdGFnZSBzdGFnZSk7Cisr ICB9CisrCisrICBbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCB0eXBlX2lkID0gImNsdXR0ZXJfYm94X2dldF90eXBlICgpIildCisrICBwdWJsaWMgY2xhc3Mg Qm94IDogQ2x1dHRlci5BY3RvciB7CisrICAgIHB1YmxpYyBDbHV0dGVyLkxheW91dE1hbmFnZXIg bGF5b3V0X21hbmFnZXIgeyBnZXQ7IHNldDsgfQorKyAgfQorKworKyAgW0NDb2RlICh0eXBlX2lk ID0gIkNMVVRURVJfVFlQRV9DT0xPUiIsIGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiKV0KKysgIHB1YmxpYyBzdHJ1Y3QgQ29sb3IgeworKyAgICBbQ0NvZGUgKGNuYW1lID0g ImNsdXR0ZXJfY29sb3JfZnJvbV9obHMiKV0KKysgICAgcHVibGljIENvbG9yLmZyb21faGxzIChm bG9hdCBodWUsIGZsb2F0IGx1bWluYW5jZSwgZmxvYXQgc2F0dXJhdGlvbik7CisrICAgIFtDQ29k ZSAoY25hbWUgPSAiY2x1dHRlcl9jb2xvcl9mcm9tX3BpeGVsIildCisrICAgIHB1YmxpYyBDb2xv ci5mcm9tX3BpeGVsICh1aW50MzIgcGl4ZWwpOworKyAgICBbQ0NvZGUgKGNuYW1lID0gImNsdXR0 ZXJfY29sb3JfZnJvbV9zdHJpbmciKV0KKysgICAgcHVibGljIENvbG9yLmZyb21fc3RyaW5nIChz dHJpbmcgc3RyKTsKKysgICAgW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX2NvbG9yX2Zyb21fc3Ry aW5nIildCisrICAgIHB1YmxpYyBib29sIHBhcnNlX3N0cmluZyAoc3RyaW5nIHN0cik7CisrICAg IHB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLkNvbG9yPyBnZXRfc3RhdGljIChDbHV0dGVy LlN0YXRpY0NvbG9yIGNvbG9yKTsKKysgIH0KKysKKysgIFtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9jb250YWluZXJfZ2V0 X3R5cGUgKCkiKV0KKysgIHB1YmxpYyBpbnRlcmZhY2UgQ29udGFpbmVyIDogR0xpYi5PYmplY3Qg eworKyAgICBwdWJsaWMgdm9pZCBhZGQgKHBhcmFtcyBDbHV0dGVyLkFjdG9yW10gYWN0b3JzKTsK KysgICAgW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX2NvbnRhaW5lcl9jbGFzc19maW5kX2NoaWxk X3Byb3BlcnR5IildCisrICAgIHB1YmxpYyBjbGFzcyB1bm93bmVkIEdMaWIuUGFyYW1TcGVjIGZp bmRfY2hpbGRfcHJvcGVydHkgKHN0cmluZyBwcm9wZXJ0eV9uYW1lKTsKKysgICAgW0NDb2RlIChj bmFtZSA9ICJjbHV0dGVyX2NvbnRhaW5lcl9jbGFzc19saXN0X2NoaWxkX3Byb3BlcnRpZXMiKV0K KysgICAgcHVibGljIGNsYXNzIHVub3duZWQgR0xpYi5QYXJhbVNwZWNbXSBsaXN0X2NoaWxkX3By b3BlcnRpZXMgKCk7CisrICB9CisrCisrICBbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVu Y3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2V2ZW50X2dldF90eXBl ICgpIildCisrICBbQ29tcGFjdF0KKysgIHB1YmxpYyBjbGFzcyBFdmVudCB7CisrICAgIHB1Ymxp YyBDbHV0dGVyLkFueUV2ZW50IGFueSB7IFtDQ29kZSAoY25hbWUgPSAiKENsdXR0ZXJBbnlFdmVu dCAqKSIpXSBnZXQ7IH0KKysgICAgcHVibGljIENsdXR0ZXIuQnV0dG9uRXZlbnQgYnV0dG9uIHsg W0NDb2RlIChjbmFtZSA9ICIoQ2x1dHRlckJ1dHRvbkV2ZW50ICopIildIGdldDsgfQorKyAgICBw dWJsaWMgQ2x1dHRlci5Dcm9zc2luZ0V2ZW50IGNyb3NzaW5nIHsgW0NDb2RlIChjbmFtZSA9ICIo Q2x1dHRlckNyb3NzaW5nRXZlbnQgKikiKV0gZ2V0OyB9CisrICAgIHB1YmxpYyBDbHV0dGVyLktl eUV2ZW50IGtleSB7IFtDQ29kZSAoY25hbWUgPSAiKENsdXR0ZXJLZXlFdmVudCAqKSIpXSBnZXQ7 IH0KKysgICAgcHVibGljIENsdXR0ZXIuTW90aW9uRXZlbnQgbW90aW9uIHsgW0NDb2RlIChjbmFt ZSA9ICIoQ2x1dHRlck1vdGlvbkV2ZW50ICopIildIGdldDsgfQorKyAgICBwdWJsaWMgQ2x1dHRl ci5TY3JvbGxFdmVudCBzY3JvbGwgeyBbQ0NvZGUgKGNuYW1lID0gIihDbHV0dGVyU2Nyb2xsRXZl bnQgKikiKV0gZ2V0OyB9CisrICAgIHB1YmxpYyBDbHV0dGVyLlN0YWdlU3RhdGVFdmVudCBzdGFn ZV9zdGF0ZSB7IFtDQ29kZSAoY25hbWUgPSAiKENsdXR0ZXJTdGFnZVN0YXRlRXZlbnQgKikiKV0g Z2V0OyB9CisrICAgIHB1YmxpYyBDbHV0dGVyLlRvdWNoRXZlbnQgdG91Y2ggeyBbQ0NvZGUgKGNu YW1lID0gIihDbHV0dGVyVG91Y2hFdmVudCAqKSIpXSBnZXQ7IH0KKysgICAgcHVibGljIENsdXR0 ZXIuVG91Y2hwYWRQaW5jaEV2ZW50IHRvdWNocGFkX3BpbmNoIHsgW0NDb2RlIChjbmFtZSA9ICIo Q2x1dHRlclRvdWNocGFkUGluY2hFdmVudCAqKSIpXSBnZXQ7IH0KKysgICAgcHVibGljIENsdXR0 ZXIuVG91Y2hwYWRTd2lwZUV2ZW50IHRvdWNocGFkX3N3aXBlIHsgW0NDb2RlIChjbmFtZSA9ICIo Q2x1dHRlclRvdWNocGFkU3dpcGVFdmVudCAqKSIpXSBnZXQ7IH0KKysgIH0KKysKKysgIFtDQ29k ZSAodHlwZV9pZCA9ICJjbHV0dGVyX3N0YWdlX2dldF90eXBlICgpIiwgY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKyAgcHVibGljIGNsYXNzIFN0YWdlIDogQ2x1dHRl ci5Hcm91cCB7CisrICAgIFtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl9yZWRyYXciKV0KKysgICAg cHVibGljIHZvaWQgcmVkcmF3ICgpOworKyAgfQorKworKyAgW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrICBwdWJsaWMgaW50ZXJmYWNlIFN0YWdlV2lu ZG93IDogR0xpYi5PYmplY3QgeworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMgYWJzdHJh Y3QgaW50IGdldF9wZW5kaW5nX3N3YXBzICgpOworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJs aWMgYWJzdHJhY3QgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF93cmFwcGVyICgpOworKyAgICBb Tm9XcmFwcGVyXQorKyAgICBwdWJsaWMgYWJzdHJhY3QgYm9vbCBoYXNfcmVkcmF3X2NsaXBzICgp OworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMgYWJzdHJhY3Qgdm9pZCBoaWRlICgpOwor KyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMgYWJzdHJhY3QgYm9vbCBpZ25vcmluZ19yZWRy YXdfY2xpcHMgKCk7CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1YmxpYyBhYnN0cmFjdCBib29s IHJlYWxpemUgKCk7CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1YmxpYyBhYnN0cmFjdCB2b2lk IHJlc2l6ZSAoaW50IHdpZHRoLCBpbnQgaGVpZ2h0KTsKKysgICAgW05vV3JhcHBlcl0KKysgICAg cHVibGljIGFic3RyYWN0IHZvaWQgc2V0X2N1cnNvcl92aXNpYmxlIChib29sIGN1cnNvcl92aXNp YmxlKTsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVibGljIGFic3RyYWN0IHZvaWQgc2V0X2Z1 bGxzY3JlZW4gKGJvb2wgaXNfZnVsbHNjcmVlbik7CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1 YmxpYyBhYnN0cmFjdCB2b2lkIHNldF90aXRsZSAoc3RyaW5nIHRpdGxlKTsKKysgICAgW05vV3Jh cHBlcl0KKysgICAgcHVibGljIGFic3RyYWN0IHZvaWQgc2V0X3VzZXJfcmVzaXphYmxlIChib29s IGlzX3Jlc2l6YWJsZSk7CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1YmxpYyBhYnN0cmFjdCB2 b2lkIHNob3cgKGJvb2wgZG9fcmFpc2UpOworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMg YWJzdHJhY3Qgdm9pZCB1bnJlYWxpemUgKCk7CisrICB9CisrCisrICBbQ0NvZGUgKHR5cGVfaWQg PSAiY2x1dHRlcl90ZXh0dXJlX2dldF90eXBlICgpIiwgY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIpXQorKyAgcHVibGljIGNsYXNzIFRleHR1cmUgOiBDbHV0dGVyLkFjdG9y IHsKKysgICAgcHVibGljIENvZ2wuTWF0ZXJpYWwgY29nbF9tYXRlcmlhbCB7IGdldDsgc2V0OyB9 CisrICAgIHB1YmxpYyBDb2dsLlRleHR1cmUgY29nbF90ZXh0dXJlIHsgZ2V0OyBzZXQ7IH0KKysg IH0KKysKKysgIFtDb21wYWN0XQorKyAgW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIildCisrICBwdWJsaWMgY2xhc3MgVGltZW91dFBvb2wgeworKyAgICBbQ0Nv ZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrICAgIHB1YmxpYyBUaW1lb3V0 UG9vbCAoaW50IHByaW9yaXR5KTsKKysgIH0KKysKKysgIFtDQ29kZSAoY3ByZWZpeCA9ICJDTFVU VEVSX0ZFQVRVUkVfIiwgY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQor KyAgW0ZsYWdzXQorKyAgcHVibGljIGVudW0gRmVhdHVyZUZsYWdzIHsKKysgICAgVEVYVFVSRV9O UE9UOworKyAgICBbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfZmVhdHVyZV9hdmFpbGFibGUiKV0K KysgICAgcHVibGljIGJvb2wgaXNfYXZhaWxhYmxlICgpOworKyAgICBbQ0NvZGUgKGNuYW1lID0g ImNsdXR0ZXJfZmVhdHVyZV9nZXRfYWxsIildCisrICAgIHB1YmxpYyBzdGF0aWMgQ2x1dHRlci5G ZWF0dXJlRmxhZ3MgQGdldCAoKTsKKysgIH0KKysKKysgIFtDQ29kZSAodHlwZV9pZCA9ICJDTFVU VEVSX1RZUEVfVU5JVFMiLCBjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIild CisrICBwdWJsaWMgc3RydWN0IFVuaXRzIHsKKysgICAgW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVy X3VuaXRzX2Zyb21fY20iKV0KKysgICAgcHVibGljIFVuaXRzLmZyb21fY20gKGZsb2F0IGNtKTsK KysgICAgW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX3VuaXRzX2Zyb21fZW0iKV0KKysgICAgcHVi bGljIFVuaXRzLmZyb21fZW0gKGZsb2F0IGVtKTsKKysgICAgW0NDb2RlIChjbmFtZSA9ICJjbHV0 dGVyX3VuaXRzX2Zyb21fZW1fZm9yX2ZvbnQiKV0KKysgICAgcHVibGljIFVuaXRzLmZyb21fZW1f Zm9yX2ZvbnQgKHN0cmluZyBmb250X25hbWUsIGZsb2F0IGVtKTsKKysgICAgW0NDb2RlIChjbmFt ZSA9ICJjbHV0dGVyX3VuaXRzX2Zyb21fbW0iKV0KKysgICAgcHVibGljIFVuaXRzLmZyb21fbW0g KGZsb2F0IG1tKTsKKysgICAgW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX3VuaXRzX2Zyb21fcGl4 ZWxzIildCisrICAgIHB1YmxpYyBVbml0cy5mcm9tX3BpeGVscyAoaW50IHB4KTsKKysgICAgW0ND b2RlIChjbmFtZSA9ICJjbHV0dGVyX3VuaXRzX2Zyb21fcHQiKV0KKysgICAgcHVibGljIFVuaXRz LmZyb21fcHQgKGZsb2F0IHB0KTsKKysgICAgW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX3VuaXRz X2Zyb21fc3RyaW5nIildCisrICAgIHB1YmxpYyBVbml0cy5mcm9tX3N0cmluZyAoc3RyaW5nIHN0 cik7CisrICB9CisrfQorZGlmZiAtLWdpdCBhL3ZhcGkvbXV0dGVyLWNsdXR0ZXItNi5kZXBzIGIv dmFwaS9tdXR0ZXItY2x1dHRlci02LmRlcHMKK25ldyBmaWxlIG1vZGUgMTAwNjQ0CitpbmRleCAw MDAwMDAwMC4uN2E3MGQ2ZGYKKy0tLSAvZGV2L251bGwKKysrKyBiL3ZhcGkvbXV0dGVyLWNsdXR0 ZXItNi5kZXBzCitAQCAtMCwwICsxLDQgQEAKKythdGsKKytjYWlybworK2pzb24tZ2xpYi0xLjAK KyttdXR0ZXItY29nbC02CitkaWZmIC0tZ2l0IGEvdmFwaS9tdXR0ZXItY2x1dHRlci02LnZhcGkg Yi92YXBpL211dHRlci1jbHV0dGVyLTYudmFwaQorbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4 IDAwMDAwMDAwLi5kNjZmOWFjOAorLS0tIC9kZXYvbnVsbAorKysrIGIvdmFwaS9tdXR0ZXItY2x1 dHRlci02LnZhcGkKK0BAIC0wLDAgKzEsODY4NyBAQAorKy8qIG11dHRlci1jbHV0dGVyLTYudmFw aSBnZW5lcmF0ZWQgYnkgdmFwaWdlbiwgZG8gbm90IG1vZGlmeS4gKi8KKysKKytbQ0NvZGUgKGNw cmVmaXggPSAiQ2x1dHRlciIsIGdpcl9uYW1lc3BhY2UgPSAiQ2x1dHRlciIsIGdpcl92ZXJzaW9u ID0gIjYiLCBsb3dlcl9jYXNlX2NwcmVmaXggPSAiY2x1dHRlcl8iKV0KKytuYW1lc3BhY2UgQ2x1 dHRlciB7CisrCW5hbWVzcGFjZSBLZXkgeworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQDA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8xIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBAMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZXzIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAyOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfMyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDM7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV8zMjcwX0FsdEN1cnNvciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfQWx0Q3Vyc29y OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9BdHRuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3 MF9BdHRuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9CYWNrVGFiIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBAMzI3MF9CYWNrVGFiOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9DaGFuZ2VTY3JlZW4iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX0NoYW5nZVNjcmVlbjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ XzMyNzBfQ29weSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfQ29weTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZXzMyNzBfQ3Vyc29yQmxpbmsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX0N1 cnNvckJsaW5rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9DdXJzb3JTZWxlY3QiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEAzMjcwX0N1cnNvclNlbGVjdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfRGVs ZXRlV29yZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfRGVsZXRlV29yZDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZXzMyNzBfRHVwbGljYXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9E dXBsaWNhdGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX0VudGVyIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBAMzI3MF9FbnRlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfRXJhc2VFT0YiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEAzMjcwX0VyYXNlRU9GOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9FcmFz ZUlucHV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9FcmFzZUlucHV0OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfMzI3MF9FeFNlbGVjdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfRXhT ZWxlY3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX0ZpZWxkTWFyayIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQDMyNzBfRmllbGRNYXJrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9JZGVudCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQDMyNzBfSWRlbnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX0p1bXAi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX0p1bXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcw X0tleUNsaWNrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9LZXlDbGljazsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZXzMyNzBfTGVmdDIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX0xlZnQy OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9QQTEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcw X1BBMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfUEEyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBA MzI3MF9QQTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX1BBMyIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQDMyNzBfUEEzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9QbGF5IildCisrCQlwdWJsaWMgY29u c3QgdWludCBAMzI3MF9QbGF5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9QcmludFNjcmVlbiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfUHJpbnRTY3JlZW47CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8z MjcwX1F1aXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX1F1aXQ7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV8zMjcwX1JlY29yZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfUmVjb3JkOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfMzI3MF9SZXNldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBf UmVzZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX1JpZ2h0MiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQDMyNzBfUmlnaHQyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9SdWxlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBAMzI3MF9SdWxlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9TZXR1cCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQDMyNzBfU2V0dXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX1Rlc3Qi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX1Rlc3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV80Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBANDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEA1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfNiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQDY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV83IildCisrCQlwdWJsaWMgY29uc3QgdWludCBANzsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZXzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEA4OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfOSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BIildCisr CQlwdWJsaWMgY29uc3QgdWludCBBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQUUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEFFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQWFjdXRlIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBBYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BYmVsb3dkb3QiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEFiZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FicmV2ZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQWJyZXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQWJyZXZlYWN1dGUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEFicmV2ZWFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQWJyZXZlYmVsb3dkb3Qi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFicmV2ZWJlbG93ZG90OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QWJyZXZlZ3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFicmV2ZWdyYXZlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQWJyZXZlaG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQWJyZXZlaG9vazsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0FicmV2ZXRpbGRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBYnJl dmV0aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FjY2Vzc1hfRW5hYmxlIildCisrCQlwdWJsaWMgY29u c3QgdWludCBBY2Nlc3NYX0VuYWJsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FjY2Vzc1hfRmVlZGJhY2tf RW5hYmxlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBY2Nlc3NYX0ZlZWRiYWNrX0VuYWJsZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0FjaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBY2ly Y3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FjaXJjdW1mbGV4YWN1dGUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEFjaXJjdW1mbGV4YWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BY2lyY3VtZmxleGJl bG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBY2lyY3VtZmxleGJlbG93ZG90OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQWNpcmN1bWZsZXhncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQWNp cmN1bWZsZXhncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FjaXJjdW1mbGV4aG9vayIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQWNpcmN1bWZsZXhob29rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQWNpcmN1bWZs ZXh0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQWNpcmN1bWZsZXh0aWxkZTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0FkZEZhdm9yaXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBZGRGYXZvcml0 ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FkaWFlcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFk aWFlcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BZ3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEFncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Fob29rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBB aG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0FsdF9MIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBbHRf TDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FsdF9SIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBbHRfUjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0FtYWNyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFtYWNyb247 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9Bb2dvbmVrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBb2dvbmVr OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQXBwbGljYXRpb25MZWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBBcHBsaWNhdGlvbkxlZnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcHBsaWNhdGlvblJpZ2h0IildCisr CQlwdWJsaWMgY29uc3QgdWludCBBcHBsaWNhdGlvblJpZ2h0OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJh YmljXzAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY18wOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QXJhYmljXzEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY18xOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQXJhYmljXzIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY18yOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQXJhYmljXzMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY18zOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQXJhYmljXzQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY180OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQXJhYmljXzUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY181Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQXJhYmljXzYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY182 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljXzciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJp Y183OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljXzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFy YWJpY184OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljXzkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEFyYWJpY185OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2FpbiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQXJhYmljX2FpbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19hbGVmIildCisrCQlwdWJs aWMgY29uc3QgdWludCBBcmFiaWNfYWxlZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19hbGVmbWFr c3VyYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2FsZWZtYWtzdXJhOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQXJhYmljX2JlaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2JlaDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0FyYWJpY19jb21tYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJh YmljX2NvbW1hOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2RhZCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQXJhYmljX2RhZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19kYWwiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEFyYWJpY19kYWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfZGFtbWEiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19kYW1tYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJp Y19kYW1tYXRhbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2RhbW1hdGFuOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQXJhYmljX2RkYWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19k ZGFsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2ZhcnNpX3llaCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQXJhYmljX2ZhcnNpX3llaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19mYXRoYSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2ZhdGhhOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmlj X2ZhdGhhdGFuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfZmF0aGF0YW47CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9BcmFiaWNfZmVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfZmVo OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2Z1bGxzdG9wIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBBcmFiaWNfZnVsbHN0b3A7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfZ2FmIildCisrCQlwdWJs aWMgY29uc3QgdWludCBBcmFiaWNfZ2FmOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2doYWluIild CisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfZ2hhaW47CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFi aWNfaGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19oYTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0FyYWJpY19oYWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19oYWg7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9BcmFiaWNfaGFtemEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19oYW16 YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19oYW16YV9hYm92ZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQXJhYmljX2hhbXphX2Fib3ZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2hhbXphX2Jl bG93IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfaGFtemFfYmVsb3c7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9BcmFiaWNfaGFtemFvbmFsZWYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJp Y19oYW16YW9uYWxlZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19oYW16YW9ud2F3IildCisrCQlw dWJsaWMgY29uc3QgdWludCBBcmFiaWNfaGFtemFvbndhdzsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJp Y19oYW16YW9ueWVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfaGFtemFvbnllaDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0FyYWJpY19oYW16YXVuZGVyYWxlZiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQXJhYmljX2hhbXphdW5kZXJhbGVmOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2hlaCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2hlaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJp Y19oZWhfZG9hY2hhc2htZWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19oZWhfZG9h Y2hhc2htZWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfaGVoX2dvYWwiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEFyYWJpY19oZWhfZ29hbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19qZWVtIild CisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfamVlbTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJp Y19qZWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19qZWg7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9BcmFiaWNfa2FmIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfa2FmOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQXJhYmljX2thc3JhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfa2Fz cmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfa2FzcmF0YW4iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEFyYWJpY19rYXNyYXRhbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19rZWhlaCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2tlaGVoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2to YWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19raGFoOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QXJhYmljX2xhbSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2xhbTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0FyYWJpY19tYWRkYV9hYm92ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmlj X21hZGRhX2Fib3ZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX21hZGRhb25hbGVmIildCisrCQlw dWJsaWMgY29uc3QgdWludCBBcmFiaWNfbWFkZGFvbmFsZWY7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFi aWNfbWVlbSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX21lZW07CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9BcmFiaWNfbm9vbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX25vb247Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9BcmFiaWNfbm9vbl9naHVubmEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEFyYWJpY19ub29uX2dodW5uYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19wZWgiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEFyYWJpY19wZWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfcGVyY2Vu dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3BlcmNlbnQ7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9BcmFiaWNfcWFmIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfcWFmOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQXJhYmljX3F1ZXN0aW9uX21hcmsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFy YWJpY19xdWVzdGlvbl9tYXJrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3JhIildCisrCQlwdWJs aWMgY29uc3QgdWludCBBcmFiaWNfcmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfcnJlaCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3JyZWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNf c2FkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfc2FkOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QXJhYmljX3NlZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19zZWVuOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQXJhYmljX3NlbWljb2xvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmlj X3NlbWljb2xvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19zaGFkZGEiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEFyYWJpY19zaGFkZGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfc2hlZW4iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19zaGVlbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJp Y19zdWt1biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3N1a3VuOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQXJhYmljX3N1cGVyc2NyaXB0X2FsZWYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFy YWJpY19zdXBlcnNjcmlwdF9hbGVmOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3N3aXRjaCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3N3aXRjaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJp Y190YWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY190YWg7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9BcmFiaWNfdGF0d2VlbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3RhdHdlZWw7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfdGNoZWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFy YWJpY190Y2hlaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY190ZWgiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEFyYWJpY190ZWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfdGVobWFyYnV0YSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3RlaG1hcmJ1dGE7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9B cmFiaWNfdGhhbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3RoYWw7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9BcmFiaWNfdGhlaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3RoZWg7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfdHRlaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJh YmljX3R0ZWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfdmVoIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBBcmFiaWNfdmVoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3dhdyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQXJhYmljX3dhdzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY195ZWgiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY195ZWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfeWVo X2JhcmVlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfeWVoX2JhcmVlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQXJhYmljX3phaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3phaDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0FyYWJpY196YWluIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFi aWNfemFpbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyaW5nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBB cmluZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0FUIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBBcm1lbmlhbl9BVDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0FZQiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQXJtZW5pYW5fQVlCOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fQkVOIild CisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9CRU47CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1l bmlhbl9DSEEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX0NIQTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0FybWVuaWFuX0RBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9EQTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0RaQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJt ZW5pYW5fRFpBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fRSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQXJtZW5pYW5fRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0ZFIildCisrCQlwdWJs aWMgY29uc3QgdWludCBBcm1lbmlhbl9GRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0dIQVQi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX0dIQVQ7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9B cm1lbmlhbl9HSU0iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX0dJTTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0FybWVuaWFuX0hJIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9I STsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0hPIildCisrCQlwdWJsaWMgY29uc3QgdWludCBB cm1lbmlhbl9ITzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0lOSSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQXJtZW5pYW5fSU5JOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fSkUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX0pFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5f S0UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX0tFOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QXJtZW5pYW5fS0VOIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9LRU47CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9Bcm1lbmlhbl9LSEUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFu X0tIRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0xZVU4iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEFybWVuaWFuX0xZVU47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9NRU4iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX01FTjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX05V IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9OVTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Fy bWVuaWFuX08iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX087CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9Bcm1lbmlhbl9QRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fUEU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9QWVVSIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1l bmlhbl9QWVVSOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fUkEiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEFybWVuaWFuX1JBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fUkUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX1JFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fU0Ui KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX1NFOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJt ZW5pYW5fU0hBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9TSEE7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9Bcm1lbmlhbl9UQ0hFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9U Q0hFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fVE8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEFybWVuaWFuX1RPOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fVFNBIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBBcm1lbmlhbl9UU0E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9UU08iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX1RTTzsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVu aWFuX1RZVU4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX1RZVU47CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9Bcm1lbmlhbl9WRVYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX1ZF VjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX1ZPIildCisrCQlwdWJsaWMgY29uc3QgdWludCBB cm1lbmlhbl9WTzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX1ZZVU4iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEFybWVuaWFuX1ZZVU47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9ZRUNIIild CisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9ZRUNIOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJt ZW5pYW5fWkEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX1pBOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQXJtZW5pYW5fWkhFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9aSEU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9hY2NlbnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEFybWVuaWFuX2FjY2VudDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2FtYW5hayIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fYW1hbmFrOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5p YW5fYXBvc3Ryb3BoZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fYXBvc3Ryb3Bo ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2F0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBB cm1lbmlhbl9hdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2F5YiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQXJtZW5pYW5fYXliOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fYmVuIildCisr CQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9iZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlh bl9idXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2J1dDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0FybWVuaWFuX2NoYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fY2hhOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fZGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVu aWFuX2RhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fZHphIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBBcm1lbmlhbl9kemE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9lIildCisrCQlwdWJs aWMgY29uc3QgdWludCBBcm1lbmlhbl9lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fZXhjbGFt IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9leGNsYW07CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9Bcm1lbmlhbl9mZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fZmU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9Bcm1lbmlhbl9mdWxsX3N0b3AiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFy bWVuaWFuX2Z1bGxfc3RvcDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2doYXQiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2doYXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9n aW0iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2dpbTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0FybWVuaWFuX2hpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9oaTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0FybWVuaWFuX2hvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9o bzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2h5cGhlbiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQXJtZW5pYW5faHlwaGVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5faW5pIildCisrCQlw dWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9pbmk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9q ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5famU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9B cm1lbmlhbl9rZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fa2U7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9Bcm1lbmlhbl9rZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2tl bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2toZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg QXJtZW5pYW5fa2hlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fbGlnYXR1cmVfZXciKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2xpZ2F0dXJlX2V3OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QXJtZW5pYW5fbHl1biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fbHl1bjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0FybWVuaWFuX21lbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5p YW5fbWVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fbnUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEFybWVuaWFuX251OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fbyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQXJtZW5pYW5fbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3BhcnV5ayIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fcGFydXlrOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QXJtZW5pYW5fcGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX3BlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQXJtZW5pYW5fcHl1ciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5f cHl1cjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3F1ZXN0aW9uIildCisrCQlwdWJsaWMgY29u c3QgdWludCBBcm1lbmlhbl9xdWVzdGlvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3JhIild CisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9yYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVu aWFuX3JlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9yZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0FybWVuaWFuX3NlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9zZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0FybWVuaWFuX3NlcGFyYXRpb25fbWFyayIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQXJtZW5pYW5fc2VwYXJhdGlvbl9tYXJrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5f c2hhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9zaGE7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9Bcm1lbmlhbl9zaGVzaHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX3NoZXNo dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3RjaGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEFybWVuaWFuX3RjaGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl90byIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQXJtZW5pYW5fdG87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl90c2EiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX3RzYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVu aWFuX3RzbyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fdHNvOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQXJtZW5pYW5fdHl1biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fdHl1 bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3Zlcmpha2V0IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBBcm1lbmlhbl92ZXJqYWtldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3ZldiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fdmV2OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5p YW5fdm8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX3ZvOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQXJtZW5pYW5fdnl1biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fdnl1bjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3llY2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFy bWVuaWFuX3llY2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl95ZW50YW1uYSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQXJtZW5pYW5feWVudGFtbmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlh bl96YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5femE7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9Bcm1lbmlhbl96aGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX3poZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0F0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXRpbGRlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQXVkaWJsZUJlbGxfRW5hYmxlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBB dWRpYmxlQmVsbF9FbmFibGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BdWRpb0N5Y2xlVHJhY2siKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEF1ZGlvQ3ljbGVUcmFjazsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0F1ZGlv Rm9yd2FyZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXVkaW9Gb3J3YXJkOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQXVkaW9Mb3dlclZvbHVtZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXVkaW9Mb3dl clZvbHVtZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0F1ZGlvTWVkaWEiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEF1ZGlvTWVkaWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BdWRpb01pY011dGUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEF1ZGlvTWljTXV0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0F1ZGlvTXV0ZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQXVkaW9NdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXVkaW9OZXh0 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBdWRpb05leHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BdWRp b1BhdXNlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBdWRpb1BhdXNlOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQXVkaW9QbGF5IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBdWRpb1BsYXk7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9BdWRpb1ByZXYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEF1ZGlvUHJldjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0F1ZGlvUmFpc2VWb2x1bWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEF1 ZGlvUmFpc2VWb2x1bWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BdWRpb1JhbmRvbVBsYXkiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEF1ZGlvUmFuZG9tUGxheTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0F1ZGlvUmVj b3JkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBdWRpb1JlY29yZDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0F1ZGlvUmVwZWF0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBdWRpb1JlcGVhdDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0F1ZGlvUmV3aW5kIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBdWRpb1Jld2lu ZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0F1ZGlvU3RvcCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXVk aW9TdG9wOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXdheSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXdh eTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEI7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9CYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEJhYm92ZWRvdDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0JhY2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEJhY2s7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9CYWNrRm9yd2FyZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQmFja0ZvcndhcmQ7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9CYWNrU3BhY2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEJhY2tT cGFjZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0JhdHRlcnkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEJh dHRlcnk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9CZWdpbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQmVn aW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9CbHVlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBCbHVlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQmx1ZXRvb3RoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBCbHVldG9v dGg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Cb29rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBCb29rOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQm91bmNlS2V5c19FbmFibGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEJvdW5jZUtleXNfRW5hYmxlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQnJlYWsiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEJyZWFrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQnJpZ2h0bmVzc0FkanVzdCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQnJpZ2h0bmVzc0FkanVzdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0J5ZWxv cnVzc2lhbl9TSE9SVFUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEJ5ZWxvcnVzc2lhbl9TSE9S VFU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9CeWVsb3J1c3NpYW5fc2hvcnR1IildCisrCQlwdWJsaWMgY29u c3QgdWludCBCeWVsb3J1c3NpYW5fc2hvcnR1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NEIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBDRDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NIIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDSDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0NfSCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ19IOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQ19oIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDX2g7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9DYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENhYm92ZWRvdDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0NhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ2FjdXRlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQ2FsY3VsYXRvciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ2FsY3VsYXRvcjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0NhbGVuZGFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDYWxlbmRhcjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0NhbmNlbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ2FuY2VsOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQ2Fwc19Mb2NrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDYXBzX0xv Y2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9DY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENjYXJv bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0NjZWRpbGxhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDY2Vk aWxsYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0NjaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBDY2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NoIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBDaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0NsZWFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDbGVh cjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0NsZWFyR3JhYiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ2xl YXJHcmFiOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ2xvc2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENs b3NlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQ29kZWlucHV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBD b2RlaW5wdXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Db2xvblNpZ24iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IENvbG9uU2lnbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NvbW11bml0eSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQ29tbXVuaXR5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ29udHJhc3RBZGp1c3QiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IENvbnRyYXN0QWRqdXN0OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ29udHJv bF9MIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDb250cm9sX0w7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9D b250cm9sX1IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENvbnRyb2xfUjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0NvcHkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENvcHk7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9D cnV6ZWlyb1NpZ24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENydXplaXJvU2lnbjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0N1dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3V0OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQ3ljbGVBbmdsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3ljbGVBbmdsZTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0N5cmlsbGljX0EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0E7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19CRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3ly aWxsaWNfQkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19DSEUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEN5cmlsbGljX0NIRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0NIRV9kZXNjZW5k ZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0NIRV9kZXNjZW5kZXI7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9DeXJpbGxpY19DSEVfdmVydHN0cm9rZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQ3lyaWxsaWNfQ0hFX3ZlcnRzdHJva2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19ERSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfREU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJp bGxpY19EWkhFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19EWkhFOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQ3lyaWxsaWNfRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfRTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0VGIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJp bGxpY19FRjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0VMIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBDeXJpbGxpY19FTDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0VNIildCisrCQlwdWJs aWMgY29uc3QgdWludCBDeXJpbGxpY19FTTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0VOIild CisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19FTjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmls bGljX0VOX2Rlc2NlbmRlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfRU5fZGVz Y2VuZGVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfRVIiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEN5cmlsbGljX0VSOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfRVMiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEN5cmlsbGljX0VTOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfR0hFIild CisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19HSEU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJp bGxpY19HSEVfYmFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19HSEVfYmFyOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfSEEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmls bGljX0hBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfSEFSRFNJR04iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEN5cmlsbGljX0hBUkRTSUdOOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfSEFf ZGVzY2VuZGVyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19IQV9kZXNjZW5kZXI7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19JIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJp bGxpY19JOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfSUUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEN5cmlsbGljX0lFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfSU8iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEN5cmlsbGljX0lPOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfSV9tYWNy b24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0lfbWFjcm9uOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQ3lyaWxsaWNfSkUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0pFOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfS0EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmls bGljX0tBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfS0FfZGVzY2VuZGVyIildCisrCQlwdWJs aWMgY29uc3QgdWludCBDeXJpbGxpY19LQV9kZXNjZW5kZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJp bGxpY19LQV92ZXJ0c3Ryb2tlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19LQV92 ZXJ0c3Ryb2tlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfTEpFIildCisrCQlwdWJsaWMgY29u c3QgdWludCBDeXJpbGxpY19MSkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19OSkUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX05KRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGlj X08iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX087CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9D eXJpbGxpY19PX2JhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfT19iYXI7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19QRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxs aWNfUEU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19TQ0hXQSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQ3lyaWxsaWNfU0NIV0E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19TSEEiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX1NIQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGlj X1NIQ0hBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19TSENIQTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0N5cmlsbGljX1NISEEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX1NI SEE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19TSE9SVEkiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEN5cmlsbGljX1NIT1JUSTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX1NPRlRTSUdOIild CisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19TT0ZUU0lHTjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0N5cmlsbGljX1RFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19URTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0N5cmlsbGljX1RTRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNf VFNFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfVSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg Q3lyaWxsaWNfVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX1VfbWFjcm9uIildCisrCQlwdWJs aWMgY29uc3QgdWludCBDeXJpbGxpY19VX21hY3JvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGlj X1Vfc3RyYWlnaHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX1Vfc3RyYWlnaHQ7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19VX3N0cmFpZ2h0X2JhciIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQ3lyaWxsaWNfVV9zdHJhaWdodF9iYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxp Y19WRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfVkU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9DeXJpbGxpY19ZQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfWUE7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9DeXJpbGxpY19ZRVJVIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxp Y19ZRVJVOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfWVUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEN5cmlsbGljX1lVOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfWkUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEN5cmlsbGljX1pFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfWkhFIild CisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19aSEU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJp bGxpY19aSEVfZGVzY2VuZGVyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19aSEVf ZGVzY2VuZGVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfYSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQ3lyaWxsaWNfYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2JlIildCisrCQlwdWJs aWMgY29uc3QgdWludCBDeXJpbGxpY19iZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2NoZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfY2hlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3ly aWxsaWNfY2hlX2Rlc2NlbmRlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfY2hl X2Rlc2NlbmRlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2NoZV92ZXJ0c3Ryb2tlIildCisr CQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19jaGVfdmVydHN0cm9rZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0N5cmlsbGljX2RlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19kZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0N5cmlsbGljX2R6aGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmls bGljX2R6aGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19lIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBDeXJpbGxpY19lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfZWYiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEN5cmlsbGljX2VmOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfZWwiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2VsOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxs aWNfZW0iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2VtOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQ3lyaWxsaWNfZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2VuOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQ3lyaWxsaWNfZW5fZGVzY2VuZGVyIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBDeXJpbGxpY19lbl9kZXNjZW5kZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19lciIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxp Y19lcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfZXM7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9DeXJpbGxpY19naGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2doZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0N5cmlsbGljX2doZV9iYXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5 cmlsbGljX2doZV9iYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19oYSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQ3lyaWxsaWNfaGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19oYV9kZXNj ZW5kZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2hhX2Rlc2NlbmRlcjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0N5cmlsbGljX2hhcmRzaWduIildCisrCQlwdWJsaWMgY29uc3QgdWludCBD eXJpbGxpY19oYXJkc2lnbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2kiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEN5cmlsbGljX2k7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19pX21hY3Jv biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfaV9tYWNyb247CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9DeXJpbGxpY19pZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfaWU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19pbyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxs aWNfaW87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19qZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQ3lyaWxsaWNfamU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19rYSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQ3lyaWxsaWNfa2E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19rYV9kZXNj ZW5kZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2thX2Rlc2NlbmRlcjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0N5cmlsbGljX2thX3ZlcnRzdHJva2UiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEN5cmlsbGljX2thX3ZlcnRzdHJva2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19samUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2xqZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5 cmlsbGljX25qZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfbmplOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQ3lyaWxsaWNfbyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfbzsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX29fYmFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBD eXJpbGxpY19vX2JhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3BlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBDeXJpbGxpY19wZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3NjaHdhIild CisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19zY2h3YTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5 cmlsbGljX3NoYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfc2hhOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQ3lyaWxsaWNfc2hjaGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGlj X3NoY2hhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfc2hoYSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQ3lyaWxsaWNfc2hoYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3Nob3J0aSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfc2hvcnRpOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3ly aWxsaWNfc29mdHNpZ24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX3NvZnRzaWdu OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfdGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5 cmlsbGljX3RlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfdHNlIildCisrCQlwdWJsaWMgY29u c3QgdWludCBDeXJpbGxpY190c2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY191IildCisrCQlw dWJsaWMgY29uc3QgdWludCBDeXJpbGxpY191OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfdV9t YWNyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX3VfbWFjcm9uOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQ3lyaWxsaWNfdV9zdHJhaWdodCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3ly aWxsaWNfdV9zdHJhaWdodDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3Vfc3RyYWlnaHRfYmFy IildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY191X3N0cmFpZ2h0X2JhcjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0N5cmlsbGljX3ZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY192 ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3lhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBD eXJpbGxpY195YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3llcnUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEN5cmlsbGljX3llcnU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY195dSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfeXU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxp Y196ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfemU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9DeXJpbGxpY196aGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX3poZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0N5cmlsbGljX3poZV9kZXNjZW5kZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEN5cmlsbGljX3poZV9kZXNjZW5kZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9EIildCisrCQlwdWJs aWMgY29uc3QgdWludCBEOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRE9TIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBET1M7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9EYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IERhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0RjYXJvbiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgRGNhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRGVsZXRlIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBEZWxldGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9EaXNwbGF5IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBEaXNwbGF5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRG9jdW1lbnRzIildCisrCQlwdWJsaWMgY29u c3QgdWludCBEb2N1bWVudHM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Eb25nU2lnbiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgRG9uZ1NpZ247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Eb3duIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBEb3duOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRHN0cm9rZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgRHN0cm9rZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0UiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FTkciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEVORzsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0VUSCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRVRIOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfRVpIIildCisrCQlwdWJsaWMgY29uc3QgdWludCBFWkg7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9FYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEVhYm92ZWRvdDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0VhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRWFjdXRlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfRWJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBFYmVsb3dkb3Q7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9FY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEVjYXJvbjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0VjaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBFY2lyY3VtZmxl eDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0VjaXJjdW1mbGV4YWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEVjaXJjdW1mbGV4YWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FY2lyY3VtZmxleGJlbG93ZG90 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBFY2lyY3VtZmxleGJlbG93ZG90OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfRWNpcmN1bWZsZXhncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRWNpcmN1bWZs ZXhncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0VjaXJjdW1mbGV4aG9vayIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgRWNpcmN1bWZsZXhob29rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRWNpcmN1bWZsZXh0aWxk ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRWNpcmN1bWZsZXh0aWxkZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0VjdVNpZ24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEVjdVNpZ247CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9FZGlhZXJlc2lzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBFZGlhZXJlc2lzOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfRWdyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBFZ3JhdmU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9FaG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRWhvb2s7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9FaXN1X1NoaWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBFaXN1X1NoaWZ0Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfRWlzdV90b2dnbGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEVpc3Vf dG9nZ2xlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRWplY3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEVq ZWN0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfRW1hY3JvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRW1h Y3JvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0VuZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRW5kOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfRW9nb25layIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRW9nb25lazsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0VzY2FwZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRXNjYXBlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfRXRoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBFdGg7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9FdGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEV0aWxkZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0V1cm9TaWduIildCisrCQlwdWJsaWMgY29uc3QgdWludCBFdXJvU2lnbjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0V4Y2VsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBFeGNlbDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0V4ZWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEV4ZWN1dGU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9FeHBsb3JlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRXhwbG9yZXI7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9GIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf RjEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYxOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjEwIildCisr CQlwdWJsaWMgY29uc3QgdWludCBGMTA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMTEiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEYxMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YxMiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgRjEyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjEzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBG MTM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9GMTQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYxNDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0YxNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjE1OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfRjE2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMTY7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9G MTciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYxNzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YxOCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgRjE4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjE5IildCisrCQlwdWJs aWMgY29uc3QgdWludCBGMTk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgRjI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMjAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYy MDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0YyMSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjIxOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfRjIyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMjI7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9GMjMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYyMzsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Yy NCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjI0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjI1IildCisr CQlwdWJsaWMgY29uc3QgdWludCBGMjU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMjYiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEYyNjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YyNyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgRjI3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjI4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBG Mjg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9GMjkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYyOTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0YzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0YzMCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjMwOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjMx IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMzE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMzIiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEYzMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YzMyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgRjMzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjM0IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBGMzQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMzUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYz NTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0Y0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGNDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0Y1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGNTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0Y2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGNjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Y3IildCisr CQlwdWJsaWMgY29uc3QgdWludCBGNzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Y4IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBGODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Y5IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBGOTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0ZGcmFuY1NpZ24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEZGcmFuY1NpZ247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEZhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0ZhcnNpXzAiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEZhcnNpXzA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GYXJzaV8xIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBGYXJzaV8xOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRmFyc2lfMiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgRmFyc2lfMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0ZhcnNpXzMiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEZhcnNpXzM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GYXJzaV80IildCisrCQlwdWJs aWMgY29uc3QgdWludCBGYXJzaV80OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRmFyc2lfNSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgRmFyc2lfNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0ZhcnNpXzYiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEZhcnNpXzY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GYXJzaV83IildCisrCQlw dWJsaWMgY29uc3QgdWludCBGYXJzaV83OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRmFyc2lfOCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgRmFyc2lfODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0ZhcnNpXzkiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEZhcnNpXzk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GYXJzaV95ZWgiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEZhcnNpX3llaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Zhdm9yaXRl cyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRmF2b3JpdGVzOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRmlu YW5jZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRmluYW5jZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Zp bmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEZpbmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GaXJzdF9W aXJ0dWFsX1NjcmVlbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRmlyc3RfVmlydHVhbF9TY3Jl ZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Gb3J3YXJkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGb3J3 YXJkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfRnJhbWVCYWNrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBG cmFtZUJhY2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GcmFtZUZvcndhcmQiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEZyYW1lRm9yd2FyZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0ciKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEdhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dhbWUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEdhbWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HYnJldmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEdicmV2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0djYXJvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg R2Nhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2NlZGlsbGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEdjZWRpbGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2NpcmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEdjaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fYW4iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2FuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fYmFu IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9iYW47CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9H ZW9yZ2lhbl9jYW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2NhbjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0dlb3JnaWFuX2NoYXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFu X2NoYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9jaGluIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBHZW9yZ2lhbl9jaGluOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fY2lsIildCisrCQlw dWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9jaWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9k b24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2RvbjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0dlb3JnaWFuX2VuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9lbjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0dlb3JnaWFuX2ZpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9m aTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX2dhbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg R2VvcmdpYW5fZ2FuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fZ2hhbiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgR2VvcmdpYW5fZ2hhbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX2hhZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5faGFlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2Vv cmdpYW5faGFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9oYXI7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9HZW9yZ2lhbl9oZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5faGU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9oaWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdl b3JnaWFuX2hpZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX2hvZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgR2VvcmdpYW5faG9lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5faW4iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2luOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5f amhhbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5famhhbjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0dlb3JnaWFuX2ppbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5famlsOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fa2FuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9y Z2lhbl9rYW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9raGFyIildCisrCQlwdWJsaWMgY29u c3QgdWludCBHZW9yZ2lhbl9raGFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fbGFzIildCisr CQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9sYXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lh bl9tYW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX21hbjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0dlb3JnaWFuX25hciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fbmFyOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3Jn aWFuX29uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fcGFyIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBHZW9yZ2lhbl9wYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9waGFyIildCisrCQlw dWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9waGFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5f cWFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9xYXI7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9HZW9yZ2lhbl9yYWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX3JhZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0dlb3JnaWFuX3NhbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2Vvcmdp YW5fc2FuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fc2hpbiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgR2VvcmdpYW5fc2hpbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX3RhbiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fdGFuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5f dGFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl90YXI7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9HZW9yZ2lhbl91biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fdW47CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9HZW9yZ2lhbl92aW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFu X3ZpbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX3dlIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBHZW9yZ2lhbl93ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX3hhbiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgR2VvcmdpYW5feGFuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5femVuIild CisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl96ZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9y Z2lhbl96aGFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl96aGFyOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfR28iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdvOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf R3JlZWtfQUxQSEEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX0FMUEhBOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfR3JlZWtfQUxQSEFhY2NlbnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVr X0FMUEhBYWNjZW50OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfQkVUQSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgR3JlZWtfQkVUQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX0NISSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgR3JlZWtfQ0hJOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfREVMVEEiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX0RFTFRBOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtf RVBTSUxPTiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfRVBTSUxPTjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0dyZWVrX0VQU0lMT05hY2NlbnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVr X0VQU0lMT05hY2NlbnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19FVEEiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEdyZWVrX0VUQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX0VUQWFjY2VudCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfRVRBYWNjZW50OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3Jl ZWtfR0FNTUEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX0dBTU1BOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfR3JlZWtfSU9UQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfSU9UQTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0dyZWVrX0lPVEFhY2NlbnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdy ZWVrX0lPVEFhY2NlbnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19JT1RBZGlhZXJlc2lzIildCisr CQlwdWJsaWMgY29uc3QgdWludCBHcmVla19JT1RBZGlhZXJlc2lzOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf R3JlZWtfSU9UQWRpZXJlc2lzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19JT1RBZGll cmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19LQVBQQSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgR3JlZWtfS0FQUEE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19MQU1CREEiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEdyZWVrX0xBTUJEQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX0xBTURBIild CisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19MQU1EQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVr X01VIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19NVTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dy ZWVrX05VIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19OVTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0dyZWVrX09NRUdBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19PTUVHQTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0dyZWVrX09NRUdBYWNjZW50IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVl a19PTUVHQWFjY2VudDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX09NSUNST04iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEdyZWVrX09NSUNST047CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19PTUlDUk9O YWNjZW50IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19PTUlDUk9OYWNjZW50OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfR3JlZWtfUEhJIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19QSEk7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9HcmVla19QSSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtf UEk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19QU0kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdy ZWVrX1BTSTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX1JITyIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgR3JlZWtfUkhPOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfU0lHTUEiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEdyZWVrX1NJR01BOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfVEFVIildCisrCQlw dWJsaWMgY29uc3QgdWludCBHcmVla19UQVU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19USEVUQSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfVEhFVEE7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVl a19VUFNJTE9OIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19VUFNJTE9OOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfR3JlZWtfVVBTSUxPTmFjY2VudCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3Jl ZWtfVVBTSUxPTmFjY2VudDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX1VQU0lMT05kaWVyZXNpcyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfVVBTSUxPTmRpZXJlc2lzOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfR3JlZWtfWEkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX1hJOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfR3JlZWtfWkVUQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfWkVUQTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0dyZWVrX2FjY2VudGRpZXJlc2lzIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBHcmVla19hY2NlbnRkaWVyZXNpczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX2FscGhhIild CisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19hbHBoYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVr X2FscGhhYWNjZW50IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19hbHBoYWFjY2VudDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0dyZWVrX2JldGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVr X2JldGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19jaGkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEdyZWVrX2NoaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX2RlbHRhIildCisrCQlwdWJsaWMgY29u c3QgdWludCBHcmVla19kZWx0YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX2Vwc2lsb24iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX2Vwc2lsb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19l cHNpbG9uYWNjZW50IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19lcHNpbG9uYWNjZW50 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfZXRhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVl a19ldGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19ldGFhY2NlbnQiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEdyZWVrX2V0YWFjY2VudDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX2ZpbmFsc21hbGxz aWdtYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfZmluYWxzbWFsbHNpZ21hOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfR3JlZWtfZ2FtbWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX2dh bW1hOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfaG9yaXpiYXIiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEdyZWVrX2hvcml6YmFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfaW90YSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgR3JlZWtfaW90YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX2lvdGFhY2Nl bnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX2lvdGFhY2NlbnQ7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9HcmVla19pb3RhYWNjZW50ZGllcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdy ZWVrX2lvdGFhY2NlbnRkaWVyZXNpczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX2lvdGFkaWVyZXNp cyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfaW90YWRpZXJlc2lzOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfR3JlZWtfa2FwcGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX2thcHBhOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfR3JlZWtfbGFtYmRhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVl a19sYW1iZGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19sYW1kYSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgR3JlZWtfbGFtZGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19tdSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgR3JlZWtfbXU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19udSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgR3JlZWtfbnU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19vbWVnYSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfb21lZ2E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19v bWVnYWFjY2VudCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfb21lZ2FhY2NlbnQ7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9HcmVla19vbWljcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVl a19vbWljcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfb21pY3JvbmFjY2VudCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgR3JlZWtfb21pY3JvbmFjY2VudDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVr X3BoaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfcGhpOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf R3JlZWtfcGkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX3BpOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfR3JlZWtfcHNpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19wc2k7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9HcmVla19yaG8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX3JobzsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0dyZWVrX3NpZ21hIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19z aWdtYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX3N3aXRjaCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgR3JlZWtfc3dpdGNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfdGF1IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBHcmVla190YXU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla190aGV0YSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgR3JlZWtfdGhldGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla191cHNp bG9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla191cHNpbG9uOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfR3JlZWtfdXBzaWxvbmFjY2VudCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfdXBz aWxvbmFjY2VudDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX3Vwc2lsb25hY2NlbnRkaWVyZXNpcyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfdXBzaWxvbmFjY2VudGRpZXJlc2lzOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfR3JlZWtfdXBzaWxvbmRpZXJlc2lzIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBHcmVla191cHNpbG9uZGllcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla194aSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgR3JlZWtfeGk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla196ZXRhIild CisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla196ZXRhOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZW4i KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgSDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgSGFuZ3VsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0EiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEhhbmd1bF9BOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0FFIildCisrCQlw dWJsaWMgY29uc3QgdWludCBIYW5ndWxfQUU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfQXJhZUEi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9BcmFlQTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hh bmd1bF9BcmFlQUUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9BcmFlQUU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9IYW5ndWxfQmFuamEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9C YW5qYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9DaWV1YyIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgSGFuZ3VsX0NpZXVjOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0NvZGVpbnB1dCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0NvZGVpbnB1dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1 bF9EaWtldWQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9EaWtldWQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9IYW5ndWxfRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0U7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9IYW5ndWxfRU8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9FTzsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0hhbmd1bF9FVSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3Vs X0VVOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0VuZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg SGFuZ3VsX0VuZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9IYW5qYSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgSGFuZ3VsX0hhbmphOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0hpZXVoIildCisr CQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSGlldWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxf SSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0k7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5n dWxfSWV1bmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9JZXVuZzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0hhbmd1bF9KX0NpZXVjIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9D aWV1YzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX0Rpa2V1ZCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgSGFuZ3VsX0pfRGlrZXVkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfSGlldWgiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX0hpZXVoOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFu Z3VsX0pfSWV1bmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX0lldW5nOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfSGFuZ3VsX0pfSmlldWoiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1 bF9KX0ppZXVqOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfS2hpZXVxIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBIYW5ndWxfSl9LaGlldXE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9LaXll b2ciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX0tpeWVvZzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0hhbmd1bF9KX0tpeWVvZ1Npb3MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9K X0tpeWVvZ1Npb3M7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9La29namlEYWxyaW5JZXVuZyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfS2tvZ2ppRGFscmluSWV1bmc7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9IYW5ndWxfSl9NaWV1bSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3Vs X0pfTWlldW07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9OaWV1biIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgSGFuZ3VsX0pfTmlldW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9OaWV1bkhp ZXVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9OaWV1bkhpZXVoOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfSGFuZ3VsX0pfTmlldW5KaWV1aiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFu Z3VsX0pfTmlldW5KaWV1ajsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX1BhblNpb3MiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX1BhblNpb3M7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5n dWxfSl9QaGlldWYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX1BoaWV1ZjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0hhbmd1bF9KX1BpZXViIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5n dWxfSl9QaWV1YjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX1BpZXViU2lvcyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfUGlldWJTaW9zOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3Vs X0pfUmlldWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX1JpZXVsOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfSGFuZ3VsX0pfUmlldWxIaWV1aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFu Z3VsX0pfUmlldWxIaWV1aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX1JpZXVsS2l5ZW9nIild CisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9SaWV1bEtpeWVvZzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0hhbmd1bF9KX1JpZXVsTWlldW0iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9K X1JpZXVsTWlldW07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9SaWV1bFBoaWV1ZiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfUmlldWxQaGlldWY7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9I YW5ndWxfSl9SaWV1bFBpZXViIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9SaWV1 bFBpZXViOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfUmlldWxTaW9zIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBIYW5ndWxfSl9SaWV1bFNpb3M7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9S aWV1bFRpZXV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9SaWV1bFRpZXV0Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfU2lvcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFu Z3VsX0pfU2lvczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX1NzYW5nS2l5ZW9nIildCisrCQlw dWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9Tc2FuZ0tpeWVvZzsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hh bmd1bF9KX1NzYW5nU2lvcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfU3NhbmdT aW9zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfVGlldXQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEhhbmd1bF9KX1RpZXV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfWWVvcmluSGlldWgi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX1llb3JpbkhpZXVoOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfSGFuZ3VsX0phbW8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KYW1vOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0plb25qYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFu Z3VsX0plb25qYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KaWV1aiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgSGFuZ3VsX0ppZXVqOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0toaWV1cSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0toaWV1cTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1 bF9LaXllb2ciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9LaXllb2c7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9IYW5ndWxfS2l5ZW9nU2lvcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3Vs X0tpeWVvZ1Npb3M7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfS2tvZ2ppRGFscmluSWV1bmciKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9La29namlEYWxyaW5JZXVuZzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0hhbmd1bF9NaWV1bSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX01pZXVt OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX011bHRpcGxlQ2FuZGlkYXRlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBIYW5ndWxfTXVsdGlwbGVDYW5kaWRhdGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5n dWxfTmlldW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9OaWV1bjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0hhbmd1bF9OaWV1bkhpZXVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxf TmlldW5IaWV1aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9OaWV1bkppZXVqIildCisrCQlwdWJs aWMgY29uc3QgdWludCBIYW5ndWxfTmlldW5KaWV1ajsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9P IildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfTzsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1 bF9PRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX09FOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf SGFuZ3VsX1BhblNpb3MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9QYW5TaW9zOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1BoaWV1ZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFu Z3VsX1BoaWV1ZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9QaWV1YiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgSGFuZ3VsX1BpZXViOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1BpZXViU2lvcyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1BpZXViU2lvczsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0hhbmd1bF9Qb3N0SGFuamEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9Qb3N0SGFu amE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfUHJlSGFuamEiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEhhbmd1bF9QcmVIYW5qYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9QcmV2aW91c0NhbmRp ZGF0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1ByZXZpb3VzQ2FuZGlkYXRlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1JpZXVsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5n dWxfUmlldWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfUmlldWxIaWV1aCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgSGFuZ3VsX1JpZXVsSGlldWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfUmll dWxLaXllb2ciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9SaWV1bEtpeWVvZzsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0hhbmd1bF9SaWV1bE1pZXVtIildCisrCQlwdWJsaWMgY29uc3QgdWludCBI YW5ndWxfUmlldWxNaWV1bTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9SaWV1bFBoaWV1ZiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1JpZXVsUGhpZXVmOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf SGFuZ3VsX1JpZXVsUGlldWIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9SaWV1bFBp ZXViOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1JpZXVsU2lvcyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgSGFuZ3VsX1JpZXVsU2lvczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9SaWV1bFRpZXV0 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfUmlldWxUaWV1dDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0hhbmd1bF9SaWV1bFllb3JpbkhpZXVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5n dWxfUmlldWxZZW9yaW5IaWV1aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9Sb21hamEiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9Sb21hamE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxf U2luZ2xlQ2FuZGlkYXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfU2luZ2xlQ2Fu ZGlkYXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1Npb3MiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEhhbmd1bF9TaW9zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1NwZWNpYWwiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEhhbmd1bF9TcGVjaWFsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1Nz YW5nRGlrZXVkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfU3NhbmdEaWtldWQ7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9IYW5ndWxfU3NhbmdKaWV1aiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg SGFuZ3VsX1NzYW5nSmlldWo7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfU3NhbmdLaXllb2ciKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9Tc2FuZ0tpeWVvZzsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0hhbmd1bF9Tc2FuZ1BpZXViIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfU3NhbmdQ aWV1YjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9Tc2FuZ1Npb3MiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEhhbmd1bF9Tc2FuZ1Npb3M7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfU3RhcnQiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9TdGFydDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1 bF9TdW5reWVvbmdldW1NaWV1bSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1N1bmt5 ZW9uZ2V1bU1pZXVtOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1N1bmt5ZW9uZ2V1bVBoaWV1ZiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1N1bmt5ZW9uZ2V1bVBoaWV1ZjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0hhbmd1bF9TdW5reWVvbmdldW1QaWV1YiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgSGFuZ3VsX1N1bmt5ZW9uZ2V1bVBpZXViOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1RpZXV0 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfVGlldXQ7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9I YW5ndWxfVSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1U7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9IYW5ndWxfV0EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9XQTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0hhbmd1bF9XQUUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9XQUU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9IYW5ndWxfV0UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9X RTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9XRU8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhh bmd1bF9XRU87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfV0kiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEhhbmd1bF9XSTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9ZQSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgSGFuZ3VsX1lBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1lBRSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgSGFuZ3VsX1lBRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9ZRSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1lFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1lF TyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1lFTzsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hh bmd1bF9ZSSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1lJOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfSGFuZ3VsX1lPIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfWU87CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9IYW5ndWxfWVUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9ZVTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0hhbmd1bF9ZZW9yaW5IaWV1aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg SGFuZ3VsX1llb3JpbkhpZXVoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX3N3aXRjaCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX3N3aXRjaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmtha3Ui KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmtha3U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IY2lyY3Vt ZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGNpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9IZWJyZXdfc3dpdGNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIZWJyZXdfc3dpdGNoOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfSGVscCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGVscDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0hlbmthbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGVua2FuOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfSGVua2FuX01vZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhlbmthbl9Nb2Rl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfSGliZXJuYXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIaWJl cm5hdGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IaXJhZ2FuYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg SGlyYWdhbmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IaXJhZ2FuYV9LYXRha2FuYSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgSGlyYWdhbmFfS2F0YWthbmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IaXN0b3J5Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBIaXN0b3J5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSG9tZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgSG9tZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hvbWVQYWdlIildCisr CQlwdWJsaWMgY29uc3QgdWludCBIb21lUGFnZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hvdExpbmtzIild CisrCQlwdWJsaWMgY29uc3QgdWludCBIb3RMaW5rczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hzdHJva2Ui KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhzdHJva2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IeXBlcl9M IildCisrCQlwdWJsaWMgY29uc3QgdWludCBIeXBlcl9MOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSHlwZXJf UiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSHlwZXJfUjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0kiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fQ2VudGVyX09iamVj dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0NlbnRlcl9PYmplY3Q7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9JU09fQ29udGludW91c19VbmRlcmxpbmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElT T19Db250aW51b3VzX1VuZGVybGluZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19EaXNjb250aW51b3Vz X1VuZGVybGluZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0Rpc2NvbnRpbnVvdXNfVW5k ZXJsaW5lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0VtcGhhc2l6ZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgSVNPX0VtcGhhc2l6ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19FbnRlciIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgSVNPX0VudGVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0Zhc3RfQ3Vyc29y X0Rvd24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19GYXN0X0N1cnNvcl9Eb3duOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfSVNPX0Zhc3RfQ3Vyc29yX0xlZnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IElTT19GYXN0X0N1cnNvcl9MZWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0Zhc3RfQ3Vyc29yX1Jp Z2h0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fRmFzdF9DdXJzb3JfUmlnaHQ7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9JU09fRmFzdF9DdXJzb3JfVXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElT T19GYXN0X0N1cnNvcl9VcDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19GaXJzdF9Hcm91cCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgSVNPX0ZpcnN0X0dyb3VwOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0Zp cnN0X0dyb3VwX0xvY2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19GaXJzdF9Hcm91cF9M b2NrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0dyb3VwX0xhdGNoIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBJU09fR3JvdXBfTGF0Y2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fR3JvdXBfTG9jayIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0dyb3VwX0xvY2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09f R3JvdXBfU2hpZnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19Hcm91cF9TaGlmdDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0lTT19MYXN0X0dyb3VwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09f TGFzdF9Hcm91cDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19MYXN0X0dyb3VwX0xvY2siKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IElTT19MYXN0X0dyb3VwX0xvY2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09f TGVmdF9UYWIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19MZWZ0X1RhYjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0lTT19MZXZlbDJfTGF0Y2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19MZXZl bDJfTGF0Y2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fTGV2ZWwzX0xhdGNoIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBJU09fTGV2ZWwzX0xhdGNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0xldmVsM19M b2NrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fTGV2ZWwzX0xvY2s7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9JU09fTGV2ZWwzX1NoaWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fTGV2ZWwz X1NoaWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0xldmVsNV9MYXRjaCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgSVNPX0xldmVsNV9MYXRjaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19MZXZlbDVfTG9j ayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0xldmVsNV9Mb2NrOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfSVNPX0xldmVsNV9TaGlmdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0xldmVsNV9T aGlmdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19Mb2NrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJ U09fTG9jazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19Nb3ZlX0xpbmVfRG93biIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgSVNPX01vdmVfTGluZV9Eb3duOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX01vdmVf TGluZV9VcCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX01vdmVfTGluZV9VcDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0lTT19OZXh0X0dyb3VwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fTmV4 dF9Hcm91cDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19OZXh0X0dyb3VwX0xvY2siKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IElTT19OZXh0X0dyb3VwX0xvY2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fUGFy dGlhbF9MaW5lX0Rvd24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19QYXJ0aWFsX0xpbmVf RG93bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19QYXJ0aWFsX0xpbmVfVXAiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IElTT19QYXJ0aWFsX0xpbmVfVXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fUGFydGlh bF9TcGFjZV9MZWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fUGFydGlhbF9TcGFjZV9M ZWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX1BhcnRpYWxfU3BhY2VfUmlnaHQiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IElTT19QYXJ0aWFsX1NwYWNlX1JpZ2h0OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNP X1ByZXZfR3JvdXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19QcmV2X0dyb3VwOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfSVNPX1ByZXZfR3JvdXBfTG9jayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg SVNPX1ByZXZfR3JvdXBfTG9jazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19SZWxlYXNlX0JvdGhfTWFy Z2lucyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX1JlbGVhc2VfQm90aF9NYXJnaW5zOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfSVNPX1JlbGVhc2VfTWFyZ2luX0xlZnQiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IElTT19SZWxlYXNlX01hcmdpbl9MZWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX1JlbGVh c2VfTWFyZ2luX1JpZ2h0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fUmVsZWFzZV9NYXJn aW5fUmlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fU2V0X01hcmdpbl9MZWZ0IildCisrCQlwdWJs aWMgY29uc3QgdWludCBJU09fU2V0X01hcmdpbl9MZWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX1Nl dF9NYXJnaW5fUmlnaHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19TZXRfTWFyZ2luX1Jp Z2h0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfSWFib3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBJ YWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IElhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0liZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgSWJlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSWJyZXZlIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBJYnJldmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgSWNpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JZGlhZXJlc2lzIildCisrCQlw dWJsaWMgY29uc3QgdWludCBJZGlhZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSWdyYXZlIildCisr CQlwdWJsaWMgY29uc3QgdWludCBJZ3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JaG9vayIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgSWhvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JbWFjcm9uIildCisrCQlw dWJsaWMgY29uc3QgdWludCBJbWFjcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSW5zZXJ0IildCisrCQlw dWJsaWMgY29uc3QgdWludCBJbnNlcnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Jb2dvbmVrIildCisrCQlw dWJsaWMgY29uc3QgdWludCBJb2dvbmVrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSXRpbGRlIildCisrCQlw dWJsaWMgY29uc3QgdWludCBJdGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9KIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBKOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSmNpcmN1bWZsZXgiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEpjaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgSzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQXzAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEtQXzA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF8xIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF8x OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfS1BfMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfMjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0tQXzMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQXzM7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9LUF80IildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF80OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfS1BfNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfNTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQ XzYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQXzY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF83Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBLUF83OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfOCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgS1BfODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQXzkiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEtQXzk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9BZGQiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEtQX0FkZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX0JlZ2luIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBLUF9CZWdpbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX0RlY2ltYWwiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEtQX0RlY2ltYWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9EZWxldGUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEtQX0RlbGV0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX0Rpdmlk ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfRGl2aWRlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1Bf RG93biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfRG93bjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQ X0VuZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfRW5kOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1Bf RW50ZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX0VudGVyOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf S1BfRXF1YWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX0VxdWFsOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfS1BfRjEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX0YxOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf S1BfRjIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX0YyOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1Bf RjMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX0YzOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfRjQi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX0Y0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfSG9tZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfSG9tZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX0luc2Vy dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfSW5zZXJ0OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1Bf TGVmdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfTGVmdDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQ X011bHRpcGx5IildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9NdWx0aXBseTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0tQX05leHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX05leHQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9LUF9QYWdlX0Rvd24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX1BhZ2VfRG93 bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0tQX1BhZ2VfVXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQ X1BhZ2VfVXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9QcmlvciIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgS1BfUHJpb3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9SaWdodCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgS1BfUmlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9TZXBhcmF0b3IiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEtQX1NlcGFyYXRvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX1NwYWNlIildCisr CQlwdWJsaWMgY29uc3QgdWludCBLUF9TcGFjZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX1N1YnRyYWN0 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9TdWJ0cmFjdDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQ X1RhYiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfVGFiOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1Bf VXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX1VwOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS2FuYV9M b2NrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLYW5hX0xvY2s7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9L YW5hX1NoaWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBLYW5hX1NoaWZ0OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfS2FuamkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEthbmppOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfS2FuamlfQmFuZ291IildCisrCQlwdWJsaWMgY29uc3QgdWludCBLYW5qaV9CYW5nb3U7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9LYXRha2FuYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS2F0YWthbmE7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9LYmRCcmlnaHRuZXNzRG93biIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgS2JkQnJpZ2h0bmVzc0Rvd247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LYmRCcmlnaHRuZXNzVXAiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEtiZEJyaWdodG5lc3NVcDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0ti ZExpZ2h0T25PZmYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtiZExpZ2h0T25PZmY7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9LY2VkaWxsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS2NlZGlsbGE7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9Lb3JlYW5fV29uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLb3JlYW5f V29uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfTCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0wxIildCisrCQlwdWJsaWMgY29uc3QgdWludCBMMTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0wxMCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTDEwOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTDIiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEwyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTDMiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEwzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTDQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEw0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTDUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEw1Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfTDYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEw2OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfTDciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEw3OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTDgi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEw4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTDkiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEw5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGFjdXRlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBMYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MYXN0X1ZpcnR1YWxfU2NyZWVuIild CisrCQlwdWJsaWMgY29uc3QgdWludCBMYXN0X1ZpcnR1YWxfU2NyZWVuOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfTGF1bmNoMCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGF1bmNoMDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0xhdW5jaDEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExhdW5jaDE7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9MYXVuY2gyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBMYXVuY2gyOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfTGF1bmNoMyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGF1bmNoMzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0xhdW5jaDQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExhdW5jaDQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9MYXVuY2g1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBMYXVuY2g1OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfTGF1bmNoNiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGF1bmNoNjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0xhdW5jaDciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExhdW5jaDc7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9MYXVuY2g4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBMYXVuY2g4OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfTGF1bmNoOSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGF1bmNoOTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0xhdW5jaEEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExhdW5jaEE7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9MYXVuY2hCIildCisrCQlwdWJsaWMgY29uc3QgdWludCBMYXVuY2hCOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfTGF1bmNoQyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGF1bmNoQzsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0xhdW5jaEQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExhdW5jaEQ7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9MYXVuY2hFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBMYXVuY2hF OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfTGF1bmNoRiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGF1bmNo RjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0xiZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGJl bG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGNhcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBM Y2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MY2VkaWxsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg TGNlZGlsbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MZWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBM ZWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfTGlnaHRCdWxiIildCisrCQlwdWJsaWMgY29uc3QgdWludCBM aWdodEJ1bGI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MaW5lZmVlZCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgTGluZWZlZWQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MaXJhU2lnbiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgTGlyYVNpZ247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Mb2dHcmFiSW5mbyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgTG9nR3JhYkluZm87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Mb2dPZmYiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IExvZ09mZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xvZ1dpbmRvd1RyZWUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IExvZ1dpbmRvd1RyZWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Mc3Ry b2tlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBMc3Ryb2tlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgTTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01hYm92ZWRvdCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgTWFib3ZlZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWFjZWRvbmlh X0RTRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTWFjZWRvbmlhX0RTRTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX01hY2Vkb25pYV9HSkUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1hY2Vkb25pYV9HSkU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9NYWNlZG9uaWFfS0pFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBN YWNlZG9uaWFfS0pFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWFjZWRvbmlhX2RzZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgTWFjZWRvbmlhX2RzZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01hY2Vkb25pYV9namUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1hY2Vkb25pYV9namU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9N YWNlZG9uaWFfa2plIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNYWNlZG9uaWFfa2plOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfTWFlX0tvaG8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1hZV9Lb2hvOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfTWFpbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTWFpbDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX01haWxGb3J3YXJkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNYWlsRm9yd2Fy ZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX01hcmtldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTWFya2V0 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfTWFzc3lvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNYXNzeW87 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9NZWV0aW5nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNZWV0aW5n OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfTWVtbyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTWVtbzsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX01lbnUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1lbnU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9NZW51S0IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1lbnVLQjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX01lbnVQQiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTWVudVBCOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfTWVzc2VuZ2VyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNZXNzZW5nZXI7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9NZXRhX0wiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1ldGFfTDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX01ldGFfUiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTWV0YV9SOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfTWlsbFNpZ24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1pbGxTaWduOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfTW9kZUxvY2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1vZGVMb2NrOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfTW9kZV9zd2l0Y2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1vZGVf c3dpdGNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTW9uQnJpZ2h0bmVzc0Rvd24iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IE1vbkJyaWdodG5lc3NEb3duOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTW9uQnJpZ2h0bmVz c1VwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNb25CcmlnaHRuZXNzVXA7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9Nb3VzZUtleXNfQWNjZWxfRW5hYmxlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNb3Vz ZUtleXNfQWNjZWxfRW5hYmxlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTW91c2VLZXlzX0VuYWJsZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgTW91c2VLZXlzX0VuYWJsZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX011 aGVua2FuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNdWhlbmthbjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X011bHRpX2tleSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTXVsdGlfa2V5OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfTXVsdGlwbGVDYW5kaWRhdGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE11bHRpcGxl Q2FuZGlkYXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTXVzaWMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IE11c2ljOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTXlDb21wdXRlciIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgTXlDb21wdXRlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX015U2l0ZXMiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IE15U2l0ZXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9OIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBOOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfTmFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBOYWN1 dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9OYWlyYVNpZ24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE5h aXJhU2lnbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX05jYXJvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg TmNhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTmNlZGlsbGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IE5jZWRpbGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTmV3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBO ZXc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9OZXdTaGVxZWxTaWduIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBOZXdTaGVxZWxTaWduOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTmV3cyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgTmV3czsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX05leHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IE5leHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9OZXh0X1ZNb2RlIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBOZXh0X1ZNb2RlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTmV4dF9WaXJ0dWFsX1NjcmVlbiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgTmV4dF9WaXJ0dWFsX1NjcmVlbjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX050 aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTnRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTnVt X0xvY2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE51bV9Mb2NrOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf TyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09FIildCisrCQlw dWJsaWMgY29uc3QgdWludCBPRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09hY3V0ZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgT2FjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT2JhcnJlZCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgT2JhcnJlZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09iZWxvd2RvdCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgT2JlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT2Nhcm9uIildCisrCQlw dWJsaWMgY29uc3QgdWludCBPY2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PY2lyY3VtZmxleCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgT2NpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PY2lyY3Vt ZmxleGFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPY2lyY3VtZmxleGFjdXRlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfT2NpcmN1bWZsZXhiZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg T2NpcmN1bWZsZXhiZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09jaXJjdW1mbGV4Z3JhdmUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IE9jaXJjdW1mbGV4Z3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9P Y2lyY3VtZmxleGhvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9jaXJjdW1mbGV4aG9vazsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX09jaXJjdW1mbGV4dGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IE9jaXJjdW1mbGV4dGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PZGlhZXJlc2lzIildCisrCQlwdWJs aWMgY29uc3QgdWludCBPZGlhZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT2RvdWJsZWFjdXRlIild CisrCQlwdWJsaWMgY29uc3QgdWludCBPZG91YmxlYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PZmZp Y2VIb21lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPZmZpY2VIb21lOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfT2dyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPZ3JhdmU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9PaG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2hvb2s7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9P aG9ybiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2hvcm47CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PaG9y bmFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPaG9ybmFjdXRlOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfT2hvcm5iZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2hvcm5iZWxvd2RvdDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX09ob3JuZ3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9ob3Ju Z3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PaG9ybmhvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IE9ob3JuaG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09ob3JudGlsZGUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IE9ob3JudGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PbWFjcm9uIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBPbWFjcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT29ibGlxdWUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IE9vYmxpcXVlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT3BlbiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgT3BlbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09wZW5VUkwiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IE9wZW5VUkw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PcHRpb24iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IE9wdGlvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09zbGFzaCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgT3NsYXNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT3RpbGRlIildCisrCQlwdWJsaWMgY29u c3QgdWludCBPdGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PdmVybGF5MV9FbmFibGUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IE92ZXJsYXkxX0VuYWJsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX092ZXJsYXky X0VuYWJsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT3ZlcmxheTJfRW5hYmxlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfUCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Bh Ym92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUGFib3ZlZG90OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfUGFnZV9Eb3duIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQYWdlX0Rvd247CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9QYWdlX1VwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQYWdlX1VwOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfUGFzdGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBhc3RlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfUGF1c2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBhdXNlOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfUGVzZXRhU2lnbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUGVzZXRhU2lnbjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1Bob25lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQaG9uZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1BpY3R1cmVzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQaWN0dXJlczsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1BvaW50ZXJfQWNjZWxlcmF0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9p bnRlcl9BY2NlbGVyYXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9CdXR0b24xIildCisrCQlw dWJsaWMgY29uc3QgdWludCBQb2ludGVyX0J1dHRvbjE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVy X0J1dHRvbjIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfQnV0dG9uMjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1BvaW50ZXJfQnV0dG9uMyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRl cl9CdXR0b24zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9CdXR0b240IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBQb2ludGVyX0J1dHRvbjQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0J1dHRv bjUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfQnV0dG9uNTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1BvaW50ZXJfQnV0dG9uX0RmbHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJf QnV0dG9uX0RmbHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0RibENsaWNrMSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgUG9pbnRlcl9EYmxDbGljazE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVy X0RibENsaWNrMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9EYmxDbGljazI7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0RibENsaWNrMyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg UG9pbnRlcl9EYmxDbGljazM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0RibENsaWNrNCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9EYmxDbGljazQ7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Q b2ludGVyX0RibENsaWNrNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9EYmxDbGlj azU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0RibENsaWNrX0RmbHQiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFBvaW50ZXJfRGJsQ2xpY2tfRGZsdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJf RGZsdEJ0bk5leHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfRGZsdEJ0bk5leHQ7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0RmbHRCdG5QcmV2IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBQb2ludGVyX0RmbHRCdG5QcmV2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9Eb3duIild CisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0Rvd247CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2lu dGVyX0Rvd25MZWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0Rvd25MZWZ0Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9Eb3duUmlnaHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFBvaW50ZXJfRG93blJpZ2h0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9EcmFnMSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9EcmFnMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJf RHJhZzIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfRHJhZzI7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9Qb2ludGVyX0RyYWczIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0RyYWcz OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9EcmFnNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg UG9pbnRlcl9EcmFnNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfRHJhZzUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFBvaW50ZXJfRHJhZzU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0RyYWdf RGZsdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9EcmFnX0RmbHQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9Qb2ludGVyX0VuYWJsZUtleXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50 ZXJfRW5hYmxlS2V5czsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfTGVmdCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgUG9pbnRlcl9MZWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9SaWdodCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9SaWdodDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Bv aW50ZXJfVXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfVXA7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9Qb2ludGVyX1VwTGVmdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9VcExl ZnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX1VwUmlnaHQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFBvaW50ZXJfVXBSaWdodDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Bvd2VyRG93biIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgUG93ZXJEb3duOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG93ZXJPZmYiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFBvd2VyT2ZmOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUHJldl9WTW9kZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgUHJldl9WTW9kZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1ByZXZf VmlydHVhbF9TY3JlZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFByZXZfVmlydHVhbF9TY3Jl ZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9QcmV2aW91c0NhbmRpZGF0ZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgUHJldmlvdXNDYW5kaWRhdGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9QcmludCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgUHJpbnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9QcmlvciIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgUHJpb3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9RIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBROworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1IxIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSMTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1IxMCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUjEwOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUjEx IildCisrCQlwdWJsaWMgY29uc3QgdWludCBSMTE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SMTIiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFIxMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1IxMyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgUjEzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUjE0IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBSMTQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SMTUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFIx NTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1IyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSMjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1IzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSMzsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1I0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBSNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1I1IildCisr CQlwdWJsaWMgY29uc3QgdWludCBSNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1I2IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBSNjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1I3IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBSNzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1I4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBSODsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1I5IildCisrCQlwdWJsaWMgY29uc3QgdWludCBSOTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1JhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUmFjdXRlOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfUmNhcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSY2Fyb247CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9SY2VkaWxsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUmNlZGlsbGE7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9SZWQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFJlZDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Jl ZG8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFJlZG87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SZWZyZXNo IildCisrCQlwdWJsaWMgY29uc3QgdWludCBSZWZyZXNoOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUmVsb2Fk IildCisrCQlwdWJsaWMgY29uc3QgdWludCBSZWxvYWQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SZXBlYXRL ZXlzX0VuYWJsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUmVwZWF0S2V5c19FbmFibGU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9SZXBseSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUmVwbHk7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9SZXR1cm4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFJldHVybjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1JpZ2h0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBSaWdodDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1JvY2tlckRvd24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFJvY2tlckRvd247Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9Sb2NrZXJFbnRlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUm9ja2Vy RW50ZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Sb2NrZXJVcCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg Um9ja2VyVXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Sb21hamkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFJvbWFqaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1JvdGF0ZVdpbmRvd3MiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFJvdGF0ZVdpbmRvd3M7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Sb3RhdGlvbktCIildCisrCQlw dWJsaWMgY29uc3QgdWludCBSb3RhdGlvbktCOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUm90YXRpb25QQiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgUm90YXRpb25QQjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1J1cGVl U2lnbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUnVwZWVTaWduOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf UyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NDSFdBIildCisr CQlwdWJsaWMgY29uc3QgdWludCBTQ0hXQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NhYm92ZWRvdCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgU2Fib3ZlZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2FjdXRlIild CisrCQlwdWJsaWMgY29uc3QgdWludCBTYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TYXZlIildCisr CQlwdWJsaWMgY29uc3QgdWludCBTYXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2Nhcm9uIildCisrCQlw dWJsaWMgY29uc3QgdWludCBTY2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TY2VkaWxsYSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgU2NlZGlsbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TY2lyY3VtZmxleCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2NpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TY3Jl ZW5TYXZlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2NyZWVuU2F2ZXI7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9TY3JvbGxDbGljayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2Nyb2xsQ2xpY2s7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9TY3JvbGxEb3duIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTY3JvbGxE b3duOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfU2Nyb2xsVXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNj cm9sbFVwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2Nyb2xsX0xvY2siKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFNjcm9sbF9Mb2NrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2VhcmNoIildCisrCQlwdWJsaWMgY29u c3QgdWludCBTZWFyY2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TZWxlY3QiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFNlbGVjdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NlbGVjdEJ1dHRvbiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgU2VsZWN0QnV0dG9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2VuZCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgU2VuZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NlcmJpYW5fREpFIildCisrCQlw dWJsaWMgY29uc3QgdWludCBTZXJiaWFuX0RKRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NlcmJpYW5fRFpF IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTZXJiaWFuX0RaRTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Nl cmJpYW5fSkUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNlcmJpYW5fSkU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9TZXJiaWFuX0xKRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2VyYmlhbl9MSkU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9TZXJiaWFuX05KRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2VyYmlh bl9OSkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TZXJiaWFuX1RTSEUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFNlcmJpYW5fVFNIRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NlcmJpYW5fZGplIildCisrCQlwdWJs aWMgY29uc3QgdWludCBTZXJiaWFuX2RqZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NlcmJpYW5fZHplIild CisrCQlwdWJsaWMgY29uc3QgdWludCBTZXJiaWFuX2R6ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NlcmJp YW5famUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNlcmJpYW5famU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9TZXJiaWFuX2xqZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2VyYmlhbl9samU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9TZXJiaWFuX25qZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2VyYmlhbl9u amU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9TZXJiaWFuX3RzaGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFNlcmJpYW5fdHNoZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NoaWZ0X0wiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFNoaWZ0X0w7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaGlmdF9Mb2NrIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBTaGlmdF9Mb2NrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2hpZnRfUiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgU2hpZnRfUjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Nob3AiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFNob3A7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5nbGVDYW5kaWRhdGUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFNpbmdsZUNhbmRpZGF0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Npbmhf YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9hOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9h YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9hYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Npbmhf YWEyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2FhMjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Np bmhfYWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfYWU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9T aW5oX2FlMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9hZTI7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9TaW5oX2FlZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9hZWU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9TaW5oX2FlZTIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfYWVlMjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1NpbmhfYWkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfYWk7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9TaW5oX2FpMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9haTI7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9TaW5oX2FsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2FsOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfU2luaF9hdSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9hdTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1NpbmhfYXUyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2F1 MjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1NpbmhfYmEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhf YmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2JoYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2lu aF9iaGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2NhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBT aW5oX2NhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9jaGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFNpbmhfY2hhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9kZGEiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFNpbmhfZGRhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9kZGhhIildCisrCQlwdWJsaWMgY29u c3QgdWludCBTaW5oX2RkaGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2RoYSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgU2luaF9kaGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2RoaGEiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFNpbmhfZGhoYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgU2luaF9lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9lMiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgU2luaF9lMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfZWUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFNpbmhfZWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2VlMiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9lZTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2ZhIild CisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2ZhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9nYSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9nYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfZ2hh IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2doYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Npbmhf aDIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfaDI7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5o X2hhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2hhOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2lu aF9pIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2k7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5o X2kyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2kyOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2lu aF9paSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9paTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Np bmhfaWkyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2lpMjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1NpbmhfamEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfamE7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9TaW5oX2poYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9qaGE7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9TaW5oX2pueWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfam55YTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1Npbmhfa2EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfa2E7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9TaW5oX2toYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9raGE7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9TaW5oX2t1bmRkYWxpeWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNp bmhfa3VuZGRhbGl5YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfbGEiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFNpbmhfbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2xsYSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgU2luaF9sbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2x1IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBTaW5oX2x1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9sdTIiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFNpbmhfbHUyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9sdXUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFNpbmhfbHV1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9sdXUyIildCisr CQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2x1dTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX21hIild CisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX21hOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9tYmEi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfbWJhOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9u YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9uYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Npbmhf bmRkYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9uZGRhOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf U2luaF9uZGhhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX25kaGE7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9TaW5oX25nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX25nOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfU2luaF9uZzIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfbmcyOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfU2luaF9uZ2EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfbmdhOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfU2luaF9uamEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfbmphOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfU2luaF9ubmEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfbm5h OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9ueWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhf bnlhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9vIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5o X287CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX28yIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5o X28yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9vbyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2lu aF9vbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1Npbmhfb28yIildCisrCQlwdWJsaWMgY29uc3QgdWludCBT aW5oX29vMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfcGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFNpbmhfcGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX3BoYSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgU2luaF9waGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX3JhIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBTaW5oX3JhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9yaSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgU2luaF9yaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfcmlpIildCisrCQlwdWJsaWMgY29u c3QgdWludCBTaW5oX3JpaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfcnUyIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBTaW5oX3J1MjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfcnV1MiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgU2luaF9ydXUyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9zYSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgU2luaF9zYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Npbmhfc2hhIildCisr CQlwdWJsaWMgY29uc3QgdWludCBTaW5oX3NoYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Npbmhfc3NoYSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9zc2hhOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF90 aGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfdGhhOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2lu aF90aGhhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX3RoaGE7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9TaW5oX3R0YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF90dGE7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9TaW5oX3R0aGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfdHRoYTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1NpbmhfdSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF91OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfU2luaF91MiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF91MjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1NpbmhfdXUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfdXU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9TaW5oX3V1MiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF91dTI7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9TaW5oX3ZhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX3ZhOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfU2luaF95YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF95YTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1NsZWVwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTbGVlcDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1Nsb3dLZXlzX0VuYWJsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2xv d0tleXNfRW5hYmxlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3BlbGwiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFNwZWxsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3BsaXRTY3JlZW4iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFNwbGl0U2NyZWVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3RhbmRieSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgU3RhbmRieTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N0YXJ0IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBTdGFydDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N0aWNreUtleXNfRW5hYmxlIildCisr CQlwdWJsaWMgY29uc3QgdWludCBTdGlja3lLZXlzX0VuYWJsZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N0 b3AiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN0b3A7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TdWJ0aXRs ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU3VidGl0bGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TdXBl cl9MIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTdXBlcl9MOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3Vw ZXJfUiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU3VwZXJfUjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N1 cHBvcnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN1cHBvcnQ7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9T dXNwZW5kIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTdXNwZW5kOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf U3dpdGNoX1ZUXzEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN3aXRjaF9WVF8xOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfU3dpdGNoX1ZUXzEwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTd2l0Y2hfVlRf MTA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Td2l0Y2hfVlRfMTEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFN3aXRjaF9WVF8xMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N3aXRjaF9WVF8xMiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgU3dpdGNoX1ZUXzEyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3dpdGNoX1ZUXzIiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFN3aXRjaF9WVF8yOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3dpdGNo X1ZUXzMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN3aXRjaF9WVF8zOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfU3dpdGNoX1ZUXzQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN3aXRjaF9WVF80OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfU3dpdGNoX1ZUXzUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN3aXRjaF9W VF81OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfU3dpdGNoX1ZUXzYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFN3aXRjaF9WVF82OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3dpdGNoX1ZUXzciKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFN3aXRjaF9WVF83OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3dpdGNoX1ZUXzgiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFN3aXRjaF9WVF84OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3dpdGNoX1ZU XzkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN3aXRjaF9WVF85OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf U3lzX1JlcSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU3lzX1JlcTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9USE9STiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgVEhPUk47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UYWIiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFRhYjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RhYm92ZWRvdCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgVGFib3ZlZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGFza1BhbmUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFRhc2tQYW5lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGNhcm9uIildCisr CQlwdWJsaWMgY29uc3QgdWludCBUY2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UY2VkaWxsYSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgVGNlZGlsbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UZXJtaW5hbCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGVybWluYWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UZXJtaW5h dGVfU2VydmVyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUZXJtaW5hdGVfU2VydmVyOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfVGhhaV9iYWh0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2JhaHQ7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2JvYmFpbWFpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBU aGFpX2JvYmFpbWFpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9jaG9jaGFuIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBUaGFpX2Nob2NoYW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2Nob2NoYW5nIild CisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2Nob2NoYW5nOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhh aV9jaG9jaGluZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9jaG9jaGluZzsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1RoYWlfY2hvY2hvZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9jaG9j aG9lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9kb2NoYWRhIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBUaGFpX2RvY2hhZGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2RvZGVrIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBUaGFpX2RvZGVrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9mb2ZhIildCisrCQlw dWJsaWMgY29uc3QgdWludCBUaGFpX2ZvZmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2ZvZmFuIild CisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2ZvZmFuOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9o b2hpcCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9ob2hpcDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1RoYWlfaG9ub2todWsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfaG9ub2todWs7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9UaGFpX2tob2toYWkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlf a2hva2hhaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfa2hva2hvbiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgVGhhaV9raG9raG9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9raG9raHVhdCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgVGhhaV9raG9raHVhdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfa2hv a2h3YWkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfa2hva2h3YWk7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9UaGFpX2tob3Jha2hhbmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfa2hvcmFr aGFuZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfa29rYWkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFRoYWlfa29rYWk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2xha2toYW5neWFvIildCisrCQlwdWJs aWMgY29uc3QgdWludCBUaGFpX2xha2toYW5neWFvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9sZWtj aGV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2xla2NoZXQ7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9UaGFpX2xla2hhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2xla2hhOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfVGhhaV9sZWtob2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbGVraG9r OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9sZWtrYW8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRo YWlfbGVra2FvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9sZWtudW5nIildCisrCQlwdWJsaWMgY29u c3QgdWludCBUaGFpX2xla251bmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2xla3BhZXQiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbGVrcGFldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbGVr c2FtIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2xla3NhbTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1RoYWlfbGVrc2kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbGVrc2k7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9UaGFpX2xla3NvbmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbGVrc29u ZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbGVrc3VuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBU aGFpX2xla3N1bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbG9jaHVsYSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgVGhhaV9sb2NodWxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9sb2xpbmciKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbG9saW5nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9sdSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9sdTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbWFp Y2hhdHRhd2EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbWFpY2hhdHRhd2E7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9UaGFpX21haWVrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX21haWVr OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9tYWloYW5ha2F0IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBUaGFpX21haWhhbmFrYXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX21haWhhbmFrYXRfbWFpdGhv IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX21haWhhbmFrYXRfbWFpdGhvOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfVGhhaV9tYWl0YWlraHUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbWFp dGFpa2h1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9tYWl0aG8iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFRoYWlfbWFpdGhvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9tYWl0cmkiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFRoYWlfbWFpdHJpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9tYWl5YW1vayIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9tYWl5YW1vazsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Ro YWlfbW9tYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9tb21hOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfVGhhaV9uZ29uZ3UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbmdvbmd1OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfVGhhaV9uaWtoYWhpdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9u aWtoYWhpdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbm9uZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFRoYWlfbm9uZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX25vbnUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFRoYWlfbm9udTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfb2FuZyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgVGhhaV9vYW5nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9wYWl5YW5ub2ki KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfcGFpeWFubm9pOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf VGhhaV9waGludGh1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3BoaW50aHU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9UaGFpX3Bob3BoYW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfcGhv cGhhbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfcGhvcGh1bmciKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFRoYWlfcGhvcGh1bmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3Bob3NhbXBoYW8iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFRoYWlfcGhvc2FtcGhhbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlf cG9wbGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfcG9wbGE7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9UaGFpX3JvcnVhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3JvcnVhOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfVGhhaV9ydSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9ydTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1RoYWlfc2FyYWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfc2FyYWE7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3NhcmFhYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhh aV9zYXJhYWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3NhcmFhZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgVGhhaV9zYXJhYWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3NhcmFhaW1haW1hbGFpIild CisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3NhcmFhaW1haW1hbGFpOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfVGhhaV9zYXJhYWltYWltdWFuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3NhcmFh aW1haW11YW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3NhcmFhbSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgVGhhaV9zYXJhYW07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3NhcmFlIildCisrCQlwdWJs aWMgY29uc3QgdWludCBUaGFpX3NhcmFlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9zYXJhaSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9zYXJhaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfc2Fy YWlpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3NhcmFpaTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1RoYWlfc2FyYW8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfc2FyYW87CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9UaGFpX3NhcmF1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3NhcmF1Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfVGhhaV9zYXJhdWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlf c2FyYXVlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9zYXJhdWVlIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBUaGFpX3NhcmF1ZWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3NhcmF1dSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgVGhhaV9zYXJhdXU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3NvcnVzaSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9zb3J1c2k7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFp X3Nvc2FsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9zb3NhbGE7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9UaGFpX3Nvc28iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfc29zbzsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1RoYWlfc29zdWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfc29zdWE7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3RoYW50aGFraGF0IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBUaGFpX3RoYW50aGFraGF0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV90aG9uYW5nbW9udGhvIild CisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3Rob25hbmdtb250aG87CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9UaGFpX3Rob3BodXRoYW8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfdGhvcGh1dGhh bzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1RoYWlfdGhvdGhhaGFuIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBUaGFpX3Rob3RoYWhhbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfdGhvdGhhbiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgVGhhaV90aG90aGFuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV90aG90aG9u ZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV90aG90aG9uZzsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1RoYWlfdGhvdGh1bmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfdGhvdGh1bmc7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9UaGFpX3RvcGF0YWsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlf dG9wYXRhazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfdG90YW8iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFRoYWlfdG90YW87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3dvd2FlbiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgVGhhaV93b3dhZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3lveWFrIildCisr CQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3lveWFrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV95b3lp bmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfeW95aW5nOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf VGhvcm4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRob3JuOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGlt ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGltZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RvRG9MaXN0 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUb0RvTGlzdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Rvb2xz IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUb29sczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RvcE1lbnUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRvcE1lbnU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Ub3VjaHBh ZE9mZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVG91Y2hwYWRPZmY7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9Ub3VjaHBhZE9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUb3VjaHBhZE9uOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfVG91Y2hwYWRUb2dnbGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRvdWNocGFk VG9nZ2xlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVG91cm9rdSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg VG91cm9rdTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RyYXZlbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg VHJhdmVsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVHNsYXNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBU c2xhc2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfVVdCIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVV0I7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9VYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVhY3V0ZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1ViZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWJlbG93ZG90OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfVWJyZXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVYnJldmU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9VY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWNpcmN1bWZsZXg7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9VZGlhZXJlc2lzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVZGlh ZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWRvdWJsZWFjdXRlIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBVZG91YmxlYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VZ3JhdmUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFVncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Vob29rIildCisrCQlwdWJsaWMgY29u c3QgdWludCBVaG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Vob3JuIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBVaG9ybjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Vob3JuYWN1dGUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFVob3JuYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VaG9ybmJlbG93ZG90IildCisrCQlw dWJsaWMgY29uc3QgdWludCBVaG9ybmJlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWhvcm5ncmF2 ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWhvcm5ncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Vo b3JuaG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWhvcm5ob29rOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfVWhvcm50aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWhvcm50aWxkZTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1VrcmFpbmlhbl9HSEVfV0lUSF9VUFRVUk4iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFVrcmFpbmlhbl9HSEVfV0lUSF9VUFRVUk47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Va3JhaW5pYW5f SSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWtyYWluaWFuX0k7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9V a3JhaW5pYW5fSUUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVrcmFpbmlhbl9JRTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1VrcmFpbmlhbl9ZSSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWtyYWluaWFu X1lJOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfVWtyYWluaWFuX2doZV93aXRoX3VwdHVybiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgVWtyYWluaWFuX2doZV93aXRoX3VwdHVybjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1VrcmFpbmlhbl9pIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVa3JhaW5pYW5faTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1VrcmFpbmlhbl9pZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWtyYWluaWFu X2llOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfVWtyYWluaWFuX3lpIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBVa3JhaW5pYW5feWk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Va3Jhbmlhbl9JIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBVa3Jhbmlhbl9JOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWtyYW5pYW5fSkUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFVrcmFuaWFuX0pFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWtyYW5pYW5f WUkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVrcmFuaWFuX1lJOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf VWtyYW5pYW5faSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWtyYW5pYW5faTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1VrcmFuaWFuX2plIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVa3Jhbmlhbl9qZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1VrcmFuaWFuX3lpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVa3Jh bmlhbl95aTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VtYWNyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFVtYWNyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VbmRvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBV bmRvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfVW5ncmFiIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVbmdy YWI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Vb2dvbmVrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVb2dv bmVrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfVXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVwOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfVXJpbmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVyaW5nOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfVXNlcjFLQiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVXNlcjFLQjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1VzZXIyS0IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVzZXIyS0I7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9Vc2VyUEIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVzZXJQQjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1V0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVXRpbGRlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfViIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Zl bmRvckhvbWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFZlbmRvckhvbWU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9WaWRlbyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVmlkZW87CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9WaWV3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBWaWV3OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVm9p ZFN5bWJvbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVm9pZFN5bWJvbDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1ciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9XTEFOIild CisrCQlwdWJsaWMgY29uc3QgdWludCBXTEFOOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfV1dXIildCisrCQlw dWJsaWMgY29uc3QgdWludCBXV1c7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9XYWN1dGUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFdhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1dha2VVcCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgV2FrZVVwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfV2NpcmN1bWZsZXgiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFdjaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfV2RpYWVyZXNpcyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgV2RpYWVyZXNpczsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1dlYkNh bSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgV2ViQ2FtOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfV2dyYXZl IildCisrCQlwdWJsaWMgY29uc3QgdWludCBXZ3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9XaGVlbEJ1 dHRvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgV2hlZWxCdXR0b247CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9XaW5kb3dDbGVhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgV2luZG93Q2xlYXI7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9Xb25TaWduIildCisrCQlwdWJsaWMgY29uc3QgdWludCBXb25TaWduOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfV29yZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgV29yZDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFg7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9YYWJv dmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFhhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1hmZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFhmZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ZIild CisrCQlwdWJsaWMgY29uc3QgdWludCBZOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWWFjdXRlIildCisrCQlw dWJsaWMgY29uc3QgdWludCBZYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ZYmVsb3dkb3QiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFliZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1ljaXJjdW1mbGV4 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBZY2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1lk aWFlcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFlkaWFlcmVzaXM7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9ZZWxsb3ciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFllbGxvdzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1lncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgWWdyYXZlOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfWWhvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFlob29rOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf WXRpbGRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBZdGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9a IildCisrCQlwdWJsaWMgY29uc3QgdWludCBaOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWmFib3ZlZG90Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBaYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9aYWN1dGUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFphY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1pjYXJvbiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgWmNhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWmVuX0tvaG8i KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFplbl9Lb2hvOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWmVua2Fr dSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgWmVua2FrdTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1plbmth a3VfSGFua2FrdSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgWmVua2FrdV9IYW5rYWt1OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfWm9vbUluIildCisrCQlwdWJsaWMgY29uc3QgdWludCBab29tSW47CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9ab29tT3V0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBab29tT3V0OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfWnN0cm9rZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgWnN0cm9rZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGE7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9hYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFhY3V0ZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2FiZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYWJlbG93ZG90OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFib3ZlZG90OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYWJyZXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBhYnJldmU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9hYnJldmVhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYWJyZXZlYWN1dGU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9hYnJldmViZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YWJyZXZlYmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hYnJldmVncmF2ZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYWJyZXZlZ3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hYnJldmVob29rIildCisr CQlwdWJsaWMgY29uc3QgdWludCBhYnJldmVob29rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYWJyZXZldGls ZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFicmV2ZXRpbGRlOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YWNpcmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFjaXJjdW1mbGV4OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYWNpcmN1bWZsZXhhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYWNpcmN1 bWZsZXhhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FjaXJjdW1mbGV4YmVsb3dkb3QiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGFjaXJjdW1mbGV4YmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hY2ly Y3VtZmxleGdyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBhY2lyY3VtZmxleGdyYXZlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYWNpcmN1bWZsZXhob29rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBh Y2lyY3VtZmxleGhvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hY2lyY3VtZmxleHRpbGRlIildCisrCQlw dWJsaWMgY29uc3QgdWludCBhY2lyY3VtZmxleHRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYWN1dGUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYWRpYWVyZXNp cyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYWRpYWVyZXNpczsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Fl IildCisrCQlwdWJsaWMgY29uc3QgdWludCBhZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FncmF2ZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYWdyYXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYWhvb2siKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGFob29rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYW1hY3JvbiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYW1hY3JvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FtcGVyc2FuZCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYW1wZXJzYW5kOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYW9nb25layIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYW9nb25lazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Fwb3N0cm9w aGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFwb3N0cm9waGU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9h cHByb3hlcSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYXBwcm94ZXE7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9hcHByb3hpbWF0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYXBwcm94aW1hdGU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9hcmluZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYXJpbmc7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9hc2NpaWNpcmN1bSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYXNjaWljaXJjdW07 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9hc2NpaXRpbGRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBhc2Np aXRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYXN0ZXJpc2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGFzdGVyaXNrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGF0 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYXRpbGRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBhdGlsZGU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9iIildCisrCQlwdWJsaWMgY29uc3QgdWludCBiOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYmFib3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBiYWJvdmVkb3Q7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9iYWNrc2xhc2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJhY2tzbGFzaDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JhbGxvdGNyb3NzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBiYWxs b3Rjcm9zczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYmFy OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYmVjYXVzZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYmVjYXVz ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JsYW5rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBibGFuazsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JvdGludGVncmFsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBib3Rp bnRlZ3JhbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JvdGxlZnRwYXJlbnMiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJvdGxlZnRwYXJlbnM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ib3RsZWZ0c3FicmFja2V0Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBib3RsZWZ0c3FicmFja2V0OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf Ym90bGVmdHN1bW1hdGlvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYm90bGVmdHN1bW1hdGlv bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JvdHJpZ2h0cGFyZW5zIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBib3RyaWdodHBhcmVuczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JvdHJpZ2h0c3FicmFja2V0IildCisr CQlwdWJsaWMgY29uc3QgdWludCBib3RyaWdodHNxYnJhY2tldDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jv dHJpZ2h0c3VtbWF0aW9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBib3RyaWdodHN1bW1hdGlv bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JvdHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJvdHQ7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9ib3R2ZXJ0c3VtbWF0aW9uY29ubmVjdG9yIildCisrCQlwdWJsaWMgY29u c3QgdWludCBib3R2ZXJ0c3VtbWF0aW9uY29ubmVjdG9yOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhY2Vs ZWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFjZWxlZnQ7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFjZXJpZ2h0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFjZXJpZ2h0OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhY2tldGxlZnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWNrZXRsZWZ0Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhY2tldHJpZ2h0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFj a2V0cmlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2JsYW5rIildCisrCQlwdWJsaWMgY29u c3QgdWludCBicmFpbGxlX2JsYW5rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RfMSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RfMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90XzEwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdF8xMDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JyYWlsbGVfZG90XzIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90XzI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdF8zIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBicmFpbGxlX2RvdF8zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RfNCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RfNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90XzUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90XzU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdF82IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdF82 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RfNyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RfNzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90XzgiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90Xzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdF85 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdF85OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzIildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzEyMzQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM0Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzQ1IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfMTIzNDU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNDU2 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNDU2OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzEyMzQ1NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18xMjM0NTY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzQ1Njc4Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNDU2Nzg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMTIzNDU2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RzXzEyMzQ1Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNDU3IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNDU3OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzEyMzQ1NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18xMjM0NTc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzQ1OCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzQ1ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18xMjM0NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzQ2 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzQ2NyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzQ2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18x MjM0Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNDY3ODsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM0NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90c18xMjM0Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNDci KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM0NzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c18xMjM0NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18xMjM0Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNDgiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM0ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18xMjM1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM1NiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzEyMzU2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzU2 NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzU2NzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c18xMjM1Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfMTIzNTY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM1NjgiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM1Njg7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9icmFpbGxlX2RvdHNfMTIzNTciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18xMjM1NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM1NzgiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM1Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxl X2RvdHNfMTIzNTgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM1ODsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM2IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfMTIzNjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM2NyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzY3OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzEyMzY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzEyMzY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM2OCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzY4OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzEyMzciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM3Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzc4IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfMTIzNzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzOCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzg7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9icmFpbGxlX2RvdHNfMTI0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNf MTI0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNDUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c18xMjQ1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEy NDU2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI0NTY7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfMTI0NTY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfMTI0NTY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNDU2NzgiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjQ1Njc4OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzEyNDU2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzEyNDU2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjQ1NyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNDU3OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzEyNDU3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNDU3 ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjQ1OCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzEyNDU4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEy NDYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjQ2OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzEyNDY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxl X2RvdHNfMTI0Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI0Njc4IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI0Njc4OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzEyNDY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI0 Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI0NyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzEyNDc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI0 NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjQ3ODsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c18xMjQ4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxl X2RvdHNfMTI0ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfMTI1NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNTY7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI1NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c18xMjU2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjU2NzgiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjU2Nzg7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9icmFpbGxlX2RvdHNfMTI1NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18xMjU2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjU3IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI1NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c18xMjU3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNTc4OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNTgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c18xMjU4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18xMjY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI2NzsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzEyNjc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNjgi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjY4OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzEyNyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rz XzEyNzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjc4IildCisrCQlwdWJsaWMgY29u c3QgdWludCBicmFpbGxlX2RvdHNfMTI3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18x MjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMTMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18xMzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzQiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c18xMzQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM0 NSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNDU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMTM0NTYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18xMzQ1NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzQ1NjciKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzQ1Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMTM0NTY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEz NDU2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM0NTY4IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM0NTY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9k b3RzXzEzNDU3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM0NTc7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM0NTc4IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfMTM0NTc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNDU4 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM0NTg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMTM0NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzEzNDY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM0NjciKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzQ2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90c18xMzQ2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzQ2Nzg7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM0NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyYWlsbGVfZG90c18xMzQ2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzQ3 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM0NzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c18xMzQ3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzEzNDc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNDgiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzQ4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9k b3RzXzEzNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzU2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfMTM1NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzU2NyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNTY3OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzEzNTY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEz NTY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzU2OCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNTY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzEzNTciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzU3OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNTc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfMTM1Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM1OCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNTg7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMTM2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM2Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90c18xMzY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNjc4Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM2Nzg7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9icmFpbGxlX2RvdHNfMTM2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rz XzEzNjg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM3IildCisrCQlwdWJsaWMgY29u c3QgdWludCBicmFpbGxlX2RvdHNfMTM3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEz NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzc4OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzEzOCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzEzODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE0 NSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE0NTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c18xNDU2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfMTQ1NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNDU2NyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE0NTY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9k b3RzXzE0NTY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE0NTY3ODsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNDU2OCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzE0NTY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE0NTci KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNDU3OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzE0NTc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfMTQ1Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTQ1OCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE0NTg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfMTQ2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTQ2OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE0NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18xNDY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE0Njc4IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTQ2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMTQ2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE0Njg7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTQ3IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfMTQ3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE0NzgiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNDc4OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzE0OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE0 ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzE1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE1NiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE1NjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90c18xNTY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTU2 NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNTY3OCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzE1Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE1 NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNTY4OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzE1NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzE1NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNTc4IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMTU3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c18xNTgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNTg7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfMTYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18xNjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNjciKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c18xNjc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf MTY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE2Nzg7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfMTY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxl X2RvdHNfMTY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE3IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMTc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf MTc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTc4OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzE4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfMTg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjMiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90c18yMzQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzQ7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM0NSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzIzNDU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM0NTYi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzQ1NjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c18yMzQ1NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18yMzQ1Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM0NTY3OCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNDU2Nzg7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfMjM0NTY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNf MjM0NTY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNDU3IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM0NTc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfMjM0NTc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM0NTc4Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNDU4IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfMjM0NTg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM0NiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNDY7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9icmFpbGxlX2RvdHNfMjM0NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18yMzQ2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzQ2NzgiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzQ2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxl X2RvdHNfMjM0NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzQ2ODsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzQ3IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfMjM0NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzQ3OCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNDc4OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzIzNDgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18yMzQ4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18y MzU2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM1NjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c18yMzU2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RzXzIzNTY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNTY3OCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNTY3ODsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90c18yMzU2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIz NTY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNTciKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c18yMzU3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIz NTc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM1Nzg7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfMjM1OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RzXzIzNTg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM2IildCisrCQlwdWJs aWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9k b3RzXzIzNjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzY3OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNjc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMjM2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM2OCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNjg7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfMjM3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM3 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNzgiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyYWlsbGVfZG90c18yMzc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzOCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzODsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2JyYWlsbGVfZG90c18yNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI0 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI0NSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzI0NTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNDU2Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjQ1NjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2JyYWlsbGVfZG90c18yNDU2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rz XzI0NTY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI0NTY3OCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI0NTY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90c18yNDU2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI0NTY4Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI0NTciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90c18yNDU3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI0NTc4Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjQ1Nzg7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9icmFpbGxlX2RvdHNfMjQ1OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rz XzI0NTg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjQ2IildCisrCQlwdWJsaWMgY29u c3QgdWludCBicmFpbGxlX2RvdHNfMjQ2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI0 NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNDY3OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzI0Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxl X2RvdHNfMjQ2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjQ2OCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI0Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxl X2RvdHNfMjQ3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjQ3OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI0NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c18yNDc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI0OCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI0ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18yNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI1OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI1NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJh aWxsZV9kb3RzXzI1NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNTY3IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjU2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18yNTY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI1Njc4 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI1NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyYWlsbGVfZG90c18yNTY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI1NyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI1NzsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2JyYWlsbGVfZG90c18yNTc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNf MjU3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNTgiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c18yNTg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjYi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2JyYWlsbGVfZG90c18yNjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18y Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjY3OCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzI2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjY4 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjY4OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzI3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNf Mjc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjc4IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBicmFpbGxlX2RvdHNfMjc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI4Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjg7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfMyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c18zNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNDUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNDU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxl X2RvdHNfMzQ1NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM0NTY7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzQ1NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90c18zNDU2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNDU2Nzgi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNDU2Nzg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMzQ1NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18zNDU2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNDU3IildCisrCQlwdWJs aWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzQ1NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90c18zNDU3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM0NTc4Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM0NTgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90c18zNDU4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM0NiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM0NjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90c18zNDY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzQ2 NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNDY3OCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzM0Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM0 NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNDY4OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzM0NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzM0NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNDc4IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMzQ3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c18zNDgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNDg7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfMzUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18zNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNTYiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c18zNTY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf MzU2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM1Njc7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfMzU2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18zNTY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNTY4IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzU2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18zNTciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNTc7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzU3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzM1Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzU4IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzU4OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzM2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzY7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMzY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM2NzgiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNjc4OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzM2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM2ODsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzM3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM3OCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18zOCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM4OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c180OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzQ1IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfNDU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf NDU2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNDU2OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzQ1NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c180NTY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzQ1Njc4IildCisrCQlwdWJs aWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNDU2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxl X2RvdHNfNDU2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzQ1Njg7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNDU3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfNDU3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzQ1NzgiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c180NTc4OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzQ1OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzQ1ODsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c180NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzQ2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzQ2NyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzQ2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c180Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNDY3ODsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c180NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90c180Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNDciKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c180NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c180NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c180Nzg7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNDgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c180ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c181IildCisrCQlwdWJs aWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c181NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzU2OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzU2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzU2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c181Njc4IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfNTY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c181NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c181Njg7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfNTciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c181NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c181NzgiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c181Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf NTgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c181ODsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c182IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNf NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c182NyIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzY3OCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzY3ODsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90c182OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzY4Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c183OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzc4IildCisrCQlwdWJs aWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfOCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmV2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJldmU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9icm9rZW5iYXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyb2tlbmJhcjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGM7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jX2gi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNfaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2NhYm92ZWRvdCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgY2Fib3ZlZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY2FjdXRl IildCisrCQlwdWJsaWMgY29uc3QgdWludCBjYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jYXJlb2Yi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNhcmVvZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2NhcmV0Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBjYXJldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Nhcm9uIildCisr CQlwdWJsaWMgY29uc3QgdWludCBjYXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2NjYXJvbiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgY2Nhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY2NlZGlsbGEiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGNjZWRpbGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY2NpcmN1bWZsZXgi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNjaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY2Vk aWxsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY2VkaWxsYTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Nl bnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNlbnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jaCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgY2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jaGVja2VyYm9hcmQiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGNoZWNrZXJib2FyZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2NoZWNr bWFyayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY2hlY2ttYXJrOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf Y2lyY2xlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBjaXJjbGU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9j bHViIildCisrCQlwdWJsaWMgY29uc3QgdWludCBjbHViOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY29sb24i KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNvbG9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY29tbWEiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGNvbW1hOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY29udGFpbnNhcyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgY29udGFpbnNhczsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2NvcHly aWdodCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY29weXJpZ2h0OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf Y3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY3Jvc3Npbmds aW5lcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY3Jvc3NpbmdsaW5lczsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2N1YmVyb290IildCisrCQlwdWJsaWMgY29uc3QgdWludCBjdWJlcm9vdDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2N1cnJlbmN5IildCisrCQlwdWJsaWMgY29uc3QgdWludCBjdXJyZW5jeTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2N1cnNvciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY3Vyc29yOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Rh Ym92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGFib3ZlZG90OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfZGFnZ2VyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkYWdnZXI7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9kY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRjYXJvbjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2RlYWRfQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9BOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf ZGVhZF9FIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX0U7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9k ZWFkX0kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfSTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Rl YWRfTyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9POworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVh ZF9VIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX1U7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFk X2EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRf YWJvdmVjb21tYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9hYm92ZWNvbW1hOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfZGVhZF9hYm92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9h Ym92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfYWJvdmVyZXZlcnNlZGNvbW1hIildCisrCQlw dWJsaWMgY29uc3QgdWludCBkZWFkX2Fib3ZlcmV2ZXJzZWRjb21tYTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2RlYWRfYWJvdmVyaW5nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2Fib3ZlcmluZzsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2RlYWRfYWJvdmV2ZXJ0aWNhbGxpbmUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGRlYWRfYWJvdmV2ZXJ0aWNhbGxpbmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2FjdXRl IildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2FjdXRlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVh ZF9iZWxvd2JyZXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2JlbG93YnJldmU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9kZWFkX2JlbG93Y2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgZGVhZF9iZWxvd2NpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2JlbG93Y29tbWEi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfYmVsb3djb21tYTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2RlYWRfYmVsb3dkaWFlcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfYmVsb3dk aWFlcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2JlbG93ZG90IildCisrCQlwdWJsaWMgY29u c3QgdWludCBkZWFkX2JlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9iZWxvd21hY3JvbiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9iZWxvd21hY3JvbjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2RlYWRfYmVsb3dyaW5nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2JlbG93cmluZzsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2RlYWRfYmVsb3d0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg ZGVhZF9iZWxvd3RpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9iZWxvd3ZlcnRpY2FsbGluZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9iZWxvd3ZlcnRpY2FsbGluZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2RlYWRfYnJldmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfYnJldmU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9kZWFkX2NhcGl0YWxfc2Nod2EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGRlYWRfY2FwaXRhbF9zY2h3YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfY2Fyb24iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGRlYWRfY2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2NlZGlsbGEi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfY2VkaWxsYTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Rl YWRfY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9jaXJjdW1mbGV4Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfZGVhZF9jdXJyZW5jeSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVh ZF9jdXJyZW5jeTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfZGFzaWEiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGRlYWRfZGFzaWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2RpYWVyZXNpcyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgZGVhZF9kaWFlcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2Rv dWJsZWFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2RvdWJsZWFjdXRlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfZGVhZF9kb3VibGVncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVh ZF9kb3VibGVncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgZGVhZF9lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9ncmF2ZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgZGVhZF9ncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfZ3JlZWsiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGRlYWRfZ3JlZWs7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2hvb2siKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfaG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfaG9y biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9ob3JuOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVh ZF9pIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2k7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFk X2ludmVydGVkYnJldmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfaW52ZXJ0ZWRicmV2 ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2RlYWRfaW90YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVh ZF9pb3RhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9sb25nc29saWR1c292ZXJsYXkiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGRlYWRfbG9uZ3NvbGlkdXNvdmVybGF5OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf ZGVhZF9sb3dsaW5lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2xvd2xpbmU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9kZWFkX21hY3JvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9tYWNy b247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX28iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRf bzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2RlYWRfb2dvbmVrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBk ZWFkX29nb25lazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfcGVyaXNwb21lbmkiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGRlYWRfcGVyaXNwb21lbmk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX3BzaWxp IildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX3BzaWxpOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVh ZF9zZW1pdm9pY2VkX3NvdW5kIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX3NlbWl2b2lj ZWRfc291bmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX3NtYWxsX3NjaHdhIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBkZWFkX3NtYWxsX3NjaHdhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9zdHJva2Ui KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfc3Ryb2tlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVh ZF90aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF90aWxkZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2RlYWRfdSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF91OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfZGVhZF92b2ljZWRfc291bmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfdm9pY2Vk X3NvdW5kOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVjaW1hbHBvaW50IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBkZWNpbWFscG9pbnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWdyZWUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGRlZ3JlZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RpYWVyZXNpcyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgZGlhZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGlhbW9uZCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgZGlhbW9uZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RpZ2l0c3BhY2UiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGRpZ2l0c3BhY2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kaW50ZWdyYWwi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRpbnRlZ3JhbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Rpdmlz aW9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkaXZpc2lvbjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Rv bGxhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZG9sbGFyOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZG91 YmJhc2VsaW5lZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBkb3ViYmFzZWxpbmVkb3Q7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9kb3VibGVhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZG91Ymxl YWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kb3VibGVkYWdnZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGRvdWJsZWRhZ2dlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RvdWJsZWxvd3F1b3RlbWFyayIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgZG91YmxlbG93cXVvdGVtYXJrOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf ZG93bmFycm93IildCisrCQlwdWJsaWMgY29uc3QgdWludCBkb3duYXJyb3c7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9kb3duY2FyZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRvd25jYXJldDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2Rvd25zaG9lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkb3duc2hvZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2Rvd25zdGlsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZG93bnN0aWxl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfZG93bnRhY2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRvd250 YWNrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfZHN0cm9rZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZHN0 cm9rZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9lYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVhYm92ZWRvdDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2VhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZWFjdXRlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfZWJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBlYmVsb3dk b3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9lY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVjYXJv bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2VjaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBl Y2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VjaXJjdW1mbGV4YWN1dGUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGVjaXJjdW1mbGV4YWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lY2lyY3VtZmxl eGJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBlY2lyY3VtZmxleGJlbG93ZG90Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfZWNpcmN1bWZsZXhncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg ZWNpcmN1bWZsZXhncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VjaXJjdW1mbGV4aG9vayIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgZWNpcmN1bWZsZXhob29rOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZWNpcmN1 bWZsZXh0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZWNpcmN1bWZsZXh0aWxkZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2VkaWFlcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVkaWFlcmVz aXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9lZ3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVncmF2 ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2Vob29rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlaG9vazsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2VpZ2h0c3Vic2NyaXB0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBl aWdodHN1YnNjcmlwdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VpZ2h0c3VwZXJpb3IiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGVpZ2h0c3VwZXJpb3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lbGVtZW50b2YiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGVsZW1lbnRvZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VsbGlwc2lz IildCisrCQlwdWJsaWMgY29uc3QgdWludCBlbGxpcHNpczsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VtM3Nw YWNlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlbTNzcGFjZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Vt NHNwYWNlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlbTRzcGFjZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2VtYWNyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVtYWNyb247CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9lbWRhc2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVtZGFzaDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2VtZmlsbGVkY2lyY2xlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlbWZpbGxlZGNpcmNsZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2VtZmlsbGVkcmVjdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZW1m aWxsZWRyZWN0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW1vcGVuY2lyY2xlIildCisrCQlwdWJsaWMgY29u c3QgdWludCBlbW9wZW5jaXJjbGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lbW9wZW5yZWN0YW5nbGUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGVtb3BlbnJlY3RhbmdsZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Vt cHR5c2V0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBlbXB0eXNldDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2Vtc3BhY2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVtc3BhY2U7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9lbmRhc2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVuZGFzaDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2VuZmlsbGVkY2lyY2J1bGxldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZW5maWxsZWRjaXJj YnVsbGV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW5maWxsZWRzcWJ1bGxldCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgZW5maWxsZWRzcWJ1bGxldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VuZyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgZW5nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW5vcGVuY2lyY2J1bGxldCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgZW5vcGVuY2lyY2J1bGxldDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Vu b3BlbnNxdWFyZWJ1bGxldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZW5vcGVuc3F1YXJlYnVs bGV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfZW5zcGFjZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZW5z cGFjZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2VvZ29uZWsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVv Z29uZWs7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lcXVhbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZXF1 YWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9ldGgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGV0aDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2V0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZXRpbGRlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfZXhjbGFtIildCisrCQlwdWJsaWMgY29uc3QgdWludCBleGNsYW07CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9leGNsYW1kb3duIildCisrCQlwdWJsaWMgY29uc3QgdWludCBleGNsYW1kb3du OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfZXpoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlemg7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9mIildCisrCQlwdWJsaWMgY29uc3QgdWludCBmOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf ZmFib3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBmYWJvdmVkb3Q7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9mZW1hbGVzeW1ib2wiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGZlbWFsZXN5bWJvbDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2ZmIildCisrCQlwdWJsaWMgY29uc3QgdWludCBmZjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2ZpZ2Rhc2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGZpZ2Rhc2g7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9maWxsZWRsZWZ0dHJpYnVsbGV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBmaWxs ZWRsZWZ0dHJpYnVsbGV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZmlsbGVkcmVjdGJ1bGxldCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgZmlsbGVkcmVjdGJ1bGxldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ZpbGxl ZHJpZ2h0dHJpYnVsbGV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBmaWxsZWRyaWdodHRyaWJ1 bGxldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2ZpbGxlZHRyaWJ1bGxldGRvd24iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGZpbGxlZHRyaWJ1bGxldGRvd247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9maWxsZWR0cmli dWxsZXR1cCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZmlsbGVkdHJpYnVsbGV0dXA7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9maXZlZWlnaHRocyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZml2ZWVpZ2h0 aHM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9maXZlc2l4dGhzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBm aXZlc2l4dGhzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZml2ZXN1YnNjcmlwdCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgZml2ZXN1YnNjcmlwdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ZpdmVzdXBlcmlvciIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgZml2ZXN1cGVyaW9yOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZm91cmZp ZnRocyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZm91cmZpZnRoczsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2ZvdXJzdWJzY3JpcHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGZvdXJzdWJzY3JpcHQ7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9mb3Vyc3VwZXJpb3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGZvdXJz dXBlcmlvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ZvdXJ0aHJvb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGZvdXJ0aHJvb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9mdW5jdGlvbiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgZnVuY3Rpb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9nIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBnOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZ2Fib3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBnYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9nYnJldmUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGdicmV2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2djYXJvbiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgZ2Nhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZ2NlZGlsbGEiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGdjZWRpbGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZ2NpcmN1bWZsZXgiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGdjaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZ3JhdmUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGdyYXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZ3JlYXRlciIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgZ3JlYXRlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2dyZWF0ZXJ0aGFuZXF1YWwiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGdyZWF0ZXJ0aGFuZXF1YWw7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9n dWlsbGVtb3RsZWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBndWlsbGVtb3RsZWZ0OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfZ3VpbGxlbW90cmlnaHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGd1aWxs ZW1vdHJpZ2h0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2hhaXJzcGFjZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGFpcnNw YWNlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfaGNpcmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGhjaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVhcnQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGhlYXJ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X2FsZXBoIildCisrCQlwdWJsaWMgY29u c3QgdWludCBoZWJyZXdfYWxlcGg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfYXlpbiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgaGVicmV3X2F5aW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfYmV0 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfYmV0OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVi cmV3X2JldGgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19iZXRoOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfaGVicmV3X2NoZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19jaGV0Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfaGVicmV3X2RhbGV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJy ZXdfZGFsZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfZGFsZXRoIildCisrCQlwdWJsaWMgY29u c3QgdWludCBoZWJyZXdfZGFsZXRoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X2RvdWJsZWxvd2xp bmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19kb3VibGVsb3dsaW5lOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfaGVicmV3X2ZpbmFsa2FwaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3 X2ZpbmFsa2FwaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19maW5hbG1lbSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgaGVicmV3X2ZpbmFsbWVtOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X2ZpbmFs bnVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfZmluYWxudW47CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9oZWJyZXdfZmluYWxwZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X2ZpbmFs cGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfZmluYWx6YWRlIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBoZWJyZXdfZmluYWx6YWRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X2ZpbmFsemFkaSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X2ZpbmFsemFkaTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2hlYnJld19naW1lbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X2dpbWVsOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfaGVicmV3X2dpbW1lbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3 X2dpbW1lbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19oZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgaGVicmV3X2hlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X2hldCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgaGVicmV3X2hldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19rYXBoIildCisrCQlw dWJsaWMgY29uc3QgdWludCBoZWJyZXdfa2FwaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19rdWYi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19rdWY7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJy ZXdfbGFtZWQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19sYW1lZDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2hlYnJld19tZW0iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19tZW07Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9oZWJyZXdfbnVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdf bnVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X3BlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBo ZWJyZXdfcGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfcW9waCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgaGVicmV3X3FvcGg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfcmVzaCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgaGVicmV3X3Jlc2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfc2FtZWNo IildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfc2FtZWNoOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf aGVicmV3X3NhbWVraCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X3NhbWVraDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2hlYnJld19zaGluIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdf c2hpbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld190YWYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGhlYnJld190YWY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfdGF3IildCisrCQlwdWJsaWMgY29u c3QgdWludCBoZWJyZXdfdGF3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X3RldCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgaGVicmV3X3RldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld190ZXRoIild CisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfdGV0aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJl d193YXciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld193YXc7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9oZWJyZXdfeW9kIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfeW9kOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfaGVicmV3X3phZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld196YWRl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X3phZGkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhl YnJld196YWRpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X3phaW4iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGhlYnJld196YWluOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X3pheWluIildCisrCQlw dWJsaWMgY29uc3QgdWludCBoZWJyZXdfemF5aW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZXhhZ3JhbSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGV4YWdyYW07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ob3JpemNv bm5lY3RvciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaG9yaXpjb25uZWN0b3I7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9ob3JpemxpbmVzY2FuMSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaG9yaXpsaW5l c2NhbjE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ob3JpemxpbmVzY2FuMyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgaG9yaXpsaW5lc2NhbjM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ob3JpemxpbmVzY2FuNSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgaG9yaXpsaW5lc2NhbjU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ob3Jp emxpbmVzY2FuNyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaG9yaXpsaW5lc2Nhbjc7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9ob3JpemxpbmVzY2FuOSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaG9yaXps aW5lc2Nhbjk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oc3Ryb2tlIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBoc3Ryb2tlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGh0 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfaHlwaGVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoeXBoZW47 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9pIildCisrCQlwdWJsaWMgY29uc3QgdWludCBpOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfaVRvdWNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBpVG91Y2g7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9pYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGlhY3V0ZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2liZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaWJlbG93ZG90OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfaWJyZXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBpYnJldmU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9pY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaWNpcmN1bWZsZXg7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9pZGVudGljYWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGlkZW50 aWNhbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2lkaWFlcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGlkaWFlcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pZG90bGVzcyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgaWRvdGxlc3M7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pZm9ubHlpZiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgaWZvbmx5aWY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pZ3JhdmUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGlncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2lob29rIildCisrCQlwdWJsaWMgY29u c3QgdWludCBpaG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ltYWNyb24iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGltYWNyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pbXBsaWVzIildCisrCQlwdWJsaWMgY29u c3QgdWludCBpbXBsaWVzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaW5jbHVkZWRpbiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgaW5jbHVkZWRpbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2luY2x1ZGVzIildCisrCQlw dWJsaWMgY29uc3QgdWludCBpbmNsdWRlczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2luZmluaXR5IildCisr CQlwdWJsaWMgY29uc3QgdWludCBpbmZpbml0eTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ludGVncmFsIild CisrCQlwdWJsaWMgY29uc3QgdWludCBpbnRlZ3JhbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ludGVyc2Vj dGlvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaW50ZXJzZWN0aW9uOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfaW9nb25layIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaW9nb25lazsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2l0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaXRpbGRlOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfaiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgajsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2pjaXJjdW1m bGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBqY2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2pvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgam90OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfayIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfQSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQga2FuYV9BOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9DSEkiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGthbmFfQ0hJOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9FIildCisrCQlw dWJsaWMgY29uc3QgdWludCBrYW5hX0U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX0ZVIildCisrCQlw dWJsaWMgY29uc3QgdWludCBrYW5hX0ZVOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9IQSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQga2FuYV9IQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfSEUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGthbmFfSEU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX0hJIildCisr CQlwdWJsaWMgY29uc3QgdWludCBrYW5hX0hJOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9ITyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9ITzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfSFUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfSFU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX0kiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfSTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfS0EiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfS0E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX0tFIild CisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX0tFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9LSSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9LSTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfS08i KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfS087CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX0tV IildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX0tVOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9N QSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9NQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFf TUUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfTUU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5h X01JIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX01JOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2Fu YV9NTyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9NTzsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2th bmFfTVUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfTVU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9r YW5hX04iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfTjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2th bmFfTkEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfTkE7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9r YW5hX05FIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX05FOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf a2FuYV9OSSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9OSTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2thbmFfTk8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfTk87CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9rYW5hX05VIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX05VOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfa2FuYV9PIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX087CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9rYW5hX1JBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1JBOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfa2FuYV9SRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9SRTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2thbmFfUkkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfUkk7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9rYW5hX1JPIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1JPOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfa2FuYV9SVSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9SVTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2thbmFfU0EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfU0E7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9rYW5hX1NFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1NFOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfa2FuYV9TSEkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfU0hJOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfa2FuYV9TTyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9TTzsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2thbmFfU1UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfU1U7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9rYW5hX1RBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1RBOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfa2FuYV9URSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9URTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2thbmFfVEkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfVEk7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9rYW5hX1RPIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1RP OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9UU1UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFf VFNVOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9UVSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2Fu YV9UVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfVSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2Fu YV9VOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9XQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2Fu YV9XQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfV08iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGth bmFfV087CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX1lBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBr YW5hX1lBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9ZTyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg a2FuYV9ZTzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfWVUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGthbmFfWVU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX2EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGthbmFfYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfY2xvc2luZ2JyYWNrZXQiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGthbmFfY2xvc2luZ2JyYWNrZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX2Nv bW1hIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX2NvbW1hOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf a2FuYV9jb25qdW5jdGl2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9jb25qdW5jdGl2 ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2thbmFfZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9l OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9mdWxsc3RvcCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg a2FuYV9mdWxsc3RvcDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfaSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQga2FuYV9pOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9taWRkbGVkb3QiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGthbmFfbWlkZGxlZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9vIildCisr CQlwdWJsaWMgY29uc3QgdWludCBrYW5hX287CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX29wZW5pbmdi cmFja2V0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX29wZW5pbmdicmFja2V0OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfa2FuYV9zd2l0Y2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfc3dp dGNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV90c3UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGth bmFfdHN1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV90dSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg a2FuYV90dTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfdSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg a2FuYV91OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV95YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg a2FuYV95YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfeW8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGthbmFfeW87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX3l1IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBrYW5hX3l1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FwcGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGthcHBhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2NlZGlsbGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGtjZWRpbGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa3JhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBr cmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9sIildCisrCQlwdWJsaWMgY29uc3QgdWludCBsOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfbGFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBsYWN1dGU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9sYXRpbmNyb3NzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBsYXRpbmNyb3NzOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfbGJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBsYmVsb3dk b3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9sY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxjYXJv bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2xjZWRpbGxhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBsY2Vk aWxsYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2xlZnRhbmdsZWJyYWNrZXQiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGxlZnRhbmdsZWJyYWNrZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sZWZ0YXJyb3ciKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGxlZnRhcnJvdzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xlZnRjYXJldCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgbGVmdGNhcmV0OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbGVmdGRv dWJsZXF1b3RlbWFyayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbGVmdGRvdWJsZXF1b3RlbWFy azsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2xlZnRtaWRkbGVjdXJseWJyYWNlIildCisrCQlwdWJsaWMgY29u c3QgdWludCBsZWZ0bWlkZGxlY3VybHlicmFjZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xlZnRvcGVudHJp YW5nbGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxlZnRvcGVudHJpYW5nbGU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9sZWZ0cG9pbnRlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbGVmdHBvaW50ZXI7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9sZWZ0cmFkaWNhbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbGVm dHJhZGljYWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sZWZ0c2hvZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgbGVmdHNob2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sZWZ0c2luZ2xlcXVvdGVtYXJrIildCisrCQlw dWJsaWMgY29uc3QgdWludCBsZWZ0c2luZ2xlcXVvdGVtYXJrOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbGVm dHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxlZnR0OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbGVmdHRh Y2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxlZnR0YWNrOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbGVz cyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbGVzczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xlc3N0aGFu ZXF1YWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxlc3N0aGFuZXF1YWw7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9sZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbGY7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sb2dp Y2FsYW5kIildCisrCQlwdWJsaWMgY29uc3QgdWludCBsb2dpY2FsYW5kOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfbG9naWNhbG9yIildCisrCQlwdWJsaWMgY29uc3QgdWludCBsb2dpY2Fsb3I7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9sb3dsZWZ0Y29ybmVyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBsb3dsZWZ0Y29y bmVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfbG93cmlnaHRjb3JuZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGxvd3JpZ2h0Y29ybmVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbHN0cm9rZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgbHN0cm9rZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX20iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IG07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9tYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IG1hYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX21hY3JvbiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgbWFjcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbWFsZXN5bWJvbCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgbWFsZXN5bWJvbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX21hbHRlc2Vjcm9zcyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgbWFsdGVzZWNyb3NzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbWFya2VyIild CisrCQlwdWJsaWMgY29uc3QgdWludCBtYXJrZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9tYXNjdWxpbmUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG1hc2N1bGluZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX21pbnVz IildCisrCQlwdWJsaWMgY29uc3QgdWludCBtaW51czsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX21pbnV0ZXMi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG1pbnV0ZXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9tdSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgbXU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9tdWx0aXBseSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgbXVsdGlwbHk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9tdXNpY2FsZmxhdCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgbXVzaWNhbGZsYXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9tdXNp Y2Fsc2hhcnAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG11c2ljYWxzaGFycDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG47CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9uYWJs YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbmFibGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9uYWN1dGUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG5hY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX25jYXJvbiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgbmNhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbmNlZGlsbGEi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG5jZWRpbGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbmluZXN1 YnNjcmlwdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbmluZXN1YnNjcmlwdDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX25pbmVzdXBlcmlvciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbmluZXN1cGVyaW9y OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfbmwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG5sOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfbm9icmVha3NwYWNlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBub2JyZWFrc3Bh Y2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9ub3RhcHByb3hlcSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg bm90YXBwcm94ZXE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ub3RlbGVtZW50b2YiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IG5vdGVsZW1lbnRvZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX25vdGVxdWFsIildCisrCQlw dWJsaWMgY29uc3QgdWludCBub3RlcXVhbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX25vdGlkZW50aWNhbCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgbm90aWRlbnRpY2FsOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbm90 c2lnbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbm90c2lnbjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX250 aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbnRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbnVt YmVyc2lnbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbnVtYmVyc2lnbjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX251bWVyb3NpZ24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG51bWVyb3NpZ247CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9vIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf b2FjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9v YmFycmVkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvYmFycmVkOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf b2JlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBvYmVsb3dkb3Q7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9vY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9jYXJvbjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX29jaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBvY2lyY3VtZmxleDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX29jaXJjdW1mbGV4YWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9j aXJjdW1mbGV4YWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vY2lyY3VtZmxleGJlbG93ZG90IildCisr CQlwdWJsaWMgY29uc3QgdWludCBvY2lyY3VtZmxleGJlbG93ZG90OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf b2NpcmN1bWZsZXhncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2NpcmN1bWZsZXhncmF2 ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX29jaXJjdW1mbGV4aG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgb2NpcmN1bWZsZXhob29rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb2NpcmN1bWZsZXh0aWxkZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgb2NpcmN1bWZsZXh0aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29k aWFlcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9kaWFlcmVzaXM7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9vZG91YmxlYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9kb3VibGVhY3V0ZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX29lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX29nb25layIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2dvbmVrOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfb2dyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvZ3JhdmU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9vaG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2hvb2s7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9vaG9ybiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2hvcm47CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9v aG9ybmFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvaG9ybmFjdXRlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfb2hvcm5iZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2hvcm5iZWxvd2Rv dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX29ob3JuZ3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9o b3JuZ3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vaG9ybmhvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IG9ob3JuaG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29ob3JudGlsZGUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IG9ob3JudGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vbWFjcm9uIildCisrCQlwdWJs aWMgY29uc3QgdWludCBvbWFjcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb25lZWlnaHRoIildCisrCQlw dWJsaWMgY29uc3QgdWludCBvbmVlaWdodGg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vbmVmaWZ0aCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgb25lZmlmdGg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vbmVoYWxmIild CisrCQlwdWJsaWMgY29uc3QgdWludCBvbmVoYWxmOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb25lcXVhcnRl ciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb25lcXVhcnRlcjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29u ZXNpeHRoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvbmVzaXh0aDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X29uZXN1YnNjcmlwdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb25lc3Vic2NyaXB0OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfb25lc3VwZXJpb3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9uZXN1cGVy aW9yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfb25ldGhpcmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9u ZXRoaXJkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb29ibGlxdWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IG9vYmxpcXVlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb3BlbnJlY3RidWxsZXQiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IG9wZW5yZWN0YnVsbGV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb3BlbnN0YXIiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IG9wZW5zdGFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb3BlbnRyaWJ1bGxl dGRvd24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9wZW50cmlidWxsZXRkb3duOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfb3BlbnRyaWJ1bGxldHVwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvcGVudHJp YnVsbGV0dXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vcmRmZW1pbmluZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgb3JkZmVtaW5pbmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vc2xhc2giKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IG9zbGFzaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX290aWxkZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgb3RpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb3ZlcmJhciIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgb3ZlcmJhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX292ZXJsaW5lIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBvdmVybGluZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3AiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IHA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9wYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IHBhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3BhcmFncmFwaCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgcGFyYWdyYXBoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcGFyZW5sZWZ0IildCisrCQlwdWJs aWMgY29uc3QgdWludCBwYXJlbmxlZnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9wYXJlbnJpZ2h0IildCisr CQlwdWJsaWMgY29uc3QgdWludCBwYXJlbnJpZ2h0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcGFydGRpZmZl cmVudGlhbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcGFydGRpZmZlcmVudGlhbDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX3BhcnRpYWxkZXJpdmF0aXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBwYXJ0 aWFsZGVyaXZhdGl2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3BlcmNlbnQiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IHBlcmNlbnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9wZXJpb2QiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IHBlcmlvZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3BlcmlvZGNlbnRlcmVkIildCisrCQlwdWJs aWMgY29uc3QgdWludCBwZXJpb2RjZW50ZXJlZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Blcm1pbGxlIild CisrCQlwdWJsaWMgY29uc3QgdWludCBwZXJtaWxsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Bob25vZ3Jh cGhjb3B5cmlnaHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHBob25vZ3JhcGhjb3B5cmlnaHQ7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9wbHVzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBwbHVzOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfcGx1c21pbnVzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBwbHVzbWludXM7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9wcmVzY3JpcHRpb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHBy ZXNjcmlwdGlvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Byb2xvbmdlZHNvdW5kIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBwcm9sb25nZWRzb3VuZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3B1bmN0c3BhY2UiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IHB1bmN0c3BhY2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9xIildCisr CQlwdWJsaWMgY29uc3QgdWludCBxOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcXVhZCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgcXVhZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3F1ZXN0aW9uIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBxdWVzdGlvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3F1ZXN0aW9uZG93biIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgcXVlc3Rpb25kb3duOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcXVvdGVkYmwi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHF1b3RlZGJsOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcXVvdGVs ZWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBxdW90ZWxlZnQ7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9x dW90ZXJpZ2h0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBxdW90ZXJpZ2h0OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3JhY3V0 ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcmFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcmFkaWNh bCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcmFkaWNhbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3JjYXJv biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcmNhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcmNlZGls bGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHJjZWRpbGxhOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcmVn aXN0ZXJlZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcmVnaXN0ZXJlZDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX3JpZ2h0YW5nbGVicmFja2V0IildCisrCQlwdWJsaWMgY29uc3QgdWludCByaWdodGFuZ2xl YnJhY2tldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3JpZ2h0YXJyb3ciKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IHJpZ2h0YXJyb3c7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9yaWdodGNhcmV0IildCisrCQlwdWJsaWMg Y29uc3QgdWludCByaWdodGNhcmV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcmlnaHRkb3VibGVxdW90ZW1h cmsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHJpZ2h0ZG91YmxlcXVvdGVtYXJrOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfcmlnaHRtaWRkbGVjdXJseWJyYWNlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBy aWdodG1pZGRsZWN1cmx5YnJhY2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9yaWdodG1pZGRsZXN1bW1hdGlv biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcmlnaHRtaWRkbGVzdW1tYXRpb247CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9yaWdodG9wZW50cmlhbmdsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcmlnaHRv cGVudHJpYW5nbGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9yaWdodHBvaW50ZXIiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IHJpZ2h0cG9pbnRlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3JpZ2h0c2hvZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgcmlnaHRzaG9lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcmlnaHRzaW5nbGVx dW90ZW1hcmsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHJpZ2h0c2luZ2xlcXVvdGVtYXJrOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfcmlnaHR0IildCisrCQlwdWJsaWMgY29uc3QgdWludCByaWdodHQ7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9yaWdodHRhY2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHJpZ2h0dGFj azsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX3MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHM7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9zYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNhYm92ZWRvdDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX3NhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc2FjdXRlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfc2Nhcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBzY2Fyb247CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9zY2VkaWxsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc2NlZGlsbGE7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9zY2h3YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc2Nod2E7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9zY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc2NpcmN1bWZs ZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9zY3JpcHRfc3dpdGNoIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBzY3JpcHRfc3dpdGNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc2Vjb25kcyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgc2Vjb25kczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3NlY3Rpb24iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IHNlY3Rpb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zZW1pY29sb24iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IHNlbWljb2xvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3NlbWl2b2ljZWRzb3VuZCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgc2VtaXZvaWNlZHNvdW5kOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf c2V2ZW5laWdodGhzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBzZXZlbmVpZ2h0aHM7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9zZXZlbnN1YnNjcmlwdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc2V2ZW5z dWJzY3JpcHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zZXZlbnN1cGVyaW9yIildCisrCQlwdWJsaWMgY29u c3QgdWludCBzZXZlbnN1cGVyaW9yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc2lnbmF0dXJlbWFyayIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgc2lnbmF0dXJlbWFyazsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3NpZ25p ZmJsYW5rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBzaWduaWZibGFuazsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX3NpbWlsYXJlcXVhbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc2ltaWxhcmVxdWFsOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfc2luZ2xlbG93cXVvdGVtYXJrIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBzaW5nbGVsb3dxdW90ZW1hcms7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zaXhzdWJzY3JpcHQiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IHNpeHN1YnNjcmlwdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3NpeHN1cGVy aW9yIildCisrCQlwdWJsaWMgY29uc3QgdWludCBzaXhzdXBlcmlvcjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X3NsYXNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBzbGFzaDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Nv bGlkZGlhbW9uZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc29saWRkaWFtb25kOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfc3BhY2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNwYWNlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfc3F1YXJlcm9vdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc3F1YXJlcm9vdDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX3NzaGFycCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc3NoYXJwOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfc3RlcmxpbmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHN0ZXJsaW5nOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfc3RyaWN0ZXEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHN0cmljdGVx OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX3RhYm92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdGFib3ZlZG90OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfdGNhcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0Y2Fyb247CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV90Y2VkaWxsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdGNlZGlsbGE7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV90ZWxlcGhvbmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRlbGVwaG9u ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX3RlbGVwaG9uZXJlY29yZGVyIildCisrCQlwdWJsaWMgY29uc3Qg dWludCB0ZWxlcGhvbmVyZWNvcmRlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3RoZXJlZm9yZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgdGhlcmVmb3JlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdGhpbnNwYWNlIild CisrCQlwdWJsaWMgY29uc3QgdWludCB0aGluc3BhY2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90aG9ybiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgdGhvcm47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90aHJlZWVpZ2h0 aHMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRocmVlZWlnaHRoczsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X3RocmVlZmlmdGhzIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0aHJlZWZpZnRoczsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX3RocmVlcXVhcnRlcnMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRocmVlcXVh cnRlcnM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90aHJlZXN1YnNjcmlwdCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgdGhyZWVzdWJzY3JpcHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90aHJlZXN1cGVyaW9yIildCisr CQlwdWJsaWMgY29uc3QgdWludCB0aHJlZXN1cGVyaW9yOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdGludGVn cmFsIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0aW50ZWdyYWw7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90 b3BpbnRlZ3JhbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdG9waW50ZWdyYWw7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV90b3BsZWZ0cGFyZW5zIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0b3BsZWZ0cGFy ZW5zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfdG9wbGVmdHJhZGljYWwiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IHRvcGxlZnRyYWRpY2FsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdG9wbGVmdHNxYnJhY2tldCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgdG9wbGVmdHNxYnJhY2tldDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Rv cGxlZnRzdW1tYXRpb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRvcGxlZnRzdW1tYXRpb247 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV90b3ByaWdodHBhcmVucyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg dG9wcmlnaHRwYXJlbnM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90b3ByaWdodHNxYnJhY2tldCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgdG9wcmlnaHRzcWJyYWNrZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90b3By aWdodHN1bW1hdGlvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdG9wcmlnaHRzdW1tYXRpb247 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV90b3B0IildCisrCQlwdWJsaWMgY29uc3QgdWludCB0b3B0OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfdG9wdmVydHN1bW1hdGlvbmNvbm5lY3RvciIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgdG9wdmVydHN1bW1hdGlvbmNvbm5lY3RvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3RyYWRlbWFy ayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdHJhZGVtYXJrOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdHJh ZGVtYXJraW5jaXJjbGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRyYWRlbWFya2luY2lyY2xl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfdHNsYXNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0c2xhc2g7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV90d29maWZ0aHMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHR3b2Zp ZnRoczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX3R3b3N1YnNjcmlwdCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgdHdvc3Vic2NyaXB0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdHdvc3VwZXJpb3IiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IHR3b3N1cGVyaW9yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdHdvdGhpcmRzIildCisr CQlwdWJsaWMgY29uc3QgdWludCB0d290aGlyZHM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91IildCisrCQlw dWJsaWMgY29uc3QgdWludCB1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdWFjdXRlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCB1YWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91YmVsb3dkb3QiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IHViZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3VicmV2ZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgdWJyZXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdWNpcmN1bWZsZXgiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IHVjaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdWRpYWVyZXNp cyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdWRpYWVyZXNpczsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Vk b3VibGVhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdWRvdWJsZWFjdXRlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfdWdyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCB1Z3JhdmU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV91aG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdWhvb2s7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV91aG9ybiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdWhvcm47CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV91aG9ybmFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCB1aG9ybmFjdXRlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfdWhvcm5iZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdWhvcm5iZWxv d2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX3Vob3JuZ3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IHVob3JuZ3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91aG9ybmhvb2siKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IHVob3JuaG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Vob3JudGlsZGUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IHVob3JudGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91bWFjcm9uIildCisrCQlw dWJsaWMgY29uc3QgdWludCB1bWFjcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdW5kZXJiYXIiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IHVuZGVyYmFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdW5kZXJzY29yZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgdW5kZXJzY29yZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3VuaW9u IildCisrCQlwdWJsaWMgY29uc3QgdWludCB1bmlvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3VvZ29uZWsi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVvZ29uZWs7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91cGFycm93 IildCisrCQlwdWJsaWMgY29uc3QgdWludCB1cGFycm93OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdXBjYXJl dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdXBjYXJldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3VwbGVm dGNvcm5lciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdXBsZWZ0Y29ybmVyOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfdXByaWdodGNvcm5lciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdXByaWdodGNvcm5l cjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX3Vwc2hvZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdXBzaG9l OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfdXBzdGlsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdXBzdGls ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX3VwdGFjayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdXB0YWNr OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfdXJpbmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVyaW5nOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfdXRpbGRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCB1dGlsZGU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV92IildCisrCQlwdWJsaWMgY29uc3QgdWludCB2OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfdmFyaWF0aW9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCB2YXJpYXRpb247CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV92ZXJ0YmFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCB2ZXJ0YmFyOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfdmVydGNvbm5lY3RvciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdmVydGNvbm5l Y3RvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX3ZvaWNlZHNvdW5kIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCB2b2ljZWRzb3VuZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Z0IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCB2dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX3ciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHc7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV93YWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHdhY3V0ZTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX3djaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCB3Y2lyY3VtZmxl eDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX3dkaWFlcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHdk aWFlcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV93Z3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IHdncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHg7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV94YWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHhhYm92ZWRv dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX3kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHk7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV95YWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHlhY3V0ZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX3liZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgeWJlbG93ZG90OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfeWNpcmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHljaXJjdW1m bGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfeWRpYWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg eWRpYWVyZXNpczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3llbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg eWVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfeWdyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCB5Z3Jh dmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV95aG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgeWhvb2s7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV95dGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHl0aWxkZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX3oiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHo7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV96YWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHphYm92ZWRvdDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX3phY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgemFjdXRlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfemNhcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCB6Y2Fyb247CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV96ZXJvc3Vic2NyaXB0IildCisrCQlwdWJsaWMgY29uc3QgdWludCB6ZXJvc3Vic2Ny aXB0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfemVyb3N1cGVyaW9yIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCB6ZXJvc3VwZXJpb3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV96c3Ryb2tlIildCisrCQlwdWJsaWMgY29u c3QgdWludCB6c3Ryb2tlOworKwl9CisrCW5hbWVzcGFjZSBUaHJlYWRzIHsKKysJCW5hbWVzcGFj ZSBJZGxlIHsKKysJCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJjbHV0dGVyX3RocmVhZHNfYWRkX2lkbGUiKV0KKysJCQlbVmVyc2lvbiAo c2luY2UgPSAiMC40IildCisrCQkJcHVibGljIHN0YXRpYyB1aW50IGFkZCAoR0xpYi5Tb3VyY2VG dW5jIGZ1bmMpOworKwkJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gImNsdXR0ZXJfdGhyZWFkc19hZGRfaWRsZV9mdWxsIildCisrCQkJW1Zl cnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwkJCXB1YmxpYyBzdGF0aWMgdWludCBhZGRfZnVsbCAo aW50IHByaW9yaXR5LCBvd25lZCBHTGliLlNvdXJjZUZ1bmMgZnVuYyk7CisrCQl9CisrCQluYW1l c3BhY2UgVGltZW91dCB7CisrCQkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiY2x1dHRlcl90aHJlYWRzX2FkZF90aW1lb3V0IildCisrCQkJ W1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwkJCXB1YmxpYyBzdGF0aWMgdWludCBhZGQgKHVp bnQgaW50ZXJ2YWwsIEdMaWIuU291cmNlRnVuYyBmdW5jKTsKKysJCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJjbHV0dGVyX3RocmVhZHNf YWRkX3RpbWVvdXRfZnVsbCIpXQorKwkJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJCQlw dWJsaWMgc3RhdGljIHVpbnQgYWRkX2Z1bGwgKGludCBwcmlvcml0eSwgdWludCBpbnRlcnZhbCwg b3duZWQgR0xpYi5Tb3VyY2VGdW5jIGZ1bmMpOworKwkJfQorKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgc3RhdGljIHVpbnQgYWRkX3JlcGFpbnRfZnVuYyAob3duZWQgR0xpYi5T b3VyY2VGdW5jIGZ1bmMpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHN0 YXRpYyB1aW50IGFkZF9yZXBhaW50X2Z1bmNfZnVsbCAoQ2x1dHRlci5SZXBhaW50RmxhZ3MgZmxh Z3MsIG93bmVkIEdMaWIuU291cmNlRnVuYyBmdW5jKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIp XQorKwkJcHVibGljIHN0YXRpYyB2b2lkIHJlbW92ZV9yZXBhaW50X2Z1bmMgKHVpbnQgaGFuZGxl X2lkKTsKKysJfQorKwluYW1lc3BhY2UgVmFsdWUgeworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIp XQorKwkJcHVibGljIHN0YXRpYyBDbHV0dGVyLlBhaW50Tm9kZSBkdXBfcGFpbnRfbm9kZSAoR0xp Yi5WYWx1ZSB2YWx1ZSk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBzdGF0 aWMgdW5vd25lZCBDbHV0dGVyLkNvbG9yPyBnZXRfY29sb3IgKEdMaWIuVmFsdWUgdmFsdWUpOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIENsdXR0 ZXIuUGFpbnROb2RlIGdldF9wYWludF9ub2RlIChHTGliLlZhbHVlIHZhbHVlKTsKKysJCVtDQ29k ZSAoYXJyYXlfbGVuZ3RoX3BvcyA9IDEuMSwgYXJyYXlfbGVuZ3RoX3R5cGUgPSAiZ3NpemUiLCBj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMC44IildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgZmxvYXRbXSBnZXRfc2hhZGVy X2Zsb2F0IChHTGliLlZhbHVlIHZhbHVlKTsKKysJCVtDQ29kZSAoYXJyYXlfbGVuZ3RoX3BvcyA9 IDEuMSwgYXJyYXlfbGVuZ3RoX3R5cGUgPSAiZ3NpemUiLCBjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJs aWMgc3RhdGljIHVub3duZWQgaW50W10gZ2V0X3NoYWRlcl9pbnQgKEdMaWIuVmFsdWUgdmFsdWUp OworKwkJW0NDb2RlIChhcnJheV9sZW5ndGhfcG9zID0gMS4xLCBhcnJheV9sZW5ndGhfdHlwZSA9 ICJnc2l6ZSIsIGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBmbG9hdFtd IGdldF9zaGFkZXJfbWF0cml4IChHTGliLlZhbHVlIHZhbHVlKTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0g IjAuOCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIENsdXR0ZXIuVW5pdHM/IGdldF91bml0 cyAoR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1Ymxp YyBzdGF0aWMgdm9pZCBzZXRfY29sb3IgKEdMaWIuVmFsdWUgdmFsdWUsIENsdXR0ZXIuQ29sb3Ig Y29sb3IpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHN0YXRpYyB2b2lk IHNldF9wYWludF9ub2RlIChHTGliLlZhbHVlIHZhbHVlLCBDbHV0dGVyLlBhaW50Tm9kZT8gbm9k ZSk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0K KysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBzZXRf c2hhZGVyX2Zsb2F0IChHTGliLlZhbHVlIHZhbHVlLCBbQ0NvZGUgKGFycmF5X2xlbmd0aF9jbmFt ZSA9ICJzaXplIiwgYXJyYXlfbGVuZ3RoX3BvcyA9IDEuNSldIGZsb2F0W10gZmxvYXRzKTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwkJW1Zl cnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHN0YXRpYyB2b2lkIHNldF9zaGFkZXJf aW50IChHTGliLlZhbHVlIHZhbHVlLCBbQ0NvZGUgKGFycmF5X2xlbmd0aF9jbmFtZSA9ICJzaXpl IiwgYXJyYXlfbGVuZ3RoX3BvcyA9IDEuNSldIGludFtdIGludHMpOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMC44IildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQgc2V0X3NoYWRlcl9tYXRyaXggKEdMaWIu VmFsdWUgdmFsdWUsIFtDQ29kZSAoYXJyYXlfbGVuZ3RoX2NuYW1lID0gInNpemUiLCBhcnJheV9s ZW5ndGhfcG9zID0gMS41KV0gZmxvYXRbXSBtYXRyaXgpOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44 IildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQgc2V0X3VuaXRzIChHTGliLlZhbHVlIHZhbHVlLCBD bHV0dGVyLlVuaXRzIHVuaXRzKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1Ymxp YyBzdGF0aWMgdm9pZCB0YWtlX3BhaW50X25vZGUgKEdMaWIuVmFsdWUgdmFsdWUsIENsdXR0ZXIu UGFpbnROb2RlPyBub2RlKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfYWN0aW9uX2dldF90eXBlICgpIild CisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGFic3RyYWN0IGNsYXNzIEFj dGlvbiA6IENsdXR0ZXIuQWN0b3JNZXRhIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5j dGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBBY3Rpb24gKCk7CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVy X2FjdG9yX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBBY3RvciA6IEdMaWIuSW5pdGlh bGx5VW5vd25lZCwgQXRrLkltcGxlbWVudG9yLCBDbHV0dGVyLkFuaW1hdGFibGUsIENsdXR0ZXIu Q29udGFpbmVyLCBDbHV0dGVyLlNjcmlwdGFibGUgeworKwkJcHVibGljIHVpbnQzMiBmbGFnczsK KysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQWN0b3IgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBhZGRfYWN0aW9uIChDbHV0dGVyLkFjdGlvbiBh Y3Rpb24pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgYWRk X2FjdGlvbl93aXRoX25hbWUgKHN0cmluZyBuYW1lLCBDbHV0dGVyLkFjdGlvbiBhY3Rpb24pOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIGFkZF9jaGlsZCAo Q2x1dHRlci5BY3RvciBjaGlsZCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlw dWJsaWMgdm9pZCBhZGRfY29uc3RyYWludCAoQ2x1dHRlci5Db25zdHJhaW50IGNvbnN0cmFpbnQp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgYWRkX2NvbnN0 cmFpbnRfd2l0aF9uYW1lIChzdHJpbmcgbmFtZSwgQ2x1dHRlci5Db25zdHJhaW50IGNvbnN0cmFp bnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgYWRkX2Vm ZmVjdCAoQ2x1dHRlci5FZmZlY3QgZWZmZWN0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQi KV0KKysJCXB1YmxpYyB2b2lkIGFkZF9lZmZlY3Rfd2l0aF9uYW1lIChzdHJpbmcgbmFtZSwgQ2x1 dHRlci5FZmZlY3QgZWZmZWN0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlw dWJsaWMgdm9pZCBhZGRfdHJhbnNpdGlvbiAoc3RyaW5nIG5hbWUsIENsdXR0ZXIuVHJhbnNpdGlv biB0cmFuc2l0aW9uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2 aXJ0dWFsIHZvaWQgYWxsb2NhdGUgKENsdXR0ZXIuQWN0b3JCb3ggYm94LCBDbHV0dGVyLkFsbG9j YXRpb25GbGFncyBmbGFncyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJs aWMgdm9pZCBhbGxvY2F0ZV9hbGlnbl9maWxsIChDbHV0dGVyLkFjdG9yQm94IGJveCwgZG91Ymxl IHhfYWxpZ24sIGRvdWJsZSB5X2FsaWduLCBib29sIHhfZmlsbCwgYm9vbCB5X2ZpbGwsIENsdXR0 ZXIuQWxsb2NhdGlvbkZsYWdzIGZsYWdzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0K KysJCXB1YmxpYyB2b2lkIGFsbG9jYXRlX2F2YWlsYWJsZV9zaXplIChmbG9hdCB4LCBmbG9hdCB5 LCBmbG9hdCBhdmFpbGFibGVfd2lkdGgsIGZsb2F0IGF2YWlsYWJsZV9oZWlnaHQsIENsdXR0ZXIu QWxsb2NhdGlvbkZsYWdzIGZsYWdzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJ CXB1YmxpYyB2b2lkIGFsbG9jYXRlX3ByZWZlcnJlZF9zaXplIChDbHV0dGVyLkFsbG9jYXRpb25G bGFncyBmbGFncyk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRf c2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRl ci5BbmltYXRpb24gYW5pbWF0ZSAodWxvbmcgbW9kZSwgdWludCBkdXJhdGlvbiwgLi4uKTsKKysJ CVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwg c2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFuaW1hdGlvbiBhbmlt YXRlX3dpdGhfdGltZWxpbmUgKHVsb25nIG1vZGUsIENsdXR0ZXIuVGltZWxpbmUgdGltZWxpbmUs IC4uLik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdm9pZCBhcHBs eV9yZWxhdGl2ZV90cmFuc2Zvcm1fdG9fcG9pbnQgKENsdXR0ZXIuQWN0b3I/IGFuY2VzdG9yLCBH cmFwaGVuZS5Qb2ludDNEIHBvaW50LCBvdXQgdW5vd25lZCBHcmFwaGVuZS5Qb2ludDNEIHZlcnRl eCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBhcHBseV90cmFuc2Zv cm0gKHJlZiBDbHV0dGVyLk1hdHJpeCBtYXRyaXgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAu NCIpXQorKwkJcHVibGljIHZvaWQgYXBwbHlfdHJhbnNmb3JtX3RvX3BvaW50IChHcmFwaGVuZS5Q b2ludDNEIHBvaW50LCBvdXQgdW5vd25lZCBHcmFwaGVuZS5Qb2ludDNEIHZlcnRleCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4yNCIpXQorKwkJcHVibGljIHZvaWQgYmluZF9tb2RlbCAoR0xp Yi5MaXN0TW9kZWw/IG1vZGVsLCBvd25lZCBDbHV0dGVyLkFjdG9yQ3JlYXRlQ2hpbGRGdW5jIGNy ZWF0ZV9jaGlsZF9mdW5jKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1Ymxp YyB2b2lkIGNsZWFyX2FjdGlvbnMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisr CQlwdWJsaWMgdm9pZCBjbGVhcl9jb25zdHJhaW50cyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIGNsZWFyX2VmZmVjdHMgKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgYm9vbCBjb250YWlucyAoQ2x1dHRlci5BY3RvciBk ZXNjZW5kYW50KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lk IGNvbnRpbnVlX3BhaW50IChDbHV0dGVyLlBhaW50Q29udGV4dCBwYWludF9jb250ZXh0KTsKKysJ CXB1YmxpYyB2b2lkIGNvbnRpbnVlX3BpY2sgKENsdXR0ZXIuUGlja0NvbnRleHQgcGlja19jb250 ZXh0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBQYW5nby5Db250 ZXh0IGNyZWF0ZV9wYW5nb19jb250ZXh0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIp XQorKwkJcHVibGljIFBhbmdvLkxheW91dCBjcmVhdGVfcGFuZ29fbGF5b3V0IChzdHJpbmc/IHRl eHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIGRlc3Ry b3lfYWxsX2NoaWxkcmVuICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX2FjdG9yX2V2 ZW50IildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgYm9vbCBlbWl0 X2V2ZW50IChDbHV0dGVyLkV2ZW50IGV2ZW50LCBib29sIGNhcHR1cmUpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjAuNCIpXQorKwkJcHVibGljIHZvaWQgZ2V0X2Fic19hbGxvY2F0aW9uX3ZlcnRp Y2VzIChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gR3JhcGhlbmUuUG9pbnQzRCB2ZXJ0 c1s0XSk7CisrCQlwdWJsaWMgdmlydHVhbCB1bm93bmVkIEF0ay5PYmplY3QgZ2V0X2FjY2Vzc2li bGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdW5vd25lZCBD bHV0dGVyLkFjdGlvbiBnZXRfYWN0aW9uIChzdHJpbmcgbmFtZSk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS40IildCisrCQlwdWJsaWMgR0xpYi5MaXN0PHdlYWsgQ2x1dHRlci5BY3Rpb24+IGdl dF9hY3Rpb25zICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIENs dXR0ZXIuQWN0b3JCb3ggZ2V0X2FsbG9jYXRpb25fYm94ICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjAuNiIpXQorKwkJcHVibGljIHZvaWQgZ2V0X2FsbG9jYXRpb25fdmVydGljZXMgKENsdXR0 ZXIuQWN0b3I/IGFuY2VzdG9yLCBbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gR3JhcGhl bmUuUG9pbnQzRCB2ZXJ0c1s0XSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRl cHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIENsdXR0 ZXIuR3Jhdml0eSBnZXRfYW5jaG9yX3BvaW50X2dyYXZpdHkgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENsdXR0ZXIuQ29sb3IgZ2V0X2JhY2tncm91bmRfY29s b3IgKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfZ2V0X2FjdG9yX2J5X2dpZCIpXQor KwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuOCIs IHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3Ig Z2V0X2J5X2dpZCAodWludDMyIGlkXyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQor KwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfY2hpbGRfYXRfaW5kZXggKGludCBp bmRleF8pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBDbHV0dGVy Lk1hdHJpeCBnZXRfY2hpbGRfdHJhbnNmb3JtICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTAiKV0KKysJCXB1YmxpYyBHTGliLkxpc3Q8d2VhayBDbHV0dGVyLkFjdG9yPiBnZXRfY2hpbGRy ZW4gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdm9pZCBnZXRf Y2xpcCAob3V0IGZsb2F0IHhvZmYsIG91dCBmbG9hdCB5b2ZmLCBvdXQgZmxvYXQgd2lkdGgsIG91 dCBmbG9hdCBoZWlnaHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGlj IGJvb2wgZ2V0X2NsaXBfdG9fYWxsb2NhdGlvbiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjQiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQ29uc3RyYWludCBnZXRfY29uc3RyYWlu dCAoc3RyaW5nIG5hbWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGlj IEdMaWIuTGlzdDx3ZWFrIENsdXR0ZXIuQ29uc3RyYWludD4gZ2V0X2NvbnN0cmFpbnRzICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIu Q29udGVudCBnZXRfY29udGVudCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisr CQlwdWJsaWMgQ2x1dHRlci5BY3RvckJveCBnZXRfY29udGVudF9ib3ggKCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENsdXR0ZXIuQ29udGVudEdyYXZpdHkgZ2V0 X2NvbnRlbnRfZ3Jhdml0eSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlw dWJsaWMgQ2x1dHRlci5Db250ZW50UmVwZWF0IGdldF9jb250ZW50X3JlcGVhdCAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBnZXRfY29udGVudF9zY2Fs aW5nX2ZpbHRlcnMgKG91dCBDbHV0dGVyLlNjYWxpbmdGaWx0ZXIgbWluX2ZpbHRlciwgb3V0IENs dXR0ZXIuU2NhbGluZ0ZpbHRlciBtYWdfZmlsdGVyKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEwIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLlBhaW50Vm9sdW1lIGdldF9kZWZhdWx0 X3BhaW50X3ZvbHVtZSAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVj YXRlZF9zaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X2RlcHRoICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1aW50IGdldF9lYXNpbmdfZGVs YXkgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHVpbnQgZ2V0 X2Vhc2luZ19kdXJhdGlvbiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlw dWJsaWMgQ2x1dHRlci5BbmltYXRpb25Nb2RlIGdldF9lYXNpbmdfbW9kZSAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuRWZmZWN0IGdl dF9lZmZlY3QgKHN0cmluZyBuYW1lKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJ CXB1YmxpYyBHTGliLkxpc3Q8d2VhayBDbHV0dGVyLkVmZmVjdD4gZ2V0X2VmZmVjdHMgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5B Y3RvciBnZXRfZmlyc3RfY2hpbGQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisr CQlwdWJsaWMgYm9vbCBnZXRfZml4ZWRfcG9zaXRpb25fc2V0ICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMCIpXQorKwkJcHVibGljIENsdXR0ZXIuQWN0b3JGbGFncyBnZXRfZmxhZ3MgKCk7 CisrCQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfYWN0b3JfaGFzX3BvaW50ZXIiKV0KKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBib29sIGdldF9oYXNfcG9pbnRlciAo KTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfaGVpZ2h0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X2xhc3RfY2hpbGQg KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1 dHRlci5MYXlvdXRNYW5hZ2VyIGdldF9sYXlvdXRfbWFuYWdlciAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBnZXRfbWFyZ2luIChDbHV0dGVyLk1hcmdp biBtYXJnaW4pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBmbG9h dCBnZXRfbWFyZ2luX2JvdHRvbSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisr CQlwdWJsaWMgZmxvYXQgZ2V0X21hcmdpbl9sZWZ0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfbWFyZ2luX3JpZ2h0ICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfbWFyZ2luX3RvcCAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgaW50IGdldF9uX2NoaWxk cmVuICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9uYW1lICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0 X25leHRfc2libGluZyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1Ymxp YyBDbHV0dGVyLk9mZnNjcmVlblJlZGlyZWN0IGdldF9vZmZzY3JlZW5fcmVkaXJlY3QgKCk7Cisr CQlwdWJsaWMgdWludDggZ2V0X29wYWNpdHkgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4y MiIpXQorKwkJcHVibGljIGludCBnZXRfb3BhY2l0eV9vdmVycmlkZSAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBib29sIGdldF9wYWludF9ib3ggKG91dCBDbHV0 dGVyLkFjdG9yQm94IGJveCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJs aWMgdWludDggZ2V0X3BhaW50X29wYWNpdHkgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44 IildCisrCQlwdWJsaWMgYm9vbCBnZXRfcGFpbnRfdmlzaWJpbGl0eSAoKTsKKysJCVtOb1dyYXBw ZXJdCisrCQlwdWJsaWMgdmlydHVhbCBib29sIGdldF9wYWludF92b2x1bWUgKENsdXR0ZXIuUGFp bnRWb2x1bWUgdm9sdW1lKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1Ymxp YyB1bm93bmVkIFBhbmdvLkNvbnRleHQgZ2V0X3BhbmdvX2NvbnRleHQgKCk7CisrCQlwdWJsaWMg dW5vd25lZCBDbHV0dGVyLkFjdG9yPyBnZXRfcGFyZW50ICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9waXZvdF9wb2ludCAob3V0IGZsb2F0IHBp dm90X3gsIG91dCBmbG9hdCBwaXZvdF95KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIild CisrCQlwdWJsaWMgZmxvYXQgZ2V0X3Bpdm90X3BvaW50X3ogKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMC42IildCisrCQlwdWJsaWMgdm9pZCBnZXRfcG9zaXRpb24gKG91dCBmbG9hdCB4LCBv dXQgZmxvYXQgeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdmly dHVhbCB2b2lkIGdldF9wcmVmZXJyZWRfaGVpZ2h0IChmbG9hdCBmb3Jfd2lkdGgsIG91dCBmbG9h dCBtaW5faGVpZ2h0X3AsIG91dCBmbG9hdCBuYXR1cmFsX2hlaWdodF9wKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9wcmVmZXJyZWRfc2l6ZSAob3V0 IGZsb2F0IG1pbl93aWR0aF9wLCBvdXQgZmxvYXQgbWluX2hlaWdodF9wLCBvdXQgZmxvYXQgbmF0 dXJhbF93aWR0aF9wLCBvdXQgZmxvYXQgbmF0dXJhbF9oZWlnaHRfcCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGdldF9wcmVmZXJyZWRfd2lk dGggKGZsb2F0IGZvcl9oZWlnaHQsIG91dCBmbG9hdCBtaW5fd2lkdGhfcCwgb3V0IGZsb2F0IG5h dHVyYWxfd2lkdGhfcCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfcHJldmlvdXNfc2libGluZyAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBib29sIGdldF9yZWFjdGl2ZSAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBDbHV0dGVyLlJlcXVlc3RNb2Rl IGdldF9yZXF1ZXN0X21vZGUgKCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfcmVzb3VyY2Vfc2NhbGUg KG91dCBmbG9hdCByZXNvdXJjZV9zY2FsZSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRy dWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGlj IGRvdWJsZSBnZXRfcm90YXRpb24gKENsdXR0ZXIuUm90YXRlQXhpcyBheGlzLCBvdXQgZmxvYXQg eCwgb3V0IGZsb2F0IHksIG91dCBmbG9hdCB6KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEy IildCisrCQlwdWJsaWMgZG91YmxlIGdldF9yb3RhdGlvbl9hbmdsZSAoQ2x1dHRlci5Sb3RhdGVB eGlzIGF4aXMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIHZvaWQg Z2V0X3NjYWxlIChvdXQgZG91YmxlIHNjYWxlX3gsIG91dCBkb3VibGUgc2NhbGVfeSk7CisrCQlb VmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNp bmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgZ2V0X3NjYWxlX2NlbnRlciAob3V0IGZsb2F0 IGNlbnRlcl94LCBvdXQgZmxvYXQgY2VudGVyX3kpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQg PSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyBDbHV0dGVyLkdyYXZpdHkgZ2V0X3NjYWxlX2dyYXZpdHkgKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGRvdWJsZSBnZXRfc2NhbGVfeiAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9zaXplIChvdXQgZmxv YXQgd2lkdGgsIG91dCBmbG9hdCBoZWlnaHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIp XQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5TdGFnZSBnZXRfc3RhZ2UgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgQ2x1dHRlci5UZXh0RGlyZWN0aW9uIGdl dF90ZXh0X2RpcmVjdGlvbiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlw dWJsaWMgQ2x1dHRlci5NYXRyaXggZ2V0X3RyYW5zZm9ybSAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuUGFpbnRWb2x1bWUgZ2V0X3Ry YW5zZm9ybWVkX3BhaW50X3ZvbHVtZSAoQ2x1dHRlci5BY3RvciByZWxhdGl2ZV90b19hbmNlc3Rv cik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdm9pZCBnZXRfdHJh bnNmb3JtZWRfcG9zaXRpb24gKG91dCBmbG9hdCB4LCBvdXQgZmxvYXQgeSk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdm9pZCBnZXRfdHJhbnNmb3JtZWRfc2l6ZSAo b3V0IGZsb2F0IHdpZHRoLCBvdXQgZmxvYXQgaGVpZ2h0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEwIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLlRyYW5zaXRpb24gZ2V0X3RyYW5z aXRpb24gKHN0cmluZyBuYW1lKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlw dWJsaWMgdm9pZCBnZXRfdHJhbnNsYXRpb24gKG91dCBmbG9hdCB0cmFuc2xhdGVfeCwgb3V0IGZs b2F0IHRyYW5zbGF0ZV95LCBvdXQgZmxvYXQgdHJhbnNsYXRlX3opOworKwkJcHVibGljIGZsb2F0 IGdldF93aWR0aCAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfeCAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvckFsaWduIGdldF94X2FsaWdu ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBib29sIGdldF94 X2V4cGFuZCAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfeSAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvckFsaWduIGdldF95X2FsaWduICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBib29sIGdldF95X2V4 cGFuZCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgZmxvYXQg Z2V0X3pfcG9zaXRpb24gKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJl Y2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIENsdXR0ZXIu R3Jhdml0eSBnZXRfel9yb3RhdGlvbl9ncmF2aXR5ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMCIpXQorKwkJcHVibGljIHZvaWQgZ3JhYl9rZXlfZm9jdXMgKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGJvb2wgaGFzX2FjdGlvbnMgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgYm9vbCBoYXNfYWxsb2NhdGlvbiAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgYm9vbCBoYXNfY29uc3Ry YWludHMgKCk7CisrCQlwdWJsaWMgYm9vbCBoYXNfZGFtYWdlICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBib29sIGhhc19lZmZlY3RzICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIGJvb2wgaGFzX2tleV9mb2N1cyAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2IildCisrCQlwdWJsaWMgYm9vbCBoYXNfbWFwcGVkX2Ns b25lcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2aXJ0dWFs IGJvb2wgaGFzX292ZXJsYXBzICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFs IHZvaWQgaGlkZV9hbGwgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVi bGljIHZvaWQgaW5zZXJ0X2NoaWxkX2Fib3ZlIChDbHV0dGVyLkFjdG9yIGNoaWxkLCBDbHV0dGVy LkFjdG9yPyBzaWJsaW5nKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJs aWMgdm9pZCBpbnNlcnRfY2hpbGRfYXRfaW5kZXggKENsdXR0ZXIuQWN0b3IgY2hpbGQsIGludCBp bmRleF8pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIGlu c2VydF9jaGlsZF9iZWxvdyAoQ2x1dHRlci5BY3RvciBjaGlsZCwgQ2x1dHRlci5BY3Rvcj8gc2li bGluZyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgYm9vbCBpc19p bl9jbG9uZV9wYWludCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjI0IildCisrCQlwdWJs aWMgYm9vbCBpc19tYXBwZWQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yNCIpXQorKwkJ cHVibGljIGJvb2wgaXNfcmVhbGl6ZWQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42Iild CisrCQlwdWJsaWMgYm9vbCBpc19yb3RhdGVkICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAu NiIpXQorKwkJcHVibGljIGJvb2wgaXNfc2NhbGVkICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMjQiKV0KKysJCXB1YmxpYyBib29sIGlzX3Zpc2libGUgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIG1hcCAoKTsKKysJCVtWZXJzaW9u IChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAi MC42IildCisrCQlwdWJsaWMgdm9pZCBtb3ZlX2FuY2hvcl9wb2ludCAoZmxvYXQgYW5jaG9yX3gs IGZsb2F0IGFuY2hvcl95KTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVj YXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdm9pZCBtb3Zl X2FuY2hvcl9wb2ludF9mcm9tX2dyYXZpdHkgKENsdXR0ZXIuR3Jhdml0eSBncmF2aXR5KTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyB2b2lkIG1vdmVfYnkgKGZsb2F0 IGR4LCBmbG9hdCBkeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGlj IGJvb2wgbmVlZHNfZXhwYW5kIChDbHV0dGVyLk9yaWVudGF0aW9uIG9yaWVudGF0aW9uKTsKKysJ CVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHBhaW50X25vZGUgKENsdXR0ZXIu UGFpbnROb2RlIHJvb3QpOworKwkJcHVibGljIHZvaWQgcGlja19ib3ggKENsdXR0ZXIuUGlja0Nv bnRleHQgcGlja19jb250ZXh0LCBDbHV0dGVyLkFjdG9yQm94IGJveCk7CisrCQlwdWJsaWMgdm9p ZCBwb3BfaW50ZXJuYWwgKCk7CisrCQlwdWJsaWMgdm9pZCBwdXNoX2ludGVybmFsICgpOworKwkJ cHVibGljIHZvaWQgcXVldWVfcmVkcmF3ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAi KV0KKysJCXB1YmxpYyB2b2lkIHF1ZXVlX3JlZHJhd193aXRoX2NsaXAgKENhaXJvLlJlY3Rhbmds ZUludD8gY2xpcCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9p ZCByZW1vdmVfYWN0aW9uIChDbHV0dGVyLkFjdGlvbiBhY3Rpb24pOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgcmVtb3ZlX2FjdGlvbl9ieV9uYW1lIChzdHJp bmcgbmFtZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQg cmVtb3ZlX2FsbF9jaGlsZHJlbiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisr CQlwdWJsaWMgdm9pZCByZW1vdmVfYWxsX3RyYW5zaXRpb25zICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHJlbW92ZV9jaGlsZCAoQ2x1dHRlci5BY3Rv ciBjaGlsZCk7CisrCQlwdWJsaWMgdm9pZCByZW1vdmVfY2xpcCAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHJlbW92ZV9jb25zdHJhaW50IChDbHV0dGVy LkNvbnN0cmFpbnQgY29uc3RyYWludCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisr CQlwdWJsaWMgdm9pZCByZW1vdmVfY29uc3RyYWludF9ieV9uYW1lIChzdHJpbmcgbmFtZSk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCByZW1vdmVfZWZmZWN0 IChDbHV0dGVyLkVmZmVjdCBlZmZlY3QpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQor KwkJcHVibGljIHZvaWQgcmVtb3ZlX2VmZmVjdF9ieV9uYW1lIChzdHJpbmcgbmFtZSk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgcmVtb3ZlX3RyYW5zaXRp b24gKHN0cmluZyBuYW1lKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJs aWMgdm9pZCByZXBsYWNlX2NoaWxkIChDbHV0dGVyLkFjdG9yIG9sZF9jaGlsZCwgQ2x1dHRlci5B Y3RvciBuZXdfY2hpbGQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1Ymxp YyB2b2lkIHJlc3RvcmVfZWFzaW5nX3N0YXRlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTAiKV0KKysJCXB1YmxpYyB2b2lkIHNhdmVfZWFzaW5nX3N0YXRlICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9hbGxvY2F0aW9uIChDbHV0dGVy LkFjdG9yQm94IGJveCwgQ2x1dHRlci5BbGxvY2F0aW9uRmxhZ3MgZmxhZ3MpOworKwkJW1ZlcnNp b24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9 ICIwLjYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9hbmNob3JfcG9pbnQgKGZsb2F0IGFuY2hvcl94 LCBmbG9hdCBhbmNob3JfeSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJl Y2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZvaWQgc2V0 X2FuY2hvcl9wb2ludF9mcm9tX2dyYXZpdHkgKENsdXR0ZXIuR3Jhdml0eSBncmF2aXR5KTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfYmFja2dyb3Vu ZF9jb2xvciAoQ2x1dHRlci5Db2xvcj8gY29sb3IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9jaGlsZF9hYm92ZV9zaWJsaW5nIChDbHV0dGVyLkFj dG9yIGNoaWxkLCBDbHV0dGVyLkFjdG9yPyBzaWJsaW5nKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfY2hpbGRfYXRfaW5kZXggKENsdXR0ZXIuQWN0 b3IgY2hpbGQsIGludCBpbmRleF8pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyB2b2lkIHNldF9jaGlsZF9iZWxvd19zaWJsaW5nIChDbHV0dGVyLkFjdG9yIGNoaWxk LCBDbHV0dGVyLkFjdG9yPyBzaWJsaW5nKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIild CisrCQlwdWJsaWMgdm9pZCBzZXRfY2hpbGRfdHJhbnNmb3JtIChDbHV0dGVyLk1hdHJpeD8gdHJh bnNmb3JtKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2b2lkIHNl dF9jbGlwIChmbG9hdCB4b2ZmLCBmbG9hdCB5b2ZmLCBmbG9hdCB3aWR0aCwgZmxvYXQgaGVpZ2h0 KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9jbGlw X3RvX2FsbG9jYXRpb24gKGJvb2wgY2xpcF9zZXQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9jb250ZW50IChDbHV0dGVyLkNvbnRlbnQ/IGNvbnRl bnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9j b250ZW50X2dyYXZpdHkgKENsdXR0ZXIuQ29udGVudEdyYXZpdHkgZ3Jhdml0eSk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2NvbnRlbnRfcmVwZWF0 IChDbHV0dGVyLkNvbnRlbnRSZXBlYXQgcmVwZWF0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfY29udGVudF9zY2FsaW5nX2ZpbHRlcnMgKENsdXR0 ZXIuU2NhbGluZ0ZpbHRlciBtaW5fZmlsdGVyLCBDbHV0dGVyLlNjYWxpbmdGaWx0ZXIgbWFnX2Zp bHRlcik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2Ug PSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2RlcHRoIChmbG9hdCBkZXB0aCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2Vhc2luZ19kZWxh eSAodWludCBtc2Vjcyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IHZvaWQgc2V0X2Vhc2luZ19kdXJhdGlvbiAodWludCBtc2Vjcyk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2Vhc2luZ19tb2RlIChDbHV0dGVyLkFu aW1hdGlvbk1vZGUgbW9kZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJs aWMgdm9pZCBzZXRfZml4ZWRfcG9zaXRpb25fc2V0IChib29sIGlzX3NldCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfZmxhZ3MgKENsdXR0ZXIuQWN0 b3JGbGFncyBmbGFncyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCQlwdWJsaWMg dm9pZCBzZXRfaGVpZ2h0IChmbG9hdCBoZWlnaHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9sYXlvdXRfbWFuYWdlciAoQ2x1dHRlci5MYXlvdXRN YW5hZ2VyPyBtYW5hZ2VyKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJs aWMgdm9pZCBzZXRfbWFyZ2luIChDbHV0dGVyLk1hcmdpbiBtYXJnaW4pOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9tYXJnaW5fYm90dG9tIChmbG9h dCBtYXJnaW4pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lk IHNldF9tYXJnaW5fbGVmdCAoZmxvYXQgbWFyZ2luKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbWFyZ2luX3JpZ2h0IChmbG9hdCBtYXJnaW4pOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9tYXJnaW5f dG9wIChmbG9hdCBtYXJnaW4pOworKwkJcHVibGljIHZvaWQgc2V0X25hbWUgKHN0cmluZyBuYW1l KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9vZmZz Y3JlZW5fcmVkaXJlY3QgKENsdXR0ZXIuT2Zmc2NyZWVuUmVkaXJlY3QgcmVkaXJlY3QpOworKwkJ cHVibGljIHZvaWQgc2V0X29wYWNpdHkgKHVpbnQ4IG9wYWNpdHkpOworKwkJcHVibGljIHZvaWQg c2V0X29wYWNpdHlfb3ZlcnJpZGUgKGludCBvcGFjaXR5KTsKKysJCVtWZXJzaW9uIChkZXByZWNh dGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBz ZXRfcGFyZW50IChDbHV0dGVyLkFjdG9yIHBhcmVudCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3Bpdm90X3BvaW50IChmbG9hdCBwaXZvdF94LCBm bG9hdCBwaXZvdF95KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMg dm9pZCBzZXRfcGl2b3RfcG9pbnRfeiAoZmxvYXQgcGl2b3Rfeik7CisrCQlwdWJsaWMgdm9pZCBz ZXRfcG9zaXRpb24gKGZsb2F0IHgsIGZsb2F0IHkpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAu NiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3JlYWN0aXZlIChib29sIHJlYWN0aXZlKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9yZXF1ZXN0X21vZGUg KENsdXR0ZXIuUmVxdWVzdE1vZGUgbW9kZSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRy dWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGlj IHZvaWQgc2V0X3JvdGF0aW9uIChDbHV0dGVyLlJvdGF0ZUF4aXMgYXhpcywgZG91YmxlIGFuZ2xl LCBmbG9hdCB4LCBmbG9hdCB5LCBmbG9hdCB6KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEy IildCisrCQlwdWJsaWMgdm9pZCBzZXRfcm90YXRpb25fYW5nbGUgKENsdXR0ZXIuUm90YXRlQXhp cyBheGlzLCBkb3VibGUgYW5nbGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwkJ cHVibGljIHZvaWQgc2V0X3NjYWxlIChkb3VibGUgc2NhbGVfeCwgZG91YmxlIHNjYWxlX3kpOwor KwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIi LCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9zY2FsZV9mdWxsIChkb3VibGUg c2NhbGVfeCwgZG91YmxlIHNjYWxlX3ksIGZsb2F0IGNlbnRlcl94LCBmbG9hdCBjZW50ZXJfeSk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3NjYWxl X3ogKGRvdWJsZSBzY2FsZV96KTsKKysJCXB1YmxpYyB2b2lkIHNldF9zaXplIChmbG9hdCB3aWR0 aCwgZmxvYXQgaGVpZ2h0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1Ymxp YyB2b2lkIHNldF90ZXh0X2RpcmVjdGlvbiAoQ2x1dHRlci5UZXh0RGlyZWN0aW9uIHRleHRfZGly KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBzZXRfdHJh bnNmb3JtIChDbHV0dGVyLk1hdHJpeD8gdHJhbnNmb3JtKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBzZXRfdHJhbnNsYXRpb24gKGZsb2F0IHRyYW5zbGF0 ZV94LCBmbG9hdCB0cmFuc2xhdGVfeSwgZmxvYXQgdHJhbnNsYXRlX3opOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3dpZHRoIChmbG9hdCB3aWR0aCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdm9pZCBzZXRfeCAoZmxv YXQgeCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0 X3hfYWxpZ24gKENsdXR0ZXIuQWN0b3JBbGlnbiB4X2FsaWduKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBzZXRfeF9leHBhbmQgKGJvb2wgZXhwYW5kKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF95IChmbG9h dCB5KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRf eV9hbGlnbiAoQ2x1dHRlci5BY3RvckFsaWduIHlfYWxpZ24pOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF95X2V4cGFuZCAoYm9vbCBleHBhbmQpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF96X3Bvc2l0 aW9uIChmbG9hdCB6X3Bvc2l0aW9uKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwg ZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9p ZCBzZXRfel9yb3RhdGlvbl9mcm9tX2dyYXZpdHkgKGRvdWJsZSBhbmdsZSwgQ2x1dHRlci5HcmF2 aXR5IGdyYXZpdHkpOworKwkJcHVibGljIGJvb2wgc2hvdWxkX3BpY2tfcGFpbnQgKCk7CisrCQlb VmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNp bmNlID0gIjAuMiIpXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBzaG93X2FsbCAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBib29sIHRyYW5zZm9ybV9zdGFnZV9w b2ludCAoZmxvYXQgeCwgZmxvYXQgeSwgb3V0IGZsb2F0IHhfb3V0LCBvdXQgZmxvYXQgeV9vdXQp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCB1 bm1hcCAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5j ZSA9ICIxLjEwIiwgc2luY2UgPSAiMC4yIildCisrCQlwdWJsaWMgdm9pZCB1bnBhcmVudCAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHVuc2V0X2ZsYWdz IChDbHV0dGVyLkFjdG9yRmxhZ3MgZmxhZ3MpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgQ2x1dHRlci5BY3Rpb24gYWN0aW9u cyB7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MC44IildCisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvckJveCBhbGxvY2F0aW9uIHsgb3duZWQgZ2V0 OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1 ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg Q2x1dHRlci5HcmF2aXR5IGFuY2hvcl9ncmF2aXR5IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vz c29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3Np bmNlID0gIjEuMTIiLCBzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBmbG9hdCBhbmNob3JfeCB7 IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChkZXByZWNh dGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMC44IildCisr CQlwdWJsaWMgZmxvYXQgYW5jaG9yX3kgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIGJhY2tncm91bmRfY29sb3IgeyBn ZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMCIpXQorKwkJcHVibGljIGJvb2wgYmFja2dyb3VuZF9jb2xvcl9zZXQgeyBnZXQ7IH0KKysJ CVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1 YmxpYyBib29sIGNoaWxkX3RyYW5zZm9ybV9zZXQgeyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0 aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5S ZWN0IGNsaXBfcmVjdCB7IG93bmVkIGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4wIildCisrCQlwdWJsaWMgYm9vbCBjbGlwX3RvX2FsbG9jYXRpb24geyBnZXQ7IHNldDsgfQor KwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlw dWJsaWMgQ2x1dHRlci5Db25zdHJhaW50IGNvbnN0cmFpbnRzIHsgc2V0OyB9CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENsdXR0ZXIuQ29udGVudCBjb250ZW50IHsg Z2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ2x1 dHRlci5BY3RvckJveCBjb250ZW50X2JveCB7IGdldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbnRlbnRHcmF2aXR5IGNvbnRlbnRfZ3Jhdml0 eSB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGlj IENsdXR0ZXIuQ29udGVudFJlcGVhdCBjb250ZW50X3JlcGVhdCB7IGdldDsgc2V0OyB9CisrCQlb VmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNp bmNlID0gIjAuNiIpXQorKwkJcHVibGljIGZsb2F0IGRlcHRoIHsgZ2V0OyBzZXQ7IH0KKysJCVtO b0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGlj IENsdXR0ZXIuRWZmZWN0IGVmZmVjdCB7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFjdG9yIGZpcnN0X2NoaWxkIHsgZ2V0OyB9CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgYm9vbCBmaXhlZF9wb3NpdGlvbl9z ZXQgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMC44IildCisrCQlwdWJsaWMgZmxvYXQgZml4ZWRfeCB7IGdldDsgc2V0OyB9CisrCQlb Tm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1Ymxp YyBmbG9hdCBmaXhlZF95IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJ cHVibGljIGJvb2wgaGFzX2NsaXAgeyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIGJvb2wgaGFzX3BvaW50ZXIgeyBn ZXQ7IH0KKysJCXB1YmxpYyBmbG9hdCBoZWlnaHQgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFjdG9yIGxhc3RfY2hpbGQgeyBn ZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ2x1dHRlci5M YXlvdXRNYW5hZ2VyIGxheW91dF9tYW5hZ2VyIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29y TWV0aG9kXQorKwkJcHVibGljIENsdXR0ZXIuU2NhbGluZ0ZpbHRlciBtYWduaWZpY2F0aW9uX2Zp bHRlciB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBib29sIG1hcHBlZCB7IGdldDsgfQorKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBmbG9hdCBtYXJnaW5fYm90dG9tIHsgZ2V0 OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgZmxvYXQg bWFyZ2luX2xlZnQgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0K KysJCXB1YmxpYyBmbG9hdCBtYXJnaW5fcmlnaHQgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBmbG9hdCBtYXJnaW5fdG9wIHsgZ2V0OyBzZXQ7 IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQor KwkJcHVibGljIGZsb2F0IG1pbl9oZWlnaHQgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JN ZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgYm9vbCBtaW5f aGVpZ2h0X3NldCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJz aW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBmbG9hdCBtaW5fd2lkdGggeyBnZXQ7IHNl dDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44Iild CisrCQlwdWJsaWMgYm9vbCBtaW5fd2lkdGhfc2V0IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vz c29yTWV0aG9kXQorKwkJcHVibGljIENsdXR0ZXIuU2NhbGluZ0ZpbHRlciBtaW5pZmljYXRpb25f ZmlsdGVyIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJCXB1 YmxpYyBzdHJpbmcgbmFtZSB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBmbG9hdCBuYXR1cmFsX2hlaWdo dCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBib29sIG5hdHVyYWxfaGVpZ2h0X3NldCB7IGdldDsgc2V0 OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0K KysJCXB1YmxpYyBmbG9hdCBuYXR1cmFsX3dpZHRoIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vz c29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIGJvb2wg bmF0dXJhbF93aWR0aF9zZXQgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu OCIpXQorKwkJcHVibGljIENsdXR0ZXIuT2Zmc2NyZWVuUmVkaXJlY3Qgb2Zmc2NyZWVuX3JlZGly ZWN0IHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyB1aW50IG9wYWNpdHkgeyBnZXQ7IHNldDsgfQor KwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJ cHVibGljIEdyYXBoZW5lLlBvaW50IHBpdm90X3BvaW50IHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgZmxvYXQgcGl2b3RfcG9pbnRf eiB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEyIildCisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQgcG9zaXRpb24geyBvd25lZCBn ZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIGJvb2wg cmVhY3RpdmUgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgYm9vbCByZWFsaXplZCB7IGdldDsgfQorKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIENsdXR0ZXIuUmVxdWVzdE1vZGUg cmVxdWVzdF9tb2RlIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVi bGljIGZsb2F0IHJlc291cmNlX3NjYWxlIHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0K KysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBkb3VibGUgcm90YXRpb25f YW5nbGVfeCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9u IChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBkb3VibGUgcm90YXRpb25fYW5nbGVfeSB7IGdl dDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIw LjYiKV0KKysJCXB1YmxpYyBkb3VibGUgcm90YXRpb25fYW5nbGVfeiB7IGdldDsgc2V0OyB9Cisr CQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVw cmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgR3JhcGhl bmUuUG9pbnQzRCByb3RhdGlvbl9jZW50ZXJfeCB7IG93bmVkIGdldDsgc2V0OyB9CisrCQlbTm9B Y2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRl ZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgR3JhcGhlbmUuUG9p bnQzRCByb3RhdGlvbl9jZW50ZXJfeSB7IG93bmVkIGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nv ck1ldGhvZF0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5j ZSA9ICIxLjEyIiwgc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQzRCBy b3RhdGlvbl9jZW50ZXJfeiB7IG93bmVkIGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhv ZF0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIx LjEyIiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgQ2x1dHRlci5HcmF2aXR5IHJvdGF0aW9u X2NlbnRlcl96X2dyYXZpdHkgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisr CQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIs IHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IHNjYWxlX2NlbnRlcl94IHsgZ2V0OyBz ZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0 cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1Ymxp YyBmbG9hdCBzY2FsZV9jZW50ZXJfeSB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhv ZF0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIx LjEyIiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgQ2x1dHRlci5HcmF2aXR5IHNjYWxlX2dy YXZpdHkgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgZG91YmxlIHNjYWxlX3ggeyBnZXQ7IHNldDsgfQor KwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlw dWJsaWMgZG91YmxlIHNjYWxlX3kgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTIiKV0KKysJCXB1YmxpYyBkb3VibGUgc2NhbGVfeiB7IGdldDsgc2V0OyB9CisrCQlbTm9B Y2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBi b29sIHNob3dfb25fc2V0X3BhcmVudCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhv ZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgR3JhcGhlbmUuU2l6 ZSBzaXplIHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0K KysJCXB1YmxpYyBDbHV0dGVyLlRleHREaXJlY3Rpb24gdGV4dF9kaXJlY3Rpb24geyBnZXQ7IHNl dDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIp XQorKwkJcHVibGljIGJvb2wgdHJhbnNmb3JtX3NldCB7IGdldDsgfQorKwkJW05vQWNjZXNzb3JN ZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGZsb2F0IHRy YW5zbGF0aW9uX3ggeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGZsb2F0IHRyYW5zbGF0aW9uX3kgeyBn ZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMiIpXQorKwkJcHVibGljIGZsb2F0IHRyYW5zbGF0aW9uX3ogeyBnZXQ7IHNldDsgfQorKwkJ W05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9vbCB2aXNpYmxlIHsgZ2V0OyBzZXQ7IH0K KysJCXB1YmxpYyBmbG9hdCB3aWR0aCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgZmxvYXQgeCB7 IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENs dXR0ZXIuQWN0b3JBbGlnbiB4X2FsaWduIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEyIildCisrCQlwdWJsaWMgYm9vbCB4X2V4cGFuZCB7IGdldDsgc2V0OyB9CisrCQlw dWJsaWMgZmxvYXQgeSB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIp XQorKwkJcHVibGljIENsdXR0ZXIuQWN0b3JBbGlnbiB5X2FsaWduIHsgZ2V0OyBzZXQ7IH0KKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgYm9vbCB5X2V4cGFuZCB7IGdl dDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGZsb2F0 IHpfcG9zaXRpb24geyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwkJcHVibGljIHNpZ25hbCB2b2lkIGFsbG9jYXRpb25fY2hhbmdlZCAoQ2x1dHRlci5BY3RvckJv eCBib3gsIENsdXR0ZXIuQWxsb2NhdGlvbkZsYWdzIGZsYWdzKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCBib29sIGJ1dHRvbl9wcmVzc19l dmVudCAoQ2x1dHRlci5CdXR0b25FdmVudCBldmVudCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MC42IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCBidXR0b25fcmVsZWFzZV9ldmVu dCAoQ2x1dHRlci5CdXR0b25FdmVudCBldmVudCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42 IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCBjYXB0dXJlZF9ldmVudCAoQ2x1dHRl ci5FdmVudCBldmVudCk7CisrCQlbSGFzRW1pdHRlcl0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIw LjIiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGRlc3Ryb3kgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCBlbnRl cl9ldmVudCAoQ2x1dHRlci5Dcm9zc2luZ0V2ZW50IGV2ZW50KTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCBib29sIGV2ZW50IChDbHV0dGVy LkV2ZW50IGV2ZW50KTsKKysJCVtIYXNFbWl0dGVyXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAu MiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgaGlkZSAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGtleV9mb2N1 c19pbiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2aXJ0dWFs IHNpZ25hbCB2b2lkIGtleV9mb2N1c19vdXQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42 IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCBrZXlfcHJlc3NfZXZlbnQgKENsdXR0 ZXIuS2V5RXZlbnQgZXZlbnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVi bGljIHZpcnR1YWwgc2lnbmFsIGJvb2wga2V5X3JlbGVhc2VfZXZlbnQgKENsdXR0ZXIuS2V5RXZl bnQgZXZlbnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZpcnR1 YWwgc2lnbmFsIGJvb2wgbGVhdmVfZXZlbnQgKENsdXR0ZXIuQ3Jvc3NpbmdFdmVudCBldmVudCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwg Ym9vbCBtb3Rpb25fZXZlbnQgKENsdXR0ZXIuTW90aW9uRXZlbnQgZXZlbnQpOworKwkJW0hhc0Vt aXR0ZXJdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2Ug PSAiMS4xMiIsIHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQg cGFpbnQgKENsdXR0ZXIuUGFpbnRDb250ZXh0IHBhaW50X2NvbnRleHQpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgcGFyZW50X3Nl dCAoQ2x1dHRlci5BY3Rvcj8gb2xkX3BhcmVudCk7CisrCQlbSGFzRW1pdHRlcl0KKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIHBpY2sg KENsdXR0ZXIuUGlja0NvbnRleHQgcGlja19jb250ZXh0KTsKKysJCVtIYXNFbWl0dGVyXQorKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQg cXVldWVfcmVsYXlvdXQgKCk7CisrCQlbSGFzRW1pdHRlcl0KKysJCVtWZXJzaW9uIChkZXByZWNh dGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2UgPSAiMC44IildCisr CQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCByZWFsaXplICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIGJvb2wgc2Nyb2xsX2V2ZW50 IChDbHV0dGVyLlNjcm9sbEV2ZW50IGV2ZW50KTsKKysJCVtIYXNFbWl0dGVyXQorKwkJW1ZlcnNp b24gKHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgc2hvdyAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdmlydHVhbCBzaWdu YWwgYm9vbCB0b3VjaF9ldmVudCAoQ2x1dHRlci5FdmVudCBldmVudCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHNpZ25hbCB2b2lkIHRyYW5zaXRpb25fc3RvcHBl ZCAoc3RyaW5nIG5hbWUsIGJvb2wgaXNfZmluaXNoZWQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCB0cmFuc2l0aW9uc19jb21wbGV0ZWQgKCk7 CisrCQlbSGFzRW1pdHRlcl0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVj YXRlZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdmlydHVhbCBz aWduYWwgdm9pZCB1bnJlYWxpemUgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2FjdG9yX21ldGFfZ2V0 X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgYWJzdHJh Y3QgY2xhc3MgQWN0b3JNZXRhIDogR0xpYi5Jbml0aWFsbHlVbm93bmVkIHsKKysJCVtDQ29kZSAo aGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBBY3Rvck1ldGEg KCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF9hY3RvciAoKTsKKysJCXB1 YmxpYyBib29sIGdldF9lbmFibGVkICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9u YW1lICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgc2V0X2FjdG9y IChDbHV0dGVyLkFjdG9yPyBhY3Rvcik7CisrCQlwdWJsaWMgdm9pZCBzZXRfZW5hYmxlZCAoYm9v bCBpc19lbmFibGVkKTsKKysJCXB1YmxpYyB2b2lkIHNldF9uYW1lIChzdHJpbmcgbmFtZSk7Cisr CQlwdWJsaWMgQ2x1dHRlci5BY3RvciBhY3RvciB7IGdldDsgfQorKwkJcHVibGljIGJvb2wgZW5h YmxlZCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgc3RyaW5nIG5hbWUgeyBnZXQ7IHNldDsgfQor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5 cGVfaWQgPSAiY2x1dHRlcl9hY3Rvcl9ub2RlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFz cyBBY3Rvck5vZGUgOiBDbHV0dGVyLlBhaW50Tm9kZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1 Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyUGFpbnROb2RlKiIpXQorKwkJcHVi bGljIEFjdG9yTm9kZSAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2Fs aWduX2NvbnN0cmFpbnRfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIp XQorKwlwdWJsaWMgY2xhc3MgQWxpZ25Db25zdHJhaW50IDogQ2x1dHRlci5Db25zdHJhaW50IHsK KysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0 ZXJDb25zdHJhaW50KiIpXQorKwkJcHVibGljIEFsaWduQ29uc3RyYWludCAoQ2x1dHRlci5BY3Rv cj8gc291cmNlLCBDbHV0dGVyLkFsaWduQXhpcyBheGlzLCBmbG9hdCBmYWN0b3IpOworKwkJcHVi bGljIENsdXR0ZXIuQWxpZ25BeGlzIGdldF9hbGlnbl9heGlzICgpOworKwkJcHVibGljIGZsb2F0 IGdldF9mYWN0b3IgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF9zb3Vy Y2UgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfYWxpZ25fYXhpcyAoQ2x1dHRlci5BbGlnbkF4aXMg YXhpcyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfZmFjdG9yIChmbG9hdCBmYWN0b3IpOworKwkJcHVi bGljIHZvaWQgc2V0X3NvdXJjZSAoQ2x1dHRlci5BY3Rvcj8gc291cmNlKTsKKysJCXB1YmxpYyBD bHV0dGVyLkFsaWduQXhpcyBhbGlnbl9heGlzIHsgZ2V0OyBzZXQgY29uc3RydWN0OyB9CisrCQlw dWJsaWMgZmxvYXQgZmFjdG9yIHsgZ2V0OyBzZXQgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgQ2x1 dHRlci5BY3RvciBzb3VyY2UgeyBnZXQ7IHNldCBjb25zdHJ1Y3Q7IH0KKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0 ZXJfYWxwaGFfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBk ZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIwLjIiKV0KKysJcHVibGljIGNsYXNz IEFscGhhIDogR0xpYi5Jbml0aWFsbHlVbm93bmVkLCBDbHV0dGVyLlNjcmlwdGFibGUgeworKwkJ W0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHVibGljIEFscGhh ICgpOworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEFscGhhLmZ1bGwgKENsdXR0ZXIuVGlt ZWxpbmUgdGltZWxpbmUsIHVsb25nIG1vZGUpOworKwkJcHVibGljIGRvdWJsZSBnZXRfYWxwaGEg KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdWxvbmcgZ2V0X21v ZGUgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLlRpbWVsaW5lIGdldF90aW1lbGluZSAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9jbG9z dXJlIChHTGliLkNsb3N1cmUgY2xvc3VyZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfZnVuYyAob3du ZWQgQ2x1dHRlci5BbHBoYUZ1bmMgZnVuYyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIild CisrCQlwdWJsaWMgdm9pZCBzZXRfbW9kZSAodWxvbmcgbW9kZSk7CisrCQlwdWJsaWMgdm9pZCBz ZXRfdGltZWxpbmUgKENsdXR0ZXIuVGltZWxpbmUgdGltZWxpbmUpOworKwkJcHVibGljIGRvdWJs ZSBhbHBoYSB7IGdldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGlj IHVsb25nIG1vZGUgeyBnZXQ7IHNldCBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBDbHV0dGVyLlRp bWVsaW5lIHRpbWVsaW5lIHsgZ2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfYW5pbWF0aW9u X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRl ZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBjbGFzcyBBbmltYXRp b24gOiBHTGliLk9iamVjdCwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2Nv bnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1YmxpYyBBbmltYXRpb24gKCk7CisrCQlw dWJsaWMgdWludCBnZXRfZHVyYXRpb24gKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLklu dGVydmFsIGdldF9pbnRlcnZhbCAoc3RyaW5nIHByb3BlcnR5X25hbWUpOworKwkJcHVibGljIGJv b2wgZ2V0X2xvb3AgKCk7CisrCQlwdWJsaWMgdWxvbmcgZ2V0X21vZGUgKCk7CisrCQlwdWJsaWMg dW5vd25lZCBDbHV0dGVyLlRpbWVsaW5lIGdldF90aW1lbGluZSAoKTsKKysJCXB1YmxpYyBib29s IGhhc19wcm9wZXJ0eSAoc3RyaW5nIHByb3BlcnR5X25hbWUpOworKwkJcHVibGljIHZvaWQgc2V0 X2R1cmF0aW9uICh1aW50IG1zZWNzKTsKKysJCXB1YmxpYyB2b2lkIHNldF9sb29wIChib29sIGxv b3ApOworKwkJcHVibGljIHZvaWQgc2V0X21vZGUgKHVsb25nIG1vZGUpOworKwkJcHVibGljIHZv aWQgc2V0X29iamVjdCAoR0xpYi5PYmplY3Qgb2JqZWN0KTsKKysJCXB1YmxpYyB2b2lkIHNldF90 aW1lbGluZSAoQ2x1dHRlci5UaW1lbGluZT8gdGltZWxpbmUpOworKwkJW05vQWNjZXNzb3JNZXRo b2RdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAi MS4xMCIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIENsdXR0ZXIuQWxwaGEgYWxwaGEgeyBv d25lZCBnZXQ7IHNldDsgfQorKwkJcHVibGljIHVpbnQgZHVyYXRpb24geyBnZXQ7IHNldDsgfQor KwkJcHVibGljIGJvb2wgbG9vcCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgdWxvbmcgbW9kZSB7 IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBHTGliLk9iamVj dCBvYmplY3QgeyBvd25lZCBnZXQ7IHNldDsgfQorKwkJcHVibGljIENsdXR0ZXIuVGltZWxpbmUg dGltZWxpbmUgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgY29t cGxldGVkICgpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgc3RhcnRlZCAoKTsKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBoYXNf dHlwZV9pZCA9IGZhbHNlKV0KKysJW0NvbXBhY3RdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIi KV0KKysJcHVibGljIGNsYXNzIEFueUV2ZW50IDogQ2x1dHRlci5FdmVudCB7CisrCQlwdWJsaWMg Q2x1dHRlci5FdmVudEZsYWdzIGZsYWdzOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5BY3RvciBz b3VyY2U7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLlN0YWdlIHN0YWdlOworKwkJcHVibGljIHVp bnQzMiB0aW1lOworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRUeXBlIHR5cGU7CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJj bHV0dGVyX2JhY2tlbmRfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIp XQorKwlwdWJsaWMgY2xhc3MgQmFja2VuZCA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFz X2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBCYWNrZW5kICgpOwor KwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgYWRkX29wdGlvbnMgKEdMaWIu T3B0aW9uR3JvdXAgZ3JvdXApOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIGJv b2wgY3JlYXRlX2NvbnRleHQgKCkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlbTm9XcmFwcGVyXQor KwkJcHVibGljIHZpcnR1YWwgdW5vd25lZCBDbHV0dGVyLlN0YWdlV2luZG93IGNyZWF0ZV9zdGFn ZSAoQ2x1dHRlci5TdGFnZSB3cmFwcGVyKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJCVtOb1dyYXBw ZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGVuc3VyZV9jb250ZXh0IChDbHV0dGVyLlN0YWdl IHN0YWdlKTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuU2VhdCBnZXRfZGVmYXVsdF9zZWF0 ICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIENsdXR0ZXIuRmVhdHVyZUZs YWdzIGdldF9mZWF0dXJlcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1 YmxpYyB1bm93bmVkIENhaXJvLkZvbnRPcHRpb25zIGdldF9mb250X29wdGlvbnMgKCk7CisrCQlw dWJsaWMgdW5vd25lZCBDbHV0dGVyLklucHV0TWV0aG9kIGdldF9pbnB1dF9tZXRob2QgKCk7Cisr CQlwdWJsaWMgZG91YmxlIGdldF9yZXNvbHV0aW9uICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1 YmxpYyB2aXJ0dWFsIHZvaWQgaW5pdF9ldmVudHMgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVi bGljIHZpcnR1YWwgdm9pZCBpbml0X2ZlYXR1cmVzICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1 YmxpYyB2aXJ0dWFsIGJvb2wgcG9zdF9wYXJzZSAoKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJCVtO b1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCBib29sIHByZV9wYXJzZSAoKSB0aHJvd3MgR0xp Yi5FcnJvcjsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHJlZHJhdyAo Q2x1dHRlci5TdGFnZSBzdGFnZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlw dWJsaWMgdm9pZCBzZXRfZm9udF9vcHRpb25zIChDYWlyby5Gb250T3B0aW9ucyBvcHRpb25zKTsK KysJCXB1YmxpYyB2b2lkIHNldF9pbnB1dF9tZXRob2QgKENsdXR0ZXIuSW5wdXRNZXRob2QgbWV0 aG9kKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBzaWduYWwgdm9p ZCBmb250X2NoYW5nZWQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJs aWMgc2lnbmFsIHZvaWQgcmVzb2x1dGlvbl9jaGFuZ2VkICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuNCIpXQorKwkJcHVibGljIHNpZ25hbCB2b2lkIHNldHRpbmdzX2NoYW5nZWQgKCk7Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlw ZV9pZCA9ICJjbHV0dGVyX2Jpbl9sYXlvdXRfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNp bmNlID0gIjEuMiIpXQorKwlwdWJsaWMgY2xhc3MgQmluTGF5b3V0IDogQ2x1dHRlci5MYXlvdXRN YW5hZ2VyIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBl ID0gIkNsdXR0ZXJMYXlvdXRNYW5hZ2VyKiIpXQorKwkJcHVibGljIEJpbkxheW91dCAoQ2x1dHRl ci5CaW5BbGlnbm1lbnQgeF9hbGlnbiA9IENsdXR0ZXIuQmluQWxpZ25tZW50LlNUQVJULCBDbHV0 dGVyLkJpbkFsaWdubWVudCB5X2FsaWduID0gQ2x1dHRlci5CaW5BbGlnbm1lbnQuU1RBUlQpOwor KwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRl cHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIENsdXR0 ZXIuQmluQWxpZ25tZW50IHhfYWxpZ24geyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRo b2RdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAi MS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIENsdXR0ZXIuQmluQWxpZ25tZW50IHlf YWxpZ24geyBnZXQ7IHNldDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9iaW5kX2NvbnN0cmFpbnRfZ2V0 X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgY2xhc3Mg QmluZENvbnN0cmFpbnQgOiBDbHV0dGVyLkNvbnN0cmFpbnQgeworKwkJW0NDb2RlIChoYXNfY29u c3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckNvbnN0cmFpbnQqIildCisr CQlwdWJsaWMgQmluZENvbnN0cmFpbnQgKENsdXR0ZXIuQWN0b3I/IHNvdXJjZSwgQ2x1dHRlci5C aW5kQ29vcmRpbmF0ZSBjb29yZGluYXRlLCBmbG9hdCBvZmZzZXQpOworKwkJcHVibGljIENsdXR0 ZXIuQmluZENvb3JkaW5hdGUgZ2V0X2Nvb3JkaW5hdGUgKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0 X29mZnNldCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X3NvdXJjZSAo KTsKKysJCXB1YmxpYyB2b2lkIHNldF9jb29yZGluYXRlIChDbHV0dGVyLkJpbmRDb29yZGluYXRl IGNvb3JkaW5hdGUpOworKwkJcHVibGljIHZvaWQgc2V0X29mZnNldCAoZmxvYXQgb2Zmc2V0KTsK KysJCXB1YmxpYyB2b2lkIHNldF9zb3VyY2UgKENsdXR0ZXIuQWN0b3I/IHNvdXJjZSk7CisrCQlw dWJsaWMgQ2x1dHRlci5CaW5kQ29vcmRpbmF0ZSBjb29yZGluYXRlIHsgZ2V0OyBzZXQgY29uc3Ry dWN0OyB9CisrCQlwdWJsaWMgZmxvYXQgb2Zmc2V0IHsgZ2V0OyBzZXQgY29uc3RydWN0OyB9Cisr CQlwdWJsaWMgQ2x1dHRlci5BY3RvciBzb3VyY2UgeyBnZXQ7IHNldCBjb25zdHJ1Y3Q7IH0KKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBl X2lkID0gImNsdXR0ZXJfYmluZGluZ19wb29sX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChz aW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGNsYXNzIEJpbmRpbmdQb29sIDogR0xpYi5PYmplY3Qg eworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHVibGlj IEJpbmRpbmdQb29sIChzdHJpbmcgbmFtZSk7CisrCQlwdWJsaWMgYm9vbCBhY3RpdmF0ZSAodWlu dCBrZXlfdmFsLCBDbHV0dGVyLk1vZGlmaWVyVHlwZSBtb2RpZmllcnMsIEdMaWIuT2JqZWN0IGdv YmplY3QpOworKwkJcHVibGljIHZvaWQgYmxvY2tfYWN0aW9uIChzdHJpbmcgYWN0aW9uX25hbWUp OworKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIENsdXR0ZXIuQmluZGluZ1Bvb2wgZmluZCAoc3Ry aW5nIG5hbWUpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGZpbmRfYWN0aW9uICh1aW50IGtl eV92YWwsIENsdXR0ZXIuTW9kaWZpZXJUeXBlIG1vZGlmaWVycyk7CisrCQlwdWJsaWMgc3RhdGlj IHVub3duZWQgQ2x1dHRlci5CaW5kaW5nUG9vbCBnZXRfZm9yX2NsYXNzICh2b2lkKiBrbGFzcyk7 CisrCQlwdWJsaWMgdm9pZCBpbnN0YWxsX2FjdGlvbiAoc3RyaW5nIGFjdGlvbl9uYW1lLCB1aW50 IGtleV92YWwsIENsdXR0ZXIuTW9kaWZpZXJUeXBlIG1vZGlmaWVycywgb3duZWQgQ2x1dHRlci5C aW5kaW5nQWN0aW9uRnVuYyBjYWxsYmFjayk7CisrCQlwdWJsaWMgdm9pZCBpbnN0YWxsX2Nsb3N1 cmUgKHN0cmluZyBhY3Rpb25fbmFtZSwgdWludCBrZXlfdmFsLCBDbHV0dGVyLk1vZGlmaWVyVHlw ZSBtb2RpZmllcnMsIEdMaWIuQ2xvc3VyZSBjbG9zdXJlKTsKKysJCXB1YmxpYyB2b2lkIG92ZXJy aWRlX2FjdGlvbiAodWludCBrZXlfdmFsLCBDbHV0dGVyLk1vZGlmaWVyVHlwZSBtb2RpZmllcnMs IG93bmVkIEdMaWIuQ2FsbGJhY2sgY2FsbGJhY2spOworKwkJcHVibGljIHZvaWQgb3ZlcnJpZGVf Y2xvc3VyZSAodWludCBrZXlfdmFsLCBDbHV0dGVyLk1vZGlmaWVyVHlwZSBtb2RpZmllcnMsIEdM aWIuQ2xvc3VyZSBjbG9zdXJlKTsKKysJCXB1YmxpYyB2b2lkIHJlbW92ZV9hY3Rpb24gKHVpbnQg a2V5X3ZhbCwgQ2x1dHRlci5Nb2RpZmllclR5cGUgbW9kaWZpZXJzKTsKKysJCXB1YmxpYyB2b2lk IHVuYmxvY2tfYWN0aW9uIChzdHJpbmcgYWN0aW9uX25hbWUpOworKwkJW05vQWNjZXNzb3JNZXRo b2RdCisrCQlwdWJsaWMgc3RyaW5nIG5hbWUgeyBvd25lZCBnZXQ7IGNvbnN0cnVjdDsgfQorKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVf aWQgPSAiY2x1dHRlcl9ibHVyX2VmZmVjdF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMS40IildCisrCXB1YmxpYyBjbGFzcyBCbHVyRWZmZWN0IDogQ2x1dHRlci5PZmZzY3Jl ZW5FZmZlY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5 cGUgPSAiQ2x1dHRlckVmZmVjdCoiKV0KKysJCXB1YmxpYyBCbHVyRWZmZWN0ICgpOworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQg PSAiY2x1dHRlcl9ib3hfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIp XQorKwlwdWJsaWMgY2xhc3MgQm94IDogQ2x1dHRlci5BY3RvciwgQXRrLkltcGxlbWVudG9yLCBD bHV0dGVyLkFuaW1hdGFibGUsIENsdXR0ZXIuQ29udGFpbmVyLCBDbHV0dGVyLlNjcmlwdGFibGUg eworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1 dHRlckFjdG9yKiIpXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVk X3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBCb3ggKENsdXR0ZXIu TGF5b3V0TWFuYWdlciBtYW5hZ2VyKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwg ZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgQ2x1 dHRlci5Db2xvciBnZXRfY29sb3IgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUs IGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHVu b3duZWQgQ2x1dHRlci5MYXlvdXRNYW5hZ2VyIGdldF9sYXlvdXRfbWFuYWdlciAoKTsKKysJCVtW ZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2lu Y2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBwYWNrIChDbHV0dGVyLkFjdG9yIGFjdG9yLCAu Li4pOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0g IjEuMTAiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHBhY2tfYWZ0ZXIgKENsdXR0 ZXIuQWN0b3IgYWN0b3IsIENsdXR0ZXIuQWN0b3I/IHNpYmxpbmcsIC4uLik7CisrCQlbVmVyc2lv biAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0g IjEuMiIpXQorKwkJcHVibGljIHZvaWQgcGFja19hdCAoQ2x1dHRlci5BY3RvciBhY3RvciwgaW50 IHBvc2l0aW9uLCAuLi4pOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNh dGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHBhY2tf YmVmb3JlIChDbHV0dGVyLkFjdG9yIGFjdG9yLCBDbHV0dGVyLkFjdG9yPyBzaWJsaW5nLCAuLi4p OworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEu MTAiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHBhY2t2IChDbHV0dGVyLkFjdG9y IGFjdG9yLCBbQ0NvZGUgKGFycmF5X2xlbmd0aF9jbmFtZSA9ICJuX3Byb3BlcnRpZXMiLCBhcnJh eV9sZW5ndGhfcG9zID0gMS41LCBhcnJheV9sZW5ndGhfdHlwZSA9ICJndWludCIpXSBzdHJpbmdb XSBwcm9wZXJ0aWVzLCBbQ0NvZGUgKGFycmF5X2xlbmd0aF9jbmFtZSA9ICJuX3Byb3BlcnRpZXMi LCBhcnJheV9sZW5ndGhfcG9zID0gMS41LCBhcnJheV9sZW5ndGhfdHlwZSA9ICJndWludCIpXSBH TGliLlZhbHVlW10gdmFsdWVzKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVw cmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBz ZXRfY29sb3IgKENsdXR0ZXIuQ29sb3I/IGNvbG9yKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVk ID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMS4yIildCisrCQlw dWJsaWMgdm9pZCBzZXRfbGF5b3V0X21hbmFnZXIgKENsdXR0ZXIuTGF5b3V0TWFuYWdlciBtYW5h Z2VyKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9 ICIxLjEwIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBjb2xvciB7 IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChkZXByZWNh dGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMS4yIildCisr CQlwdWJsaWMgYm9vbCBjb2xvcl9zZXQgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIENsdXR0ZXIu TGF5b3V0TWFuYWdlciBsYXlvdXRfbWFuYWdlciB7IGdldDsgc2V0OyB9CisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0 dGVyX2JveF9sYXlvdXRfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIp XQorKwlwdWJsaWMgY2xhc3MgQm94TGF5b3V0IDogQ2x1dHRlci5MYXlvdXRNYW5hZ2VyIHsKKysJ CVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJM YXlvdXRNYW5hZ2VyKiIpXQorKwkJcHVibGljIEJveExheW91dCAoKTsKKysJCVtWZXJzaW9uIChk ZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4y IildCisrCQlwdWJsaWMgdm9pZCBnZXRfYWxpZ25tZW50IChDbHV0dGVyLkFjdG9yIGFjdG9yLCBv dXQgQ2x1dHRlci5Cb3hBbGlnbm1lbnQgeF9hbGlnbiwgb3V0IENsdXR0ZXIuQm94QWxpZ25tZW50 IHlfYWxpZ24pOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3Np bmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB1aW50IGdldF9lYXNpbmdf ZHVyYXRpb24gKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRf c2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHVsb25nIGdldF9lYXNp bmdfbW9kZSAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9z aW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgYm9vbCBnZXRfZXhwYW5k IChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwg ZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9p ZCBnZXRfZmlsbCAoQ2x1dHRlci5BY3RvciBhY3Rvciwgb3V0IGJvb2wgeF9maWxsLCBvdXQgYm9v bCB5X2ZpbGwpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIGJvb2wg Z2V0X2hvbW9nZW5lb3VzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1 YmxpYyBDbHV0dGVyLk9yaWVudGF0aW9uIGdldF9vcmllbnRhdGlvbiAoKTsKKysJCXB1YmxpYyBi b29sIGdldF9wYWNrX3N0YXJ0ICgpOworKwkJcHVibGljIHVpbnQgZ2V0X3NwYWNpbmcgKCk7Cisr CQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIs IHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIGJvb2wgZ2V0X3VzZV9hbmltYXRpb25zICgpOwor KwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIi LCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBib29sIGdldF92ZXJ0aWNhbCAoKTsKKysJCVtW ZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2lu Y2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBwYWNrIChDbHV0dGVyLkFjdG9yIGFjdG9yLCBi b29sIGV4cGFuZCwgYm9vbCB4X2ZpbGwsIGJvb2wgeV9maWxsLCBDbHV0dGVyLkJveEFsaWdubWVu dCB4X2FsaWduLCBDbHV0dGVyLkJveEFsaWdubWVudCB5X2FsaWduKTsKKysJCVtWZXJzaW9uIChk ZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4y IildCisrCQlwdWJsaWMgdm9pZCBzZXRfYWxpZ25tZW50IChDbHV0dGVyLkFjdG9yIGFjdG9yLCBD bHV0dGVyLkJveEFsaWdubWVudCB4X2FsaWduLCBDbHV0dGVyLkJveEFsaWdubWVudCB5X2FsaWdu KTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIx LjEyIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBzZXRfZWFzaW5nX2R1cmF0aW9u ICh1aW50IG1zZWNzKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRl ZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBzZXRfZWFz aW5nX21vZGUgKHVsb25nIG1vZGUpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBk ZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lk IHNldF9leHBhbmQgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIGJvb2wgZXhwYW5kKTsKKysJCVtWZXJz aW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2Ug PSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBzZXRfZmlsbCAoQ2x1dHRlci5BY3RvciBhY3Rvciwg Ym9vbCB4X2ZpbGwsIGJvb2wgeV9maWxsKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0K KysJCXB1YmxpYyB2b2lkIHNldF9ob21vZ2VuZW91cyAoYm9vbCBob21vZ2VuZW91cyk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X29yaWVudGF0aW9u IChDbHV0dGVyLk9yaWVudGF0aW9uIG9yaWVudGF0aW9uKTsKKysJCXB1YmxpYyB2b2lkIHNldF9w YWNrX3N0YXJ0IChib29sIHBhY2tfc3RhcnQpOworKwkJcHVibGljIHZvaWQgc2V0X3NwYWNpbmcg KHVpbnQgc3BhY2luZyk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0 ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3Vz ZV9hbmltYXRpb25zIChib29sIGFuaW1hdGUpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0 cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1Ymxp YyB2b2lkIHNldF92ZXJ0aWNhbCAoYm9vbCB2ZXJ0aWNhbCk7CisrCQlbVmVyc2lvbiAoZGVwcmVj YXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIpXQor KwkJcHVibGljIHVpbnQgZWFzaW5nX2R1cmF0aW9uIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9u IChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAi MS4yIildCisrCQlwdWJsaWMgdWxvbmcgZWFzaW5nX21vZGUgeyBnZXQ7IHNldDsgfQorKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIGJvb2wgaG9tb2dlbmVvdXMgeyBnZXQ7 IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBDbHV0dGVy Lk9yaWVudGF0aW9uIG9yaWVudGF0aW9uIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBib29sIHBh Y2tfc3RhcnQgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIHVpbnQgc3BhY2luZyB7IGdldDsgc2V0 OyB9CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAi MS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIGJvb2wgdXNlX2FuaW1hdGlvbnMgeyBn ZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3Np bmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBib29sIHZlcnRpY2FsIHsg Z2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfYnJpZ2h0bmVzc19jb250cmFzdF9lZmZlY3Rf Z2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGNs YXNzIEJyaWdodG5lc3NDb250cmFzdEVmZmVjdCA6IENsdXR0ZXIuT2Zmc2NyZWVuRWZmZWN0IHsK KysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0 ZXJFZmZlY3QqIildCisrCQlwdWJsaWMgQnJpZ2h0bmVzc0NvbnRyYXN0RWZmZWN0ICgpOworKwkJ cHVibGljIHZvaWQgZ2V0X2JyaWdodG5lc3MgKG91dCBmbG9hdCByZWQsIG91dCBmbG9hdCBncmVl biwgb3V0IGZsb2F0IGJsdWUpOworKwkJcHVibGljIHZvaWQgZ2V0X2NvbnRyYXN0IChvdXQgZmxv YXQgcmVkLCBvdXQgZmxvYXQgZ3JlZW4sIG91dCBmbG9hdCBibHVlKTsKKysJCXB1YmxpYyB2b2lk IHNldF9icmlnaHRuZXNzIChmbG9hdCBicmlnaHRuZXNzKTsKKysJCXB1YmxpYyB2b2lkIHNldF9i cmlnaHRuZXNzX2Z1bGwgKGZsb2F0IHJlZCwgZmxvYXQgZ3JlZW4sIGZsb2F0IGJsdWUpOworKwkJ cHVibGljIHZvaWQgc2V0X2NvbnRyYXN0IChmbG9hdCBjb250cmFzdCk7CisrCQlwdWJsaWMgdm9p ZCBzZXRfY29udHJhc3RfZnVsbCAoZmxvYXQgcmVkLCBmbG9hdCBncmVlbiwgZmxvYXQgYmx1ZSk7 CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIGJyaWdodG5l c3MgeyBvd25lZCBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMg Q2x1dHRlci5Db2xvciBjb250cmFzdCB7IG93bmVkIGdldDsgc2V0OyB9CisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBm YWxzZSldCisrCVtDb21wYWN0XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCXB1Ymxp YyBjbGFzcyBCdXR0b25FdmVudCA6IENsdXR0ZXIuRXZlbnQgeworKwkJcHVibGljIGRvdWJsZSBh eGVzOworKwkJcHVibGljIHVpbnQzMiBidXR0b247CisrCQlwdWJsaWMgdWludCBjbGlja19jb3Vu dDsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuSW5wdXREZXZpY2UgZGV2aWNlOworKwkJcHVibGlj IENsdXR0ZXIuRXZlbnRGbGFncyBmbGFnczsKKysJCXB1YmxpYyBDbHV0dGVyLk1vZGlmaWVyVHlw ZSBtb2RpZmllcl9zdGF0ZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuQWN0b3Igc291cmNlOwor KwkJcHVibGljIHdlYWsgQ2x1dHRlci5TdGFnZSBzdGFnZTsKKysJCXB1YmxpYyB1aW50MzIgdGlt ZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50VHlwZSB0eXBlOworKwkJcHVibGljIGZsb2F0IHg7 CisrCQlwdWJsaWMgZmxvYXQgeTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfY2FudmFzX2dldF90eXBlICgp IildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBjbGFzcyBDYW52YXMg OiBHTGliLk9iamVjdCwgQ2x1dHRlci5Db250ZW50IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVj dF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJDb250ZW50KiIpXQorKwkJcHVibGlj IENhbnZhcyAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfc2NhbGVfZmFjdG9yICgpOworKwkJcHVi bGljIHZvaWQgc2V0X3NjYWxlX2ZhY3RvciAoZmxvYXQgc2NhbGUpOworKwkJcHVibGljIGJvb2wg c2V0X3NpemUgKGludCB3aWR0aCwgaW50IGhlaWdodCk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0K KysJCXB1YmxpYyBpbnQgaGVpZ2h0IHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBmbG9hdCBzY2Fs ZV9mYWN0b3IgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMg aW50IHdpZHRoIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCBib29sIGRy YXcgKENhaXJvLkNvbnRleHQgY3IsIGludCB3aWR0aCwgaW50IGhlaWdodCk7CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJj bHV0dGVyX2NoaWxkX21ldGFfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAu OCIpXQorKwlwdWJsaWMgYWJzdHJhY3QgY2xhc3MgQ2hpbGRNZXRhIDogR0xpYi5PYmplY3Qgewor KwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVk IENoaWxkTWV0YSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X2FjdG9y ICgpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5Db250YWluZXIgZ2V0X2NvbnRhaW5lciAo KTsKKysJCXB1YmxpYyBDbHV0dGVyLkFjdG9yIGFjdG9yIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJ CXB1YmxpYyBDbHV0dGVyLkNvbnRhaW5lciBjb250YWluZXIgeyBnZXQ7IGNvbnN0cnVjdDsgfQor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5 cGVfaWQgPSAiY2x1dHRlcl9jbGlja19hY3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24g KHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgY2xhc3MgQ2xpY2tBY3Rpb24gOiBDbHV0dGVyLkFj dGlvbiB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9 ICJDbHV0dGVyQWN0aW9uKiIpXQorKwkJcHVibGljIENsaWNrQWN0aW9uICgpOworKwkJcHVibGlj IHVpbnQgZ2V0X2J1dHRvbiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1 YmxpYyB2b2lkIGdldF9jb29yZHMgKG91dCBmbG9hdCBwcmVzc194LCBvdXQgZmxvYXQgcHJlc3Nf eSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgQ2x1dHRlci5Nb2Rp ZmllclR5cGUgZ2V0X3N0YXRlICgpOworKwkJcHVibGljIHZvaWQgcmVsZWFzZSAoKTsKKysJCVtO b0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wgaGVsZCB7IGdldDsgfQorKwkJW05vQWNj ZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgaW50 IGxvbmdfcHJlc3NfZHVyYXRpb24geyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2Rd CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgaW50IGxvbmdfcHJlc3Nf dGhyZXNob2xkIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGlj IGJvb2wgcHJlc3NlZCB7IGdldDsgfQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgY2xp Y2tlZCAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44Iild CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCBsb25nX3ByZXNzIChDbHV0dGVyLkFjdG9y IGFjdG9yLCBDbHV0dGVyLkxvbmdQcmVzc1N0YXRlIHN0YXRlKTsKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJf Y2xpcF9ub2RlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisr CXB1YmxpYyBjbGFzcyBDbGlwTm9kZSA6IENsdXR0ZXIuUGFpbnROb2RlIHsKKysJCVtDQ29kZSAo aGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJQYWludE5vZGUq IildCisrCQlwdWJsaWMgQ2xpcE5vZGUgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2Nsb25lX2dldF90 eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGNsYXNzIENs b25lIDogQ2x1dHRlci5BY3RvciwgQXRrLkltcGxlbWVudG9yLCBDbHV0dGVyLkFuaW1hdGFibGUs IENsdXR0ZXIuQ29udGFpbmVyLCBDbHV0dGVyLlNjcmlwdGFibGUgeworKwkJW0NDb2RlIChoYXNf Y29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFjdG9yKiIpXQorKwkJ cHVibGljIENsb25lIChDbHV0dGVyLkFjdG9yIHNvdXJjZSk7CisrCQlwdWJsaWMgdW5vd25lZCBD bHV0dGVyLkFjdG9yIGdldF9zb3VyY2UgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfc291cmNlIChD bHV0dGVyLkFjdG9yPyBzb3VyY2UpOworKwkJcHVibGljIENsdXR0ZXIuQWN0b3Igc291cmNlIHsg Z2V0OyBzZXQgY29uc3RydWN0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2NvbG9yX25vZGVfZ2V0X3R5 cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGNsYXNzIENv bG9yTm9kZSA6IENsdXR0ZXIuUGlwZWxpbmVOb2RlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVj dF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJQYWludE5vZGUqIildCisrCQlwdWJs aWMgQ29sb3JOb2RlIChDbHV0dGVyLkNvbG9yPyBjb2xvcik7CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2Nv bG9yaXplX2VmZmVjdF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40Iild CisrCXB1YmxpYyBjbGFzcyBDb2xvcml6ZUVmZmVjdCA6IENsdXR0ZXIuT2Zmc2NyZWVuRWZmZWN0 IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNs dXR0ZXJFZmZlY3QqIildCisrCQlwdWJsaWMgQ29sb3JpemVFZmZlY3QgKENsdXR0ZXIuQ29sb3Ig dGludCk7CisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBnZXRfdGludCAoKTsKKysJCXB1YmxpYyB2 b2lkIHNldF90aW50IChDbHV0dGVyLkNvbG9yIHRpbnQpOworKwkJcHVibGljIENsdXR0ZXIuQ29s b3IgdGludCB7IGdldDsgc2V0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2NvbnN0cmFpbnRfZ2V0X3R5 cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgYWJzdHJhY3Qg Y2xhc3MgQ29uc3RyYWludCA6IENsdXR0ZXIuQWN0b3JNZXRhIHsKKysJCVtDQ29kZSAoaGFzX2Nv bnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBDb25zdHJhaW50ICgpOwor KwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgdXBkYXRlX2FsbG9jYXRpb24g KENsdXR0ZXIuQWN0b3IgYWN0b3IsIENsdXR0ZXIuQWN0b3JCb3ggYWxsb2NhdGlvbik7CisrCQlb Tm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCB1cGRhdGVfcHJlZmVycmVkX3NpemUg KENsdXR0ZXIuQWN0b3IgYWN0b3IsIENsdXR0ZXIuT3JpZW50YXRpb24gZGlyZWN0aW9uLCBmbG9h dCBmb3Jfc2l6ZSwgZmxvYXQgbWluaW11bV9zaXplLCBmbG9hdCBuYXR1cmFsX3NpemUpOworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGhhc190 eXBlX2lkID0gZmFsc2UpXQorKwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIp XQorKwlwdWJsaWMgY2xhc3MgQ3Jvc3NpbmdFdmVudCA6IENsdXR0ZXIuRXZlbnQgeworKwkJcHVi bGljIHdlYWsgQ2x1dHRlci5JbnB1dERldmljZSBkZXZpY2U7CisrCQlwdWJsaWMgQ2x1dHRlci5F dmVudEZsYWdzIGZsYWdzOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5BY3RvciByZWxhdGVkOwor KwkJcHVibGljIHdlYWsgQ2x1dHRlci5FdmVudFNlcXVlbmNlIHNlcXVlbmNlOworKwkJcHVibGlj IHdlYWsgQ2x1dHRlci5BY3RvciBzb3VyY2U7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLlN0YWdl IHN0YWdlOworKwkJcHVibGljIHVpbnQzMiB0aW1lOworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRU eXBlIHR5cGU7CisrCQlwdWJsaWMgZmxvYXQgeDsKKysJCXB1YmxpYyBmbG9hdCB5OworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQg PSAiY2x1dHRlcl9kZWZvcm1fZWZmZWN0X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjQiKV0KKysJcHVibGljIGFic3RyYWN0IGNsYXNzIERlZm9ybUVmZmVjdCA6IENsdXR0 ZXIuT2Zmc2NyZWVuRWZmZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9 IGZhbHNlKV0KKysJCXByb3RlY3RlZCBEZWZvcm1FZmZlY3QgKCk7CisrCQlbTm9XcmFwcGVyXQor KwkJcHVibGljIHZpcnR1YWwgdm9pZCBkZWZvcm1fdmVydGV4IChmbG9hdCB3aWR0aCwgZmxvYXQg aGVpZ2h0LCBDb2dsLlRleHR1cmVWZXJ0ZXggdmVydGV4KTsKKysJCXB1YmxpYyB1bm93bmVkIENv Z2wuSGFuZGxlIGdldF9iYWNrX21hdGVyaWFsICgpOworKwkJcHVibGljIHZvaWQgZ2V0X25fdGls ZXMgKG91dCB1aW50IHhfdGlsZXMsIG91dCB1aW50IHlfdGlsZXMpOworKwkJcHVibGljIHZvaWQg aW52YWxpZGF0ZSAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9iYWNrX21hdGVyaWFsIChDb2dsLkhh bmRsZT8gbWF0ZXJpYWwpOworKwkJcHVibGljIHZvaWQgc2V0X25fdGlsZXMgKHVpbnQgeF90aWxl cywgdWludCB5X3RpbGVzKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIHVpbnQg eF90aWxlcyB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyB1 aW50IHlfdGlsZXMgeyBnZXQ7IHNldDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9kZXNhdHVyYXRlX2Vm ZmVjdF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1Ymxp YyBjbGFzcyBEZXNhdHVyYXRlRWZmZWN0IDogQ2x1dHRlci5PZmZzY3JlZW5FZmZlY3QgeworKwkJ W0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckVm ZmVjdCoiKV0KKysJCXB1YmxpYyBEZXNhdHVyYXRlRWZmZWN0IChkb3VibGUgZmFjdG9yKTsKKysJ CXB1YmxpYyBkb3VibGUgZ2V0X2ZhY3RvciAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9mYWN0b3Ig KGRvdWJsZSBmYWN0b3IpOworKwkJcHVibGljIGRvdWJsZSBmYWN0b3IgeyBnZXQ7IHNldDsgfQor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5 cGVfaWQgPSAiY2x1dHRlcl9kcmFnX2FjdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMS40IildCisrCXB1YmxpYyBjbGFzcyBEcmFnQWN0aW9uIDogQ2x1dHRlci5BY3Rp b24geworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAi Q2x1dHRlckFjdGlvbioiKV0KKysJCXB1YmxpYyBEcmFnQWN0aW9uICgpOworKwkJcHVibGljIGJv b2wgZ2V0X2RyYWdfYXJlYSAoR3JhcGhlbmUuUmVjdCBkcmFnX2FyZWEpOworKwkJcHVibGljIENs dXR0ZXIuRHJhZ0F4aXMgZ2V0X2RyYWdfYXhpcyAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0 ZXIuQWN0b3IgZ2V0X2RyYWdfaGFuZGxlICgpOworKwkJcHVibGljIHZvaWQgZ2V0X2RyYWdfdGhy ZXNob2xkIChvdXQgdWludCB4X3RocmVzaG9sZCwgb3V0IHVpbnQgeV90aHJlc2hvbGQpOworKwkJ cHVibGljIHZvaWQgZ2V0X21vdGlvbl9jb29yZHMgKG91dCBmbG9hdCBtb3Rpb25feCwgb3V0IGZs b2F0IG1vdGlvbl95KTsKKysJCXB1YmxpYyB2b2lkIGdldF9wcmVzc19jb29yZHMgKG91dCBmbG9h dCBwcmVzc194LCBvdXQgZmxvYXQgcHJlc3NfeSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfZHJhZ19h cmVhIChHcmFwaGVuZS5SZWN0PyBkcmFnX2FyZWEpOworKwkJcHVibGljIHZvaWQgc2V0X2RyYWdf YXhpcyAoQ2x1dHRlci5EcmFnQXhpcyBheGlzKTsKKysJCXB1YmxpYyB2b2lkIHNldF9kcmFnX2hh bmRsZSAoQ2x1dHRlci5BY3Rvcj8gaGFuZGxlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9kcmFnX3Ro cmVzaG9sZCAoaW50IHhfdGhyZXNob2xkLCBpbnQgeV90aHJlc2hvbGQpOworKwkJW05vQWNjZXNz b3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIEdyYXBo ZW5lLlJlY3QgZHJhZ19hcmVhIHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0 aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBib29sIGRyYWdf YXJlYV9zZXQgeyBnZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLkRyYWdBeGlzIGRyYWdfYXhpcyB7 IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvciBkcmFnX2hhbmRsZSB7IGdldDsg c2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBpbnQgeF9kcmFnX3RocmVz aG9sZCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBpbnQg eV9kcmFnX3RocmVzaG9sZCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwg dm9pZCBkcmFnX2JlZ2luIChDbHV0dGVyLkFjdG9yIGFjdG9yLCBmbG9hdCBldmVudF94LCBmbG9h dCBldmVudF95LCBDbHV0dGVyLk1vZGlmaWVyVHlwZSBtb2RpZmllcnMpOworKwkJcHVibGljIHZp cnR1YWwgc2lnbmFsIHZvaWQgZHJhZ19lbmQgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIGZsb2F0IGV2 ZW50X3gsIGZsb2F0IGV2ZW50X3ksIENsdXR0ZXIuTW9kaWZpZXJUeXBlIG1vZGlmaWVycyk7Cisr CQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBkcmFnX21vdGlvbiAoQ2x1dHRlci5BY3RvciBh Y3RvciwgZmxvYXQgZGVsdGFfeCwgZmxvYXQgZGVsdGFfeSk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIGJvb2wgZHJhZ19wcm9ncmVzcyAo Q2x1dHRlci5BY3RvciBhY3RvciwgZmxvYXQgZGVsdGFfeCwgZmxvYXQgZGVsdGFfeSk7CisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9p ZCA9ICJjbHV0dGVyX2Ryb3BfYWN0aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjgiKV0KKysJcHVibGljIGNsYXNzIERyb3BBY3Rpb24gOiBDbHV0dGVyLkFjdGlvbiB7 CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0 dGVyQWN0aW9uKiIpXQorKwkJcHVibGljIERyb3BBY3Rpb24gKCk7CisrCQlwdWJsaWMgdmlydHVh bCBzaWduYWwgYm9vbCBjYW5fZHJvcCAoQ2x1dHRlci5BY3RvciBhY3RvciwgZmxvYXQgZXZlbnRf eCwgZmxvYXQgZXZlbnRfeSk7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBkcm9wIChD bHV0dGVyLkFjdG9yIGFjdG9yLCBmbG9hdCBldmVudF94LCBmbG9hdCBldmVudF95KTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgZHJvcF9jYW5j ZWwgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIGZsb2F0IGV2ZW50X3gsIGZsb2F0IGV2ZW50X3kpOwor KwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgb3Zlcl9pbiAoQ2x1dHRlci5BY3RvciBhY3Rv cik7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBvdmVyX291dCAoQ2x1dHRlci5BY3Rv ciBhY3Rvcik7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2VmZmVjdF9nZXRfdHlwZSAoKSIpXQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBFZmZlY3QgOiBD bHV0dGVyLkFjdG9yTWV0YSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBm YWxzZSldCisrCQlwcm90ZWN0ZWQgRWZmZWN0ICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1Ymxp YyB2aXJ0dWFsIGJvb2wgbW9kaWZ5X3BhaW50X3ZvbHVtZSAoQ2x1dHRlci5QYWludFZvbHVtZSB2 b2x1bWUpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgcGFpbnQgKENs dXR0ZXIuUGFpbnRDb250ZXh0IHBhaW50X2NvbnRleHQsIENsdXR0ZXIuRWZmZWN0UGFpbnRGbGFn cyBmbGFncyk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBwaWNrIChD bHV0dGVyLlBpY2tDb250ZXh0IHBpY2tfY29udGV4dCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVi bGljIHZpcnR1YWwgdm9pZCBwb3N0X3BhaW50IChDbHV0dGVyLlBhaW50Q29udGV4dCBwYWludF9j b250ZXh0KTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCBib29sIHByZV9wYWlu dCAoQ2x1dHRlci5QYWludENvbnRleHQgcGFpbnRfY29udGV4dCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBxdWV1ZV9yZXBhaW50ICgpOworKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNvcHlfZnVuY3Rp b24gPSAiZ19ib3hlZF9jb3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0eXBl X2lkID0gImNsdXR0ZXJfZXZlbnRfZ2V0X3R5cGUgKCkiKV0KKysJW0NvbXBhY3RdCisrCVtWZXJz aW9uIChzaW5jZSA9ICIwLjIiKV0KKysJcHVibGljIGNsYXNzIEV2ZW50IHsKKysJCXB1YmxpYyBD bHV0dGVyLkV2ZW50VHlwZSB0eXBlOworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9u ID0gZmFsc2UpXQorKwkJcHVibGljIEV2ZW50IChDbHV0dGVyLkV2ZW50VHlwZSB0eXBlKTsKKysJ CXB1YmxpYyBDbHV0dGVyLkV2ZW50IGNvcHkgKCk7CisrCQlwdWJsaWMgdm9pZCBmcmVlICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBkb3VibGUgZ2V0X2FuZ2xl IChDbHV0dGVyLkV2ZW50IHRhcmdldCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisr CQlwdWJsaWMgZG91YmxlIGdldF9heGVzIChvdXQgdWludCBuX2F4ZXMpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVpbnQzMiBnZXRfYnV0dG9uICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVpbnQgZ2V0X2NsaWNrX2NvdW50ICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwkJcHVibGljIHZvaWQgZ2V0X2Nvb3Jk cyAob3V0IGZsb2F0IHgsIG91dCBmbG9hdCB5KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuSW5wdXREZXZpY2UgZ2V0X2RldmljZSAoKTsK KysJCXB1YmxpYyBpbnQgZ2V0X2RldmljZV9pZCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjI4IildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLklucHV0RGV2aWNlVG9vbCBnZXRfZGV2 aWNlX3Rvb2wgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgQ2x1 dHRlci5JbnB1dERldmljZVR5cGUgZ2V0X2RldmljZV90eXBlICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfZGlzdGFuY2UgKENsdXR0ZXIuRXZl bnQgdGFyZ2V0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdW5v d25lZCBDbHV0dGVyLkV2ZW50U2VxdWVuY2UgZ2V0X2V2ZW50X3NlcXVlbmNlICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIENsdXR0ZXIuRXZlbnRGbGFncyBnZXRf ZmxhZ3MgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yNCIpXQorKwkJcHVibGljIHZvaWQg Z2V0X2dlc3R1cmVfbW90aW9uX2RlbHRhIChvdXQgZG91YmxlIGR4LCBvdXQgZG91YmxlIGR5KTsK KysJCXB1YmxpYyBDbHV0dGVyLlRvdWNocGFkR2VzdHVyZVBoYXNlIGdldF9nZXN0dXJlX3BoYXNl ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjQiKV0KKysJCXB1YmxpYyBkb3VibGUgZ2V0 X2dlc3R1cmVfcGluY2hfYW5nbGVfZGVsdGEgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4y NCIpXQorKwkJcHVibGljIGRvdWJsZSBnZXRfZ2VzdHVyZV9waW5jaF9zY2FsZSAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1aW50MTYgZ2V0X2tleV9jb2RlICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVpbnQgZ2V0X2tleV9z eW1ib2wgKCk7CisrCQlwdWJsaWMgdW5pY2hhciBnZXRfa2V5X3VuaWNvZGUgKCk7CisrCQlwdWJs aWMgdWludCBnZXRfbW9kZV9ncm91cCAoKTsKKysJCXB1YmxpYyBib29sIGdldF9wYWRfZXZlbnRf ZGV0YWlscyAob3V0IHVpbnQgbnVtYmVyLCBvdXQgdWludCBtb2RlLCBvdXQgZG91YmxlIHZhbHVl KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBnZXRfcG9z aXRpb24gKEdyYXBoZW5lLlBvaW50IHBvc2l0aW9uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X3JlbGF0ZWQgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgZ2V0X3Njcm9sbF9k ZWx0YSAob3V0IGRvdWJsZSBkeCwgb3V0IGRvdWJsZSBkeSk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgQ2x1dHRlci5TY3JvbGxEaXJlY3Rpb24gZ2V0X3Njcm9sbF9k aXJlY3Rpb24gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yNiIpXQorKwkJcHVibGljIENs dXR0ZXIuU2Nyb2xsRmluaXNoRmxhZ3MgZ2V0X3Njcm9sbF9maW5pc2hfZmxhZ3MgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4yNiIpXQorKwkJcHVibGljIENsdXR0ZXIuU2Nyb2xsU291cmNl IGdldF9zY3JvbGxfc291cmNlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJ cHVibGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfc291cmNlICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5JbnB1dERldmljZSBn ZXRfc291cmNlX2RldmljZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1 YmxpYyB1bm93bmVkIENsdXR0ZXIuU3RhZ2UgZ2V0X3N0YWdlICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjAuNCIpXQorKwkJcHVibGljIENsdXR0ZXIuTW9kaWZpZXJUeXBlIGdldF9zdGF0ZSAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2IildCisrCQlwdWJsaWMgdm9pZCBnZXRfc3Rh dGVfZnVsbCAob3V0IENsdXR0ZXIuTW9kaWZpZXJUeXBlIGJ1dHRvbl9zdGF0ZSwgb3V0IENsdXR0 ZXIuTW9kaWZpZXJUeXBlIGJhc2Vfc3RhdGUsIG91dCBDbHV0dGVyLk1vZGlmaWVyVHlwZSBsYXRj aGVkX3N0YXRlLCBvdXQgQ2x1dHRlci5Nb2RpZmllclR5cGUgbG9ja2VkX3N0YXRlLCBvdXQgQ2x1 dHRlci5Nb2RpZmllclR5cGUgZWZmZWN0aXZlX3N0YXRlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIwLjQiKV0KKysJCXB1YmxpYyB1aW50MzIgZ2V0X3RpbWUgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4yNCIpXQorKwkJcHVibGljIHVpbnQgZ2V0X3RvdWNocGFkX2dlc3R1cmVfZmluZ2Vy X2NvdW50ICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX2V2ZW50X3R5cGUiKV0KKysJ CXB1YmxpYyBDbHV0dGVyLkV2ZW50VHlwZSBnZXRfdHlwZSAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEyIildCisrCQlwdWJsaWMgYm9vbCBoYXNfY29udHJvbF9tb2RpZmllciAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgYm9vbCBoYXNfc2hpZnRfbW9k aWZpZXIgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGJvb2wg aXNfcG9pbnRlcl9lbXVsYXRlZCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJ CXB1YmxpYyB2b2lkIHB1dCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1 YmxpYyB2b2lkIHNldF9idXR0b24gKHVpbnQzMiBidXR0b24pOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2Nvb3JkcyAoZmxvYXQgeCwgZmxvYXQgeSk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgdm9pZCBzZXRfZGV2aWNl IChDbHV0dGVyLklucHV0RGV2aWNlPyBkZXZpY2UpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9kZXZpY2VfdG9vbCAoQ2x1dHRlci5JbnB1dERldmlj ZVRvb2w/IHRvb2wpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZv aWQgc2V0X2ZsYWdzIChDbHV0dGVyLkV2ZW50RmxhZ3MgZmxhZ3MpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2tleV9jb2RlICh1aW50MTYga2V5X2Nv ZGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2tl eV9zeW1ib2wgKHVpbnQga2V5X3N5bSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisr CQlwdWJsaWMgdm9pZCBzZXRfa2V5X3VuaWNvZGUgKHVuaWNoYXIga2V5X3VuaWNvZGUpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3JlbGF0ZWQgKENs dXR0ZXIuQWN0b3I/IGFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlw dWJsaWMgdm9pZCBzZXRfc2Nyb2xsX2RlbHRhIChkb3VibGUgZHgsIGRvdWJsZSBkeSk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBzZXRfc2Nyb2xsX2RpcmVj dGlvbiAoQ2x1dHRlci5TY3JvbGxEaXJlY3Rpb24gZGlyZWN0aW9uKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9zb3VyY2UgKENsdXR0ZXIuQWN0b3I/ IGFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIHNl dF9zb3VyY2VfZGV2aWNlIChDbHV0dGVyLklucHV0RGV2aWNlPyBkZXZpY2UpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3N0YWdlIChDbHV0dGVyLlN0 YWdlPyBzdGFnZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9p ZCBzZXRfc3RhdGUgKENsdXR0ZXIuTW9kaWZpZXJUeXBlIHN0YXRlKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF90aW1lICh1aW50MzIgdGltZV8pOwor KwkJcHVibGljIENsdXR0ZXIuQW55RXZlbnQgYW55IHtbQ0NvZGUgKGNuYW1lID0gIihDbHV0dGVy QW55RXZlbnQgKikiKV0gIGdldDsgfQorKwkJcHVibGljIENsdXR0ZXIuQnV0dG9uRXZlbnQgYnV0 dG9uIHtbQ0NvZGUgKGNuYW1lID0gIihDbHV0dGVyQnV0dG9uRXZlbnQgKikiKV0gIGdldDsgfQor KwkJcHVibGljIENsdXR0ZXIuQ3Jvc3NpbmdFdmVudCBjcm9zc2luZyB7W0NDb2RlIChjbmFtZSA9 ICIoQ2x1dHRlckNyb3NzaW5nRXZlbnQgKikiKV0gIGdldDsgfQorKwkJcHVibGljIENsdXR0ZXIu S2V5RXZlbnQga2V5IHtbQ0NvZGUgKGNuYW1lID0gIihDbHV0dGVyS2V5RXZlbnQgKikiKV0gIGdl dDsgfQorKwkJcHVibGljIENsdXR0ZXIuTW90aW9uRXZlbnQgbW90aW9uIHtbQ0NvZGUgKGNuYW1l ID0gIihDbHV0dGVyTW90aW9uRXZlbnQgKikiKV0gIGdldDsgfQorKwkJcHVibGljIENsdXR0ZXIu U2Nyb2xsRXZlbnQgc2Nyb2xsIHtbQ0NvZGUgKGNuYW1lID0gIihDbHV0dGVyU2Nyb2xsRXZlbnQg KikiKV0gIGdldDsgfQorKwkJcHVibGljIENsdXR0ZXIuU3RhZ2VTdGF0ZUV2ZW50IHN0YWdlX3N0 YXRlIHtbQ0NvZGUgKGNuYW1lID0gIihDbHV0dGVyU3RhZ2VTdGF0ZUV2ZW50ICopIildICBnZXQ7 IH0KKysJCXB1YmxpYyBDbHV0dGVyLlRvdWNoRXZlbnQgdG91Y2gge1tDQ29kZSAoY25hbWUgPSAi KENsdXR0ZXJUb3VjaEV2ZW50ICopIildICBnZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLlRvdWNo cGFkUGluY2hFdmVudCB0b3VjaHBhZF9waW5jaCB7W0NDb2RlIChjbmFtZSA9ICIoQ2x1dHRlclRv dWNocGFkUGluY2hFdmVudCAqKSIpXSAgZ2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5Ub3VjaHBh ZFN3aXBlRXZlbnQgdG91Y2hwYWRfc3dpcGUge1tDQ29kZSAoY25hbWUgPSAiKENsdXR0ZXJUb3Vj aHBhZFN3aXBlRXZlbnQgKikiKV0gIGdldDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNvcHlfZnVuY3Rpb24gPSAiZ19ib3hlZF9jb3B5 IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0eXBlX2lkID0gImNsdXR0ZXJfZXZl bnRfc2VxdWVuY2VfZ2V0X3R5cGUgKCkiKV0KKysJW0NvbXBhY3RdCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEyIildCisrCXB1YmxpYyBjbGFzcyBFdmVudFNlcXVlbmNlIHsKKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNs dXR0ZXJfZml4ZWRfbGF5b3V0X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIx LjIiKV0KKysJcHVibGljIGNsYXNzIEZpeGVkTGF5b3V0IDogQ2x1dHRlci5MYXlvdXRNYW5hZ2Vy IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNs dXR0ZXJMYXlvdXRNYW5hZ2VyKiIpXQorKwkJcHVibGljIEZpeGVkTGF5b3V0ICgpOworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQg PSAiY2x1dHRlcl9mbG93X2xheW91dF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2Ug PSAiMS4yIildCisrCXB1YmxpYyBjbGFzcyBGbG93TGF5b3V0IDogQ2x1dHRlci5MYXlvdXRNYW5h Z2VyIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0g IkNsdXR0ZXJMYXlvdXRNYW5hZ2VyKiIpXQorKwkJcHVibGljIEZsb3dMYXlvdXQgKENsdXR0ZXIu Rmxvd09yaWVudGF0aW9uIG9yaWVudGF0aW9uKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfY29sdW1u X3NwYWNpbmcgKCk7CisrCQlwdWJsaWMgdm9pZCBnZXRfY29sdW1uX3dpZHRoIChvdXQgZmxvYXQg bWluX3dpZHRoLCBvdXQgZmxvYXQgbWF4X3dpZHRoKTsKKysJCXB1YmxpYyBib29sIGdldF9ob21v Z2VuZW91cyAoKTsKKysJCXB1YmxpYyBDbHV0dGVyLkZsb3dPcmllbnRhdGlvbiBnZXRfb3JpZW50 YXRpb24gKCk7CisrCQlwdWJsaWMgdm9pZCBnZXRfcm93X2hlaWdodCAob3V0IGZsb2F0IG1pbl9o ZWlnaHQsIG91dCBmbG9hdCBtYXhfaGVpZ2h0KTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfcm93X3Nw YWNpbmcgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNiIpXQorKwkJcHVibGljIGJvb2wg Z2V0X3NuYXBfdG9fZ3JpZCAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9jb2x1bW5fc3BhY2luZyAo ZmxvYXQgc3BhY2luZyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfY29sdW1uX3dpZHRoIChmbG9hdCBt aW5fd2lkdGgsIGZsb2F0IG1heF93aWR0aCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfaG9tb2dlbmVv dXMgKGJvb2wgaG9tb2dlbmVvdXMpOworKwkJcHVibGljIHZvaWQgc2V0X29yaWVudGF0aW9uIChD bHV0dGVyLkZsb3dPcmllbnRhdGlvbiBvcmllbnRhdGlvbik7CisrCQlwdWJsaWMgdm9pZCBzZXRf cm93X2hlaWdodCAoZmxvYXQgbWluX2hlaWdodCwgZmxvYXQgbWF4X2hlaWdodCk7CisrCQlwdWJs aWMgdm9pZCBzZXRfcm93X3NwYWNpbmcgKGZsb2F0IHNwYWNpbmcpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9zbmFwX3RvX2dyaWQgKGJvb2wgc25h cF90b19ncmlkKTsKKysJCXB1YmxpYyBmbG9hdCBjb2x1bW5fc3BhY2luZyB7IGdldDsgc2V0OyB9 CisrCQlwdWJsaWMgYm9vbCBob21vZ2VuZW91cyB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nv ck1ldGhvZF0KKysJCXB1YmxpYyBmbG9hdCBtYXhfY29sdW1uX3dpZHRoIHsgZ2V0OyBzZXQ7IH0K KysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGZsb2F0IG1heF9yb3dfaGVpZ2h0IHsg Z2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGZsb2F0IG1pbl9j b2x1bW5fd2lkdGggeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJs aWMgZmxvYXQgbWluX3Jvd19oZWlnaHQgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIENsdXR0ZXIu Rmxvd09yaWVudGF0aW9uIG9yaWVudGF0aW9uIHsgZ2V0OyBzZXQgY29uc3RydWN0OyB9CisrCQlw dWJsaWMgZmxvYXQgcm93X3NwYWNpbmcgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTYiKV0KKysJCXB1YmxpYyBib29sIHNuYXBfdG9fZ3JpZCB7IGdldDsgc2V0OyB9Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlw ZV9pZCA9ICJjbHV0dGVyX2dlc3R1cmVfYWN0aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9u IChzaW5jZSA9ICIxLjgiKV0KKysJcHVibGljIGNsYXNzIEdlc3R1cmVBY3Rpb24gOiBDbHV0dGVy LkFjdGlvbiB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlw ZSA9ICJDbHV0dGVyQWN0aW9uKiIpXQorKwkJcHVibGljIEdlc3R1cmVBY3Rpb24gKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQgY2FuY2VsICgpOworKwkJ W05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIGJvb2wgZ2VzdHVyZV9wcmVwYXJlIChDbHV0 dGVyLkFjdG9yIGFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJs aWMgdW5vd25lZCBDbHV0dGVyLklucHV0RGV2aWNlIGdldF9kZXZpY2UgKHVpbnQgcG9pbnQpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTQiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIu RXZlbnQgZ2V0X2xhc3RfZXZlbnQgKHVpbnQgcG9pbnQpOworKwkJcHVibGljIHZvaWQgZ2V0X21v dGlvbl9jb29yZHMgKHVpbnQgcG9pbnQsIG91dCBmbG9hdCBtb3Rpb25feCwgb3V0IGZsb2F0IG1v dGlvbl95KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgZmxvYXQg Z2V0X21vdGlvbl9kZWx0YSAodWludCBwb2ludCwgb3V0IGZsb2F0IGRlbHRhX3gsIG91dCBmbG9h dCBkZWx0YV95KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdWlu dCBnZXRfbl9jdXJyZW50X3BvaW50cyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIild CisrCQlwdWJsaWMgaW50IGdldF9uX3RvdWNoX3BvaW50cyAoKTsKKysJCXB1YmxpYyB2b2lkIGdl dF9wcmVzc19jb29yZHMgKHVpbnQgcG9pbnQsIG91dCBmbG9hdCBwcmVzc194LCBvdXQgZmxvYXQg cHJlc3NfeSk7CisrCQlwdWJsaWMgdm9pZCBnZXRfcmVsZWFzZV9jb29yZHMgKHVpbnQgcG9pbnQs IG91dCBmbG9hdCByZWxlYXNlX3gsIG91dCBmbG9hdCByZWxlYXNlX3kpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuRXZlbnRTZXF1ZW5j ZSBnZXRfc2VxdWVuY2UgKHVpbnQgcG9pbnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTgi KV0KKysJCXB1YmxpYyB2b2lkIGdldF90aHJlc2hvbGRfdHJpZ2dlcl9kaXN0YW5jZSAob3V0IGZs b2F0IHgsIG91dCBmbG9hdCB5KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIwIildCisrCQlw dWJsaWMgQ2x1dHRlci5HZXN0dXJlVHJpZ2dlckVkZ2UgZ2V0X3RocmVzaG9sZF90cmlnZ2VyX2Vk Z2UgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2Ug PSAiMS4yMCIsIHNpbmNlID0gIjEuMTgiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkdlc3R1cmVUcmln Z2VyRWRnZSBnZXRfdGhyZXNob2xkX3RyaWdnZXJfZWdkZSAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEyIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3ZlbG9jaXR5ICh1aW50IHBvaW50LCBv dXQgZmxvYXQgdmVsb2NpdHlfeCwgb3V0IGZsb2F0IHZlbG9jaXR5X3kpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9uX3RvdWNoX3BvaW50cyAoaW50 IG5iX3BvaW50cyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xOCIpXQorKwkJcHVibGljIHZv aWQgc2V0X3RocmVzaG9sZF90cmlnZ2VyX2Rpc3RhbmNlIChmbG9hdCB4LCBmbG9hdCB5KTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjE4IildCisrCQlwdWJsaWMgdm9pZCBzZXRfdGhyZXNob2xk X3RyaWdnZXJfZWRnZSAoQ2x1dHRlci5HZXN0dXJlVHJpZ2dlckVkZ2UgZWRnZSk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xNiIpXQorKwkJcHVibGljIGludCBuX3RvdWNoX3BvaW50cyB7IGdl dDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjE4IildCisrCQlwdWJsaWMgZmxvYXQgdGhyZXNob2xkX3RyaWdnZXJfZGlzdGFuY2VfeCB7IGdl dDsgY29uc3RydWN0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjE4IildCisrCQlwdWJsaWMgZmxvYXQgdGhyZXNob2xkX3RyaWdnZXJfZGlzdGFuY2Vf eSB7IGdldDsgY29uc3RydWN0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xOCIpXQorKwkJ cHVibGljIENsdXR0ZXIuR2VzdHVyZVRyaWdnZXJFZGdlIHRocmVzaG9sZF90cmlnZ2VyX2VkZ2Ug eyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIGJvb2wgZ2VzdHVy ZV9iZWdpbiAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwg dm9pZCBnZXN0dXJlX2NhbmNlbCAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCQlwdWJsaWMgdmly dHVhbCBzaWduYWwgdm9pZCBnZXN0dXJlX2VuZCAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCQlw dWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCBnZXN0dXJlX3Byb2dyZXNzIChDbHV0dGVyLkFjdG9y IGFjdG9yKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfZ3JpZF9sYXlvdXRfZ2V0X3R5cGUgKCkiKV0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJcHVibGljIGNsYXNzIEdyaWRMYXlvdXQgOiBD bHV0dGVyLkxheW91dE1hbmFnZXIgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9u ID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckxheW91dE1hbmFnZXIqIildCisrCQlwdWJsaWMgR3Jp ZExheW91dCAoKTsKKysJCXB1YmxpYyB2b2lkIGF0dGFjaCAoQ2x1dHRlci5BY3RvciBjaGlsZCwg aW50IGxlZnQsIGludCB0b3AsIGludCB3aWR0aCwgaW50IGhlaWdodCk7CisrCQlwdWJsaWMgdm9p ZCBhdHRhY2hfbmV4dF90byAoQ2x1dHRlci5BY3RvciBjaGlsZCwgQ2x1dHRlci5BY3Rvcj8gc2li bGluZywgQ2x1dHRlci5HcmlkUG9zaXRpb24gc2lkZSwgaW50IHdpZHRoLCBpbnQgaGVpZ2h0KTsK KysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X2NoaWxkX2F0IChpbnQgbGVmdCwg aW50IHRvcCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfY29sdW1uX2hvbW9nZW5lb3VzICgpOworKwkJ cHVibGljIHVpbnQgZ2V0X2NvbHVtbl9zcGFjaW5nICgpOworKwkJcHVibGljIENsdXR0ZXIuT3Jp ZW50YXRpb24gZ2V0X29yaWVudGF0aW9uICgpOworKwkJcHVibGljIGJvb2wgZ2V0X3Jvd19ob21v Z2VuZW91cyAoKTsKKysJCXB1YmxpYyB1aW50IGdldF9yb3dfc3BhY2luZyAoKTsKKysJCXB1Ymxp YyB2b2lkIGluc2VydF9jb2x1bW4gKGludCBwb3NpdGlvbik7CisrCQlwdWJsaWMgdm9pZCBpbnNl cnRfbmV4dF90byAoQ2x1dHRlci5BY3RvciBzaWJsaW5nLCBDbHV0dGVyLkdyaWRQb3NpdGlvbiBz aWRlKTsKKysJCXB1YmxpYyB2b2lkIGluc2VydF9yb3cgKGludCBwb3NpdGlvbik7CisrCQlwdWJs aWMgdm9pZCBzZXRfY29sdW1uX2hvbW9nZW5lb3VzIChib29sIGhvbW9nZW5lb3VzKTsKKysJCXB1 YmxpYyB2b2lkIHNldF9jb2x1bW5fc3BhY2luZyAodWludCBzcGFjaW5nKTsKKysJCXB1YmxpYyB2 b2lkIHNldF9vcmllbnRhdGlvbiAoQ2x1dHRlci5PcmllbnRhdGlvbiBvcmllbnRhdGlvbik7Cisr CQlwdWJsaWMgdm9pZCBzZXRfcm93X2hvbW9nZW5lb3VzIChib29sIGhvbW9nZW5lb3VzKTsKKysJ CXB1YmxpYyB2b2lkIHNldF9yb3dfc3BhY2luZyAodWludCBzcGFjaW5nKTsKKysJCXB1YmxpYyBi b29sIGNvbHVtbl9ob21vZ2VuZW91cyB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgdWludCBjb2x1 bW5fc3BhY2luZyB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5PcmllbnRhdGlvbiBv cmllbnRhdGlvbiB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgYm9vbCByb3dfaG9tb2dlbmVvdXMg eyBnZXQ7IHNldDsgfQorKwkJcHVibGljIHVpbnQgcm93X3NwYWNpbmcgeyBnZXQ7IHNldDsgfQor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5 cGVfaWQgPSAiY2x1dHRlcl9ncm91cF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2Ug PSAiMC4yIildCisrCXB1YmxpYyBjbGFzcyBHcm91cCA6IENsdXR0ZXIuQWN0b3IsIEF0ay5JbXBs ZW1lbnRvciwgQ2x1dHRlci5BbmltYXRhYmxlLCBDbHV0dGVyLkNvbnRhaW5lciwgQ2x1dHRlci5T Y3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0 eXBlID0gIkNsdXR0ZXJBY3RvcioiKV0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwg ZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgR3JvdXAgKCk7CisrCQlbVmVy c2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNl ID0gIjAuMiIpXQorKwkJcHVibGljIGludCBnZXRfbl9jaGlsZHJlbiAoKTsKKysJCVtWZXJzaW9u IChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAi MC4yIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF9udGhfY2hpbGQgKGlu dCBpbmRleF8pOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3Np bmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHJlbW92ZV9hbGwgKCk7CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJj bHV0dGVyX2ltYWdlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIild CisrCXB1YmxpYyBjbGFzcyBJbWFnZSA6IEdMaWIuT2JqZWN0LCBDbHV0dGVyLkNvbnRlbnQgewor KwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRl ckNvbnRlbnQqIildCisrCQlwdWJsaWMgSW1hZ2UgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDb2ds LlRleHR1cmUgZ2V0X3RleHR1cmUgKCk7CisrCQlwdWJsaWMgYm9vbCBzZXRfYXJlYSAoW0NDb2Rl IChhcnJheV9sZW5ndGggPSBmYWxzZSldIHVpbnQ4W10gZGF0YSwgQ29nbC5QaXhlbEZvcm1hdCBw aXhlbF9mb3JtYXQsIENhaXJvLlJlY3RhbmdsZUludCByZWN0LCB1aW50IHJvd19zdHJpZGUpIHRo cm93cyBHTGliLkVycm9yOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1Ymxp YyBib29sIHNldF9ieXRlcyAoR0xpYi5CeXRlcyBkYXRhLCBDb2dsLlBpeGVsRm9ybWF0IHBpeGVs X2Zvcm1hdCwgdWludCB3aWR0aCwgdWludCBoZWlnaHQsIHVpbnQgcm93X3N0cmlkZSkgdGhyb3dz IEdMaWIuRXJyb3I7CisrCQlwdWJsaWMgYm9vbCBzZXRfZGF0YSAoW0NDb2RlIChhcnJheV9sZW5n dGggPSBmYWxzZSldIHVpbnQ4W10gZGF0YSwgQ29nbC5QaXhlbEZvcm1hdCBwaXhlbF9mb3JtYXQs IHVpbnQgd2lkdGgsIHVpbnQgaGVpZ2h0LCB1aW50IHJvd19zdHJpZGUpIHRocm93cyBHTGliLkVy cm9yOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9pbnB1dF9kZXZpY2VfZ2V0X3R5cGUgKCkiKV0KKysJcHVi bGljIGNsYXNzIElucHV0RGV2aWNlIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29u c3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIElucHV0RGV2aWNlICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5J bnB1dERldmljZSBnZXRfYXNzb2NpYXRlZF9kZXZpY2UgKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS42IildCisrCQlwdWJsaWMgQ2x1dHRlci5JbnB1dEF4aXMgZ2V0X2F4aXMgKHVpbnQgaW5k ZXhfKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBib29sIGdldF9h eGlzX3ZhbHVlIChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gZG91YmxlW10gYXhlcywg Q2x1dHRlci5JbnB1dEF4aXMgYXhpcywgb3V0IGRvdWJsZSB2YWx1ZSk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGJvb2wgZ2V0X2Nvb3JkcyAoQ2x1dHRlci5FdmVu dFNlcXVlbmNlPyBzZXF1ZW5jZSwgR3JhcGhlbmUuUG9pbnQgcG9pbnQpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGludCBnZXRfZGV2aWNlX2lkICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIENsdXR0ZXIuSW5wdXRNb2RlIGdldF9k ZXZpY2VfbW9kZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB1 bm93bmVkIHN0cmluZyBnZXRfZGV2aWNlX25hbWUgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJp bmcgZ2V0X2RldmljZV9ub2RlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJ cHVibGljIENsdXR0ZXIuSW5wdXREZXZpY2VUeXBlIGdldF9kZXZpY2VfdHlwZSAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBib29sIGdldF9lbmFibGVkICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIu QWN0b3IgZ2V0X2dyYWJiZWRfYWN0b3IgKCk7CisrCQlwdWJsaWMgdmlydHVhbCBpbnQgZ2V0X2dy b3VwX25fbW9kZXMgKGludCBncm91cCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisr CQlwdWJsaWMgYm9vbCBnZXRfaGFzX2N1cnNvciAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjYiKV0KKysJCXB1YmxpYyBib29sIGdldF9rZXkgKHVpbnQgaW5kZXhfLCBvdXQgdWludCBrZXl2 YWwsIG91dCBDbHV0dGVyLk1vZGlmaWVyVHlwZSBtb2RpZmllcnMpOworKwkJcHVibGljIENsdXR0 ZXIuSW5wdXREZXZpY2VNYXBwaW5nIGdldF9tYXBwaW5nX21vZGUgKCk7CisrCQlwdWJsaWMgaW50 IGdldF9tb2RlX3N3aXRjaF9idXR0b25fZ3JvdXAgKHVpbnQgYnV0dG9uKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjE2IildCisrCQlwdWJsaWMgQ2x1dHRlci5Nb2RpZmllclR5cGUgZ2V0X21v ZGlmaWVyX3N0YXRlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGlj IHVpbnQgZ2V0X25fYXhlcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1 YmxpYyB1aW50IGdldF9uX2tleXMgKCk7CisrCQlwdWJsaWMgaW50IGdldF9uX21vZGVfZ3JvdXBz ICgpOworKwkJcHVibGljIGludCBnZXRfbl9yaW5ncyAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0X25f c3RyaXBzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHVub3du ZWQgQ2x1dHRlci5BY3RvciBnZXRfcG9pbnRlcl9hY3RvciAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuU3RhZ2UgZ2V0X3BvaW50ZXJf c3RhZ2UgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yMiIpXQorKwkJcHVibGljIHVub3du ZWQgc3RyaW5nIGdldF9wcm9kdWN0X2lkICgpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5T ZWF0IGdldF9zZWF0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGlj IEdMaWIuTGlzdDx3ZWFrIENsdXR0ZXIuSW5wdXREZXZpY2U+IGdldF9zbGF2ZV9kZXZpY2VzICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjIiKV0KKysJCXB1YmxpYyB1bm93bmVkIHN0cmlu ZyBnZXRfdmVuZG9yX2lkICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1 YmxpYyB2b2lkIGdyYWIgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwkJcHVibGljIHZpcnR1YWwg Ym9vbCBpc19ncm91cGVkIChDbHV0dGVyLklucHV0RGV2aWNlIG90aGVyX2RldmljZSk7CisrCQlw dWJsaWMgdmlydHVhbCBib29sIGlzX21vZGVfc3dpdGNoX2J1dHRvbiAodWludCBncm91cCwgdWlu dCBidXR0b24pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2aXJ0 dWFsIGJvb2wga2V5Y29kZV90b19ldmRldiAodWludCBoYXJkd2FyZV9rZXljb2RlLCB1aW50IGV2 ZGV2X2tleWNvZGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB1 bm93bmVkIENsdXR0ZXIuQWN0b3Igc2VxdWVuY2VfZ2V0X2dyYWJiZWRfYWN0b3IgKENsdXR0ZXIu RXZlbnRTZXF1ZW5jZSBzZXF1ZW5jZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQor KwkJcHVibGljIHZvaWQgc2VxdWVuY2VfZ3JhYiAoQ2x1dHRlci5FdmVudFNlcXVlbmNlIHNlcXVl bmNlLCBDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIild CisrCQlwdWJsaWMgdm9pZCBzZXF1ZW5jZV91bmdyYWIgKENsdXR0ZXIuRXZlbnRTZXF1ZW5jZSBz ZXF1ZW5jZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgdm9pZCBz ZXRfZW5hYmxlZCAoYm9vbCBlbmFibGVkKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0K KysJCXB1YmxpYyB2b2lkIHNldF9rZXkgKHVpbnQgaW5kZXhfLCB1aW50IGtleXZhbCwgQ2x1dHRl ci5Nb2RpZmllclR5cGUgbW9kaWZpZXJzKTsKKysJCXB1YmxpYyB2b2lkIHNldF9tYXBwaW5nX21v ZGUgKENsdXR0ZXIuSW5wdXREZXZpY2VNYXBwaW5nIG1hcHBpbmcpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHVuZ3JhYiAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHVwZGF0ZV9mcm9tX2V2ZW50IChDbHV0dGVy LkV2ZW50IGV2ZW50LCBib29sIHVwZGF0ZV9zdGFnZSk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVi bGljIHZpcnR1YWwgdm9pZCB1cGRhdGVfZnJvbV90b29sIChDbHV0dGVyLklucHV0RGV2aWNlVG9v bCB0b29sKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu NiIpXQorKwkJcHVibGljIENsdXR0ZXIuQmFja2VuZCBiYWNrZW5kIHsgb3duZWQgZ2V0OyBjb25z dHJ1Y3Q7IH0KKysJCXB1YmxpYyBDbHV0dGVyLklucHV0TW9kZSBkZXZpY2VfbW9kZSB7IGdldDsg Y29uc3RydWN0OyB9CisrCQlwdWJsaWMgc3RyaW5nIGRldmljZV9ub2RlIHsgZ2V0OyBjb25zdHJ1 Y3Q7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBDbHV0dGVyLklu cHV0RGV2aWNlVHlwZSBkZXZpY2VfdHlwZSB7IGdldDsgY29uc3RydWN0OyB9CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgYm9vbCBlbmFibGVkIHsgZ2V0OyBzZXQ7IH0K KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBib29sIGhhc19jdXJzb3Ig eyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgaW50IGlkIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJ CXB1YmxpYyBDbHV0dGVyLklucHV0RGV2aWNlTWFwcGluZyBtYXBwaW5nX21vZGUgeyBnZXQ7IHNl dDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIHVpbnQgbl9heGVz IHsgZ2V0OyB9CisrCQlwdWJsaWMgaW50IG5fbW9kZV9ncm91cHMgeyBnZXQ7IGNvbnN0cnVjdDsg fQorKwkJcHVibGljIGludCBuX3JpbmdzIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBp bnQgbl9zdHJpcHMgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgc3RyaW5nIG5hbWUgeyBvd25l ZCBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjIiKV0KKysJCXB1 YmxpYyBzdHJpbmcgcHJvZHVjdF9pZCB7IGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgQ2x1 dHRlci5TZWF0IHNlYXQgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMjIiKV0KKysJCXB1YmxpYyBzdHJpbmcgdmVuZG9yX2lkIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0K KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0 eXBlX2lkID0gImNsdXR0ZXJfaW5wdXRfZGV2aWNlX3Rvb2xfZ2V0X3R5cGUgKCkiKV0KKysJcHVi bGljIGFic3RyYWN0IGNsYXNzIElucHV0RGV2aWNlVG9vbCA6IEdMaWIuT2JqZWN0IHsKKysJCVtD Q29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBJbnB1 dERldmljZVRvb2wgKCk7CisrCQlwdWJsaWMgdWludDY0IGdldF9pZCAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjI4IildCisrCQlwdWJsaWMgdWludDY0IGdldF9zZXJpYWwgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4yOCIpXQorKwkJcHVibGljIENsdXR0ZXIuSW5wdXREZXZpY2VU b29sVHlwZSBnZXRfdG9vbF90eXBlICgpOworKwkJcHVibGljIHVpbnQ2NCBpZCB7IGdldDsgY29u c3RydWN0OyB9CisrCQlwdWJsaWMgdWludDY0IHNlcmlhbCB7IGdldDsgY29uc3RydWN0OyB9Cisr CQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBDbHV0dGVyLklucHV0RGV2aWNlVG9vbFR5 cGUgdHlwZSB7IGdldDsgY29uc3RydWN0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2lucHV0X2ZvY3Vz X2dldF90eXBlICgpIildCisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBJbnB1dEZvY3VzIDogR0xp Yi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQor KwkJcHJvdGVjdGVkIElucHV0Rm9jdXMgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZp cnR1YWwgdm9pZCBjb21taXRfdGV4dCAoc3RyaW5nIHRleHQpOworKwkJW05vV3JhcHBlcl0KKysJ CXB1YmxpYyB2aXJ0dWFsIHZvaWQgZGVsZXRlX3N1cnJvdW5kaW5nICh1aW50IG9mZnNldCwgdWlu dCBsZW4pOworKwkJcHVibGljIGJvb2wgZmlsdGVyX2tleV9ldmVudCAoQ2x1dHRlci5LZXlFdmVu dCBrZXkpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgZm9jdXNfaW4g KENsdXR0ZXIuSW5wdXRNZXRob2QgaW5wdXRfbWV0aG9kKTsKKysJCVtOb1dyYXBwZXJdCisrCQlw dWJsaWMgdmlydHVhbCB2b2lkIGZvY3VzX291dCAoKTsKKysJCXB1YmxpYyBib29sIGlzX2ZvY3Vz ZWQgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCByZXF1ZXN0X3N1 cnJvdW5kaW5nICgpOworKwkJcHVibGljIHZvaWQgcmVzZXQgKCk7CisrCQlwdWJsaWMgdm9pZCBz ZXRfY2FuX3Nob3dfcHJlZWRpdCAoYm9vbCBjYW5fc2hvd19wcmVlZGl0KTsKKysJCXB1YmxpYyB2 b2lkIHNldF9jb250ZW50X2hpbnRzIChDbHV0dGVyLklucHV0Q29udGVudEhpbnRGbGFncyBoaW50 KTsKKysJCXB1YmxpYyB2b2lkIHNldF9jb250ZW50X3B1cnBvc2UgKENsdXR0ZXIuSW5wdXRDb250 ZW50UHVycG9zZSBwdXJwb3NlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9jdXJzb3JfbG9jYXRpb24g KEdyYXBoZW5lLlJlY3QgcmVjdCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfaW5wdXRfcGFuZWxfc3Rh dGUgKENsdXR0ZXIuSW5wdXRQYW5lbFN0YXRlIHN0YXRlKTsKKysJCVtOb1dyYXBwZXJdCisrCQlw dWJsaWMgdmlydHVhbCB2b2lkIHNldF9wcmVlZGl0X3RleHQgKHN0cmluZyBwcmVlZGl0LCB1aW50 IGN1cnNvcik7CisrCQlwdWJsaWMgdm9pZCBzZXRfc3Vycm91bmRpbmcgKHN0cmluZyB0ZXh0LCB1 aW50IGN1cnNvciwgdWludCBhbmNob3IpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9pbnB1dF9tZXRob2Rf Z2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGFic3RyYWN0IGNsYXNzIElucHV0TWV0aG9kIDogR0xp Yi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQor KwkJcHJvdGVjdGVkIElucHV0TWV0aG9kICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2 aXJ0dWFsIGJvb2wgZmlsdGVyX2tleV9ldmVudCAoQ2x1dHRlci5FdmVudCBrZXkpOworKwkJcHVi bGljIHZpcnR1YWwgdm9pZCBmb2N1c19pbiAoQ2x1dHRlci5JbnB1dEZvY3VzIGFjdG9yKTsKKysJ CXB1YmxpYyB2aXJ0dWFsIHZvaWQgZm9jdXNfb3V0ICgpOworKwkJcHVibGljIHZvaWQgZm9yd2Fy ZF9rZXkgKHVpbnQzMiBrZXl2YWwsIHVpbnQzMiBrZXljb2RlLCB1aW50MzIgc3RhdGUsIHVpbnQ2 NCB0aW1lXywgYm9vbCBwcmVzcyk7CisrCQlwdWJsaWMgdm9pZCBub3RpZnlfa2V5X2V2ZW50IChD bHV0dGVyLkV2ZW50IGV2ZW50LCBib29sIGZpbHRlcmVkKTsKKysJCVtOb1dyYXBwZXJdCisrCQlw dWJsaWMgdmlydHVhbCB2b2lkIHJlc2V0ICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2 aXJ0dWFsIHZvaWQgc2V0X2N1cnNvcl9sb2NhdGlvbiAoR3JhcGhlbmUuUmVjdCByZWN0KTsKKysJ CXB1YmxpYyB2b2lkIHNldF9pbnB1dF9wYW5lbF9zdGF0ZSAoQ2x1dHRlci5JbnB1dFBhbmVsU3Rh dGUgc3RhdGUpOworKwkJcHVibGljIHZvaWQgc2V0X3ByZWVkaXRfdGV4dCAoc3RyaW5nPyBwcmVl ZGl0LCB1aW50IGN1cnNvcik7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9p ZCBzZXRfc3Vycm91bmRpbmcgKHN0cmluZyB0ZXh0LCB1aW50IGN1cnNvciwgdWludCBhbmNob3Ip OworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgdXBkYXRlX2NvbnRlbnRf aGludHMgKENsdXR0ZXIuSW5wdXRDb250ZW50SGludEZsYWdzIGhpbnQpOworKwkJW05vV3JhcHBl cl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgdXBkYXRlX2NvbnRlbnRfcHVycG9zZSAoQ2x1dHRl ci5JbnB1dENvbnRlbnRQdXJwb3NlIHB1cnBvc2UpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisr CQlwdWJsaWMgYm9vbCBjYW5fc2hvd19wcmVlZGl0IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vz c29yTWV0aG9kXQorKwkJcHVibGljIENsdXR0ZXIuSW5wdXRDb250ZW50SGludEZsYWdzIGNvbnRl bnRfaGludHMgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMg Q2x1dHRlci5JbnB1dENvbnRlbnRQdXJwb3NlIGNvbnRlbnRfcHVycG9zZSB7IGdldDsgc2V0OyB9 CisrCQlbSGFzRW1pdHRlcl0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCBjb21taXQgKHN0cmluZyB0 ZXh0KTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBjdXJzb3JfbG9jYXRpb25fY2hhbmdlZCAoR3Jh cGhlbmUuUmVjdCBvYmplY3QpOworKwkJW0hhc0VtaXR0ZXJdCisrCQlwdWJsaWMgc2lnbmFsIHZv aWQgZGVsZXRlX3N1cnJvdW5kaW5nICh1aW50IG9mZnNldCwgdWludCBsZW4pOworKwkJcHVibGlj IHNpZ25hbCB2b2lkIGlucHV0X3BhbmVsX3N0YXRlIChDbHV0dGVyLklucHV0UGFuZWxTdGF0ZSBv YmplY3QpOworKwkJW0hhc0VtaXR0ZXJdCisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgcmVxdWVzdF9z dXJyb3VuZGluZyAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfaW50ZXJ2YWxfZ2V0X3R5cGUgKCkiKV0K KysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgY2xhc3MgSW50ZXJ2YWwgOiBH TGliLkluaXRpYWxseVVub3duZWQsIENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUgKGhh c19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwdWJsaWMgSW50ZXJ2YWwgKEdMaWIu VHlwZSBndHlwZSwgLi4uKTsKKysJCXB1YmxpYyBDbHV0dGVyLkludGVydmFsIGNsb25lICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHVub3duZWQgR0xpYi5WYWx1 ZT8gY29tcHV0ZSAoZG91YmxlIGZhY3Rvcik7CisrCQlwdWJsaWMgdmlydHVhbCBib29sIGNvbXB1 dGVfdmFsdWUgKGRvdWJsZSBmYWN0b3IsIG91dCBHTGliLlZhbHVlIHZhbHVlKTsKKysJCXB1Ymxp YyBHTGliLlZhbHVlIGdldF9maW5hbF92YWx1ZSAoKTsKKysJCXB1YmxpYyBHTGliLlZhbHVlIGdl dF9pbml0aWFsX3ZhbHVlICgpOworKwkJcHVibGljIHZvaWQgZ2V0X2ludGVydmFsICguLi4pOwor KwkJcHVibGljIEdMaWIuVHlwZSBnZXRfdmFsdWVfdHlwZSAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEyIildCisrCQlwdWJsaWMgYm9vbCBpc192YWxpZCAoKTsKKysJCXB1YmxpYyB1bm93 bmVkIEdMaWIuVmFsdWU/IHBlZWtfZmluYWxfdmFsdWUgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBH TGliLlZhbHVlPyBwZWVrX2luaXRpYWxfdmFsdWUgKCk7CisrCQlwdWJsaWMgc3RhdGljIHZvaWQg cmVnaXN0ZXJfcHJvZ3Jlc3NfZnVuYyAoR0xpYi5UeXBlIHZhbHVlX3R5cGUsIENsdXR0ZXIuUHJv Z3Jlc3NGdW5jIGZ1bmMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1Ymxp YyB2b2lkIHNldF9maW5hbCAoLi4uKTsKKysJCXB1YmxpYyB2b2lkIHNldF9maW5hbF92YWx1ZSAo R0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVi bGljIHZvaWQgc2V0X2luaXRpYWwgKC4uLik7CisrCQlwdWJsaWMgdm9pZCBzZXRfaW5pdGlhbF92 YWx1ZSAoR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfaW50ZXJ2YWwgKC4u Lik7CisrCQlwdWJsaWMgdmlydHVhbCBib29sIHZhbGlkYXRlIChHTGliLlBhcmFtU3BlYyBwc3Bl Yyk7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwdWJs aWMgSW50ZXJ2YWwud2l0aF92YWx1ZXMgKEdMaWIuVHlwZSBndHlwZSwgR0xpYi5WYWx1ZT8gaW5p dGlhbCwgR0xpYi5WYWx1ZT8gZmluYWwpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIEdMaWIuVmFsdWUgZmluYWwgeyBvd25l ZCBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMiIpXQorKwkJcHVibGljIEdMaWIuVmFsdWUgaW5pdGlhbCB7IG93bmVkIGdldDsgc2V0 OyB9CisrCQlwdWJsaWMgR0xpYi5UeXBlIHZhbHVlX3R5cGUgeyBnZXQ7IGNvbnN0cnVjdDsgfQor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGhh c190eXBlX2lkID0gZmFsc2UpXQorKwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAu MiIpXQorKwlwdWJsaWMgY2xhc3MgS2V5RXZlbnQgOiBDbHV0dGVyLkV2ZW50IHsKKysJCXB1Ymxp YyB3ZWFrIENsdXR0ZXIuSW5wdXREZXZpY2UgZGV2aWNlOworKwkJcHVibGljIENsdXR0ZXIuRXZl bnRGbGFncyBmbGFnczsKKysJCXB1YmxpYyB1aW50MTYgaGFyZHdhcmVfa2V5Y29kZTsKKysJCXB1 YmxpYyB1aW50IGtleXZhbDsKKysJCXB1YmxpYyBDbHV0dGVyLk1vZGlmaWVyVHlwZSBtb2RpZmll cl9zdGF0ZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuQWN0b3Igc291cmNlOworKwkJcHVibGlj IHdlYWsgQ2x1dHRlci5TdGFnZSBzdGFnZTsKKysJCXB1YmxpYyB1aW50MzIgdGltZTsKKysJCXB1 YmxpYyBDbHV0dGVyLkV2ZW50VHlwZSB0eXBlOworKwkJcHVibGljIHVuaWNoYXIgdW5pY29kZV92 YWx1ZTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfa2V5ZnJhbWVfdHJhbnNpdGlvbl9nZXRfdHlwZSAoKSIp XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwlwdWJsaWMgY2xhc3MgS2V5ZnJhbWVU cmFuc2l0aW9uIDogQ2x1dHRlci5Qcm9wZXJ0eVRyYW5zaXRpb24sIENsdXR0ZXIuU2NyaXB0YWJs ZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJD bHV0dGVyVHJhbnNpdGlvbioiKV0KKysJCXB1YmxpYyBLZXlmcmFtZVRyYW5zaXRpb24gKHN0cmlu ZyBwcm9wZXJ0eV9uYW1lKTsKKysJCXB1YmxpYyB2b2lkIGNsZWFyICgpOworKwkJcHVibGljIHZv aWQgZ2V0X2tleV9mcmFtZSAodWludCBpbmRleF8sIG91dCBkb3VibGUga2V5LCBvdXQgQ2x1dHRl ci5BbmltYXRpb25Nb2RlIG1vZGUsIG91dCBHTGliLlZhbHVlIHZhbHVlKTsKKysJCXB1YmxpYyB1 aW50IGdldF9uX2tleV9mcmFtZXMgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfa2V5X2ZyYW1lICh1 aW50IGluZGV4XywgZG91YmxlIGtleSwgQ2x1dHRlci5BbmltYXRpb25Nb2RlIG1vZGUsIEdMaWIu VmFsdWUgdmFsdWUpOworKwkJcHVibGljIHZvaWQgc2V0X2tleV9mcmFtZXMgKFtDQ29kZSAoYXJy YXlfbGVuZ3RoX2NuYW1lID0gIm5fa2V5X2ZyYW1lcyIsIGFycmF5X2xlbmd0aF9wb3MgPSAwLjUs IGFycmF5X2xlbmd0aF90eXBlID0gImd1aW50IildIGRvdWJsZVtdIGtleV9mcmFtZXMpOworKwkJ cHVibGljIHZvaWQgc2V0X21vZGVzIChbQ0NvZGUgKGFycmF5X2xlbmd0aF9jbmFtZSA9ICJuX21v ZGVzIiwgYXJyYXlfbGVuZ3RoX3BvcyA9IDAuNSwgYXJyYXlfbGVuZ3RoX3R5cGUgPSAiZ3VpbnQi KV0gQ2x1dHRlci5BbmltYXRpb25Nb2RlW10gbW9kZXMpOworKwkJcHVibGljIHZvaWQgc2V0X3Zh bHVlcyAoW0NDb2RlIChhcnJheV9sZW5ndGhfY25hbWUgPSAibl92YWx1ZXMiLCBhcnJheV9sZW5n dGhfcG9zID0gMC41LCBhcnJheV9sZW5ndGhfdHlwZSA9ICJndWludCIpXSBHTGliLlZhbHVlW10g dmFsdWVzKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfa2V5bWFwX2dldF90eXBlICgpIildCisrCXB1Ymxp YyBhYnN0cmFjdCBjbGFzcyBLZXltYXAgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19j b25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgS2V5bWFwICgpOworKwkJ cHVibGljIHZpcnR1YWwgYm9vbCBnZXRfY2Fwc19sb2NrX3N0YXRlICgpOworKwkJcHVibGljIHZp cnR1YWwgUGFuZ28uRGlyZWN0aW9uIGdldF9kaXJlY3Rpb24gKCk7CisrCQlwdWJsaWMgdmlydHVh bCBib29sIGdldF9udW1fbG9ja19zdGF0ZSAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBzdGF0 ZV9jaGFuZ2VkICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9sYXllcl9ub2RlX2dldF90eXBlICgpIild CisrCXB1YmxpYyBjbGFzcyBMYXllck5vZGUgOiBDbHV0dGVyLlBhaW50Tm9kZSB7CisrCQlbQ0Nv ZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyUGFpbnRO b2RlKiIpXQorKwkJcHVibGljIExheWVyTm9kZSAoQ29nbC5NYXRyaXggcHJvamVjdGlvbiwgQ2Fp cm8uUmVjdGFuZ2xlIHZpZXdwb3J0LCBmbG9hdCB3aWR0aCwgZmxvYXQgaGVpZ2h0LCB1aW50OCBv cGFjaXR5KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfbGF5b3V0X21hbmFnZXJfZ2V0X3R5cGUgKCkiKV0K KysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwlwdWJsaWMgYWJzdHJhY3QgY2xhc3MgTGF5 b3V0TWFuYWdlciA6IEdMaWIuSW5pdGlhbGx5VW5vd25lZCB7CisrCQlbQ0NvZGUgKGhhc19jb25z dHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgTGF5b3V0TWFuYWdlciAoKTsK KysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgYWxsb2NhdGUgKENsdXR0ZXIuQ29udGFpbmVyIGNvbnRh aW5lciwgQ2x1dHRlci5BY3RvckJveCBhbGxvY2F0aW9uLCBDbHV0dGVyLkFsbG9jYXRpb25GbGFn cyBmbGFncyk7CisrCQlwdWJsaWMgdm9pZCBjaGlsZF9nZXQgKENsdXR0ZXIuQ29udGFpbmVyIGNv bnRhaW5lciwgQ2x1dHRlci5BY3RvciBhY3RvciwgLi4uKTsKKysJCXB1YmxpYyB2b2lkIGNoaWxk X2dldF9wcm9wZXJ0eSAoQ2x1dHRlci5Db250YWluZXIgY29udGFpbmVyLCBDbHV0dGVyLkFjdG9y IGFjdG9yLCBzdHJpbmcgcHJvcGVydHlfbmFtZSwgR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlwdWJs aWMgdm9pZCBjaGlsZF9zZXQgKENsdXR0ZXIuQ29udGFpbmVyIGNvbnRhaW5lciwgQ2x1dHRlci5B Y3RvciBhY3RvciwgLi4uKTsKKysJCXB1YmxpYyB2b2lkIGNoaWxkX3NldF9wcm9wZXJ0eSAoQ2x1 dHRlci5Db250YWluZXIgY29udGFpbmVyLCBDbHV0dGVyLkFjdG9yIGFjdG9yLCBzdHJpbmcgcHJv cGVydHlfbmFtZSwgR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGlj IHZpcnR1YWwgdW5vd25lZCBDbHV0dGVyLkxheW91dE1ldGEgY3JlYXRlX2NoaWxkX21ldGEgKENs dXR0ZXIuQ29udGFpbmVyIGNvbnRhaW5lciwgQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCQlbTm9X cmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBlbmRfYW5pbWF0aW9uICgpOworKwkJcHVi bGljIHVub3duZWQgR0xpYi5QYXJhbVNwZWMgZmluZF9jaGlsZF9wcm9wZXJ0eSAoc3RyaW5nIG5h bWUpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIGRvdWJsZSBnZXRfYW5pbWF0 aW9uX3Byb2dyZXNzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGlj IHVub3duZWQgQ2x1dHRlci5MYXlvdXRNZXRhIGdldF9jaGlsZF9tZXRhIChDbHV0dGVyLkNvbnRh aW5lciBjb250YWluZXIsIENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwkJW05vV3JhcHBlcl0KKysJ CXB1YmxpYyB2aXJ0dWFsIEdMaWIuVHlwZSBnZXRfY2hpbGRfbWV0YV90eXBlICgpOworKwkJcHVi bGljIHZpcnR1YWwgdm9pZCBnZXRfcHJlZmVycmVkX2hlaWdodCAoQ2x1dHRlci5Db250YWluZXIg Y29udGFpbmVyLCBmbG9hdCBmb3Jfd2lkdGgsIG91dCBmbG9hdCBtaW5faGVpZ2h0X3AsIG91dCBm bG9hdCBuYXRfaGVpZ2h0X3ApOworKwkJcHVibGljIHZpcnR1YWwgdm9pZCBnZXRfcHJlZmVycmVk X3dpZHRoIChDbHV0dGVyLkNvbnRhaW5lciBjb250YWluZXIsIGZsb2F0IGZvcl9oZWlnaHQsIG91 dCBmbG9hdCBtaW5fd2lkdGhfcCwgb3V0IGZsb2F0IG5hdF93aWR0aF9wKTsKKysJCVtDQ29kZSAo YXJyYXlfbGVuZ3RoX3BvcyA9IDAuMSwgYXJyYXlfbGVuZ3RoX3R5cGUgPSAiZ3VpbnQiKV0KKysJ CXB1YmxpYyBHTGliLlBhcmFtU3BlY1tdIGxpc3RfY2hpbGRfcHJvcGVydGllcyAoKTsKKysJCXB1 YmxpYyB2aXJ0dWFsIHZvaWQgc2V0X2NvbnRhaW5lciAoQ2x1dHRlci5Db250YWluZXI/IGNvbnRh aW5lcik7CisrCQlbSGFzRW1pdHRlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGxh eW91dF9jaGFuZ2VkICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9sYXlvdXRfbWV0YV9nZXRfdHlwZSAo KSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBhYnN0cmFjdCBjbGFz cyBMYXlvdXRNZXRhIDogQ2x1dHRlci5DaGlsZE1ldGEgeworKwkJW0NDb2RlIChoYXNfY29uc3Ry dWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIExheW91dE1ldGEgKCk7CisrCQlw dWJsaWMgdW5vd25lZCBDbHV0dGVyLkxheW91dE1hbmFnZXIgZ2V0X21hbmFnZXIgKCk7CisrCQlw dWJsaWMgQ2x1dHRlci5MYXlvdXRNYW5hZ2VyIG1hbmFnZXIgeyBnZXQ7IGNvbnN0cnVjdDsgfQor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNv cHlfZnVuY3Rpb24gPSAiZ19ib3hlZF9jb3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2Zy ZWUiLCB0eXBlX2lkID0gImNsdXR0ZXJfbWFyZ2luX2dldF90eXBlICgpIildCisrCVtDb21wYWN0 XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgY2xhc3MgTWFyZ2luIHsK KysJCXB1YmxpYyBmbG9hdCBib3R0b207CisrCQlwdWJsaWMgZmxvYXQgbGVmdDsKKysJCXB1Ymxp YyBmbG9hdCByaWdodDsKKysJCXB1YmxpYyBmbG9hdCB0b3A7CisrCQlbQ0NvZGUgKGhhc19jb25z dHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwdWJsaWMgTWFyZ2luICgpOworKwkJcHVibGlj IENsdXR0ZXIuTWFyZ2luIGNvcHkgKCk7CisrCQlwdWJsaWMgdm9pZCBmcmVlICgpOworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGhhc190eXBl X2lkID0gZmFsc2UpXQorKwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQor KwlwdWJsaWMgY2xhc3MgTW90aW9uRXZlbnQgOiBDbHV0dGVyLkV2ZW50IHsKKysJCXB1YmxpYyBk b3VibGUgYXhlczsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuSW5wdXREZXZpY2UgZGV2aWNlOwor KwkJcHVibGljIENsdXR0ZXIuRXZlbnRGbGFncyBmbGFnczsKKysJCXB1YmxpYyBDbHV0dGVyLk1v ZGlmaWVyVHlwZSBtb2RpZmllcl9zdGF0ZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuQWN0b3Ig c291cmNlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5TdGFnZSBzdGFnZTsKKysJCXB1YmxpYyB1 aW50MzIgdGltZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50VHlwZSB0eXBlOworKwkJcHVibGlj IGZsb2F0IHg7CisrCQlwdWJsaWMgZmxvYXQgeTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfb2Zmc2NyZWVu X2VmZmVjdF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1 YmxpYyBhYnN0cmFjdCBjbGFzcyBPZmZzY3JlZW5FZmZlY3QgOiBDbHV0dGVyLkVmZmVjdCB7Cisr CQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQg T2Zmc2NyZWVuRWZmZWN0ICgpOworKwkJcHVibGljIHZpcnR1YWwgQ29nbC5IYW5kbGUgY3JlYXRl X3RleHR1cmUgKGZsb2F0IHdpZHRoLCBmbG9hdCBoZWlnaHQpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTQiKV0KKysJCXB1YmxpYyBib29sIGdldF90YXJnZXRfcmVjdCAob3V0IHVub3duZWQg R3JhcGhlbmUuUmVjdCByZWN0KTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVw cmVjYXRlZF9zaW5jZSA9ICIxLjE0Iiwgc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgYm9vbCBn ZXRfdGFyZ2V0X3NpemUgKG91dCBmbG9hdCB3aWR0aCwgb3V0IGZsb2F0IGhlaWdodCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHVub3duZWQgQ29nbC5IYW5kbGUg Z2V0X3RleHR1cmUgKCk7CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHBhaW50X3RhcmdldCAoQ2x1 dHRlci5QYWludENvbnRleHQgcGFpbnRfY29udGV4dCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3BhZ2Vf dHVybl9lZmZlY3RfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQor KwlwdWJsaWMgY2xhc3MgUGFnZVR1cm5FZmZlY3QgOiBDbHV0dGVyLkRlZm9ybUVmZmVjdCB7Cisr CQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVy RWZmZWN0KiIpXQorKwkJcHVibGljIFBhZ2VUdXJuRWZmZWN0IChkb3VibGUgcGVyaW9kLCBkb3Vi bGUgYW5nbGUsIGZsb2F0IHJhZGl1cyk7CisrCQlwdWJsaWMgZG91YmxlIGdldF9hbmdsZSAoKTsK KysJCXB1YmxpYyBkb3VibGUgZ2V0X3BlcmlvZCAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfcmFk aXVzICgpOworKwkJcHVibGljIHZvaWQgc2V0X2FuZ2xlIChkb3VibGUgYW5nbGUpOworKwkJcHVi bGljIHZvaWQgc2V0X3BlcmlvZCAoZG91YmxlIHBlcmlvZCk7CisrCQlwdWJsaWMgdm9pZCBzZXRf cmFkaXVzIChmbG9hdCByYWRpdXMpOworKwkJcHVibGljIGRvdWJsZSBhbmdsZSB7IGdldDsgc2V0 OyB9CisrCQlwdWJsaWMgZG91YmxlIHBlcmlvZCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgZmxv YXQgcmFkaXVzIHsgZ2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCByZWZfZnVuY3Rpb24gPSAiY2x1dHRlcl9wYWludF9jb250 ZXh0X3JlZiIsIHR5cGVfaWQgPSAiY2x1dHRlcl9wYWludF9jb250ZXh0X2dldF90eXBlICgpIiwg dW5yZWZfZnVuY3Rpb24gPSAiY2x1dHRlcl9wYWludF9jb250ZXh0X3VucmVmIildCisrCVtDb21w YWN0XQorKwlwdWJsaWMgY2xhc3MgUGFpbnRDb250ZXh0IHsKKysJCXB1YmxpYyB2b2lkIGRlc3Ry b3kgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDb2dsLkZyYW1lYnVmZmVyIGdldF9mcmFtZWJ1ZmZl ciAoKTsKKysJCXB1YmxpYyB2b2lkIHBvcF9mcmFtZWJ1ZmZlciAoKTsKKysJCXB1YmxpYyB2b2lk IHB1c2hfZnJhbWVidWZmZXIgKENvZ2wuRnJhbWVidWZmZXIgZnJhbWVidWZmZXIpOworKwkJcHVi bGljIHVub3duZWQgQ2x1dHRlci5QYWludENvbnRleHQgQHJlZiAoKTsKKysJCXB1YmxpYyB2b2lk IHVucmVmICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9wYWludF9ub2RlX2dldF90eXBlICgpIildCisr CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBQYWlu dE5vZGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJ cHJvdGVjdGVkIFBhaW50Tm9kZSAoKTsKKysJCXB1YmxpYyB2b2lkIGFkZF9jaGlsZCAoQ2x1dHRl ci5QYWludE5vZGUgY2hpbGQpOworKwkJcHVibGljIHZvaWQgYWRkX211bHRpdGV4dHVyZV9yZWN0 YW5nbGUgKENsdXR0ZXIuQWN0b3JCb3ggcmVjdCwgZmxvYXQgdGV4dF9jb29yZHMsIHVpbnQgdGV4 dF9jb29yZHNfbGVuKTsKKysJCXB1YmxpYyB2b2lkIGFkZF9yZWN0YW5nbGUgKENsdXR0ZXIuQWN0 b3JCb3ggcmVjdCk7CisrCQlwdWJsaWMgdm9pZCBhZGRfdGV4dHVyZV9yZWN0YW5nbGUgKENsdXR0 ZXIuQWN0b3JCb3ggcmVjdCwgZmxvYXQgeF8xLCBmbG9hdCB5XzEsIGZsb2F0IHhfMiwgZmxvYXQg eV8yKTsKKysJCXB1YmxpYyB1bm93bmVkIENvZ2wuRnJhbWVidWZmZXIgZ2V0X2ZyYW1lYnVmZmVy ICgpOworKwkJcHVibGljIHZvaWQgcGFpbnQgKENsdXR0ZXIuUGFpbnRDb250ZXh0IHBhaW50X2Nv bnRleHQpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5QYWludE5vZGUgQHJlZiAoKTsKKysJ CXB1YmxpYyB2b2lkIHNldF9uYW1lIChzdHJpbmcgbmFtZSk7CisrCQlwdWJsaWMgdm9pZCB1bnJl ZiAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24gPSAiZ19i b3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3BhaW50X3ZvbHVtZV9nZXRfdHlwZSAoKSIp XQorKwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgY2xh c3MgUGFpbnRWb2x1bWUgeworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGlj IENsdXR0ZXIuUGFpbnRWb2x1bWUgY29weSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYi KV0KKysJCXB1YmxpYyB2b2lkIGZyZWUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42Iild CisrCQlwdWJsaWMgZmxvYXQgZ2V0X2RlcHRoICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu NiIpXQorKwkJcHVibGljIGZsb2F0IGdldF9oZWlnaHQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS42IildCisrCQlwdWJsaWMgdm9pZCBnZXRfb3JpZ2luIChvdXQgdW5vd25lZCBHcmFwaGVu ZS5Qb2ludDNEIHZlcnRleCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJs aWMgZmxvYXQgZ2V0X3dpZHRoICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJ cHVibGljIHZvaWQgc2V0X2RlcHRoIChmbG9hdCBkZXB0aCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS42IildCisrCQlwdWJsaWMgYm9vbCBzZXRfZnJvbV9hbGxvY2F0aW9uIChDbHV0dGVyLkFj dG9yIGFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB2b2lk IHNldF9oZWlnaHQgKGZsb2F0IGhlaWdodCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42Iild CisrCQlwdWJsaWMgdm9pZCBzZXRfb3JpZ2luIChHcmFwaGVuZS5Qb2ludDNEIG9yaWdpbik7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgdm9pZCBzZXRfd2lkdGggKGZs b2F0IHdpZHRoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB2b2lk IHVuaW9uIChDbHV0dGVyLlBhaW50Vm9sdW1lIGFub3RoZXJfcHYpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHVuaW9uX2JveCAoQ2x1dHRlci5BY3RvckJv eCBib3gpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9wYW5fYWN0aW9uX2dldF90eXBlICgpIildCisrCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCXB1YmxpYyBjbGFzcyBQYW5BY3Rpb24gOiBDbHV0 dGVyLkdlc3R1cmVBY3Rpb24geworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0g ZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFjdGlvbioiKV0KKysJCXB1YmxpYyBQYW5BY3Rpb24gKCk7 CisrCQlwdWJsaWMgZG91YmxlIGdldF9hY2NlbGVyYXRpb25fZmFjdG9yICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMjQiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfY29uc3RyYWluZWRfbW90 aW9uX2RlbHRhICh1aW50IHBvaW50LCBvdXQgZmxvYXQgZGVsdGFfeCwgb3V0IGZsb2F0IGRlbHRh X3kpOworKwkJcHVibGljIGRvdWJsZSBnZXRfZGVjZWxlcmF0aW9uICgpOworKwkJcHVibGljIGJv b2wgZ2V0X2ludGVycG9sYXRlICgpOworKwkJcHVibGljIHZvaWQgZ2V0X2ludGVycG9sYXRlZF9j b29yZHMgKG91dCBmbG9hdCBpbnRlcnBvbGF0ZWRfeCwgb3V0IGZsb2F0IGludGVycG9sYXRlZF95 KTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfaW50ZXJwb2xhdGVkX2RlbHRhIChvdXQgZmxvYXQgZGVs dGFfeCwgb3V0IGZsb2F0IGRlbHRhX3kpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTQiKV0K KysJCXB1YmxpYyB2b2lkIGdldF9tb3Rpb25fY29vcmRzICh1aW50IHBvaW50LCBvdXQgZmxvYXQg bW90aW9uX3gsIG91dCBmbG9hdCBtb3Rpb25feSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x NCIpXQorKwkJcHVibGljIGZsb2F0IGdldF9tb3Rpb25fZGVsdGEgKHVpbnQgcG9pbnQsIG91dCBm bG9hdCBkZWx0YV94LCBvdXQgZmxvYXQgZGVsdGFfeSk7CisrCQlwdWJsaWMgQ2x1dHRlci5QYW5B eGlzIGdldF9wYW5fYXhpcyAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9hY2NlbGVyYXRpb25fZmFj dG9yIChkb3VibGUgZmFjdG9yKTsKKysJCXB1YmxpYyB2b2lkIHNldF9kZWNlbGVyYXRpb24gKGRv dWJsZSByYXRlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9pbnRlcnBvbGF0ZSAoYm9vbCBzaG91bGRf aW50ZXJwb2xhdGUpOworKwkJcHVibGljIHZvaWQgc2V0X3Bhbl9heGlzIChDbHV0dGVyLlBhbkF4 aXMgYXhpcyk7CisrCQlwdWJsaWMgZG91YmxlIGFjY2VsZXJhdGlvbl9mYWN0b3IgeyBnZXQ7IHNl dDsgfQorKwkJcHVibGljIGRvdWJsZSBkZWNlbGVyYXRpb24geyBnZXQ7IHNldDsgfQorKwkJcHVi bGljIGJvb2wgaW50ZXJwb2xhdGUgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIENsdXR0ZXIuUGFu QXhpcyBwYW5fYXhpcyB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9v bCBwYW4gKENsdXR0ZXIuQWN0b3IgYWN0b3IsIGJvb2wgaXNfaW50ZXJwb2xhdGVkKTsKKysJCXB1 YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIHBhbl9zdG9wcGVkIChDbHV0dGVyLkFjdG9yIGFjdG9y KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBsb3dlcl9jYXNlX2NzdWZmaXggPSAicGFyYW1fdW5pdHMiLCB0eXBlX2lkID0gImNsdXR0ZXJf cGFyYW1fdW5pdHNfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFBhcmFtU3BlY1VuaXQg OiBHTGliLlBhcmFtU3BlYyB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBm YWxzZSldCisrCQlwcm90ZWN0ZWQgUGFyYW1TcGVjVW5pdCAoKTsKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJf cGF0aF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1Ymxp YyBjbGFzcyBQYXRoIDogR0xpYi5Jbml0aWFsbHlVbm93bmVkIHsKKysJCVtDQ29kZSAoaGFzX2Nv bnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1YmxpYyBQYXRoICgpOworKwkJcHVibGlj IHZvaWQgYWRkX2NhaXJvX3BhdGggKENhaXJvLlBhdGggY3BhdGgpOworKwkJcHVibGljIHZvaWQg YWRkX2Nsb3NlICgpOworKwkJcHVibGljIHZvaWQgYWRkX2N1cnZlX3RvIChpbnQgeF8xLCBpbnQg eV8xLCBpbnQgeF8yLCBpbnQgeV8yLCBpbnQgeF8zLCBpbnQgeV8zKTsKKysJCXB1YmxpYyB2b2lk IGFkZF9saW5lX3RvIChpbnQgeCwgaW50IHkpOworKwkJcHVibGljIHZvaWQgYWRkX21vdmVfdG8g KGludCB4LCBpbnQgeSk7CisrCQlwdWJsaWMgdm9pZCBhZGRfbm9kZSAoQ2x1dHRlci5QYXRoTm9k ZSBub2RlKTsKKysJCXB1YmxpYyB2b2lkIGFkZF9yZWxfY3VydmVfdG8gKGludCB4XzEsIGludCB5 XzEsIGludCB4XzIsIGludCB5XzIsIGludCB4XzMsIGludCB5XzMpOworKwkJcHVibGljIHZvaWQg YWRkX3JlbF9saW5lX3RvIChpbnQgeCwgaW50IHkpOworKwkJcHVibGljIHZvaWQgYWRkX3JlbF9t b3ZlX3RvIChpbnQgeCwgaW50IHkpOworKwkJcHVibGljIGJvb2wgYWRkX3N0cmluZyAoc3RyaW5n IHN0cik7CisrCQlwdWJsaWMgdm9pZCBjbGVhciAoKTsKKysJCXB1YmxpYyB2b2lkIEBmb3JlYWNo IChDbHV0dGVyLlBhdGhDYWxsYmFjayBjYWxsYmFjayk7CisrCQlwdWJsaWMgc3RyaW5nIGdldF9k ZXNjcmlwdGlvbiAoKTsKKysJCXB1YmxpYyB1aW50IGdldF9sZW5ndGggKCk7CisrCQlwdWJsaWMg dWludCBnZXRfbl9ub2RlcyAoKTsKKysJCXB1YmxpYyBDbHV0dGVyLlBhdGhOb2RlIGdldF9ub2Rl ICh1aW50IGluZGV4Xyk7CisrCQlwdWJsaWMgR0xpYi5TTGlzdDx3ZWFrIENsdXR0ZXIuUGF0aE5v ZGU/PiBnZXRfbm9kZXMgKCk7CisrCQlwdWJsaWMgdWludCBnZXRfcG9zaXRpb24gKGRvdWJsZSBw cm9ncmVzcywgb3V0IENsdXR0ZXIuS25vdCBwb3NpdGlvbik7CisrCQlwdWJsaWMgdm9pZCBpbnNl cnRfbm9kZSAoaW50IGluZGV4XywgQ2x1dHRlci5QYXRoTm9kZSBub2RlKTsKKysJCXB1YmxpYyB2 b2lkIHJlbW92ZV9ub2RlICh1aW50IGluZGV4Xyk7CisrCQlwdWJsaWMgdm9pZCByZXBsYWNlX25v ZGUgKHVpbnQgaW5kZXhfLCBDbHV0dGVyLlBhdGhOb2RlIG5vZGUpOworKwkJcHVibGljIGJvb2wg c2V0X2Rlc2NyaXB0aW9uIChzdHJpbmcgc3RyKTsKKysJCXB1YmxpYyB2b2lkIHRvX2NhaXJvX3Bh dGggKENhaXJvLkNvbnRleHQgY3IpOworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9u ID0gZmFsc2UpXQorKwkJcHVibGljIFBhdGgud2l0aF9kZXNjcmlwdGlvbiAoc3RyaW5nIGRlc2Mp OworKwkJcHVibGljIHN0cmluZyBkZXNjcmlwdGlvbiB7IG93bmVkIGdldDsgc2V0OyB9CisrCQlw dWJsaWMgdWludCBsZW5ndGggeyBnZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfcGF0aF9jb25zdHJh aW50X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJcHVibGlj IGNsYXNzIFBhdGhDb25zdHJhaW50IDogQ2x1dHRlci5Db25zdHJhaW50IHsKKysJCVtDQ29kZSAo aGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJDb25zdHJhaW50 KiIpXQorKwkJcHVibGljIFBhdGhDb25zdHJhaW50IChDbHV0dGVyLlBhdGg/IHBhdGgsIGZsb2F0 IG9mZnNldCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X29mZnNldCAoKTsKKysJCXB1YmxpYyB1bm93 bmVkIENsdXR0ZXIuUGF0aCBnZXRfcGF0aCAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9vZmZzZXQg KGZsb2F0IG9mZnNldCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfcGF0aCAoQ2x1dHRlci5QYXRoPyBw YXRoKTsKKysJCXB1YmxpYyBmbG9hdCBvZmZzZXQgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIENs dXR0ZXIuUGF0aCBwYXRoIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCBub2Rl X3JlYWNoZWQgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIHVpbnQgaW5kZXgpOworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHJlZl9mdW5jdGlvbiA9 ICJjbHV0dGVyX3BpY2tfY29udGV4dF9yZWYiLCB0eXBlX2lkID0gImNsdXR0ZXJfcGlja19jb250 ZXh0X2dldF90eXBlICgpIiwgdW5yZWZfZnVuY3Rpb24gPSAiY2x1dHRlcl9waWNrX2NvbnRleHRf dW5yZWYiKV0KKysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFzcyBQaWNrQ29udGV4dCB7CisrCQlw dWJsaWMgdm9pZCBkZXN0cm95ICgpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5QaWNrQ29u dGV4dCBAcmVmICgpOworKwkJcHVibGljIHZvaWQgdW5yZWYgKCk7CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVy X3BpcGVsaW5lX25vZGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAi KV0KKysJcHVibGljIGNsYXNzIFBpcGVsaW5lTm9kZSA6IENsdXR0ZXIuUGFpbnROb2RlIHsKKysJ CVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBQ aXBlbGluZU5vZGUgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3Byb3BlcnR5X3RyYW5zaXRpb25fZ2V0 X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGNsYXNz IFByb3BlcnR5VHJhbnNpdGlvbiA6IENsdXR0ZXIuVHJhbnNpdGlvbiwgQ2x1dHRlci5TY3JpcHRh YmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0g IkNsdXR0ZXJUcmFuc2l0aW9uKiIpXQorKwkJcHVibGljIFByb3BlcnR5VHJhbnNpdGlvbiAoc3Ry aW5nPyBwcm9wZXJ0eV9uYW1lKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfcHJvcGVy dHlfbmFtZSAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9wcm9wZXJ0eV9uYW1lIChzdHJpbmc/IHBy b3BlcnR5X25hbWUpOworKwkJcHVibGljIHN0cmluZyBwcm9wZXJ0eV9uYW1lIHsgZ2V0OyBzZXQ7 IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCB0eXBlX2lkID0gImNsdXR0ZXJfcmVjdGFuZ2xlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9u IChzaW5jZSA9ICIwLjIiKV0KKysJcHVibGljIGNsYXNzIFJlY3RhbmdsZSA6IENsdXR0ZXIuQWN0 b3IsIEF0ay5JbXBsZW1lbnRvciwgQ2x1dHRlci5BbmltYXRhYmxlLCBDbHV0dGVyLkNvbnRhaW5l ciwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlv biA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3RvcioiKV0KKysJCVtWZXJzaW9uIChkZXByZWNh dGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgUmVjdGFu Z2xlICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNl ID0gIjEuMTAiLCBzaW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIGdldF9i b3JkZXJfY29sb3IgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0 ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIHVpbnQgZ2V0X2Jv cmRlcl93aWR0aCAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRl ZF9zaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBnZXRfY29sb3IgKCk7 CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4x MCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2JvcmRlcl9jb2xvciAoQ2x1dHRlci5Db2xvciBjb2xv cik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAi MS4xMCIsIHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2JvcmRlcl93aWR0aCAo dWludCB3aWR0aCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRf c2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2NvbG9yIChDbHV0dGVyLkNvbG9y IGNvbG9yKTsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBl ID0gIkNsdXR0ZXJBY3RvcioiKV0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVw cmVjYXRlZF9zaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgUmVjdGFuZ2xlLndpdGhfY29sb3Ig KENsdXR0ZXIuQ29sb3IgY29sb3IpOworKwkJcHVibGljIENsdXR0ZXIuQ29sb3IgYm9yZGVyX2Nv bG9yIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyB1aW50IGJvcmRlcl93aWR0aCB7IGdldDsgc2V0 OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBjb2xvciB7IGdldDsgc2V0OyB9CisrCQlbTm9B Y2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIGhhc19ib3JkZXIgeyBnZXQ7IHNldDsgfQor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5 cGVfaWQgPSAiY2x1dHRlcl9yb290X25vZGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNz IFJvb3ROb2RlIDogQ2x1dHRlci5QYWludE5vZGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0 X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlclBhaW50Tm9kZSoiKV0KKysJCXB1Ymxp YyBSb290Tm9kZSAoQ29nbC5GcmFtZWJ1ZmZlciBmcmFtZWJ1ZmZlciwgQ2x1dHRlci5Db2xvciBj bGVhcl9jb2xvciwgQ29nbC5CdWZmZXJCaXQgY2xlYXJfZmxhZ3MpOworKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRl cl9yb3RhdGVfYWN0aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEy IildCisrCXB1YmxpYyBjbGFzcyBSb3RhdGVBY3Rpb24gOiBDbHV0dGVyLkdlc3R1cmVBY3Rpb24g eworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1 dHRlckFjdGlvbioiKV0KKysJCXB1YmxpYyBSb3RhdGVBY3Rpb24gKCk7CisrCQlwdWJsaWMgdmly dHVhbCBzaWduYWwgYm9vbCByb3RhdGUgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIGRvdWJsZSBhbmds ZSk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgdHlwZV9pZCA9ICJjbHV0dGVyX3NjcmlwdF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMC42IildCisrCXB1YmxpYyBjbGFzcyBTY3JpcHQgOiBHTGliLk9iamVjdCB7Cisr CQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwdWJsaWMgU2Ny aXB0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZvaWQgYWRk X3NlYXJjaF9wYXRocyAoW0NDb2RlIChhcnJheV9sZW5ndGhfY25hbWUgPSAibl9wYXRocyIsIGFy cmF5X2xlbmd0aF9wb3MgPSAxLjEsIGFycmF5X2xlbmd0aF90eXBlID0gImdzaXplIildIHN0cmlu Z1tdIHBhdGhzKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9z aW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBhZGRfc3RhdGVz IChzdHJpbmc/IG5hbWUsIENsdXR0ZXIuU3RhdGUgc3RhdGUpOworKwkJcHVibGljIHZvaWQgY29u bmVjdF9zaWduYWxzICh2b2lkKiB1c2VyX2RhdGEpOworKwkJcHVibGljIHZvaWQgY29ubmVjdF9z aWduYWxzX2Z1bGwgKENsdXR0ZXIuU2NyaXB0Q29ubmVjdEZ1bmMgZnVuYyk7CisrCQlwdWJsaWMg dm9pZCBlbnN1cmVfb2JqZWN0cyAoKTsKKysJCXB1YmxpYyB1bm93bmVkIEdMaWIuT2JqZWN0IGdl dF9vYmplY3QgKHN0cmluZyBuYW1lKTsKKysJCXB1YmxpYyBpbnQgZ2V0X29iamVjdHMgKC4uLik7 CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4x MiIsIHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5TdGF0ZSBnZXRf c3RhdGVzIChzdHJpbmc/IG5hbWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfdHJhbnNsYXRpb25fZG9tYWluICgpOworKwkJcHVi bGljIHZpcnR1YWwgR0xpYi5UeXBlIGdldF90eXBlX2Zyb21fbmFtZSAoc3RyaW5nIHR5cGVfbmFt ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgR0xpYi5MaXN0PHdl YWsgR0xpYi5PYmplY3Q+IGxpc3Rfb2JqZWN0cyAoKTsKKysJCXB1YmxpYyB1aW50IGxvYWRfZnJv bV9kYXRhIChzdHJpbmcgZGF0YSwgc3NpemVfdCBsZW5ndGgpIHRocm93cyBHTGliLkVycm9yOwor KwkJcHVibGljIHVpbnQgbG9hZF9mcm9tX2ZpbGUgKHN0cmluZyBmaWxlbmFtZSkgdGhyb3dzIEdM aWIuRXJyb3I7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHVpbnQg bG9hZF9mcm9tX3Jlc291cmNlIChzdHJpbmcgcmVzb3VyY2VfcGF0aCkgdGhyb3dzIEdMaWIuRXJy b3I7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgc3RyaW5nIGxvb2t1 cF9maWxlbmFtZSAoc3RyaW5nIGZpbGVuYW1lKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEw IildCisrCQlwdWJsaWMgdm9pZCBzZXRfdHJhbnNsYXRpb25fZG9tYWluIChzdHJpbmc/IGRvbWFp bik7CisrCQlwdWJsaWMgdm9pZCB1bm1lcmdlX29iamVjdHMgKHVpbnQgbWVyZ2VfaWQpOworKwkJ W05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgc3RyaW5nIGZpbGVuYW1lIHsgb3duZWQgZ2V0 OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIGZpbGVuYW1lX3NldCB7 IGdldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBzdHJpbmcg dHJhbnNsYXRpb25fZG9tYWluIHsgZ2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfc2Nyb2xs X2FjdG9yX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCXB1 YmxpYyBjbGFzcyBTY3JvbGxBY3RvciA6IENsdXR0ZXIuQWN0b3IsIEF0ay5JbXBsZW1lbnRvciwg Q2x1dHRlci5BbmltYXRhYmxlLCBDbHV0dGVyLkNvbnRhaW5lciwgQ2x1dHRlci5TY3JpcHRhYmxl IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNs dXR0ZXJBY3RvcioiKV0KKysJCXB1YmxpYyBTY3JvbGxBY3RvciAoKTsKKysJCXB1YmxpYyBDbHV0 dGVyLlNjcm9sbE1vZGUgZ2V0X3Njcm9sbF9tb2RlICgpOworKwkJcHVibGljIHZvaWQgc2Nyb2xs X3RvX3BvaW50IChHcmFwaGVuZS5Qb2ludCBwb2ludCk7CisrCQlwdWJsaWMgdm9pZCBzY3JvbGxf dG9fcmVjdCAoR3JhcGhlbmUuUmVjdCByZWN0KTsKKysJCXB1YmxpYyB2b2lkIHNldF9zY3JvbGxf bW9kZSAoQ2x1dHRlci5TY3JvbGxNb2RlIG1vZGUpOworKwkJcHVibGljIENsdXR0ZXIuU2Nyb2xs TW9kZSBzY3JvbGxfbW9kZSB7IGdldDsgc2V0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtD b21wYWN0XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCXB1YmxpYyBjbGFzcyBTY3Jv bGxFdmVudCA6IENsdXR0ZXIuRXZlbnQgeworKwkJcHVibGljIGRvdWJsZSBheGVzOworKwkJcHVi bGljIHdlYWsgQ2x1dHRlci5JbnB1dERldmljZSBkZXZpY2U7CisrCQlwdWJsaWMgQ2x1dHRlci5T Y3JvbGxEaXJlY3Rpb24gZGlyZWN0aW9uOworKwkJcHVibGljIENsdXR0ZXIuU2Nyb2xsRmluaXNo RmxhZ3MgZmluaXNoX2ZsYWdzOworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRGbGFncyBmbGFnczsK KysJCXB1YmxpYyBDbHV0dGVyLk1vZGlmaWVyVHlwZSBtb2RpZmllcl9zdGF0ZTsKKysJCXB1Ymxp YyBDbHV0dGVyLlNjcm9sbFNvdXJjZSBzY3JvbGxfc291cmNlOworKwkJcHVibGljIHdlYWsgQ2x1 dHRlci5BY3RvciBzb3VyY2U7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLlN0YWdlIHN0YWdlOwor KwkJcHVibGljIHVpbnQzMiB0aW1lOworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRUeXBlIHR5cGU7 CisrCQlwdWJsaWMgZmxvYXQgeDsKKysJCXB1YmxpYyBmbG9hdCB5OworKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRl cl9zZWF0X2dldF90eXBlICgpIildCisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBTZWF0IDogR0xp Yi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQor KwkJcHJvdGVjdGVkIFNlYXQgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwg dm9pZCBhcHBseV9rYmRfYTExeV9zZXR0aW5ncyAoQ2x1dHRlci5LYmRBMTF5U2V0dGluZ3Mgc2V0 dGluZ3MpOworKwkJcHVibGljIHZpcnR1YWwgdm9pZCBiZWxsX25vdGlmeSAoKTsKKysJCXB1Ymxp YyB2aXJ0dWFsIHZvaWQgY29tcHJlc3NfbW90aW9uIChDbHV0dGVyLkV2ZW50IGV2ZW50LCBDbHV0 dGVyLkV2ZW50IHRvX2Rpc2NhcmQpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFs IHZvaWQgY29weV9ldmVudF9kYXRhIChDbHV0dGVyLkV2ZW50IHNyYywgQ2x1dHRlci5FdmVudCBk ZXN0KTsKKysJCXB1YmxpYyB2aXJ0dWFsIENsdXR0ZXIuVmlydHVhbElucHV0RGV2aWNlIGNyZWF0 ZV92aXJ0dWFsX2RldmljZSAoQ2x1dHRlci5JbnB1dERldmljZVR5cGUgZGV2aWNlX3R5cGUpOwor KwkJcHVibGljIHZvaWQgZW5zdXJlX2ExMXlfc3RhdGUgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJ cHVibGljIHZpcnR1YWwgdm9pZCBmcmVlX2V2ZW50X2RhdGEgKENsdXR0ZXIuRXZlbnQgZXZlbnQp OworKwkJcHVibGljIHZvaWQgZ2V0X2tiZF9hMTF5X3NldHRpbmdzIChDbHV0dGVyLktiZEExMXlT ZXR0aW5ncyBzZXR0aW5ncyk7CisrCQlwdWJsaWMgdmlydHVhbCB1bm93bmVkIENsdXR0ZXIuSW5w dXREZXZpY2UgZ2V0X2tleWJvYXJkICgpOworKwkJcHVibGljIHZpcnR1YWwgdW5vd25lZCBDbHV0 dGVyLktleW1hcCBnZXRfa2V5bWFwICgpOworKwkJcHVibGljIHZpcnR1YWwgdW5vd25lZCBDbHV0 dGVyLklucHV0RGV2aWNlIGdldF9wb2ludGVyICgpOworKwkJcHVibGljIHZvaWQgZ2V0X3BvaW50 ZXJfYTExeV9zZXR0aW5ncyAoQ2x1dHRlci5Qb2ludGVyQTExeVNldHRpbmdzIHNldHRpbmdzKTsK KysJCXB1YmxpYyB2aXJ0dWFsIENsdXR0ZXIuVmlydHVhbERldmljZVR5cGUgZ2V0X3N1cHBvcnRl ZF92aXJ0dWFsX2RldmljZV90eXBlcyAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIEdMaWIuTGlzdDx3 ZWFrIENsdXR0ZXIuSW5wdXREZXZpY2U+IGxpc3RfZGV2aWNlcyAoKTsKKysJCXB1YmxpYyB2b2lk IHNldF9rYmRfYTExeV9zZXR0aW5ncyAoQ2x1dHRlci5LYmRBMTF5U2V0dGluZ3Mgc2V0dGluZ3Mp OworKwkJcHVibGljIHZvaWQgc2V0X3BvaW50ZXJfYTExeV9kd2VsbF9jbGlja190eXBlIChDbHV0 dGVyLlBvaW50ZXJBMTF5RHdlbGxDbGlja1R5cGUgY2xpY2tfdHlwZSk7CisrCQlwdWJsaWMgdm9p ZCBzZXRfcG9pbnRlcl9hMTF5X3NldHRpbmdzIChDbHV0dGVyLlBvaW50ZXJBMTF5U2V0dGluZ3Mg c2V0dGluZ3MpOworKwkJcHVibGljIHZpcnR1YWwgdm9pZCB3YXJwX3BvaW50ZXIgKGludCB4LCBp bnQgeSk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBDbHV0dGVyLkJhY2tlbmQg YmFja2VuZCB7IG93bmVkIGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQg ZGV2aWNlX2FkZGVkIChDbHV0dGVyLklucHV0RGV2aWNlIG9iamVjdCk7CisrCQlwdWJsaWMgc2ln bmFsIHZvaWQgZGV2aWNlX3JlbW92ZWQgKENsdXR0ZXIuSW5wdXREZXZpY2Ugb2JqZWN0KTsKKysJ CXB1YmxpYyBzaWduYWwgdm9pZCBrYmRfYTExeV9mbGFnc19jaGFuZ2VkICh1aW50IHNldHRpbmdz X2ZsYWdzLCB1aW50IGNoYW5nZWRfbWFzayk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQga2JkX2Ex MXlfbW9kc19zdGF0ZV9jaGFuZ2VkICh1aW50IGxhdGNoZWRfbWFzaywgdWludCBsb2NrZWRfbWFz ayk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgcHRyX2ExMXlfZHdlbGxfY2xpY2tfdHlwZV9jaGFu Z2VkIChDbHV0dGVyLlBvaW50ZXJBMTF5RHdlbGxDbGlja1R5cGUgY2xpY2tfdHlwZSk7CisrCQlw dWJsaWMgc2lnbmFsIHZvaWQgcHRyX2ExMXlfdGltZW91dF9zdGFydGVkIChDbHV0dGVyLklucHV0 RGV2aWNlIGRldmljZSwgQ2x1dHRlci5Qb2ludGVyQTExeVRpbWVvdXRUeXBlIHRpbWVvdXRfdHlw ZSwgdWludCBkZWxheSk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgcHRyX2ExMXlfdGltZW91dF9z dG9wcGVkIChDbHV0dGVyLklucHV0RGV2aWNlIGRldmljZSwgQ2x1dHRlci5Qb2ludGVyQTExeVRp bWVvdXRUeXBlIHRpbWVvdXRfdHlwZSwgYm9vbCBjbGlja2VkKTsKKysJCXB1YmxpYyBzaWduYWwg dm9pZCB0b29sX2NoYW5nZWQgKENsdXR0ZXIuSW5wdXREZXZpY2Ugb2JqZWN0LCBDbHV0dGVyLklu cHV0RGV2aWNlVG9vbCBwMCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3NldHRpbmdzX2dldF90eXBlICgp IildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGNsYXNzIFNldHRpbmdz IDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFs c2UpXQorKwkJcHJvdGVjdGVkIFNldHRpbmdzICgpOworKwkJcHVibGljIHN0YXRpYyB1bm93bmVk IENsdXR0ZXIuU2V0dGluZ3MgZ2V0X2RlZmF1bHQgKCk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0K KysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEw Iiwgc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgQ2x1dHRlci5CYWNrZW5kIGJhY2tlbmQgeyBj b25zdHJ1Y3Q7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuOCIpXQorKwkJcHVibGljIGludCBkbmRfZHJhZ190aHJlc2hvbGQgeyBnZXQ7IHNldDsgfQor KwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgaW50IGRvdWJsZV9jbGlja19kaXN0YW5j ZSB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBpbnQgZG91 YmxlX2NsaWNrX3RpbWUgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlw dWJsaWMgaW50IGZvbnRfYW50aWFsaWFzIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0 aG9kXQorKwkJcHVibGljIGludCBmb250X2RwaSB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nv ck1ldGhvZF0KKysJCXB1YmxpYyBzdHJpbmcgZm9udF9oaW50X3N0eWxlIHsgb3duZWQgZ2V0OyBz ZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGludCBmb250X2hpbnRpbmcg eyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgc3RyaW5nIGZv bnRfbmFtZSB7IG93bmVkIGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1 YmxpYyBzdHJpbmcgZm9udF9zdWJwaXhlbF9vcmRlciB7IG93bmVkIGdldDsgc2V0OyB9CisrCQlb Tm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyB1aW50IGZvbnRjb25maWdfdGltZXN0YW1wIHsg c2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgi KV0KKysJCXB1YmxpYyBpbnQgbG9uZ19wcmVzc19kdXJhdGlvbiB7IGdldDsgc2V0OyB9CisrCQlb Tm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyB1aW50IHBhc3N3b3JkX2hpbnRfdGltZSB7IGdl dDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBpbnQgdW5zY2FsZWRf Zm9udF9kcGkgeyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0NvbXBhY3RdCisrCXB1 YmxpYyBjbGFzcyBTaGFkZXIgeworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zaGFkZXJfZWZmZWN0X2dldF90 eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGNsYXNzIFNo YWRlckVmZmVjdCA6IENsdXR0ZXIuT2Zmc2NyZWVuRWZmZWN0IHsKKysJCVtDQ29kZSAoaGFzX2Nv bnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJFZmZlY3QqIildCisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgU2hhZGVyRWZmZWN0IChDbHV0dGVy LlNoYWRlclR5cGUgc2hhZGVyX3R5cGUpOworKwkJcHVibGljIHVub3duZWQgQ29nbC5IYW5kbGUg Z2V0X3Byb2dyYW0gKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDb2dsLkhhbmRsZSBnZXRfc2hhZGVy ICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHN0cmluZyBnZXRfc3RhdGlj X3NoYWRlcl9zb3VyY2UgKCk7CisrCQlwdWJsaWMgYm9vbCBzZXRfc2hhZGVyX3NvdXJjZSAoc3Ry aW5nIHNvdXJjZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfdW5pZm9ybV92YWx1ZSAoc3RyaW5nIG5h bWUsIEdMaWIuVmFsdWUgdmFsdWUpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMg Q2x1dHRlci5TaGFkZXJUeXBlIHNoYWRlcl90eXBlIHsgY29uc3RydWN0OyB9CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJj bHV0dGVyX3NoYWRlcl9mbG9hdF9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgU2hhZGVy RmxvYXQgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJ cHJvdGVjdGVkIFNoYWRlckZsb2F0ICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zaGFkZXJfaW50X2dl dF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBTaGFkZXJJbnQgeworKwkJW0NDb2RlIChoYXNf Y29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFNoYWRlckludCAoKTsK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0 eXBlX2lkID0gImNsdXR0ZXJfc2hhZGVyX21hdHJpeF9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMg Y2xhc3MgU2hhZGVyTWF0cml4IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9 IGZhbHNlKV0KKysJCXByb3RlY3RlZCBTaGFkZXJNYXRyaXggKCk7CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVy X3NuYXBfY29uc3RyYWludF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS42 IildCisrCXB1YmxpYyBjbGFzcyBTbmFwQ29uc3RyYWludCA6IENsdXR0ZXIuQ29uc3RyYWludCB7 CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0 dGVyQ29uc3RyYWludCoiKV0KKysJCXB1YmxpYyBTbmFwQ29uc3RyYWludCAoQ2x1dHRlci5BY3Rv cj8gc291cmNlLCBDbHV0dGVyLlNuYXBFZGdlIGZyb21fZWRnZSwgQ2x1dHRlci5TbmFwRWRnZSB0 b19lZGdlLCBmbG9hdCBvZmZzZXQpOworKwkJcHVibGljIHZvaWQgZ2V0X2VkZ2VzIChvdXQgQ2x1 dHRlci5TbmFwRWRnZSBmcm9tX2VkZ2UsIG91dCBDbHV0dGVyLlNuYXBFZGdlIHRvX2VkZ2UpOwor KwkJcHVibGljIGZsb2F0IGdldF9vZmZzZXQgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVy LkFjdG9yIGdldF9zb3VyY2UgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfZWRnZXMgKENsdXR0ZXIu U25hcEVkZ2UgZnJvbV9lZGdlLCBDbHV0dGVyLlNuYXBFZGdlIHRvX2VkZ2UpOworKwkJcHVibGlj IHZvaWQgc2V0X29mZnNldCAoZmxvYXQgb2Zmc2V0KTsKKysJCXB1YmxpYyB2b2lkIHNldF9zb3Vy Y2UgKENsdXR0ZXIuQWN0b3I/IHNvdXJjZSk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1 YmxpYyBDbHV0dGVyLlNuYXBFZGdlIGZyb21fZWRnZSB7IGdldDsgc2V0IGNvbnN0cnVjdDsgfQor KwkJcHVibGljIGZsb2F0IG9mZnNldCB7IGdldDsgc2V0IGNvbnN0cnVjdDsgfQorKwkJcHVibGlj IENsdXR0ZXIuQWN0b3Igc291cmNlIHsgZ2V0OyBzZXQgY29uc3RydWN0OyB9CisrCQlbTm9BY2Nl c3Nvck1ldGhvZF0KKysJCXB1YmxpYyBDbHV0dGVyLlNuYXBFZGdlIHRvX2VkZ2UgeyBnZXQ7IHNl dCBjb25zdHJ1Y3Q7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfc3RhZ2VfZ2V0X3R5cGUgKCkiKV0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwlwdWJsaWMgY2xhc3MgU3RhZ2UgOiBDbHV0dGVy Lkdyb3VwLCBBdGsuSW1wbGVtZW50b3IsIENsdXR0ZXIuQW5pbWF0YWJsZSwgQ2x1dHRlci5Db250 YWluZXIsIENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVu Y3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0b3IqIildCisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMC44IildCisrCQlwdWJsaWMgU3RhZ2UgKCk7CisrCQlwdWJsaWMgYm9vbCBjYXB0dXJl IChib29sIHBhaW50LCBDYWlyby5SZWN0YW5nbGVJbnQgcmVjdCwgQ2x1dHRlci5DYXB0dXJlIGNh cHR1cmVzLCBpbnQgbl9jYXB0dXJlcyk7CisrCQlwdWJsaWMgdm9pZCBjYXB0dXJlX2ludG8gKGJv b2wgcGFpbnQsIENhaXJvLlJlY3RhbmdsZUludCByZWN0LCB1aW50OCBkYXRhKTsKKysJCVtDQ29k ZSAoY25hbWUgPSAiY2x1dHRlcl9zdGFnZV9ldmVudCIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0g IjAuNCIpXQorKwkJcHVibGljIGJvb2wgZW1pdF9ldmVudCAoQ2x1dHRlci5FdmVudCBldmVudCk7 CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIHNpbmNlID0gIjAuOCIpXQorKwkJcHVi bGljIHZvaWQgZW5zdXJlX2N1cnJlbnQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIild CisrCQlwdWJsaWMgdm9pZCBlbnN1cmVfcmVkcmF3ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMCIpXQorKwkJcHVibGljIHZvaWQgZW5zdXJlX3ZpZXdwb3J0ICgpOworKwkJcHVibGljIHZv aWQgZnJlZXplX3VwZGF0ZXMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlw dWJsaWMgYm9vbCBnZXRfYWNjZXB0X2ZvY3VzICgpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRl ci5BY3RvciBnZXRfYWN0b3JfYXRfcG9zIChDbHV0dGVyLlBpY2tNb2RlIHBpY2tfbW9kZSwgZmxv YXQgeCwgZmxvYXQgeSk7CisrCQlwdWJsaWMgYm9vbCBnZXRfY2FwdHVyZV9maW5hbF9zaXplIChD YWlyby5SZWN0YW5nbGVJbnQgcmVjdCwgaW50IHdpZHRoLCBpbnQgaGVpZ2h0LCBmbG9hdCBzY2Fs ZSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAi MS4xMCIpXQorKwkJcHVibGljIENsdXR0ZXIuQ29sb3IgZ2V0X2NvbG9yICgpOworKwkJW1ZlcnNp b24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiKV0KKysJCXB1 YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLlN0YWdlIGdldF9kZWZhdWx0ICgpOworKwkJcHVi bGljIGludDY0IGdldF9mcmFtZV9jb3VudGVyICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAu NiIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfa2V5X2ZvY3VzICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgZ2V0X21pbmltdW1f c2l6ZSAob3V0IHVpbnQgd2lkdGgsIG91dCB1aW50IGhlaWdodCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS44IildCisrCQlwdWJsaWMgYm9vbCBnZXRfbW90aW9uX2V2ZW50c19lbmFibGVkICgp OworKwkJcHVibGljIENsdXR0ZXIuUGVyc3BlY3RpdmUgZ2V0X3BlcnNwZWN0aXZlICgpOworKwkJ cHVibGljIENhaXJvLlJlZ2lvbiBnZXRfcmVkcmF3X2NsaXAgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCQlwdWJsaWMgYm9vbCBnZXRfdGhyb3R0bGVfbW90aW9uX2V2ZW50cyAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJCXB1YmxpYyB1bm93bmVkIHN0cmlu ZyBnZXRfdGl0bGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMg Ym9vbCBnZXRfdXNlX2FscGhhICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwkJ cHVibGljIHZvaWQgaGlkZV9jdXJzb3IgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRy dWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGlj IGJvb2wgaXNfZGVmYXVsdCAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVw cmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdm9pZCBx dWV1ZV9yZWRyYXcgKCk7CisrCQlbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0KKysJCXB1 YmxpYyB1aW50OFtdIHJlYWRfcGl4ZWxzIChpbnQgeCwgaW50IHksIGludCB3aWR0aCA9IC0xLCBp bnQgaGVpZ2h0ID0gLTEpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX3JlZHJhdyIpXQor KwkJcHVibGljIHZvaWQgcmVkcmF3ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQor KwkJcHVibGljIHZvaWQgc2V0X2FjY2VwdF9mb2N1cyAoYm9vbCBhY2NlcHRfZm9jdXMpOworKwkJ W1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiKV0K KysJCXB1YmxpYyB2b2lkIHNldF9jb2xvciAoQ2x1dHRlci5Db2xvciBjb2xvcik7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdm9pZCBzZXRfa2V5X2ZvY3VzIChDbHV0 dGVyLkFjdG9yPyBhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJs aWMgdm9pZCBzZXRfbWluaW11bV9zaXplICh1aW50IHdpZHRoLCB1aW50IGhlaWdodCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBzZXRfbW90aW9uX2V2ZW50 c19lbmFibGVkIChib29sIGVuYWJsZWQpOworKwkJcHVibGljIHZvaWQgc2V0X3BlcnNwZWN0aXZl IChDbHV0dGVyLlBlcnNwZWN0aXZlIHBlcnNwZWN0aXZlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF90aHJvdHRsZV9tb3Rpb25fZXZlbnRzIChib29s IHRocm90dGxlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJCXB1YmxpYyB2b2lk IHNldF90aXRsZSAoc3RyaW5nIHRpdGxlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0K KysJCXB1YmxpYyB2b2lkIHNldF91c2VfYWxwaGEgKGJvb2wgdXNlX2FscGhhKTsKKysJCXB1Ymxp YyB2b2lkIHNob3dfY3Vyc29yICgpOworKwkJcHVibGljIHZvaWQgdGhhd191cGRhdGVzICgpOwor KwkJcHVibGljIHZvaWQgdXBkYXRlX3Jlc291cmNlX3NjYWxlcyAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBib29sIGFjY2VwdF9mb2N1cyB7IGdldDsgc2V0OyB9 CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4x MCIpXQorKwkJcHVibGljIENsdXR0ZXIuQ29sb3IgY29sb3IgeyBnZXQ7IHNldDsgfQorKwkJW05v QWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9vbCBjdXJzb3JfdmlzaWJsZSB7IGdldDsgc2V0 OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgQ2x1dHRlci5BY3Rv ciBrZXlfZm9jdXMgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQor KwkJcHVibGljIENsdXR0ZXIuUGVyc3BlY3RpdmUgcGVyc3BlY3RpdmUgeyBnZXQ7IHNldDsgfQor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwkJcHVibGljIHN0cmluZyB0aXRsZSB7IGdl dDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgYm9vbCB1 c2VfYWxwaGEgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJ cHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgYWN0aXZhdGUgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4yMCIpXQorKwkJcHVibGljIHNpZ25hbCB2b2lkIGFmdGVyX3BhaW50ICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQg ZGVhY3RpdmF0ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2 aXJ0dWFsIHNpZ25hbCBib29sIGRlbGV0ZV9ldmVudCAoQ2x1dHRlci5FdmVudCBldmVudCk7Cisr CQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBwYWludF92aWV3IChDbHV0dGVyLlN0YWdlVmll dyB2aWV3KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfc3RhZ2VfbWFuYWdlcl9nZXRfdHlwZSAoKSIpXQor KwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBjbGFzcyBTdGFnZU1hbmFnZXIg OiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxz ZSldCisrCQlwcm90ZWN0ZWQgU3RhZ2VNYW5hZ2VyICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjAuOCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIENsdXR0ZXIuU3RhZ2VNYW5hZ2VyIGdl dF9kZWZhdWx0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHVu b3duZWQgQ2x1dHRlci5TdGFnZSBnZXRfZGVmYXVsdF9zdGFnZSAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBHTGliLlNMaXN0PHdlYWsgQ2x1dHRlci5TdGFnZT4g bGlzdF9zdGFnZXMgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBHTGliLlNMaXN0PENsdXR0ZXIuU3Rh Z2U+IHBlZWtfc3RhZ2VzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVi bGljIENsdXR0ZXIuU3RhZ2UgZGVmYXVsdF9zdGFnZSB7IGdldDsgfQorKwkJW1ZlcnNpb24gKHNp bmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgc3RhZ2VfYWRkZWQg KENsdXR0ZXIuU3RhZ2Ugc3RhZ2UpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJ cHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgc3RhZ2VfcmVtb3ZlZCAoQ2x1dHRlci5TdGFnZSBz dGFnZSk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtDb21wYWN0XQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMC4yIildCisrCXB1YmxpYyBjbGFzcyBTdGFnZVN0YXRlRXZlbnQgOiBDbHV0dGVyLkV2 ZW50IHsKKysJCXB1YmxpYyBDbHV0dGVyLlN0YWdlU3RhdGUgY2hhbmdlZF9tYXNrOworKwkJcHVi bGljIENsdXR0ZXIuRXZlbnRGbGFncyBmbGFnczsKKysJCXB1YmxpYyBDbHV0dGVyLlN0YWdlU3Rh dGUgbmV3X3N0YXRlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5BY3RvciBzb3VyY2U7CisrCQlw dWJsaWMgd2VhayBDbHV0dGVyLlN0YWdlIHN0YWdlOworKwkJcHVibGljIHVpbnQzMiB0aW1lOwor KwkJcHVibGljIENsdXR0ZXIuRXZlbnRUeXBlIHR5cGU7CisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3N0YWdl X3ZpZXdfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFN0YWdlVmlldyA6IEdMaWIuT2Jq ZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXBy b3RlY3RlZCBTdGFnZVZpZXcgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDb2dsLkZyYW1lYnVmZmVy IGdldF9mcmFtZWJ1ZmZlciAoKTsKKysJCXB1YmxpYyB2b2lkIGdldF9sYXlvdXQgKENhaXJvLlJl Y3RhbmdsZUludCByZWN0KTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgZ2V0X29mZnNjcmVlbl90 cmFuc2Zvcm1hdGlvbl9tYXRyaXggKENvZ2wuTWF0cml4IG1hdHJpeCk7CisrCQlwdWJsaWMgdW5v d25lZCBDb2dsLkZyYW1lYnVmZmVyIGdldF9vbnNjcmVlbiAoKTsKKysJCXB1YmxpYyBmbG9hdCBn ZXRfc2NhbGUgKCk7CisrCQlwdWJsaWMgdm9pZCBpbnZhbGlkYXRlX29mZnNjcmVlbl9ibGl0X3Bp cGVsaW5lICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgc2V0dXBf b2Zmc2NyZWVuX2JsaXRfcGlwZWxpbmUgKENvZ2wuUGlwZWxpbmUgcGlwZWxpbmUpOworKwkJcHVi bGljIHZvaWQgdHJhbnNmb3JtX3RvX29uc2NyZWVuIChmbG9hdCB4LCBmbG9hdCB5KTsKKysJCVtO b0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIENhaXJvLlJlY3RhbmdsZUludCBsYXlvdXQgeyBv d25lZCBnZXQ7IHNldCBjb25zdHJ1Y3Q7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVi bGljIGZsb2F0IHNjYWxlIHsgZ2V0OyBzZXQgY29uc3RydWN0OyB9CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVy X3N0YXRlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVi bGljIGNsYXNzIFN0YXRlIDogR0xpYi5PYmplY3QsIENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlb Q0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlbVmVyc2lvbiAoZGVw cmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuNCIp XQorKwkJcHVibGljIFN0YXRlICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBk ZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB1aW50 IGdldF9kdXJhdGlvbiAoc3RyaW5nPyBzb3VyY2Vfc3RhdGVfbmFtZSwgc3RyaW5nPyB0YXJnZXRf c3RhdGVfbmFtZSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRf c2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHVub3duZWQgc3RyaW5n IGdldF9zdGF0ZSAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRl ZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgR0xpYi5MaXN0PHdl YWsgc3RyaW5nPiBnZXRfc3RhdGVzICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVl LCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2 b2lkIHNldF9kdXJhdGlvbiAoc3RyaW5nPyBzb3VyY2Vfc3RhdGVfbmFtZSwgc3RyaW5nPyB0YXJn ZXRfc3RhdGVfbmFtZSwgdWludCBkdXJhdGlvbik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9 IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuNCIpXQorKwkJcHVi bGljIHVub3duZWQgQ2x1dHRlci5TdGF0ZSBzZXRfa2V5IChzdHJpbmc/IHNvdXJjZV9zdGF0ZV9u YW1lLCBzdHJpbmcgdGFyZ2V0X3N0YXRlX25hbWUsIEdMaWIuT2JqZWN0IG9iamVjdCwgc3RyaW5n IHByb3BlcnR5X25hbWUsIHVpbnQgbW9kZSwgR0xpYi5WYWx1ZSB2YWx1ZSwgZG91YmxlIHByZV9k ZWxheSwgZG91YmxlIHBvc3RfZGVsYXkpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVl LCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB1 bm93bmVkIENsdXR0ZXIuVGltZWxpbmUgc2V0X3N0YXRlIChzdHJpbmcgdGFyZ2V0X3N0YXRlX25h bWUpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0g IjEuMTIiLCBzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuVGltZWxp bmUgd2FycF90b19zdGF0ZSAoc3RyaW5nIHRhcmdldF9zdGF0ZV9uYW1lKTsKKysJCVtOb0FjY2Vz c29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3Np bmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB1aW50IGR1cmF0aW9uIHsg Z2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0 ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjQiKV0KKysJ CXB1YmxpYyBzdHJpbmcgc3RhdGUgeyBvd25lZCBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKGRl cHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjQi KV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGNvbXBsZXRlZCAoKTsKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjb3B5X2Z1bmN0 aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwgdHlw ZV9pZCA9ICJjbHV0dGVyX3N0YXRlX2tleV9nZXRfdHlwZSAoKSIpXQorKwlbQ29tcGFjdF0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgY2xhc3MgU3RhdGVLZXkgeworKwkJ W1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBz aW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBHTGliLlR5cGUgZ2V0X3Byb3BlcnR5X3R5cGUgKCk7 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg dHlwZV9pZCA9ICJjbHV0dGVyX3N3aXBlX2FjdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMS44IildCisrCXB1YmxpYyBjbGFzcyBTd2lwZUFjdGlvbiA6IENsdXR0ZXIu R2VzdHVyZUFjdGlvbiB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxz ZSwgdHlwZSA9ICJDbHV0dGVyQWN0aW9uKiIpXQorKwkJcHVibGljIFN3aXBlQWN0aW9uICgpOwor KwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTQi LCBzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIHN3ZXB0IChD bHV0dGVyLkFjdG9yIGFjdG9yLCBDbHV0dGVyLlN3aXBlRGlyZWN0aW9uIGRpcmVjdGlvbik7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNCIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIGJv b2wgc3dpcGUgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIENsdXR0ZXIuU3dpcGVEaXJlY3Rpb24gZGly ZWN0aW9uKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfdGFwX2FjdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlb VmVyc2lvbiAoc2luY2UgPSAiMS4xNCIpXQorKwlwdWJsaWMgY2xhc3MgVGFwQWN0aW9uIDogQ2x1 dHRlci5HZXN0dXJlQWN0aW9uIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9 IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3Rpb24qIildCisrCQlwdWJsaWMgVGFwQWN0aW9uICgp OworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgdGFwIChDbHV0dGVyLkFjdG9yIGFjdG9y KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCB0eXBlX2lkID0gImNsdXR0ZXJfdGV4dF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCXB1YmxpYyBjbGFzcyBUZXh0IDogQ2x1dHRlci5BY3RvciwgQXRrLklt cGxlbWVudG9yLCBDbHV0dGVyLkFuaW1hdGFibGUsIENsdXR0ZXIuQ29udGFpbmVyLCBDbHV0dGVy LlNjcmlwdGFibGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2Us IHR5cGUgPSAiQ2x1dHRlckFjdG9yKiIpXQorKwkJcHVibGljIFRleHQgKCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGludCBjb29yZHNfdG9fcG9zaXRpb24gKGZs b2F0IHgsIGZsb2F0IHkpOworKwkJcHVibGljIHZvaWQgZGVsZXRlX2NoYXJzICh1aW50IG5fY2hh cnMpOworKwkJcHVibGljIGJvb2wgZGVsZXRlX3NlbGVjdGlvbiAoKTsKKysJCVtDQ29kZSAoaGFz X2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3RvcioiKV0KKysJ CXB1YmxpYyBUZXh0LmZ1bGwgKHN0cmluZyBmb250X25hbWUsIHN0cmluZyB0ZXh0LCBDbHV0dGVy LkNvbG9yIGNvbG9yKTsKKysJCXB1YmxpYyBib29sIGdldF9hY3RpdmF0YWJsZSAoKTsKKysJCXB1 YmxpYyB1bm93bmVkIFBhbmdvLkF0dHJMaXN0IGdldF9hdHRyaWJ1dGVzICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuVGV4dEJ1ZmZl ciBnZXRfYnVmZmVyICgpOworKwkJcHVibGljIHN0cmluZyBnZXRfY2hhcnMgKHNzaXplX3Qgc3Rh cnRfcG9zLCBzc2l6ZV90IGVuZF9wb3MpOworKwkJcHVibGljIENsdXR0ZXIuQ29sb3IgZ2V0X2Nv bG9yICgpOworKwkJcHVibGljIENsdXR0ZXIuQ29sb3IgZ2V0X2N1cnNvcl9jb2xvciAoKTsKKysJ CXB1YmxpYyBpbnQgZ2V0X2N1cnNvcl9wb3NpdGlvbiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjE2IildCisrCQlwdWJsaWMgdm9pZCBnZXRfY3Vyc29yX3JlY3QgKG91dCB1bm93bmVkIEdy YXBoZW5lLlJlY3QgcmVjdCk7CisrCQlwdWJsaWMgdWludCBnZXRfY3Vyc29yX3NpemUgKCk7Cisr CQlwdWJsaWMgYm9vbCBnZXRfY3Vyc29yX3Zpc2libGUgKCk7CisrCQlwdWJsaWMgYm9vbCBnZXRf ZWRpdGFibGUgKCk7CisrCQlwdWJsaWMgUGFuZ28uRWxsaXBzaXplTW9kZSBnZXRfZWxsaXBzaXpl ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIFBhbmdvLkZvbnRE ZXNjcmlwdGlvbiBnZXRfZm9udF9kZXNjcmlwdGlvbiAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0 cmluZyBnZXRfZm9udF9uYW1lICgpOworKwkJcHVibGljIENsdXR0ZXIuSW5wdXRDb250ZW50SGlu dEZsYWdzIGdldF9pbnB1dF9oaW50cyAoKTsKKysJCXB1YmxpYyBDbHV0dGVyLklucHV0Q29udGVu dFB1cnBvc2UgZ2V0X2lucHV0X3B1cnBvc2UgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42 IildCisrCQlwdWJsaWMgYm9vbCBnZXRfanVzdGlmeSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIFBh bmdvLkxheW91dCBnZXRfbGF5b3V0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQor KwkJcHVibGljIHZvaWQgZ2V0X2xheW91dF9vZmZzZXRzIChvdXQgaW50IHgsIG91dCBpbnQgeSk7 CisrCQlwdWJsaWMgUGFuZ28uQWxpZ25tZW50IGdldF9saW5lX2FsaWdubWVudCAoKTsKKysJCXB1 YmxpYyBib29sIGdldF9saW5lX3dyYXAgKCk7CisrCQlwdWJsaWMgUGFuZ28uV3JhcE1vZGUgZ2V0 X2xpbmVfd3JhcF9tb2RlICgpOworKwkJcHVibGljIGludCBnZXRfbWF4X2xlbmd0aCAoKTsKKysJ CXB1YmxpYyB1bmljaGFyIGdldF9wYXNzd29yZF9jaGFyICgpOworKwkJcHVibGljIGJvb2wgZ2V0 X3NlbGVjdGFibGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMg Q2x1dHRlci5Db2xvciBnZXRfc2VsZWN0ZWRfdGV4dF9jb2xvciAoKTsKKysJCXB1YmxpYyBzdHJp bmcgZ2V0X3NlbGVjdGlvbiAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0X3NlbGVjdGlvbl9ib3VuZCAo KTsKKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIGdldF9zZWxlY3Rpb25fY29sb3IgKCk7CisrCQlw dWJsaWMgYm9vbCBnZXRfc2luZ2xlX2xpbmVfbW9kZSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0 cmluZyBnZXRfdGV4dCAoKTsKKysJCXB1YmxpYyBib29sIGdldF91c2VfbWFya3VwICgpOworKwkJ cHVibGljIGJvb2wgaGFzX3ByZWVkaXQgKCk7CisrCQlwdWJsaWMgdm9pZCBpbnNlcnRfdGV4dCAo c3RyaW5nIHRleHQsIHNzaXplX3QgcG9zaXRpb24pOworKwkJcHVibGljIHZvaWQgaW5zZXJ0X3Vu aWNoYXIgKHVuaWNoYXIgd2MpOworKwkJcHVibGljIGJvb2wgcG9zaXRpb25fdG9fY29vcmRzIChp bnQgcG9zaXRpb24sIG91dCBmbG9hdCB4LCBvdXQgZmxvYXQgeSwgb3V0IGZsb2F0IGxpbmVfaGVp Z2h0ID0gbnVsbCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfYWN0aXZhdGFibGUgKGJvb2wgYWN0aXZh dGFibGUpOworKwkJcHVibGljIHZvaWQgc2V0X2F0dHJpYnV0ZXMgKFBhbmdvLkF0dHJMaXN0PyBh dHRycyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0 X2J1ZmZlciAoQ2x1dHRlci5UZXh0QnVmZmVyIGJ1ZmZlcik7CisrCQlwdWJsaWMgdm9pZCBzZXRf Y29sb3IgKENsdXR0ZXIuQ29sb3IgY29sb3IpOworKwkJcHVibGljIHZvaWQgc2V0X2N1cnNvcl9j b2xvciAoQ2x1dHRlci5Db2xvcj8gY29sb3IpOworKwkJcHVibGljIHZvaWQgc2V0X2N1cnNvcl9w b3NpdGlvbiAoaW50IHBvc2l0aW9uKTsKKysJCXB1YmxpYyB2b2lkIHNldF9jdXJzb3Jfc2l6ZSAo aW50IHNpemUpOworKwkJcHVibGljIHZvaWQgc2V0X2N1cnNvcl92aXNpYmxlIChib29sIGN1cnNv cl92aXNpYmxlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9lZGl0YWJsZSAoYm9vbCBlZGl0YWJsZSk7 CisrCQlwdWJsaWMgdm9pZCBzZXRfZWxsaXBzaXplIChQYW5nby5FbGxpcHNpemVNb2RlIG1vZGUp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2ZvbnRf ZGVzY3JpcHRpb24gKFBhbmdvLkZvbnREZXNjcmlwdGlvbiBmb250X2Rlc2MpOworKwkJcHVibGlj IHZvaWQgc2V0X2ZvbnRfbmFtZSAoc3RyaW5nPyBmb250X25hbWUpOworKwkJcHVibGljIHZvaWQg c2V0X2lucHV0X2hpbnRzIChDbHV0dGVyLklucHV0Q29udGVudEhpbnRGbGFncyBoaW50cyk7Cisr CQlwdWJsaWMgdm9pZCBzZXRfaW5wdXRfcHVycG9zZSAoQ2x1dHRlci5JbnB1dENvbnRlbnRQdXJw b3NlIHB1cnBvc2UpOworKwkJcHVibGljIHZvaWQgc2V0X2p1c3RpZnkgKGJvb2wganVzdGlmeSk7 CisrCQlwdWJsaWMgdm9pZCBzZXRfbGluZV9hbGlnbm1lbnQgKFBhbmdvLkFsaWdubWVudCBhbGln bm1lbnQpOworKwkJcHVibGljIHZvaWQgc2V0X2xpbmVfd3JhcCAoYm9vbCBsaW5lX3dyYXApOwor KwkJcHVibGljIHZvaWQgc2V0X2xpbmVfd3JhcF9tb2RlIChQYW5nby5XcmFwTW9kZSB3cmFwX21v ZGUpOworKwkJcHVibGljIHZvaWQgc2V0X21hcmt1cCAoc3RyaW5nPyBtYXJrdXApOworKwkJcHVi bGljIHZvaWQgc2V0X21heF9sZW5ndGggKGludCBtYXgpOworKwkJcHVibGljIHZvaWQgc2V0X3Bh c3N3b3JkX2NoYXIgKHVuaWNoYXIgd2MpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQor KwkJcHVibGljIHZvaWQgc2V0X3ByZWVkaXRfc3RyaW5nIChzdHJpbmc/IHByZWVkaXRfc3RyLCBQ YW5nby5BdHRyTGlzdD8gcHJlZWRpdF9hdHRycywgdWludCBjdXJzb3JfcG9zKTsKKysJCXB1Ymxp YyB2b2lkIHNldF9zZWxlY3RhYmxlIChib29sIHNlbGVjdGFibGUpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3NlbGVjdGVkX3RleHRfY29sb3IgKENs dXR0ZXIuQ29sb3I/IGNvbG9yKTsKKysJCXB1YmxpYyB2b2lkIHNldF9zZWxlY3Rpb24gKHNzaXpl X3Qgc3RhcnRfcG9zLCBzc2l6ZV90IGVuZF9wb3MpOworKwkJcHVibGljIHZvaWQgc2V0X3NlbGVj dGlvbl9ib3VuZCAoaW50IHNlbGVjdGlvbl9ib3VuZCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfc2Vs ZWN0aW9uX2NvbG9yIChDbHV0dGVyLkNvbG9yPyBjb2xvcik7CisrCQlwdWJsaWMgdm9pZCBzZXRf c2luZ2xlX2xpbmVfbW9kZSAoYm9vbCBzaW5nbGVfbGluZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRf dGV4dCAoc3RyaW5nPyB0ZXh0KTsKKysJCXB1YmxpYyB2b2lkIHNldF91c2VfbWFya3VwIChib29s IHNldHRpbmcpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX3RleHRfYWN0aXZhdGUiKV0K KysJCXB1YmxpYyBib29sIHRyeV9hY3RpdmF0ZSAoKTsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVj dF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3RvcioiKV0KKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgVGV4dC53aXRoX2J1ZmZlciAoQ2x1dHRlci5U ZXh0QnVmZmVyIGJ1ZmZlcik7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBm YWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0b3IqIildCisrCQlwdWJsaWMgVGV4dC53aXRoX3RleHQg KHN0cmluZz8gZm9udF9uYW1lLCBzdHJpbmcgdGV4dCk7CisrCQlwdWJsaWMgYm9vbCBhY3RpdmF0 YWJsZSB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgUGFuZ28uQXR0ckxpc3QgYXR0cmlidXRlcyB7 IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgQ2x1 dHRlci5UZXh0QnVmZmVyIGJ1ZmZlciB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5D b2xvciBjb2xvciB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBjdXJzb3Jf Y29sb3IgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9v bCBjdXJzb3JfY29sb3Jfc2V0IHsgZ2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIp XQorKwkJcHVibGljIGludCBjdXJzb3JfcG9zaXRpb24geyBnZXQ7IHNldDsgfQorKwkJcHVibGlj IGludCBjdXJzb3Jfc2l6ZSB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgYm9vbCBjdXJzb3Jfdmlz aWJsZSB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgYm9vbCBlZGl0YWJsZSB7IGdldDsgc2V0OyB9 CisrCQlwdWJsaWMgUGFuZ28uRWxsaXBzaXplTW9kZSBlbGxpcHNpemUgeyBnZXQ7IHNldDsgfQor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIFBhbmdvLkZvbnREZXNjcmlw dGlvbiBmb250X2Rlc2NyaXB0aW9uIHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBzdHJp bmcgZm9udF9uYW1lIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLklucHV0Q29udGVu dEhpbnRGbGFncyBpbnB1dF9oaW50cyB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5J bnB1dENvbnRlbnRQdXJwb3NlIGlucHV0X3B1cnBvc2UgeyBnZXQ7IHNldDsgfQorKwkJcHVibGlj IGJvb2wganVzdGlmeSB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgUGFuZ28uQWxpZ25tZW50IGxp bmVfYWxpZ25tZW50IHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBib29sIGxpbmVfd3JhcCB7IGdl dDsgc2V0OyB9CisrCQlwdWJsaWMgUGFuZ28uV3JhcE1vZGUgbGluZV93cmFwX21vZGUgeyBnZXQ7 IHNldDsgfQorKwkJcHVibGljIGludCBtYXhfbGVuZ3RoIHsgZ2V0OyBzZXQ7IH0KKysJCXB1Ymxp YyB1aW50IHBhc3N3b3JkX2NoYXIgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2Rd CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4x MiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGludCBwb3NpdGlvbiB7IGdldDsgc2V0OyB9 CisrCQlwdWJsaWMgYm9vbCBzZWxlY3RhYmxlIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIHNlbGVjdGVkX3RleHRfY29s b3IgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS44IildCisrCQlwdWJsaWMgYm9vbCBzZWxlY3RlZF90ZXh0X2NvbG9yX3NldCB7IGdl dDsgfQorKwkJcHVibGljIGludCBzZWxlY3Rpb25fYm91bmQgeyBnZXQ7IHNldDsgfQorKwkJcHVi bGljIENsdXR0ZXIuQ29sb3Igc2VsZWN0aW9uX2NvbG9yIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0Fj Y2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wgc2VsZWN0aW9uX2NvbG9yX3NldCB7IGdldDsg fQorKwkJcHVibGljIGJvb2wgc2luZ2xlX2xpbmVfbW9kZSB7IGdldDsgc2V0OyB9CisrCQlwdWJs aWMgc3RyaW5nIHRleHQgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIGJvb2wgdXNlX21hcmt1cCB7 IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBhY3RpdmF0ZSAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwg dm9pZCBjdXJzb3JfY2hhbmdlZCAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwg ZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdmly dHVhbCBzaWduYWwgdm9pZCBjdXJzb3JfZXZlbnQgKEdyYXBoZW5lLlJlY3QgcmVjdCk7CisrCQlb SGFzRW1pdHRlcl0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBzaWdu YWwgdm9pZCBkZWxldGVfdGV4dCAoaW50IHN0YXJ0X3BvcywgaW50IGVuZF9wb3MpOworKwkJcHVi bGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgdGV4dF9jaGFuZ2VkICgpOworKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRl cl90ZXh0X2J1ZmZlcl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIp XQorKwlwdWJsaWMgY2xhc3MgVGV4dEJ1ZmZlciA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAo aGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1YmxpYyBUZXh0QnVmZmVyICgp OworKwkJcHVibGljIHZpcnR1YWwgdWludCBkZWxldGVfdGV4dCAodWludCBwb3NpdGlvbiwgdWlu dCBuX2NoYXJzKTsKKysJCXB1YmxpYyB2b2lkIGVtaXRfZGVsZXRlZF90ZXh0ICh1aW50IHBvc2l0 aW9uLCB1aW50IG5fY2hhcnMpOworKwkJcHVibGljIHZvaWQgZW1pdF9pbnNlcnRlZF90ZXh0ICh1 aW50IHBvc2l0aW9uLCBzdHJpbmcgY2hhcnMsIHVpbnQgbl9jaGFycyk7CisrCQlwdWJsaWMgc2l6 ZV90IGdldF9ieXRlcyAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHVpbnQgZ2V0X2xlbmd0aCAoKTsK KysJCXB1YmxpYyBpbnQgZ2V0X21heF9sZW5ndGggKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJp bmcgZ2V0X3RleHQgKCk7CisrCQlbQ0NvZGUgKHZmdW5jX25hbWUgPSAiZ2V0X3RleHQiKV0KKysJ CVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB1bm93bmVkIHN0cmluZyBnZXRfdGV4dF93 aXRoX2xlbmd0aCAoc2l6ZV90IG5fYnl0ZXMpOworKwkJcHVibGljIHZpcnR1YWwgdWludCBpbnNl cnRfdGV4dCAodWludCBwb3NpdGlvbiwgc3RyaW5nIGNoYXJzLCB1aW50IG5fY2hhcnMpOworKwkJ cHVibGljIHZvaWQgc2V0X21heF9sZW5ndGggKGludCBtYXhfbGVuZ3RoKTsKKysJCXB1YmxpYyB2 b2lkIHNldF90ZXh0IChzdHJpbmcgY2hhcnMsIGludCBuX2NoYXJzKTsKKysJCVtDQ29kZSAoaGFz X2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1YmxpYyBUZXh0QnVmZmVyLndpdGhf dGV4dCAoc3RyaW5nPyB0ZXh0LCBzc2l6ZV90IHRleHRfbGVuKTsKKysJCXB1YmxpYyB1aW50IGxl bmd0aCB7IGdldDsgfQorKwkJcHVibGljIGludCBtYXhfbGVuZ3RoIHsgZ2V0OyBzZXQ7IH0KKysJ CXB1YmxpYyBzdHJpbmcgdGV4dCB7IGdldDsgfQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZv aWQgZGVsZXRlZF90ZXh0ICh1aW50IHBvc2l0aW9uLCB1aW50IG5fY2hhcnMpOworKwkJcHVibGlj IHZpcnR1YWwgc2lnbmFsIHZvaWQgaW5zZXJ0ZWRfdGV4dCAodWludCBwb3NpdGlvbiwgc3RyaW5n IGNoYXJzLCB1aW50IG5fY2hhcnMpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl90ZXh0X25vZGVfZ2V0X3R5 cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGNsYXNzIFRl eHROb2RlIDogQ2x1dHRlci5QYWludE5vZGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1 bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlclBhaW50Tm9kZSoiKV0KKysJCXB1YmxpYyBU ZXh0Tm9kZSAoUGFuZ28uTGF5b3V0PyBsYXlvdXQsIENsdXR0ZXIuQ29sb3I/IGNvbG9yKTsKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBl X2lkID0gImNsdXR0ZXJfdGV4dHVyZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgVGV4 dHVyZSA6IENsdXR0ZXIuQWN0b3IgeworKwkJcHVibGljIENvZ2wuTWF0ZXJpYWwgY29nbF9tYXRl cmlhbCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgQ29nbC5UZXh0dXJlIGNvZ2xfdGV4dHVyZSB7 IGdldDsgc2V0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3RleHR1cmVfbm9kZV9nZXRfdHlwZSAoKSIp XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgY2xhc3MgVGV4dHVyZU5v ZGUgOiBDbHV0dGVyLlBpcGVsaW5lTm9kZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVu Y3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyUGFpbnROb2RlKiIpXQorKwkJcHVibGljIFRl eHR1cmVOb2RlIChDb2dsLlRleHR1cmUgdGV4dHVyZSwgQ2x1dHRlci5Db2xvcj8gY29sb3IsIENs dXR0ZXIuU2NhbGluZ0ZpbHRlciBtaW5fZmlsdGVyLCBDbHV0dGVyLlNjYWxpbmdGaWx0ZXIgbWFn X2ZpbHRlcik7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3RpbWVsaW5lX2dldF90eXBlICgpIildCisrCVtW ZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJcHVibGljIGNsYXNzIFRpbWVsaW5lIDogR0xpYi5P YmplY3QsIENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVu Y3Rpb24gPSBmYWxzZSldCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMg VGltZWxpbmUgKHVpbnQgbXNlY3MpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTQiKV0KKysJ CXB1YmxpYyB2b2lkIGFkZF9tYXJrZXIgKHN0cmluZyBtYXJrZXJfbmFtZSwgZG91YmxlIHByb2dy ZXNzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2b2lkIGFkZF9t YXJrZXJfYXRfdGltZSAoc3RyaW5nIG1hcmtlcl9uYW1lLCB1aW50IG1zZWNzKTsKKysJCXB1Ymxp YyB2b2lkIGFkdmFuY2UgKHVpbnQgbXNlY3MpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIp XQorKwkJcHVibGljIHZvaWQgYWR2YW5jZV90b19tYXJrZXIgKHN0cmluZyBtYXJrZXJfbmFtZSk7 CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4x MCIsIHNpbmNlID0gIjAuNCIpXQorKwkJcHVibGljIENsdXR0ZXIuVGltZWxpbmUgY2xvbmUgKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgYm9vbCBnZXRfYXV0b19y ZXZlcnNlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBib29s IGdldF9jdWJpY19iZXppZXJfcHJvZ3Jlc3MgKEdyYXBoZW5lLlBvaW50IGNfMSwgR3JhcGhlbmUu UG9pbnQgY18yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgaW50 IGdldF9jdXJyZW50X3JlcGVhdCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJ CXB1YmxpYyB1aW50IGdldF9kZWxheSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0K KysJCXB1YmxpYyB1aW50IGdldF9kZWx0YSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYi KV0KKysJCXB1YmxpYyBDbHV0dGVyLlRpbWVsaW5lRGlyZWN0aW9uIGdldF9kaXJlY3Rpb24gKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdWludCBnZXRfZHVyYXRp b24gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGludDY0IGdl dF9kdXJhdGlvbl9oaW50ICgpOworKwkJcHVibGljIHVpbnQgZ2V0X2VsYXBzZWRfdGltZSAoKTsK KysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEw IildCisrCQlwdWJsaWMgYm9vbCBnZXRfbG9vcCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIw LjYiKV0KKysJCXB1YmxpYyBkb3VibGUgZ2V0X3Byb2dyZXNzICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFuaW1hdGlvbk1vZGUgZ2V0X3Byb2dy ZXNzX21vZGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGlu dCBnZXRfcmVwZWF0X2NvdW50ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJ CXB1YmxpYyBib29sIGdldF9zdGVwX3Byb2dyZXNzIChvdXQgaW50IG5fc3RlcHMsIG91dCBDbHV0 dGVyLlN0ZXBNb2RlIHN0ZXBfbW9kZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisr CQlwdWJsaWMgYm9vbCBoYXNfbWFya2VyIChzdHJpbmcgbWFya2VyX25hbWUpOworKwkJcHVibGlj IGJvb2wgaXNfcGxheWluZyAoKTsKKysJCVtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gdHJ1ZSwgYXJy YXlfbGVuZ3RoX3BvcyA9IDEuMSwgYXJyYXlfbGVuZ3RoX3R5cGUgPSAiZ3NpemUiLCBhcnJheV9u dWxsX3Rlcm1pbmF0ZWQgPSB0cnVlKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJ CXB1YmxpYyBzdHJpbmdbXSBsaXN0X21hcmtlcnMgKGludCBtc2Vjcyk7CisrCQlwdWJsaWMgdm9p ZCBwYXVzZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2b2lk IHJlbW92ZV9tYXJrZXIgKHN0cmluZyBtYXJrZXJfbmFtZSk7CisrCQlwdWJsaWMgdm9pZCByZXdp bmQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgdm9pZCBzZXRf YXV0b19yZXZlcnNlIChib29sIHJldmVyc2UpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIi KV0KKysJCXB1YmxpYyB2b2lkIHNldF9jdWJpY19iZXppZXJfcHJvZ3Jlc3MgKEdyYXBoZW5lLlBv aW50IGNfMSwgR3JhcGhlbmUuUG9pbnQgY18yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQi KV0KKysJCXB1YmxpYyB2b2lkIHNldF9kZWxheSAodWludCBtc2Vjcyk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdm9pZCBzZXRfZGlyZWN0aW9uIChDbHV0dGVyLlRp bWVsaW5lRGlyZWN0aW9uIGRpcmVjdGlvbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42Iild CisrCQlwdWJsaWMgdm9pZCBzZXRfZHVyYXRpb24gKHVpbnQgbXNlY3MpOworKwkJW1ZlcnNpb24g KGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiKV0KKysJCXB1Ymxp YyB2b2lkIHNldF9sb29wIChib29sIGxvb3ApOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAi KV0KKysJCXB1YmxpYyB2b2lkIHNldF9wcm9ncmVzc19mdW5jIChvd25lZCBDbHV0dGVyLlRpbWVs aW5lUHJvZ3Jlc3NGdW5jPyBmdW5jKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisr CQlwdWJsaWMgdm9pZCBzZXRfcHJvZ3Jlc3NfbW9kZSAoQ2x1dHRlci5BbmltYXRpb25Nb2RlIG1v ZGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9y ZXBlYXRfY291bnQgKGludCBjb3VudCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQor KwkJcHVibGljIHZvaWQgc2V0X3N0ZXBfcHJvZ3Jlc3MgKGludCBuX3N0ZXBzLCBDbHV0dGVyLlN0 ZXBNb2RlIHN0ZXBfbW9kZSk7CisrCQlwdWJsaWMgdm9pZCBza2lwICh1aW50IG1zZWNzKTsKKysJ CXB1YmxpYyB2b2lkIHN0YXJ0ICgpOworKwkJcHVibGljIHZvaWQgc3RvcCAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBib29sIGF1dG9fcmV2ZXJzZSB7IGdldDsg c2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCQlwdWJsaWMgdWludCBkZWxh eSB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMg Q2x1dHRlci5UaW1lbGluZURpcmVjdGlvbiBkaXJlY3Rpb24geyBnZXQ7IHNldDsgfQorKwkJW1Zl cnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHVpbnQgZHVyYXRpb24geyBnZXQ7IHNl dDsgfQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyBib29sIGxvb3AgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFuaW1hdGlvbk1vZGUgcHJvZ3Jl c3NfbW9kZSB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJ cHVibGljIGludCByZXBlYXRfY291bnQgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIHZpcnR1YWwg c2lnbmFsIHZvaWQgY29tcGxldGVkICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQor KwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgbWFya2VyX3JlYWNoZWQgKHN0cmluZyBtYXJr ZXJfbmFtZSwgaW50IG1zZWNzKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIG5ld19m cmFtZSAoaW50IG1zZWNzKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIHBhdXNlZCAo KTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIHN0YXJ0ZWQgKCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgc3RvcHBl ZCAoYm9vbCBpc19maW5pc2hlZCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3MgVGltZW91 dFBvb2wgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJ cHVibGljIFRpbWVvdXRQb29sIChpbnQgcHJpb3JpdHkpOworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQor KwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGNsYXNz IFRvdWNoRXZlbnQgOiBDbHV0dGVyLkV2ZW50IHsKKysJCXB1YmxpYyBkb3VibGUgYXhlczsKKysJ CXB1YmxpYyB3ZWFrIENsdXR0ZXIuSW5wdXREZXZpY2UgZGV2aWNlOworKwkJcHVibGljIENsdXR0 ZXIuRXZlbnRGbGFncyBmbGFnczsKKysJCXB1YmxpYyBDbHV0dGVyLk1vZGlmaWVyVHlwZSBtb2Rp Zmllcl9zdGF0ZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuRXZlbnRTZXF1ZW5jZSBzZXF1ZW5j ZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuQWN0b3Igc291cmNlOworKwkJcHVibGljIHdlYWsg Q2x1dHRlci5TdGFnZSBzdGFnZTsKKysJCXB1YmxpYyB1aW50MzIgdGltZTsKKysJCXB1YmxpYyBD bHV0dGVyLkV2ZW50VHlwZSB0eXBlOworKwkJcHVibGljIGZsb2F0IHg7CisrCQlwdWJsaWMgZmxv YXQgeTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0NvbXBhY3RdCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjI0IildCisrCXB1YmxpYyBjbGFzcyBUb3VjaHBhZFBpbmNoRXZlbnQgOiBDbHV0dGVy LkV2ZW50IHsKKysJCXB1YmxpYyBmbG9hdCBhbmdsZV9kZWx0YTsKKysJCXB1YmxpYyBmbG9hdCBk eDsKKysJCXB1YmxpYyBmbG9hdCBkeTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50RmxhZ3MgZmxh Z3M7CisrCQlwdWJsaWMgdWludCBuX2ZpbmdlcnM7CisrCQlwdWJsaWMgQ2x1dHRlci5Ub3VjaHBh ZEdlc3R1cmVQaGFzZSBwaGFzZTsKKysJCXB1YmxpYyBmbG9hdCBzY2FsZTsKKysJCXB1YmxpYyB3 ZWFrIENsdXR0ZXIuQWN0b3Igc291cmNlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5TdGFnZSBz dGFnZTsKKysJCXB1YmxpYyB1aW50MzIgdGltZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50VHlw ZSB0eXBlOworKwkJcHVibGljIGZsb2F0IHg7CisrCQlwdWJsaWMgZmxvYXQgeTsKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBoYXNfdHlwZV9p ZCA9IGZhbHNlKV0KKysJW0NvbXBhY3RdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjI0IildCisr CXB1YmxpYyBjbGFzcyBUb3VjaHBhZFN3aXBlRXZlbnQgOiBDbHV0dGVyLkV2ZW50IHsKKysJCXB1 YmxpYyBmbG9hdCBkeDsKKysJCXB1YmxpYyBmbG9hdCBkeTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2 ZW50RmxhZ3MgZmxhZ3M7CisrCQlwdWJsaWMgdWludCBuX2ZpbmdlcnM7CisrCQlwdWJsaWMgQ2x1 dHRlci5Ub3VjaHBhZEdlc3R1cmVQaGFzZSBwaGFzZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIu QWN0b3Igc291cmNlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5TdGFnZSBzdGFnZTsKKysJCXB1 YmxpYyB1aW50MzIgdGltZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50VHlwZSB0eXBlOworKwkJ cHVibGljIGZsb2F0IHg7CisrCQlwdWJsaWMgZmxvYXQgeTsKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfdHJh bnNmb3JtX25vZGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFRyYW5zZm9ybU5vZGUg OiBDbHV0dGVyLlBhaW50Tm9kZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24g PSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyUGFpbnROb2RlKiIpXQorKwkJcHVibGljIFRyYW5zZm9y bU5vZGUgKENvZ2wuTWF0cml4IHByb2plY3Rpb24pOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl90cmFuc2l0 aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1Ymxp YyBhYnN0cmFjdCBjbGFzcyBUcmFuc2l0aW9uIDogQ2x1dHRlci5UaW1lbGluZSwgQ2x1dHRlci5T Y3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0K KysJCXByb3RlY3RlZCBUcmFuc2l0aW9uICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2 aXJ0dWFsIHZvaWQgYXR0YWNoZWQgKENsdXR0ZXIuQW5pbWF0YWJsZSBhbmltYXRhYmxlKTsKKysJ CVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGNvbXB1dGVfdmFsdWUgKENsdXR0 ZXIuQW5pbWF0YWJsZSBhbmltYXRhYmxlLCBDbHV0dGVyLkludGVydmFsIGludGVydmFsLCBkb3Vi bGUgcHJvZ3Jlc3MpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgZGV0 YWNoZWQgKENsdXR0ZXIuQW5pbWF0YWJsZSBhbmltYXRhYmxlKTsKKysJCXB1YmxpYyB1bm93bmVk IENsdXR0ZXIuQW5pbWF0YWJsZSBnZXRfYW5pbWF0YWJsZSAoKTsKKysJCXB1YmxpYyB1bm93bmVk IENsdXR0ZXIuSW50ZXJ2YWwgZ2V0X2ludGVydmFsICgpOworKwkJcHVibGljIGJvb2wgZ2V0X3Jl bW92ZV9vbl9jb21wbGV0ZSAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9hbmltYXRhYmxlIChDbHV0 dGVyLkFuaW1hdGFibGU/IGFuaW1hdGFibGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIi KV0KKysJCXB1YmxpYyB2b2lkIHNldF9mcm9tX3ZhbHVlIChHTGliLlZhbHVlIHZhbHVlKTsKKysJ CXB1YmxpYyB2b2lkIHNldF9pbnRlcnZhbCAoQ2x1dHRlci5JbnRlcnZhbD8gaW50ZXJ2YWwpOwor KwkJcHVibGljIHZvaWQgc2V0X3JlbW92ZV9vbl9jb21wbGV0ZSAoYm9vbCByZW1vdmVfY29tcGxl dGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF90 b192YWx1ZSAoR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlwdWJsaWMgQ2x1dHRlci5BbmltYXRhYmxl IGFuaW1hdGFibGUgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIENsdXR0ZXIuSW50ZXJ2YWwgaW50 ZXJ2YWwgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIGJvb2wgcmVtb3ZlX29uX2NvbXBsZXRlIHsg Z2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfdHJhbnNpdGlvbl9ncm91cF9nZXRfdHlwZSAo KSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwlwdWJsaWMgY2xhc3MgVHJhbnNp dGlvbkdyb3VwIDogQ2x1dHRlci5UcmFuc2l0aW9uLCBDbHV0dGVyLlNjcmlwdGFibGUgeworKwkJ W0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlclRy YW5zaXRpb24qIildCisrCQlwdWJsaWMgVHJhbnNpdGlvbkdyb3VwICgpOworKwkJcHVibGljIHZv aWQgYWRkX3RyYW5zaXRpb24gKENsdXR0ZXIuVHJhbnNpdGlvbiB0cmFuc2l0aW9uKTsKKysJCXB1 YmxpYyB2b2lkIHJlbW92ZV9hbGwgKCk7CisrCQlwdWJsaWMgdm9pZCByZW1vdmVfdHJhbnNpdGlv biAoQ2x1dHRlci5UcmFuc2l0aW9uIHRyYW5zaXRpb24pOworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl92aXJ0 dWFsX2lucHV0X2RldmljZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgVmlydHVhbElu cHV0RGV2aWNlIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0 aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFZpcnR1YWxJbnB1dERldmljZSAoKTsKKysJCXB1 YmxpYyBpbnQgZ2V0X2RldmljZV90eXBlICgpOworKwkJcHVibGljIHZpcnR1YWwgdm9pZCBub3Rp ZnlfYWJzb2x1dGVfbW90aW9uICh1aW50NjQgdGltZV91cywgZG91YmxlIHgsIGRvdWJsZSB5KTsK KysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgbm90aWZ5X2J1dHRvbiAodWludDY0IHRpbWVfdXMsIHVp bnQzMiBidXR0b24sIENsdXR0ZXIuQnV0dG9uU3RhdGUgYnV0dG9uX3N0YXRlKTsKKysJCXB1Ymxp YyB2aXJ0dWFsIHZvaWQgbm90aWZ5X2Rpc2NyZXRlX3Njcm9sbCAodWludDY0IHRpbWVfdXMsIENs dXR0ZXIuU2Nyb2xsRGlyZWN0aW9uIGRpcmVjdGlvbiwgQ2x1dHRlci5TY3JvbGxTb3VyY2Ugc2Ny b2xsX3NvdXJjZSk7CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIG5vdGlmeV9rZXkgKHVpbnQ2NCB0 aW1lX3VzLCB1aW50MzIga2V5LCBDbHV0dGVyLktleVN0YXRlIGtleV9zdGF0ZSk7CisrCQlwdWJs aWMgdmlydHVhbCB2b2lkIG5vdGlmeV9rZXl2YWwgKHVpbnQ2NCB0aW1lX3VzLCB1aW50MzIga2V5 dmFsLCBDbHV0dGVyLktleVN0YXRlIGtleV9zdGF0ZSk7CisrCQlwdWJsaWMgdmlydHVhbCB2b2lk IG5vdGlmeV9yZWxhdGl2ZV9tb3Rpb24gKHVpbnQ2NCB0aW1lX3VzLCBkb3VibGUgZHgsIGRvdWJs ZSBkeSk7CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIG5vdGlmeV9zY3JvbGxfY29udGludW91cyAo dWludDY0IHRpbWVfdXMsIGRvdWJsZSBkeCwgZG91YmxlIGR5LCBDbHV0dGVyLlNjcm9sbFNvdXJj ZSBzY3JvbGxfc291cmNlLCBDbHV0dGVyLlNjcm9sbEZpbmlzaEZsYWdzIGZpbmlzaF9mbGFncyk7 CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIG5vdGlmeV90b3VjaF9kb3duICh1aW50NjQgdGltZV91 cywgaW50IHNsb3QsIGRvdWJsZSB4LCBkb3VibGUgeSk7CisrCQlwdWJsaWMgdmlydHVhbCB2b2lk IG5vdGlmeV90b3VjaF9tb3Rpb24gKHVpbnQ2NCB0aW1lX3VzLCBpbnQgc2xvdCwgZG91YmxlIHgs IGRvdWJsZSB5KTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgbm90aWZ5X3RvdWNoX3VwICh1aW50 NjQgdGltZV91cywgaW50IHNsb3QpOworKwkJcHVibGljIENsdXR0ZXIuSW5wdXREZXZpY2VUeXBl IGRldmljZV90eXBlIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQor KwkJcHVibGljIENsdXR0ZXIuU2VhdCBzZWF0IHsgb3duZWQgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBl X2lkID0gImNsdXR0ZXJfem9vbV9hY3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTIiKV0KKysJcHVibGljIGNsYXNzIFpvb21BY3Rpb24gOiBDbHV0dGVyLkdlc3R1 cmVBY3Rpb24geworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5 cGUgPSAiQ2x1dHRlckFjdGlvbioiKV0KKysJCXB1YmxpYyBab29tQWN0aW9uICgpOworKwkJcHVi bGljIHZvaWQgZ2V0X2ZvY2FsX3BvaW50IChHcmFwaGVuZS5Qb2ludCBwb2ludCk7CisrCQlwdWJs aWMgdm9pZCBnZXRfdHJhbnNmb3JtZWRfZm9jYWxfcG9pbnQgKEdyYXBoZW5lLlBvaW50IHBvaW50 KTsKKysJCXB1YmxpYyBDbHV0dGVyLlpvb21BeGlzIGdldF96b29tX2F4aXMgKCk7CisrCQlwdWJs aWMgdm9pZCBzZXRfem9vbV9heGlzIChDbHV0dGVyLlpvb21BeGlzIGF4aXMpOworKwkJcHVibGlj IENsdXR0ZXIuWm9vbUF4aXMgem9vbV9heGlzIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyB2aXJ0 dWFsIHNpZ25hbCBib29sIHpvb20gKENsdXR0ZXIuQWN0b3IgYWN0b3IsIEdyYXBoZW5lLlBvaW50 IGZvY2FsX3BvaW50LCBkb3VibGUgZmFjdG9yKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2NuYW1lID0gIkNsdXR0ZXJBbmltYXRh YmxlSW50ZXJmYWNlIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2FuaW1hdGFibGVfZ2V0X3R5cGUgKCki KV0KKysJcHVibGljIGludGVyZmFjZSBBbmltYXRhYmxlIDogR0xpYi5PYmplY3QgeworKwkJW05v V3JhcHBlcl0KKysJCXB1YmxpYyBhYnN0cmFjdCBib29sIGFuaW1hdGVfcHJvcGVydHkgKENsdXR0 ZXIuQW5pbWF0aW9uIGFuaW1hdGlvbiwgc3RyaW5nIHByb3BlcnR5X25hbWUsIEdMaWIuVmFsdWUg aW5pdGlhbF92YWx1ZSwgR0xpYi5WYWx1ZSBmaW5hbF92YWx1ZSwgZG91YmxlIHByb2dyZXNzLCBH TGliLlZhbHVlIHZhbHVlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1Ymxp YyBhYnN0cmFjdCB1bm93bmVkIEdMaWIuUGFyYW1TcGVjIGZpbmRfcHJvcGVydHkgKHN0cmluZyBw cm9wZXJ0eV9uYW1lKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBh YnN0cmFjdCB2b2lkIGdldF9pbml0aWFsX3N0YXRlIChzdHJpbmcgcHJvcGVydHlfbmFtZSwgR0xp Yi5WYWx1ZSB2YWx1ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMg YWJzdHJhY3QgYm9vbCBpbnRlcnBvbGF0ZV92YWx1ZSAoc3RyaW5nIHByb3BlcnR5X25hbWUsIENs dXR0ZXIuSW50ZXJ2YWwgaW50ZXJ2YWwsIGRvdWJsZSBwcm9ncmVzcywgb3V0IEdMaWIuVmFsdWUg dmFsdWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIGFic3RyYWN0 IHZvaWQgc2V0X2ZpbmFsX3N0YXRlIChzdHJpbmcgcHJvcGVydHlfbmFtZSwgR0xpYi5WYWx1ZSB2 YWx1ZSk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2NvbnRhaW5lcl9nZXRfdHlwZSAoKSIpXQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMC40IildCisrCXB1YmxpYyBpbnRlcmZhY2UgQ29udGFpbmVyIDogR0xp Yi5PYmplY3QgeworKwkJcHVibGljIHZvaWQgYWRkIChwYXJhbXMgQ2x1dHRlci5BY3RvcltdIGFj dG9ycyk7CisrCQlbQ0NvZGUgKHZmdW5jX25hbWUgPSAiYWRkIildCisrCQlbVmVyc2lvbiAoZGVw cmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjAuNCIp XQorKwkJcHVibGljIGFic3RyYWN0IHZvaWQgYWRkX2FjdG9yIChDbHV0dGVyLkFjdG9yIGFjdG9y KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2b2lkIGNoaWxkX2dl dCAoQ2x1dHRlci5BY3RvciBhY3RvciwgLi4uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgi KV0KKysJCXB1YmxpYyB2b2lkIGNoaWxkX2dldF9wcm9wZXJ0eSAoQ2x1dHRlci5BY3RvciBjaGls ZCwgc3RyaW5nIHByb3BlcnR5LCBHTGliLlZhbHVlIHZhbHVlKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2b2lkIGNoaWxkX3NldCAoQ2x1dHRlci5BY3RvciBhY3Rv ciwgLi4uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2b2lkIGNo aWxkX3NldF9wcm9wZXJ0eSAoQ2x1dHRlci5BY3RvciBjaGlsZCwgc3RyaW5nIHByb3BlcnR5LCBH TGliLlZhbHVlIHZhbHVlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1Ymxp YyBzdGF0aWMgdW5vd25lZCBHTGliLlBhcmFtU3BlYyBjbGFzc19maW5kX2NoaWxkX3Byb3BlcnR5 IChHTGliLk9iamVjdENsYXNzIGtsYXNzLCBzdHJpbmcgcHJvcGVydHlfbmFtZSk7CisrCQlbQ0Nv ZGUgKGFycmF5X2xlbmd0aF9wb3MgPSAxLjEsIGFycmF5X2xlbmd0aF90eXBlID0gImd1aW50Iild CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgc3RhdGljIEdMaWIuUGFy YW1TcGVjW10gY2xhc3NfbGlzdF9jaGlsZF9wcm9wZXJ0aWVzIChHTGliLk9iamVjdENsYXNzIGts YXNzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHZv aWQgY3JlYXRlX2NoaWxkX21ldGEgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBkZXN0cm95X2NoaWxkX21l dGEgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQor KwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBmaW5kX2NoaWxkX2J5X25hbWUgKHN0cmlu ZyBjaGlsZF9uYW1lKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl9jb250YWluZXJfY2xh c3NfZmluZF9jaGlsZF9wcm9wZXJ0eSIpXQorKwkJcHVibGljIGNsYXNzIHVub3duZWQgR0xpYi5Q YXJhbVNwZWMgZmluZF9jaGlsZF9wcm9wZXJ0eSAoc3RyaW5nIHByb3BlcnR5X25hbWUpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZpcnR1YWwgdW5vd25lZCBDbHV0 dGVyLkNoaWxkTWV0YSBnZXRfY2hpbGRfbWV0YSAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCQlb VmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNp bmNlID0gIjAuNCIpXQorKwkJcHVibGljIEdMaWIuTGlzdDx3ZWFrIENsdXR0ZXIuQWN0b3I+IGdl dF9jaGlsZHJlbiAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl9jb250YWluZXJfY2xh c3NfbGlzdF9jaGlsZF9wcm9wZXJ0aWVzIildCisrCQlwdWJsaWMgY2xhc3MgdW5vd25lZCBHTGli LlBhcmFtU3BlY1tdIGxpc3RfY2hpbGRfcHJvcGVydGllcyAoKTsKKysJCVtDQ29kZSAodmZ1bmNf bmFtZSA9ICJsb3dlciIpXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNh dGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHZv aWQgbG93ZXJfY2hpbGQgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIENsdXR0ZXIuQWN0b3I/IHNpYmxp bmcgPSBudWxsKTsKKysJCVtDQ29kZSAodmZ1bmNfbmFtZSA9ICJyYWlzZSIpXQorKwkJW1ZlcnNp b24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9 ICIwLjYiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgcmFpc2VfY2hpbGQgKENsdXR0ZXIuQWN0 b3IgYWN0b3IsIENsdXR0ZXIuQWN0b3I/IHNpYmxpbmcgPSBudWxsKTsKKysJCVtWZXJzaW9uIChk ZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMC40 IildCisrCQlwdWJsaWMgdm9pZCByZW1vdmUgKC4uLik7CisrCQlbQ0NvZGUgKHZmdW5jX25hbWUg PSAicmVtb3ZlIildCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRf c2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjAuNCIpXQorKwkJcHVibGljIGFic3RyYWN0IHZvaWQg cmVtb3ZlX2FjdG9yIChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJCVtWZXJzaW9uIChkZXByZWNh dGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMC42IildCisr CQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBzb3J0X2RlcHRoX29yZGVyICgpOworKwkJcHVibGljIHZp cnR1YWwgc2lnbmFsIHZvaWQgYWN0b3JfYWRkZWQgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwkJ cHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgYWN0b3JfcmVtb3ZlZCAoQ2x1dHRlci5BY3RvciBh Y3Rvcik7CisrCQlbSGFzRW1pdHRlcl0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJ CXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGNoaWxkX25vdGlmeSAoQ2x1dHRlci5BY3RvciBj aGlsZCwgR0xpYi5QYXJhbVNwZWMgcHNwZWMpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfY25hbWUgPSAiQ2x1dHRlckNvbnRlbnRJ bnRlcmZhY2UiLCB0eXBlX2lkID0gImNsdXR0ZXJfY29udGVudF9nZXRfdHlwZSAoKSIpXQorKwlw dWJsaWMgaW50ZXJmYWNlIENvbnRlbnQgOiBHTGliLk9iamVjdCB7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGFic3RyYWN0IGJvb2wgZ2V0X3ByZWZlcnJlZF9zaXpl IChvdXQgZmxvYXQgd2lkdGgsIG91dCBmbG9hdCBoZWlnaHQpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTAiKV0KKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lkIGludmFsaWRhdGUgKCk7CisrCQlw dWJsaWMgYWJzdHJhY3Qgdm9pZCBpbnZhbGlkYXRlX3NpemUgKCk7CisrCQlbTm9XcmFwcGVyXQor KwkJcHVibGljIGFic3RyYWN0IHZvaWQgcGFpbnRfY29udGVudCAoQ2x1dHRlci5BY3RvciBhY3Rv ciwgQ2x1dHRlci5QYWludE5vZGUgbm9kZSwgQ2x1dHRlci5QYWludENvbnRleHQgcGFpbnRfY29u dGV4dCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZpcnR1YWwg c2lnbmFsIHZvaWQgYXR0YWNoZWQgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGRldGFjaGVk IChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfc2NyaXB0YWJsZV9nZXRf dHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCXB1YmxpYyBpbnRlcmZh Y2UgU2NyaXB0YWJsZSA6IEdMaWIuT2JqZWN0IHsKKysJCXB1YmxpYyBhYnN0cmFjdCB1bm93bmVk IHN0cmluZyBnZXRfaWQgKCk7CisrCQlwdWJsaWMgYWJzdHJhY3QgYm9vbCBwYXJzZV9jdXN0b21f bm9kZSAoQ2x1dHRlci5TY3JpcHQgc2NyaXB0LCBHTGliLlZhbHVlIHZhbHVlLCBzdHJpbmcgbmFt ZSwgSnNvbi5Ob2RlIG5vZGUpOworKwkJcHVibGljIGFic3RyYWN0IHZvaWQgc2V0X2N1c3RvbV9w cm9wZXJ0eSAoQ2x1dHRlci5TY3JpcHQgc2NyaXB0LCBzdHJpbmcgbmFtZSwgR0xpYi5WYWx1ZSB2 YWx1ZSk7CisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBzZXRfaWQgKHN0cmluZyBpZF8pOworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlw dWJsaWMgaW50ZXJmYWNlIFN0YWdlV2luZG93IDogR0xpYi5PYmplY3QgeworKwkJW05vV3JhcHBl cl0KKysJCXB1YmxpYyBhYnN0cmFjdCBpbnQgZ2V0X3BlbmRpbmdfc3dhcHMgKCk7CisrCQlbTm9X cmFwcGVyXQorKwkJcHVibGljIGFic3RyYWN0IHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfd3Jh cHBlciAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgYWJzdHJhY3QgYm9vbCBoYXNfcmVk cmF3X2NsaXBzICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lkIGhp ZGUgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIGFic3RyYWN0IGJvb2wgaWdub3Jpbmdf cmVkcmF3X2NsaXBzICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyBhYnN0cmFjdCBib29s IHJlYWxpemUgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIGFic3RyYWN0IHZvaWQgcmVz aXplIChpbnQgd2lkdGgsIGludCBoZWlnaHQpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyBh YnN0cmFjdCB2b2lkIHNldF9jdXJzb3JfdmlzaWJsZSAoYm9vbCBjdXJzb3JfdmlzaWJsZSk7Cisr CQlbTm9XcmFwcGVyXQorKwkJcHVibGljIGFic3RyYWN0IHZvaWQgc2V0X2Z1bGxzY3JlZW4gKGJv b2wgaXNfZnVsbHNjcmVlbik7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIGFic3RyYWN0IHZv aWQgc2V0X3RpdGxlIChzdHJpbmcgdGl0bGUpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyBh YnN0cmFjdCB2b2lkIHNldF91c2VyX3Jlc2l6YWJsZSAoYm9vbCBpc19yZXNpemFibGUpOworKwkJ W05vV3JhcHBlcl0KKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lkIHNob3cgKGJvb2wgZG9fcmFpc2Up OworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lkIHVucmVhbGl6ZSAoKTsK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj b3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24gPSAiZ19ib3hlZF9m cmVlIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2FjdG9yX2JveF9nZXRfdHlwZSAoKSIpXQorKwlwdWJs aWMgc3RydWN0IEFjdG9yQm94IHsKKysJCXB1YmxpYyBmbG9hdCB4MTsKKysJCXB1YmxpYyBmbG9h dCB5MTsKKysJCXB1YmxpYyBmbG9hdCB4MjsKKysJCXB1YmxpYyBmbG9hdCB5MjsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgc3RhdGljIENsdXR0ZXIuQWN0b3JCb3g/ IGFsbG9jICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHN0YXRp YyB2b2lkIGNsYW1wX3RvX3BpeGVsIChyZWYgQ2x1dHRlci5BY3RvckJveCBib3gpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGJvb2wgY29udGFpbnMgKGZsb2F0IHgs IGZsb2F0IHkpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIENsdXR0 ZXIuQWN0b3JCb3g/IGNvcHkgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlw dWJsaWMgYm9vbCBlcXVhbCAoQ2x1dHRlci5BY3RvckJveCBib3hfYik7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCBmcmVlICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF9hcmVhICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF9oZWlnaHQgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCBnZXRfb3JpZ2luIChvdXQgZmxv YXQgeCwgb3V0IGZsb2F0IHkpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVi bGljIHZvaWQgZ2V0X3NpemUgKG91dCBmbG9hdCB3aWR0aCwgb3V0IGZsb2F0IGhlaWdodCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3dpZHRoICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF94ICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF95ICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0 ZXIuQWN0b3JCb3g/IGluaXQgKGZsb2F0IHhfMSwgZmxvYXQgeV8xLCBmbG9hdCB4XzIsIGZsb2F0 IHlfMik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgaW5p dF9yZWN0IChmbG9hdCB4LCBmbG9hdCB5LCBmbG9hdCB3aWR0aCwgZmxvYXQgaGVpZ2h0KTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFjdG9yQm94IGlu dGVycG9sYXRlIChDbHV0dGVyLkFjdG9yQm94IGZpbmFsLCBkb3VibGUgcHJvZ3Jlc3MpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIHZvaWQgc2NhbGUgKGZsb2F0IHNj YWxlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9v cmlnaW4gKGZsb2F0IHgsIGZsb2F0IHkpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQor KwkJcHVibGljIHZvaWQgc2V0X3NpemUgKGZsb2F0IHdpZHRoLCBmbG9hdCBoZWlnaHQpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIENsdXR0ZXIuQWN0b3JCb3ggdW5p b24gKENsdXR0ZXIuQWN0b3JCb3ggYik7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBzdHJ1Y3QgQWN0b3JJdGVyIHsKKysJCXB1Ymxp YyB2b2lkIGRlc3Ryb3kgKCk7CisrCQlwdWJsaWMgdm9pZCBpbml0IChDbHV0dGVyLkFjdG9yIHJv b3QpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBib29sIGlzX3Zh bGlkICgpOworKwkJcHVibGljIGJvb2wgbmV4dCAob3V0IHVub3duZWQgQ2x1dHRlci5BY3RvciBj aGlsZCk7CisrCQlwdWJsaWMgYm9vbCBwcmV2IChvdXQgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGNo aWxkKTsKKysJCXB1YmxpYyB2b2lkIHJlbW92ZSAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJ cHVibGljIHN0cnVjdCBDYXB0dXJlIHsKKysJCXB1YmxpYyB3ZWFrIENhaXJvLlN1cmZhY2UgaW1h Z2U7CisrCQlwdWJsaWMgQ2Fpcm8uUmVjdGFuZ2xlSW50IHJlY3Q7CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY29weV9mdW5jdGlvbiA9ICJn X2JveGVkX2NvcHkiLCBmcmVlX2Z1bmN0aW9uID0gImdfYm94ZWRfZnJlZSIsIHR5cGVfaWQgPSAi Q0xVVFRFUl9UWVBFX0NPTE9SIildCisrCXB1YmxpYyBzdHJ1Y3QgQ29sb3IgeworKwkJcHVibGlj IHVpbnQ4IHJlZDsKKysJCXB1YmxpYyB1aW50OCBncmVlbjsKKysJCXB1YmxpYyB1aW50OCBibHVl OworKwkJcHVibGljIHVpbnQ4IGFscGhhOworKwkJcHVibGljIENsdXR0ZXIuQ29sb3IgYWRkIChD bHV0dGVyLkNvbG9yIGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1Ymxp YyBzdGF0aWMgQ2x1dHRlci5Db2xvcj8gYWxsb2MgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MC4yIildCisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvcj8gY29weSAoKTsKKysJCXB1YmxpYyBDbHV0 dGVyLkNvbG9yIGRhcmtlbiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJCXB1 YmxpYyBib29sIGVxdWFsIChDbHV0dGVyLkNvbG9yIHYyKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIwLjIiKV0KKysJCXB1YmxpYyB2b2lkIGZyZWUgKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNs dXR0ZXJfY29sb3JfZnJvbV9obHMiKV0KKysJCXB1YmxpYyBDb2xvci5mcm9tX2hscyAoZmxvYXQg aHVlLCBmbG9hdCBsdW1pbmFuY2UsIGZsb2F0IHNhdHVyYXRpb24pOworKwkJW0NDb2RlIChjbmFt ZSA9ICJjbHV0dGVyX2NvbG9yX2Zyb21fcGl4ZWwiKV0KKysJCXB1YmxpYyBDb2xvci5mcm9tX3Bp eGVsICh1aW50MzIgcGl4ZWwpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX2NvbG9yX2Zy b21fc3RyaW5nIildCisrCQlwdWJsaWMgQ29sb3IuZnJvbV9zdHJpbmcgKHN0cmluZyBzdHIpOwor KwkJcHVibGljIHN0YXRpYyB1bm93bmVkIENsdXR0ZXIuQ29sb3I/IGdldF9zdGF0aWMgKENsdXR0 ZXIuU3RhdGljQ29sb3IgY29sb3IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJ cHVibGljIHVpbnQgaGFzaCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlw dWJsaWMgdW5vd25lZCBDbHV0dGVyLkNvbG9yPyBpbml0ICh1aW50OCByZWQsIHVpbnQ4IGdyZWVu LCB1aW50OCBibHVlLCB1aW50OCBhbHBoYSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42Iild CisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBpbnRlcnBvbGF0ZSAoQ2x1dHRlci5Db2xvciBmaW5h bCwgZG91YmxlIHByb2dyZXNzKTsKKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIGxpZ2h0ZW4gKCk7 CisrCQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfY29sb3JfZnJvbV9zdHJpbmciKV0KKysJCXB1 YmxpYyBib29sIHBhcnNlX3N0cmluZyAoc3RyaW5nIHN0cik7CisrCQlwdWJsaWMgQ2x1dHRlci5D b2xvciBzaGFkZSAoZG91YmxlIGZhY3Rvcik7CisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBzdWJ0 cmFjdCAoQ2x1dHRlci5Db2xvciBiKTsKKysJCXB1YmxpYyB2b2lkIHRvX2hscyAob3V0IGZsb2F0 IGh1ZSwgb3V0IGZsb2F0IGx1bWluYW5jZSwgb3V0IGZsb2F0IHNhdHVyYXRpb24pOworKwkJcHVi bGljIHVpbnQzMiB0b19waXhlbCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJ CXB1YmxpYyBzdHJpbmcgdG9fc3RyaW5nICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJs aWMgc3RydWN0IEtiZEExMXlTZXR0aW5ncyB7CisrCQlwdWJsaWMgQ2x1dHRlci5LZXlib2FyZEEx MXlGbGFncyBjb250cm9sczsKKysJCXB1YmxpYyBpbnQgc2xvd2tleXNfZGVsYXk7CisrCQlwdWJs aWMgaW50IGRlYm91bmNlX2RlbGF5OworKwkJcHVibGljIGludCB0aW1lb3V0X2RlbGF5OworKwkJ cHVibGljIGludCBtb3VzZWtleXNfaW5pdF9kZWxheTsKKysJCXB1YmxpYyBpbnQgbW91c2VrZXlz X21heF9zcGVlZDsKKysJCXB1YmxpYyBpbnQgbW91c2VrZXlzX2FjY2VsX3RpbWU7CisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY29weV9mdW5j dGlvbiA9ICJnX2JveGVkX2NvcHkiLCBmcmVlX2Z1bmN0aW9uID0gImdfYm94ZWRfZnJlZSIsIHR5 cGVfaWQgPSAiY2x1dHRlcl9rbm90X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9 ICIwLjIiKV0KKysJcHVibGljIHN0cnVjdCBLbm90IHsKKysJCXB1YmxpYyBpbnQgeDsKKysJCXB1 YmxpYyBpbnQgeTsKKysJCXB1YmxpYyBDbHV0dGVyLktub3Q/IGNvcHkgKCk7CisrCQlwdWJsaWMg Ym9vbCBlcXVhbCAoQ2x1dHRlci5Lbm90IGtub3RfYik7CisrCQlwdWJsaWMgdm9pZCBmcmVlICgp OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIp XQorKwlwdWJsaWMgc3RydWN0IE1hdHJpeCA6IENvZ2wuTWF0cml4IHsKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBoYXNfdHlwZV9pZCA9IGZh bHNlKV0KKysJcHVibGljIHN0cnVjdCBQYWRCdXR0b25FdmVudCB7CisrCQlwdWJsaWMgQ2x1dHRl ci5FdmVudFR5cGUgdHlwZTsKKysJCXB1YmxpYyB1aW50MzIgdGltZTsKKysJCXB1YmxpYyBDbHV0 dGVyLkV2ZW50RmxhZ3MgZmxhZ3M7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLlN0YWdlIHN0YWdl OworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5BY3RvciBzb3VyY2U7CisrCQlwdWJsaWMgdWludDMy IGJ1dHRvbjsKKysJCXB1YmxpYyB1aW50MzIgZ3JvdXA7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVy LklucHV0RGV2aWNlIGRldmljZTsKKysJCXB1YmxpYyB1aW50MzIgbW9kZTsKKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBoYXNfdHlwZV9pZCA9 IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBQYWRSaW5nRXZlbnQgeworKwkJcHVibGljIENsdXR0 ZXIuRXZlbnRUeXBlIHR5cGU7CisrCQlwdWJsaWMgdWludDMyIHRpbWU7CisrCQlwdWJsaWMgQ2x1 dHRlci5FdmVudEZsYWdzIGZsYWdzOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5TdGFnZSBzdGFn ZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuQWN0b3Igc291cmNlOworKwkJcHVibGljIHdlYWsg Q2x1dHRlci5JbnB1dERldmljZSBkZXZpY2U7CisrCQlwdWJsaWMgQ2x1dHRlci5JbnB1dERldmlj ZVBhZFNvdXJjZSByaW5nX3NvdXJjZTsKKysJCXB1YmxpYyB1aW50MzIgcmluZ19udW1iZXI7Cisr CQlwdWJsaWMgdWludDMyIGdyb3VwOworKwkJcHVibGljIGRvdWJsZSBhbmdsZTsKKysJCXB1Ymxp YyB1aW50MzIgbW9kZTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBQYWRT dHJpcEV2ZW50IHsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50VHlwZSB0eXBlOworKwkJcHVibGlj IHVpbnQzMiB0aW1lOworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRGbGFncyBmbGFnczsKKysJCXB1 YmxpYyB3ZWFrIENsdXR0ZXIuU3RhZ2Ugc3RhZ2U7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLkFj dG9yIHNvdXJjZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuSW5wdXREZXZpY2UgZGV2aWNlOwor KwkJcHVibGljIENsdXR0ZXIuSW5wdXREZXZpY2VQYWRTb3VyY2Ugc3RyaXBfc291cmNlOworKwkJ cHVibGljIHVpbnQzMiBzdHJpcF9udW1iZXI7CisrCQlwdWJsaWMgdWludDMyIGdyb3VwOworKwkJ cHVibGljIGRvdWJsZSB2YWx1ZTsKKysJCXB1YmxpYyB1aW50MzIgbW9kZTsKKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjb3B5X2Z1bmN0aW9u ID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9p ZCA9ICJjbHV0dGVyX3BhdGhfbm9kZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCXB1YmxpYyBzdHJ1Y3QgUGF0aE5vZGUgeworKwkJcHVibGljIENsdXR0ZXIu UGF0aE5vZGVUeXBlIHR5cGU7CisrCQlbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0KKysJ CXB1YmxpYyB3ZWFrIENsdXR0ZXIuS25vdCBwb2ludHNbM107CisrCQlwdWJsaWMgQ2x1dHRlci5Q YXRoTm9kZT8gY29weSAoKTsKKysJCXB1YmxpYyBib29sIGVxdWFsIChDbHV0dGVyLlBhdGhOb2Rl IG5vZGVfYik7CisrCQlwdWJsaWMgdm9pZCBmcmVlICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNvcHlfZnVuY3Rpb24gPSAiZ19ib3hl ZF9jb3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0eXBlX2lkID0gImNsdXR0 ZXJfcGVyc3BlY3RpdmVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIp XQorKwlwdWJsaWMgc3RydWN0IFBlcnNwZWN0aXZlIHsKKysJCXB1YmxpYyBmbG9hdCBmb3Z5Owor KwkJcHVibGljIGZsb2F0IGFzcGVjdDsKKysJCXB1YmxpYyBmbG9hdCB6X25lYXI7CisrCQlwdWJs aWMgZmxvYXQgel9mYXI7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgUG9p bnRlckExMXlTZXR0aW5ncyB7CisrCQlwdWJsaWMgQ2x1dHRlci5Qb2ludGVyQTExeUZsYWdzIGNv bnRyb2xzOworKwkJcHVibGljIENsdXR0ZXIuUG9pbnRlckExMXlEd2VsbENsaWNrVHlwZSBkd2Vs bF9jbGlja190eXBlOworKwkJcHVibGljIENsdXR0ZXIuUG9pbnRlckExMXlEd2VsbE1vZGUgZHdl bGxfbW9kZTsKKysJCXB1YmxpYyBDbHV0dGVyLlBvaW50ZXJBMTF5RHdlbGxEaXJlY3Rpb24gZHdl bGxfZ2VzdHVyZV9zaW5nbGU7CisrCQlwdWJsaWMgQ2x1dHRlci5Qb2ludGVyQTExeUR3ZWxsRGly ZWN0aW9uIGR3ZWxsX2dlc3R1cmVfZG91YmxlOworKwkJcHVibGljIENsdXR0ZXIuUG9pbnRlckEx MXlEd2VsbERpcmVjdGlvbiBkd2VsbF9nZXN0dXJlX2RyYWc7CisrCQlwdWJsaWMgQ2x1dHRlci5Q b2ludGVyQTExeUR3ZWxsRGlyZWN0aW9uIGR3ZWxsX2dlc3R1cmVfc2Vjb25kYXJ5OworKwkJcHVi bGljIGludCBzZWNvbmRhcnlfY2xpY2tfZGVsYXk7CisrCQlwdWJsaWMgaW50IGR3ZWxsX2RlbGF5 OworKwkJcHVibGljIGludCBkd2VsbF90aHJlc2hvbGQ7CisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisr CVtWZXJzaW9uIChzaW5jZSA9ICIxLjI4IildCisrCXB1YmxpYyBzdHJ1Y3QgUHJveGltaXR5RXZl bnQgeworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRUeXBlIHR5cGU7CisrCQlwdWJsaWMgdWludDMy IHRpbWU7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudEZsYWdzIGZsYWdzOworKwkJcHVibGljIHdl YWsgQ2x1dHRlci5TdGFnZSBzdGFnZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuQWN0b3Igc291 cmNlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5JbnB1dERldmljZSBkZXZpY2U7CisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY29weV9mdW5j dGlvbiA9ICJnX2JveGVkX2NvcHkiLCBmcmVlX2Z1bmN0aW9uID0gImdfYm94ZWRfZnJlZSIsIHR5 cGVfaWQgPSAiQ0xVVFRFUl9UWVBFX1VOSVRTIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJcHVibGljIHN0cnVjdCBVbml0cyB7CisrCQlwdWJsaWMgQ2x1dHRlci5Vbml0cz8gY29w eSAoKTsKKysJCXB1YmxpYyB2b2lkIGZyZWUgKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0 ZXJfdW5pdHNfZnJvbV9jbSIpXQorKwkJcHVibGljIFVuaXRzLmZyb21fY20gKGZsb2F0IGNtKTsK KysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl91bml0c19mcm9tX2VtIildCisrCQlwdWJsaWMg VW5pdHMuZnJvbV9lbSAoZmxvYXQgZW0pOworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX3Vu aXRzX2Zyb21fZW1fZm9yX2ZvbnQiKV0KKysJCXB1YmxpYyBVbml0cy5mcm9tX2VtX2Zvcl9mb250 IChzdHJpbmcgZm9udF9uYW1lLCBmbG9hdCBlbSk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0 ZXJfdW5pdHNfZnJvbV9tbSIpXQorKwkJcHVibGljIFVuaXRzLmZyb21fbW0gKGZsb2F0IG1tKTsK KysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl91bml0c19mcm9tX3BpeGVscyIpXQorKwkJcHVi bGljIFVuaXRzLmZyb21fcGl4ZWxzIChpbnQgcHgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0 dGVyX3VuaXRzX2Zyb21fcHQiKV0KKysJCXB1YmxpYyBVbml0cy5mcm9tX3B0IChmbG9hdCBwdCk7 CisrCQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfdW5pdHNfZnJvbV9zdHJpbmciKV0KKysJCXB1 YmxpYyBVbml0cy5mcm9tX3N0cmluZyAoc3RyaW5nIHN0cik7CisrCQlwdWJsaWMgQ2x1dHRlci5V bml0VHlwZSBnZXRfdW5pdF90eXBlICgpOworKwkJcHVibGljIGZsb2F0IGdldF91bml0X3ZhbHVl ICgpOworKwkJcHVibGljIGZsb2F0IHRvX3BpeGVscyAoKTsKKysJCXB1YmxpYyBzdHJpbmcgdG9f c3RyaW5nICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9BQ1RPUl9BTElHTl8iLCB0eXBlX2lkID0gImNs dXR0ZXJfYWN0b3JfYWxpZ25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTAiKV0KKysJcHVibGljIGVudW0gQWN0b3JBbGlnbiB7CisrCQlGSUxMLAorKwkJU1RBUlQsCisr CQlDRU5URVIsCisrCQlFTkQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfQUNUT1JfIiwgdHlwZV9pZCA9ICJj bHV0dGVyX2FjdG9yX2ZsYWdzX2dldF90eXBlICgpIildCisrCVtGbGFnc10KKysJcHVibGljIGVu dW0gQWN0b3JGbGFncyB7CisrCQlNQVBQRUQsCisrCQlSRUFMSVpFRCwKKysJCVJFQUNUSVZFLAor KwkJVklTSUJMRSwKKysJCU5PX0xBWU9VVAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9BTElHTl8iLCB0eXBl X2lkID0gImNsdXR0ZXJfYWxpZ25fYXhpc19nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMS40IildCisrCXB1YmxpYyBlbnVtIEFsaWduQXhpcyB7CisrCQlYX0FYSVMsCisrCQlZ X0FYSVMsCisrCQlCT1RICisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9h bGxvY2F0aW9uX2ZsYWdzX2dldF90eXBlICgpIildCisrCVtGbGFnc10KKysJW1ZlcnNpb24gKHNp bmNlID0gIjEuMCIpXQorKwlwdWJsaWMgZW51bSBBbGxvY2F0aW9uRmxhZ3MgeworKwkJQUxMT0NB VElPTl9OT05FLAorKwkJQUJTT0xVVEVfT1JJR0lOX0NIQU5HRUQsCisrCQlERUxFR0FURV9MQVlP VVQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjcHJlZml4ID0gIkNMVVRURVJfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2FuaW1hdGlvbl9tb2Rl X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGVu dW0gQW5pbWF0aW9uTW9kZSB7CisrCQlDVVNUT01fTU9ERSwKKysJCUxJTkVBUiwKKysJCUVBU0Vf SU5fUVVBRCwKKysJCUVBU0VfT1VUX1FVQUQsCisrCQlFQVNFX0lOX09VVF9RVUFELAorKwkJRUFT RV9JTl9DVUJJQywKKysJCUVBU0VfT1VUX0NVQklDLAorKwkJRUFTRV9JTl9PVVRfQ1VCSUMsCisr CQlFQVNFX0lOX1FVQVJULAorKwkJRUFTRV9PVVRfUVVBUlQsCisrCQlFQVNFX0lOX09VVF9RVUFS VCwKKysJCUVBU0VfSU5fUVVJTlQsCisrCQlFQVNFX09VVF9RVUlOVCwKKysJCUVBU0VfSU5fT1VU X1FVSU5ULAorKwkJRUFTRV9JTl9TSU5FLAorKwkJRUFTRV9PVVRfU0lORSwKKysJCUVBU0VfSU5f T1VUX1NJTkUsCisrCQlFQVNFX0lOX0VYUE8sCisrCQlFQVNFX09VVF9FWFBPLAorKwkJRUFTRV9J Tl9PVVRfRVhQTywKKysJCUVBU0VfSU5fQ0lSQywKKysJCUVBU0VfT1VUX0NJUkMsCisrCQlFQVNF X0lOX09VVF9DSVJDLAorKwkJRUFTRV9JTl9FTEFTVElDLAorKwkJRUFTRV9PVVRfRUxBU1RJQywK KysJCUVBU0VfSU5fT1VUX0VMQVNUSUMsCisrCQlFQVNFX0lOX0JBQ0ssCisrCQlFQVNFX09VVF9C QUNLLAorKwkJRUFTRV9JTl9PVVRfQkFDSywKKysJCUVBU0VfSU5fQk9VTkNFLAorKwkJRUFTRV9P VVRfQk9VTkNFLAorKwkJRUFTRV9JTl9PVVRfQk9VTkNFLAorKwkJU1RFUFMsCisrCQlTVEVQX1NU QVJULAorKwkJU1RFUF9FTkQsCisrCQlDVUJJQ19CRVpJRVIsCisrCQlFQVNFLAorKwkJRUFTRV9J TiwKKysJCUVBU0VfT1VULAorKwkJRUFTRV9JTl9PVVQsCisrCQlBTklNQVRJT05fTEFTVAorKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVm aXggPSAiQ0xVVFRFUl9CSU5fQUxJR05NRU5UXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9iaW5fYWxp Z25tZW50X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJcHVi bGljIGVudW0gQmluQWxpZ25tZW50IHsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSld CisrCQlGSVhFRCwKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSldCisrCQlGSUxMLAor KwkJU1RBUlQsCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUpXQorKwkJRU5ELAorKwkJ W1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlKV0KKysJCUNFTlRFUgorKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRF Ul9CSU5EXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9iaW5kX2Nvb3JkaW5hdGVfZ2V0X3R5cGUgKCki KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgZW51bSBCaW5kQ29vcmRp bmF0ZSB7CisrCQlYLAorKwkJWSwKKysJCVdJRFRILAorKwkJSEVJR0hULAorKwkJUE9TSVRJT04s CisrCQlTSVpFLAorKwkJQUxMCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0JPWF9BTElHTk1FTlRfIiwgdHlw ZV9pZCA9ICJjbHV0dGVyX2JveF9hbGlnbm1lbnRfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24g KHNpbmNlID0gIjEuMiIpXQorKwlwdWJsaWMgZW51bSBCb3hBbGlnbm1lbnQgeworKwkJU1RBUlQs CisrCQlFTkQsCisrCQlDRU5URVIKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfQlVUVE9OX1NUQVRFXyIsIHR5 cGVfaWQgPSAiY2x1dHRlcl9idXR0b25fc3RhdGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVu dW0gQnV0dG9uU3RhdGUgeworKwkJUkVMRUFTRUQsCisrCQlQUkVTU0VECisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVU VEVSX0NPTlRFTlRfR1JBVklUWV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfY29udGVudF9ncmF2aXR5 X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBl bnVtIENvbnRlbnRHcmF2aXR5IHsKKysJCVRPUF9MRUZULAorKwkJVE9QLAorKwkJVE9QX1JJR0hU LAorKwkJTEVGVCwKKysJCUNFTlRFUiwKKysJCVJJR0hULAorKwkJQk9UVE9NX0xFRlQsCisrCQlC T1RUT00sCisrCQlCT1RUT01fUklHSFQsCisrCQlSRVNJWkVfRklMTCwKKysJCVJFU0laRV9BU1BF Q1QKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjcHJlZml4ID0gIkNMVVRURVJfUkVQRUFUXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9jb250ZW50 X3JlcGVhdF9nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEyIildCisrCXB1YmxpYyBlbnVtIENvbnRlbnRSZXBlYXQgeworKwkJTk9ORSwKKysJCVhfQVhJ UywKKysJCVlfQVhJUywKKysJCUJPVEgKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfREVCVUdfIiwgdHlwZV9p ZCA9ICJjbHV0dGVyX2RlYnVnX2ZsYWdfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlwdWJs aWMgZW51bSBEZWJ1Z0ZsYWcgeworKwkJTUlTQywKKysJCUFDVE9SLAorKwkJVEVYVFVSRSwKKysJ CUVWRU5ULAorKwkJUEFJTlQsCisrCQlQQU5HTywKKysJCUJBQ0tFTkQsCisrCQlTQ0hFRFVMRVIs CisrCQlTQ1JJUFQsCisrCQlTSEFERVIsCisrCQlNVUxUSVNUQUdFLAorKwkJQU5JTUFUSU9OLAor KwkJTEFZT1VULAorKwkJUElDSywKKysJCUVWRU5UTE9PUCwKKysJCUNMSVBQSU5HLAorKwkJT09C X1RSQU5TRk9STVMKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfRFJBR18iLCB0eXBlX2lkID0gImNsdXR0ZXJf ZHJhZ19heGlzX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJ cHVibGljIGVudW0gRHJhZ0F4aXMgeworKwkJQVhJU19OT05FLAorKwkJWF9BWElTLAorKwkJWV9B WElTCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY3ByZWZpeCA9ICJDTFVUVEVSX0RFQlVHXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9kcmF3X2Rl YnVnX2ZsYWdfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlwdWJsaWMgZW51bSBEcmF3RGVi dWdGbGFnIHsKKysJCURJU0FCTEVfU1dBUF9FVkVOVFMsCisrCQlESVNBQkxFX0NMSVBQRURfUkVE UkFXUywKKysJCVJFRFJBV1MsCisrCQlQQUlOVF9WT0xVTUVTLAorKwkJRElTQUJMRV9DVUxMSU5H LAorKwkJRElTQUJMRV9PRkZTQ1JFRU5fUkVESVJFQ1QsCisrCQlDT05USU5VT1VTX1JFRFJBVywK KysJCVBBSU5UX0RFRk9STV9USUxFUywKKysJCVBBSU5UX0RBTUFHRV9SRUdJT04KKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0g IkNMVVRURVJfRUZGRUNUX1BBSU5UX0FDVE9SXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9lZmZlY3Rf cGFpbnRfZmxhZ3NfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlwdWJsaWMgZW51bSBFZmZl Y3RQYWludEZsYWdzIHsKKysJCVtDQ29kZSAoY25hbWUgPSAiQ0xVVFRFUl9FRkZFQ1RfUEFJTlRf QUNUT1JfRElSVFkiKV0KKysJCUFDVE9SX0RJUlRZCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0VWRU5UXyIs IHR5cGVfaWQgPSAiY2x1dHRlcl9ldmVudF9mbGFnc19nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3Nd CisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJcHVibGljIGVudW0gRXZlbnRGbGFncyB7 CisrCQlOT05FLAorKwkJRkxBR19TWU5USEVUSUMsCisrCQlGTEFHX0lOUFVUX01FVEhPRCwKKysJ CUZMQUdfUkVQRUFURUQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2V2 ZW50X3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwlw dWJsaWMgZW51bSBFdmVudFR5cGUgeworKwkJTk9USElORywKKysJCUtFWV9QUkVTUywKKysJCUtF WV9SRUxFQVNFLAorKwkJTU9USU9OLAorKwkJRU5URVIsCisrCQlMRUFWRSwKKysJCUJVVFRPTl9Q UkVTUywKKysJCUJVVFRPTl9SRUxFQVNFLAorKwkJU0NST0xMLAorKwkJU1RBR0VfU1RBVEUsCisr CQlERVNUUk9ZX05PVElGWSwKKysJCUNMSUVOVF9NRVNTQUdFLAorKwkJREVMRVRFLAorKwkJVE9V Q0hfQkVHSU4sCisrCQlUT1VDSF9VUERBVEUsCisrCQlUT1VDSF9FTkQsCisrCQlUT1VDSF9DQU5D RUwsCisrCQlUT1VDSFBBRF9QSU5DSCwKKysJCVRPVUNIUEFEX1NXSVBFLAorKwkJUFJPWElNSVRZ X0lOLAorKwkJUFJPWElNSVRZX09VVCwKKysJCVBBRF9CVVRUT05fUFJFU1MsCisrCQlQQURfQlVU VE9OX1JFTEVBU0UsCisrCQlQQURfU1RSSVAsCisrCQlQQURfUklORywKKysJCUVWRU5UX0xBU1QK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj cHJlZml4ID0gIkNMVVRURVJfRkVBVFVSRV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfZmVhdHVyZV9m bGFnc19nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQi KV0KKysJcHVibGljIGVudW0gRmVhdHVyZUZsYWdzIHsKKysJCVRFWFRVUkVfTlBPVCwKKysJCVNX QVBfVEhST1RUTEUsCisrCQlTVEFHRV9TVEFUSUMsCisrCQlTVEFHRV9DVVJTT1IsCisrCQlTSEFE RVJTX0dMU0wsCisrCQlPRkZTQ1JFRU4sCisrCQlTVEFHRV9NVUxUSVBMRSwKKysJCVNXQVBfRVZF TlRTOworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX2ZlYXR1cmVfYXZhaWxhYmxlIildCisr CQlwdWJsaWMgYm9vbCBpc19hdmFpbGFibGUgKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0 ZXJfZmVhdHVyZV9nZXRfYWxsIildCisrCQlwdWJsaWMgc3RhdGljIENsdXR0ZXIuRmVhdHVyZUZs YWdzIEBnZXQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0ZMT1dfIiwgdHlwZV9pZCA9ICJjbHV0dGVy X2Zsb3dfb3JpZW50YXRpb25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEu MiIpXQorKwlwdWJsaWMgZW51bSBGbG93T3JpZW50YXRpb24geworKwkJSE9SSVpPTlRBTCwKKysJ CVZFUlRJQ0FMCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0dFU1RVUkVfVFJJR0dFUl9FREdFXyIsIHR5cGVf aWQgPSAiY2x1dHRlcl9nZXN0dXJlX3RyaWdnZXJfZWRnZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMS4xOCIpXQorKwlwdWJsaWMgZW51bSBHZXN0dXJlVHJpZ2dlckVkZ2Ug eworKwkJTk9ORSwKKysJCUFGVEVSLAorKwkJQkVGT1JFCisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0dSQVZJ VFlfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2dyYXZpdHlfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNp b24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMjIiLCBzaW5jZSA9 ICIwLjIiKV0KKysJcHVibGljIGVudW0gR3Jhdml0eSB7CisrCQlOT05FLAorKwkJTk9SVEgsCisr CQlOT1JUSF9FQVNULAorKwkJRUFTVCwKKysJCVNPVVRIX0VBU1QsCisrCQlTT1VUSCwKKysJCVNP VVRIX1dFU1QsCisrCQlXRVNULAorKwkJTk9SVEhfV0VTVCwKKysJCUNFTlRFUgorKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAi Q0xVVFRFUl9HUklEX1BPU0lUSU9OXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9ncmlkX3Bvc2l0aW9u X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCXB1YmxpYyBl bnVtIEdyaWRQb3NpdGlvbiB7CisrCQlMRUZULAorKwkJUklHSFQsCisrCQlUT1AsCisrCQlCT1RU T00KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjcHJlZml4ID0gIkNMVVRURVJfSU5JVF8iLCB0eXBlX2lkID0gImNsdXR0ZXJfaW5pdF9lcnJv cl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCXB1YmxpYyBl bnVtIEluaXRFcnJvciB7CisrCQlTVUNDRVNTLAorKwkJRVJST1JfVU5LTk9XTiwKKysJCUVSUk9S X1RIUkVBRFMsCisrCQlFUlJPUl9CQUNLRU5ELAorKwkJRVJST1JfSU5URVJOQUw7CisrCQlwdWJs aWMgc3RhdGljIEdMaWIuUXVhcmsgcXVhcmsgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0lOUFVUX0FY SVNfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2lucHV0X2F4aXNfZ2V0X3R5cGUgKCkiKV0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwlwdWJsaWMgZW51bSBJbnB1dEF4aXMgeworKwkJSUdO T1JFLAorKwkJWCwKKysJCVksCisrCQlQUkVTU1VSRSwKKysJCVhUSUxULAorKwkJWVRJTFQsCisr CQlXSEVFTCwKKysJCURJU1RBTkNFLAorKwkJUk9UQVRJT04sCisrCQlTTElERVIsCisrCQlMQVNU CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y3ByZWZpeCA9ICJDTFVUVEVSX0lOUFVUX0NPTlRFTlRfSElOVF8iLCB0eXBlX2lkID0gImNsdXR0 ZXJfaW5wdXRfY29udGVudF9oaW50X2ZsYWdzX2dldF90eXBlICgpIildCisrCVtGbGFnc10KKysJ cHVibGljIGVudW0gSW5wdXRDb250ZW50SGludEZsYWdzIHsKKysJCUNPTVBMRVRJT04sCisrCQlT UEVMTENIRUNLLAorKwkJQVVUT19DQVBJVEFMSVpBVElPTiwKKysJCUxPV0VSQ0FTRSwKKysJCVVQ UEVSQ0FTRSwKKysJCVRJVExFQ0FTRSwKKysJCUhJRERFTl9URVhULAorKwkJU0VOU0lUSVZFX0RB VEEsCisrCQlMQVRJTiwKKysJCU1VTFRJTElORQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9JTlBVVF9DT05U RU5UX1BVUlBPU0VfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2lucHV0X2NvbnRlbnRfcHVycG9zZV9n ZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBJbnB1dENvbnRlbnRQdXJwb3NlIHsKKysJCU5P Uk1BTCwKKysJCUFMUEhBLAorKwkJRElHSVRTLAorKwkJTlVNQkVSLAorKwkJUEhPTkUsCisrCQlV UkwsCisrCQlFTUFJTCwKKysJCU5BTUUsCisrCQlQQVNTV09SRCwKKysJCURBVEUsCisrCQlUSU1F LAorKwkJREFURVRJTUUsCisrCQlURVJNSU5BTAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9JTlBVVF9ERVZJ Q0VfTUFQUElOR18iLCB0eXBlX2lkID0gImNsdXR0ZXJfaW5wdXRfZGV2aWNlX21hcHBpbmdfZ2V0 X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gSW5wdXREZXZpY2VNYXBwaW5nIHsKKysJCUFCU09M VVRFLAorKwkJUkVMQVRJVkUKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfSU5QVVRfREVWSUNFX1BBRF9TT1VS Q0VfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2lucHV0X2RldmljZV9wYWRfc291cmNlX2dldF90eXBl ICgpIildCisrCXB1YmxpYyBlbnVtIElucHV0RGV2aWNlUGFkU291cmNlIHsKKysJCVVOS05PV04s CisrCQlGSU5HRVIKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfSU5QVVRfREVWSUNFX1RPT0xfIiwgdHlwZV9p ZCA9ICJjbHV0dGVyX2lucHV0X2RldmljZV90b29sX3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjEuMjgiKV0KKysJcHVibGljIGVudW0gSW5wdXREZXZpY2VUb29sVHlw ZSB7CisrCQlOT05FLAorKwkJUEVOLAorKwkJRVJBU0VSLAorKwkJQlJVU0gsCisrCQlQRU5DSUws CisrCQlBSVJCUlVTSCwKKysJCU1PVVNFLAorKwkJTEVOUworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl8iLCB0 eXBlX2lkID0gImNsdXR0ZXJfaW5wdXRfZGV2aWNlX3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgZW51bSBJbnB1dERldmljZVR5cGUgewor KwkJUE9JTlRFUl9ERVZJQ0UsCisrCQlLRVlCT0FSRF9ERVZJQ0UsCisrCQlFWFRFTlNJT05fREVW SUNFLAorKwkJSk9ZU1RJQ0tfREVWSUNFLAorKwkJVEFCTEVUX0RFVklDRSwKKysJCVRPVUNIUEFE X0RFVklDRSwKKysJCVRPVUNIU0NSRUVOX0RFVklDRSwKKysJCVBFTl9ERVZJQ0UsCisrCQlFUkFT RVJfREVWSUNFLAorKwkJQ1VSU09SX0RFVklDRSwKKysJCVBBRF9ERVZJQ0UsCisrCQlOX0RFVklD RV9UWVBFUworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9JTlBVVF9NT0RFXyIsIHR5cGVfaWQgPSAiY2x1dHRl cl9pbnB1dF9tb2RlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0K KysJcHVibGljIGVudW0gSW5wdXRNb2RlIHsKKysJCU1BU1RFUiwKKysJCVNMQVZFLAorKwkJRkxP QVRJTkcKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjcHJlZml4ID0gIkNMVVRURVJfSU5QVVRfUEFORUxfU1RBVEVfIiwgdHlwZV9pZCA9ICJj bHV0dGVyX2lucHV0X3BhbmVsX3N0YXRlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIElu cHV0UGFuZWxTdGF0ZSB7CisrCQlPRkYsCisrCQlPTiwKKysJCVRPR0dMRQorKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xV VFRFUl9JTlRFUlBPTEFUSU9OXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9pbnRlcnBvbGF0aW9uX2dl dF90eXBlICgpIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9z aW5jZSA9ICIxLjIyIiwgc2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBlbnVtIEludGVycG9sYXRp b24geworKwkJTElORUFSLAorKwkJQ1VCSUMKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfS0VZX1NUQVRFXyIs IHR5cGVfaWQgPSAiY2x1dHRlcl9rZXlfc3RhdGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVu dW0gS2V5U3RhdGUgeworKwkJUkVMRUFTRUQsCisrCQlQUkVTU0VECisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVS X0ExMVlfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2tleWJvYXJkX2ExMXlfZmxhZ3NfZ2V0X3R5cGUg KCkiKV0KKysJW0ZsYWdzXQorKwlwdWJsaWMgZW51bSBLZXlib2FyZEExMXlGbGFncyB7CisrCQlL RVlCT0FSRF9FTkFCTEVELAorKwkJVElNRU9VVF9FTkFCTEVELAorKwkJTU9VU0VfS0VZU19FTkFC TEVELAorKwkJU0xPV19LRVlTX0VOQUJMRUQsCisrCQlTTE9XX0tFWVNfQkVFUF9QUkVTUywKKysJ CVNMT1dfS0VZU19CRUVQX0FDQ0VQVCwKKysJCVNMT1dfS0VZU19CRUVQX1JFSkVDVCwKKysJCUJP VU5DRV9LRVlTX0VOQUJMRUQsCisrCQlCT1VOQ0VfS0VZU19CRUVQX1JFSkVDVCwKKysJCVRPR0dM RV9LRVlTX0VOQUJMRUQsCisrCQlTVElDS1lfS0VZU19FTkFCTEVELAorKwkJU1RJQ0tZX0tFWVNf VFdPX0tFWV9PRkYsCisrCQlTVElDS1lfS0VZU19CRUVQLAorKwkJRkVBVFVSRV9TVEFURV9DSEFO R0VfQkVFUAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9MT05HX1BSRVNTXyIsIHR5cGVfaWQgPSAiY2x1dHRl cl9sb25nX3ByZXNzX3N0YXRlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIx LjgiKV0KKysJcHVibGljIGVudW0gTG9uZ1ByZXNzU3RhdGUgeworKwkJUVVFUlksCisrCQlBQ1RJ VkFURSwKKysJCUNBTkNFTAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl8iLCB0eXBlX2lkID0gImNsdXR0ZXJf bW9kaWZpZXJfdHlwZV9nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIwLjQiKV0KKysJcHVibGljIGVudW0gTW9kaWZpZXJUeXBlIHsKKysJCVNISUZUX01BU0ss CisrCQlMT0NLX01BU0ssCisrCQlDT05UUk9MX01BU0ssCisrCQlNT0QxX01BU0ssCisrCQlNT0Qy X01BU0ssCisrCQlNT0QzX01BU0ssCisrCQlNT0Q0X01BU0ssCisrCQlNT0Q1X01BU0ssCisrCQlC VVRUT04xX01BU0ssCisrCQlCVVRUT04yX01BU0ssCisrCQlCVVRUT04zX01BU0ssCisrCQlCVVRU T040X01BU0ssCisrCQlCVVRUT041X01BU0ssCisrCQlNT0RJRklFUl9SRVNFUlZFRF8xM19NQVNL LAorKwkJTU9ESUZJRVJfUkVTRVJWRURfMTRfTUFTSywKKysJCU1PRElGSUVSX1JFU0VSVkVEXzE1 X01BU0ssCisrCQlNT0RJRklFUl9SRVNFUlZFRF8xNl9NQVNLLAorKwkJTU9ESUZJRVJfUkVTRVJW RURfMTdfTUFTSywKKysJCU1PRElGSUVSX1JFU0VSVkVEXzE4X01BU0ssCisrCQlNT0RJRklFUl9S RVNFUlZFRF8xOV9NQVNLLAorKwkJTU9ESUZJRVJfUkVTRVJWRURfMjBfTUFTSywKKysJCU1PRElG SUVSX1JFU0VSVkVEXzIxX01BU0ssCisrCQlNT0RJRklFUl9SRVNFUlZFRF8yMl9NQVNLLAorKwkJ TU9ESUZJRVJfUkVTRVJWRURfMjNfTUFTSywKKysJCU1PRElGSUVSX1JFU0VSVkVEXzI0X01BU0ss CisrCQlNT0RJRklFUl9SRVNFUlZFRF8yNV9NQVNLLAorKwkJU1VQRVJfTUFTSywKKysJCUhZUEVS X01BU0ssCisrCQlNRVRBX01BU0ssCisrCQlNT0RJRklFUl9SRVNFUlZFRF8yOV9NQVNLLAorKwkJ UkVMRUFTRV9NQVNLLAorKwkJTU9ESUZJRVJfTUFTSworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9PRkZTQ1JF RU5fUkVESVJFQ1RfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX29mZnNjcmVlbl9yZWRpcmVjdF9nZXRf dHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJcHVi bGljIGVudW0gT2Zmc2NyZWVuUmVkaXJlY3QgeworKwkJQVVUT01BVElDX0ZPUl9PUEFDSVRZLAor KwkJQUxXQVlTCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX09SSUVOVEFUSU9OXyIsIHR5cGVfaWQgPSAiY2x1 dHRlcl9vcmllbnRhdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MiIpXQorKwlwdWJsaWMgZW51bSBPcmllbnRhdGlvbiB7CisrCQlIT1JJWk9OVEFMLAorKwkJVkVS VElDQUwKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjcHJlZml4ID0gIkNMVVRURVJfUEFOXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9wYW5fYXhp c19nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwlwdWJsaWMg ZW51bSBQYW5BeGlzIHsKKysJCUFYSVNfTk9ORSwKKysJCVhfQVhJUywKKysJCVlfQVhJUywKKysJ CUFYSVNfQVVUTworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9QQVRIXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9w YXRoX25vZGVfdHlwZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIild CisrCXB1YmxpYyBlbnVtIFBhdGhOb2RlVHlwZSB7CisrCQlNT1ZFX1RPLAorKwkJTElORV9UTywK KysJCUNVUlZFX1RPLAorKwkJQ0xPU0UsCisrCQlSRUxfTU9WRV9UTywKKysJCVJFTF9MSU5FX1RP LAorKwkJUkVMX0NVUlZFX1RPCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0RFQlVHX05PUF8iLCB0eXBlX2lk ID0gImNsdXR0ZXJfcGlja19kZWJ1Z19mbGFnX2dldF90eXBlICgpIildCisrCVtGbGFnc10KKysJ cHVibGljIGVudW0gUGlja0RlYnVnRmxhZyB7CisrCQlQSUNLSU5HCisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVS X1BJQ0tfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3BpY2tfbW9kZV9nZXRfdHlwZSAoKSIpXQorKwlb VmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBlbnVtIFBpY2tNb2RlIHsKKysJCU5P TkUsCisrCQlSRUFDVElWRSwKKysJCUFMTAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9BMTFZX0RXRUxMX0NM SUNLX1RZUEVfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3BvaW50ZXJfYTExeV9kd2VsbF9jbGlja190 eXBlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIFBvaW50ZXJBMTF5RHdlbGxDbGlja1R5 cGUgeworKwkJTk9ORSwKKysJCVBSSU1BUlksCisrCQlTRUNPTkRBUlksCisrCQlNSURETEUsCisr CQlET1VCTEUsCisrCQlEUkFHCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0ExMVlfRFdFTExfRElSRUNUSU9O XyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9wb2ludGVyX2ExMXlfZHdlbGxfZGlyZWN0aW9uX2dldF90 eXBlICgpIildCisrCXB1YmxpYyBlbnVtIFBvaW50ZXJBMTF5RHdlbGxEaXJlY3Rpb24geworKwkJ Tk9ORSwKKysJCUxFRlQsCisrCQlSSUdIVCwKKysJCVVQLAorKwkJRE9XTgorKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xV VFRFUl9BMTFZX0RXRUxMX01PREVfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3BvaW50ZXJfYTExeV9k d2VsbF9tb2RlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIFBvaW50ZXJBMTF5RHdlbGxN b2RlIHsKKysJCVdJTkRPVywKKysJCUdFU1RVUkUKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfQTExWV8iLCB0 eXBlX2lkID0gImNsdXR0ZXJfcG9pbnRlcl9hMTF5X2ZsYWdzX2dldF90eXBlICgpIildCisrCVtG bGFnc10KKysJcHVibGljIGVudW0gUG9pbnRlckExMXlGbGFncyB7CisrCQlTRUNPTkRBUllfQ0xJ Q0tfRU5BQkxFRCwKKysJCURXRUxMX0VOQUJMRUQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfQTExWV9USU1F T1VUX1RZUEVfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3BvaW50ZXJfYTExeV90aW1lb3V0X3R5cGVf Z2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gUG9pbnRlckExMXlUaW1lb3V0VHlwZSB7Cisr CQlTRUNPTkRBUllfQ0xJQ0ssCisrCQlEV0VMTCwKKysJCUdFU1RVUkUKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRU RVJfUkVQQUlOVF9GTEFHU18iLCB0eXBlX2lkID0gImNsdXR0ZXJfcmVwYWludF9mbGFnc19nZXRf dHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1 YmxpYyBlbnVtIFJlcGFpbnRGbGFncyB7CisrCQlQUkVfUEFJTlQsCisrCQlQT1NUX1BBSU5ULAor KwkJUVVFVUVfUkVEUkFXX09OX0FERAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9SRVFVRVNUXyIsIHR5cGVf aWQgPSAiY2x1dHRlcl9yZXF1ZXN0X21vZGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNp bmNlID0gIjAuOCIpXQorKwlwdWJsaWMgZW51bSBSZXF1ZXN0TW9kZSB7CisrCQlIRUlHSFRfRk9S X1dJRFRILAorKwkJV0lEVEhfRk9SX0hFSUdIVCwKKysJCUNPTlRFTlRfU0laRQorKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAi Q0xVVFRFUl8iLCB0eXBlX2lkID0gImNsdXR0ZXJfcm90YXRlX2F4aXNfZ2V0X3R5cGUgKCkiKV0K KysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwlwdWJsaWMgZW51bSBSb3RhdGVBeGlzIHsK KysJCVhfQVhJUywKKysJCVlfQVhJUywKKysJCVpfQVhJUworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9ST1RB VEVfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3JvdGF0ZV9kaXJlY3Rpb25fZ2V0X3R5cGUgKCkiKV0K KysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMjIi LCBzaW5jZSA9ICIwLjQiKV0KKysJcHVibGljIGVudW0gUm90YXRlRGlyZWN0aW9uIHsKKysJCUNX LAorKwkJQ0NXCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1NDQUxJTkdfRklMVEVSXyIsIHR5cGVfaWQgPSAi Y2x1dHRlcl9zY2FsaW5nX2ZpbHRlcl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMCIpXQorKwlwdWJsaWMgZW51bSBTY2FsaW5nRmlsdGVyIHsKKysJCUxJTkVBUiwKKysJ CU5FQVJFU1QsCisrCQlUUklMSU5FQVIKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfU0NST0xMXyIsIHR5cGVf aWQgPSAiY2x1dHRlcl9zY3JvbGxfZGlyZWN0aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9u IChzaW5jZSA9ICIwLjQiKV0KKysJcHVibGljIGVudW0gU2Nyb2xsRGlyZWN0aW9uIHsKKysJCVVQ LAorKwkJRE9XTiwKKysJCUxFRlQsCisrCQlSSUdIVCwKKysJCVNNT09USAorKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xV VFRFUl9TQ1JPTExfRklOSVNIRURfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3Njcm9sbF9maW5pc2hf ZmxhZ3NfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4y NiIpXQorKwlwdWJsaWMgZW51bSBTY3JvbGxGaW5pc2hGbGFncyB7CisrCQlOT05FLAorKwkJSE9S SVpPTlRBTCwKKysJCVZFUlRJQ0FMCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1NDUk9MTF8iLCB0eXBlX2lk ID0gImNsdXR0ZXJfc2Nyb2xsX21vZGVfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwlwdWJsaWMgZW51bSBTY3JvbGxNb2RlIHsKKysJCU5P TkUsCisrCQlIT1JJWk9OVEFMTFksCisrCQlWRVJUSUNBTExZLAorKwkJQk9USAorKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAi Q0xVVFRFUl9TQ1JPTExfU09VUkNFXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zY3JvbGxfc291cmNl X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjI2IildCisrCXB1YmxpYyBl bnVtIFNjcm9sbFNvdXJjZSB7CisrCQlVTktOT1dOLAorKwkJV0hFRUwsCisrCQlGSU5HRVIsCisr CQlDT05USU5VT1VTCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zaGFk ZXJfdHlwZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1 YmxpYyBlbnVtIFNoYWRlclR5cGUgeworKwkJVkVSVEVYX1NIQURFUiwKKysJCUZSQUdNRU5UX1NI QURFUgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9TTkFQX0VER0VfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3Nu YXBfZWRnZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCXB1 YmxpYyBlbnVtIFNuYXBFZGdlIHsKKysJCVRPUCwKKysJCVJJR0hULAorKwkJQk9UVE9NLAorKwkJ TEVGVAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9TVEFHRV9TVEFURV8iLCB0eXBlX2lkID0gImNsdXR0ZXJf c3RhZ2Vfc3RhdGVfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlbVmVyc2lvbiAoc2luY2Ug PSAiMC40IildCisrCXB1YmxpYyBlbnVtIFN0YWdlU3RhdGUgeworKwkJQUNUSVZBVEVECisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZp eCA9ICJDTFVUVEVSX0NPTE9SXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zdGF0aWNfY29sb3JfZ2V0 X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwlwdWJsaWMgZW51bSBT dGF0aWNDb2xvciB7CisrCQlXSElURSwKKysJCUJMQUNLLAorKwkJUkVELAorKwkJREFSS19SRUQs CisrCQlHUkVFTiwKKysJCURBUktfR1JFRU4sCisrCQlCTFVFLAorKwkJREFSS19CTFVFLAorKwkJ Q1lBTiwKKysJCURBUktfQ1lBTiwKKysJCU1BR0VOVEEsCisrCQlEQVJLX01BR0VOVEEsCisrCQlZ RUxMT1csCisrCQlEQVJLX1lFTExPVywKKysJCUdSQVksCisrCQlEQVJLX0dSQVksCisrCQlMSUdI VF9HUkFZLAorKwkJQlVUVEVSLAorKwkJQlVUVEVSX0xJR0hULAorKwkJQlVUVEVSX0RBUkssCisr CQlPUkFOR0UsCisrCQlPUkFOR0VfTElHSFQsCisrCQlPUkFOR0VfREFSSywKKysJCUNIT0NPTEFU RSwKKysJCUNIT0NPTEFURV9MSUdIVCwKKysJCUNIT0NPTEFURV9EQVJLLAorKwkJQ0hBTUVMRU9O LAorKwkJQ0hBTUVMRU9OX0xJR0hULAorKwkJQ0hBTUVMRU9OX0RBUkssCisrCQlTS1lfQkxVRSwK KysJCVNLWV9CTFVFX0xJR0hULAorKwkJU0tZX0JMVUVfREFSSywKKysJCVBMVU0sCisrCQlQTFVN X0xJR0hULAorKwkJUExVTV9EQVJLLAorKwkJU0NBUkxFVF9SRUQsCisrCQlTQ0FSTEVUX1JFRF9M SUdIVCwKKysJCVNDQVJMRVRfUkVEX0RBUkssCisrCQlBTFVNSU5JVU1fMSwKKysJCUFMVU1JTklV TV8yLAorKwkJQUxVTUlOSVVNXzMsCisrCQlBTFVNSU5JVU1fNCwKKysJCUFMVU1JTklVTV81LAor KwkJQUxVTUlOSVVNXzYsCisrCQlUUkFOU1BBUkVOVAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9TVEVQX01P REVfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3N0ZXBfbW9kZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwlwdWJsaWMgZW51bSBTdGVwTW9kZSB7CisrCQlTVEFS VCwKKysJCUVORAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9TV0lQRV9ESVJFQ1RJT05fIiwgdHlwZV9pZCA9 ICJjbHV0dGVyX3N3aXBlX2RpcmVjdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJcHVibGljIGVudW0gU3dpcGVEaXJlY3Rpb24gewor KwkJVVAsCisrCQlET1dOLAorKwkJTEVGVCwKKysJCVJJR0hUCisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1RF WFRfRElSRUNUSU9OXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl90ZXh0X2RpcmVjdGlvbl9nZXRfdHlw ZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBlbnVtIFRleHRE aXJlY3Rpb24geworKwkJREVGQVVMVCwKKysJCUxUUiwKKysJCVJUTAorKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRF Ul9URVhUVVJFXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl90ZXh0dXJlX2ZsYWdzX2dldF90eXBlICgp IildCisrCVtGbGFnc10KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVk X3NpbmNlID0gIjEuMjIiLCBzaW5jZSA9ICIwLjQiKV0KKysJcHVibGljIGVudW0gVGV4dHVyZUZs YWdzIHsKKysJCU5PTkUsCisrCQlSR0JfRkxBR19CR1IsCisrCQlSR0JfRkxBR19QUkVNVUxULAor KwkJWVVWX0ZMQUdfWVVWMgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9URVhUVVJFX1FVQUxJVFlfIiwgdHlw ZV9pZCA9ICJjbHV0dGVyX3RleHR1cmVfcXVhbGl0eV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lv biAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4yMiIsIHNpbmNlID0g IjAuOCIpXQorKwlwdWJsaWMgZW51bSBUZXh0dXJlUXVhbGl0eSB7CisrCQlMT1csCisrCQlNRURJ VU0sCisrCQlISUdICisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1RJTUVMSU5FXyIsIHR5cGVfaWQgPSAiY2x1 dHRlcl90aW1lbGluZV9kaXJlY3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNl ID0gIjAuNiIpXQorKwlwdWJsaWMgZW51bSBUaW1lbGluZURpcmVjdGlvbiB7CisrCQlGT1JXQVJE LAorKwkJQkFDS1dBUkQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfVE9VQ0hQQURfR0VTVFVSRV9QSEFTRV8i LCB0eXBlX2lkID0gImNsdXR0ZXJfdG91Y2hwYWRfZ2VzdHVyZV9waGFzZV9nZXRfdHlwZSAoKSIp XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yNCIpXQorKwlwdWJsaWMgZW51bSBUb3VjaHBhZEdl c3R1cmVQaGFzZSB7CisrCQlCRUdJTiwKKysJCVVQREFURSwKKysJCUVORCwKKysJCUNBTkNFTAor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNw cmVmaXggPSAiQ0xVVFRFUl9VTklUXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl91bml0X3R5cGVfZ2V0 X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgZW51bSBV bml0VHlwZSB7CisrCQlQSVhFTCwKKysJCUVNLAorKwkJTU0sCisrCQlQT0lOVCwKKysJCUNNCisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3By ZWZpeCA9ICJDTFVUVEVSX1ZJUlRVQUxfREVWSUNFX1RZUEVfIiwgdHlwZV9pZCA9ICJjbHV0dGVy X3ZpcnR1YWxfZGV2aWNlX3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlwdWJsaWMg ZW51bSBWaXJ0dWFsRGV2aWNlVHlwZSB7CisrCQlOT05FLAorKwkJS0VZQk9BUkQsCisrCQlQT0lO VEVSLAorKwkJVE9VQ0hTQ1JFRU4KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfWk9PTV8iLCB0eXBlX2lkID0g ImNsdXR0ZXJfem9vbV9heGlzX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEyIildCisrCXB1YmxpYyBlbnVtIFpvb21BeGlzIHsKKysJCVhfQVhJUywKKysJCVlfQVhJUywK KysJCUJPVEgKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfSU1BR0VfRVJST1JfSU5WQUxJRF8iKV0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGVycm9yZG9tYWluIEltYWdlRXJyb3Ig eworKwkJREFUQTsKKysJCXB1YmxpYyBzdGF0aWMgR0xpYi5RdWFyayBxdWFyayAoKTsKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4 ID0gIkNMVVRURVJfU0NSSVBUX0VSUk9SX0lOVkFMSURfIildCisrCVtWZXJzaW9uIChzaW5jZSA9 ICIwLjYiKV0KKysJcHVibGljIGVycm9yZG9tYWluIFNjcmlwdEVycm9yIHsKKysJCVRZUEVfRlVO Q1RJT04sCisrCQlQUk9QRVJUWSwKKysJCVZBTFVFOworKwkJcHVibGljIHN0YXRpYyBHTGliLlF1 YXJrIHF1YXJrICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGluc3RhbmNlX3BvcyA9IDEuOSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIx LjI0IildCisrCXB1YmxpYyBkZWxlZ2F0ZSBDbHV0dGVyLkFjdG9yIEFjdG9yQ3JlYXRlQ2hpbGRG dW5jIChHTGliLk9iamVjdCBpdGVtKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgaW5zdGFuY2VfcG9zID0gMS45KV0KKysJW1ZlcnNpb24gKGRlcHJl Y2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIwLjIiKV0K KysJcHVibGljIGRlbGVnYXRlIGRvdWJsZSBBbHBoYUZ1bmMgKENsdXR0ZXIuQWxwaGEgYWxwaGEp OworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBpbnN0 YW5jZV9wb3MgPSA0LjkpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBk ZWxlZ2F0ZSBib29sIEJpbmRpbmdBY3Rpb25GdW5jIChHTGliLk9iamVjdCBnb2JqZWN0LCBzdHJp bmcgYWN0aW9uX25hbWUsIHVpbnQga2V5X3ZhbCwgQ2x1dHRlci5Nb2RpZmllclR5cGUgbW9kaWZp ZXJzKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg aW5zdGFuY2VfcG9zID0gMS45KV0KKysJcHVibGljIGRlbGVnYXRlIHZvaWQgQ2FsbGJhY2sgKENs dXR0ZXIuQWN0b3IgYWN0b3IpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBoYXNfdGFyZ2V0ID0gZmFsc2UpXQorKwlwdWJsaWMgZGVsZWdhdGUgdm9p ZCBFbWl0SW5wdXREZXZpY2VFdmVudCAoQ2x1dHRlci5FdmVudCBldmVudCwgQ2x1dHRlci5JbnB1 dERldmljZSBkZXZpY2UpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBpbnN0YW5jZV9wb3MgPSAxLjkpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4x OCIpXQorKwlwdWJsaWMgZGVsZWdhdGUgYm9vbCBFdmVudEZpbHRlckZ1bmMgKENsdXR0ZXIuRXZl bnQgZXZlbnQpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBpbnN0YW5jZV9wb3MgPSAxLjkpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisr CXB1YmxpYyBkZWxlZ2F0ZSB2b2lkIFBhdGhDYWxsYmFjayAoQ2x1dHRlci5QYXRoTm9kZSBub2Rl KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFz X3RhcmdldCA9IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMg ZGVsZWdhdGUgYm9vbCBQcm9ncmVzc0Z1bmMgKEdMaWIuVmFsdWUgYSwgR0xpYi5WYWx1ZSBiLCBk b3VibGUgcHJvZ3Jlc3MsIEdMaWIuVmFsdWUgcmV0dmFsKTsKKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaW5zdGFuY2VfcG9zID0gNi45KV0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwlwdWJsaWMgZGVsZWdhdGUgdm9pZCBTY3JpcHRDb25u ZWN0RnVuYyAoQ2x1dHRlci5TY3JpcHQgc2NyaXB0LCBHTGliLk9iamVjdCBvYmplY3QsIHN0cmlu ZyBzaWduYWxfbmFtZSwgc3RyaW5nIGhhbmRsZXJfbmFtZSwgR0xpYi5PYmplY3QgY29ubmVjdF9v YmplY3QsIEdMaWIuQ29ubmVjdEZsYWdzIGZsYWdzKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaW5zdGFuY2VfcG9zID0gMy45KV0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGRlbGVnYXRlIGRvdWJsZSBUaW1lbGluZVBy b2dyZXNzRnVuYyAoQ2x1dHRlci5UaW1lbGluZSB0aW1lbGluZSwgZG91YmxlIGVsYXBzZWQsIGRv dWJsZSB0b3RhbCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfQ09HTCIpXQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9 IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjAuNCIpXQorKwlwdWJs aWMgY29uc3Qgc3RyaW5nIENPR0w7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfQ1VSUkVOVF9USU1FIildCisrCVtWZXJz aW9uIChzaW5jZSA9ICIwLjQiKV0KKysJcHVibGljIGNvbnN0IGludCBDVVJSRU5UX1RJTUU7Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfRkxBVk9VUiIpXQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJl Y2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjAuNCIpXQorKwlwdWJsaWMgY29uc3Qgc3Ry aW5nIEZMQVZPVVI7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfUEFUSF9SRUxBVElWRSIpXQorKwlwdWJsaWMgY29uc3Qg aW50IFBBVEhfUkVMQVRJVkU7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfUFJJT1JJVFlfUkVEUkFXIildCisrCVtWZXJz aW9uIChzaW5jZSA9ICIwLjgiKV0KKysJcHVibGljIGNvbnN0IGludCBQUklPUklUWV9SRURSQVc7 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlw dWJsaWMgc3RhdGljIHZvaWQgYmFzZV9pbml0ICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0K KysJcHVibGljIHN0YXRpYyB2b2lkIGNhaXJvX2NsZWFyIChDYWlyby5Db250ZXh0IGNyKTsKKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJz aW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIGNhaXJvX3NldF9zb3Vy Y2VfY29sb3IgKENhaXJvLkNvbnRleHQgY3IsIENsdXR0ZXIuQ29sb3IgY29sb3IpOworKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGNoZWNrX3dpbmRvd2luZ19i YWNrZW5kIChzdHJpbmcgYmFja2VuZF90eXBlKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBjb2xvcl9mcm9t X2hscyAob3V0IENsdXR0ZXIuQ29sb3IgY29sb3IsIGZsb2F0IGh1ZSwgZmxvYXQgbHVtaW5hbmNl LCBmbG9hdCBzYXR1cmF0aW9uKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBjb2xvcl9mcm9tX3BpeGVsIChv dXQgQ2x1dHRlci5Db2xvciBjb2xvciwgdWludDMyIHBpeGVsKTsKKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIx LjAiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGNvbG9yX2Zyb21fc3RyaW5nIChvdXQgQ2x1dHRl ci5Db2xvciBjb2xvciwgc3RyaW5nIHN0cik7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCXB1 YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLkNvbG9yPyBjb2xvcl9nZXRfc3RhdGljIChDbHV0 dGVyLlN0YXRpY0NvbG9yIGNvbG9yKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE0IildCisrCXB1Ymxp YyBzdGF0aWMgdm9pZCBkaXNhYmxlX2FjY2Vzc2liaWxpdHkgKCk7CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAi MC40IildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBkb19ldmVudCAoQ2x1dHRlci5FdmVudCBldmVu dCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQor KwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xOCIpXQorKwlwdWJsaWMgc3RhdGljIHVpbnQgZXZlbnRf YWRkX2ZpbHRlciAoQ2x1dHRlci5TdGFnZT8gc3RhZ2UsIFtDQ29kZSAoZGVsZWdhdGVfdGFyZ2V0 X3BvcyA9IDIuMiwgZGVzdHJveV9ub3RpZnlfcG9zID0gMi4xKV0gb3duZWQgQ2x1dHRlci5FdmVu dEZpbHRlckZ1bmMgZnVuYyk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCXB1YmxpYyBzdGF0 aWMgQ2x1dHRlci5FdmVudCBldmVudF9nZXQgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisr CXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLkV2ZW50IGV2ZW50X3BlZWsgKCk7CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMS4xOCIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgZXZlbnRfcmVtb3ZlX2Zp bHRlciAodWludCBpZCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCXB1YmxpYyBzdGF0aWMg Ym9vbCBldmVudHNfcGVuZGluZyAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGlj IHN0YXRpYyBib29sIGdldF9hY2Nlc3NpYmlsaXR5X2VuYWJsZWQgKCk7CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2Ug PSAiMS4yIildCisrCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLkV2ZW50IGdldF9jdXJy ZW50X2V2ZW50ICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgc3RhdGljIHVp bnQzMiBnZXRfY3VycmVudF9ldmVudF90aW1lICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQor KwlwdWJsaWMgc3RhdGljIHVub3duZWQgQ2x1dHRlci5CYWNrZW5kIGdldF9kZWZhdWx0X2JhY2tl bmQgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIp XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCXB1YmxpYyBzdGF0aWMgdWludCBnZXRf ZGVmYXVsdF9mcmFtZV9yYXRlICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwlwdWJsaWMg c3RhdGljIENsdXR0ZXIuVGV4dERpcmVjdGlvbiBnZXRfZGVmYXVsdF90ZXh0X2RpcmVjdGlvbiAo KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisr CVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIHN0YXRpYyB1bm93bmVkIFBhbmdv LkZvbnRNYXAgZ2V0X2ZvbnRfbWFwICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwlwdWJs aWMgc3RhdGljIEdMaWIuT3B0aW9uR3JvdXAgZ2V0X29wdGlvbl9ncm91cCAoKTsKKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChz aW5jZSA9ICIwLjgiKV0KKysJcHVibGljIHN0YXRpYyBHTGliLk9wdGlvbkdyb3VwIGdldF9vcHRp b25fZ3JvdXBfd2l0aG91dF9pbml0ICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwlwdWJs aWMgc3RhdGljIHVub3duZWQgc3RyaW5nIGdldF9zY3JpcHRfaWQgKEdMaWIuT2JqZWN0IGdvYmpl Y3QpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0K KysJcHVibGljIHN0YXRpYyBDbHV0dGVyLkluaXRFcnJvciBpbml0IChbQ0NvZGUgKGFycmF5X2xl bmd0aF9jbmFtZSA9ICJhcmdjIiwgYXJyYXlfbGVuZ3RoX3BvcyA9IDAuNSldIHJlZiB1bm93bmVk IHN0cmluZ1tdPyBhcmd2KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJcHVibGljIHN0YXRp YyBDbHV0dGVyLkluaXRFcnJvciBpbml0X3dpdGhfYXJncyAoW0NDb2RlIChhcnJheV9sZW5ndGhf Y25hbWUgPSAiYXJnYyIsIGFycmF5X2xlbmd0aF9wb3MgPSAwLjUpXSByZWYgdW5vd25lZCBzdHJp bmdbXT8gYXJndiwgc3RyaW5nPyBwYXJhbWV0ZXJfc3RyaW5nLCBbQ0NvZGUgKGFycmF5X2xlbmd0 aCA9IGZhbHNlKV0gR0xpYi5PcHRpb25FbnRyeVtdPyBlbnRyaWVzLCBzdHJpbmc/IHRyYW5zbGF0 aW9uX2RvbWFpbikgdGhyb3dzIEdMaWIuRXJyb3I7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlwdWJsaWMgc3RhdGljIHVpbnQzMiBrZXlzeW1f dG9fdW5pY29kZSAodWludCBrZXl2YWwpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIG1haW4gKCk7CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlwdWJsaWMg c3RhdGljIGludCBtYWluX2xldmVsICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIG1haW5fcXVpdCAoKTsK KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCXB1 YmxpYyBzdGF0aWMgdm9pZCBzZXRfY3VzdG9tX2JhY2tlbmRfZnVuYyAodm9pZCogZnVuYyk7Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgc3RhdGljIHVpbnQgdW5pY29kZV90b19r ZXlzeW0gKHVpbnQzMiB3Yyk7CisrfQorZGlmZiAtLWdpdCBhL3ZhcGkvbXV0dGVyLWNvZ2wtNi1j dXN0b20udmFsYSBiL3ZhcGkvbXV0dGVyLWNvZ2wtNi1jdXN0b20udmFsYQorbmV3IGZpbGUgbW9k ZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAwLi5hMmMxMDY0NQorLS0tIC9kZXYvbnVsbAorKysrIGIv dmFwaS9tdXR0ZXItY29nbC02LWN1c3RvbS52YWxhCitAQCAtMCwwICsxLDEyNSBAQAorK25hbWVz cGFjZSBDb2dsIHsKKysJW0NvbXBhY3RdCisrCVtDQ29kZSAoY25hbWUgPSAiQ29nbEhhbmRsZSIp XQorKwlwdWJsaWMgY2xhc3MgQml0bWFwOiBIYW5kbGUgeworKwkJcHVibGljIHN0YXRpYyBCaXRt YXAgbmV3X2Zyb21fZmlsZSAoc3RyaW5nIGZpbGVuYW1lKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJ fQorKworKwlbQ29tcGFjdF0KKysJW0NDb2RlIChjbmFtZSA9ICJDb2dsSGFuZGxlIildCisrCXB1 YmxpYyBjbGFzcyBCdWZmZXI6IEhhbmRsZSB7CisrCQlwdWJsaWMgdWludCBnZXRfc2l6ZSAoKTsK KysJCXB1YmxpYyBib29sIHNldF9kYXRhIChzaXplX3Qgb2Zmc2V0LCBbQ0NvZGUgKGFycmF5X2xl bmd0aF90eXBlID0gInNpemVfdCIpXSB1aW50OFtdIGRhdGEpOworKwkJcHVibGljIHZvaWQgdW5t YXAgKCk7CisrCX0KKysKKysJW0NDb2RlIChoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGlj IHN0cnVjdCBDb2xvciB7CisrCQlwdWJsaWMgQ29sb3IuZnJvbV80ZiAoZmxvYXQgcmVkLCBmbG9h dCBncmVlbiwgZmxvYXQgYmx1ZSwgZmxvYXQgYWxwaGEpOworKwkJcHVibGljIENvbG9yLmZyb21f NHViICh1aW50OCByZWQsIHVpbnQ4IGdyZWVuLCB1aW50OCBibHVlLCB1aW50OCBhbHBoYSk7Cisr CX0KKysKKysJW0NvbXBhY3RdCisrCVtDQ29kZSAocmVmX2Z1bmN0aW9uID0gImNvZ2xfaGFuZGxl X3JlZiIsIHVucmVmX2Z1bmN0aW9uID0gImNvZ2xfaGFuZGxlX3VucmVmIildCisrCXB1YmxpYyBj bGFzcyBIYW5kbGUgeworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2lzX2JpdG1hcCIpXQorKwkJ cHVibGljIGJvb2wgaXNfYml0bWFwICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2lzX2J1 ZmZlciIpXQorKwkJcHVibGljIGJvb2wgaXNfYnVmZmVyICgpOworKwkJW0NDb2RlIChjbmFtZSA9 ICJjb2dsX2lzX21hdGVyaWFsIildCisrCQlwdWJsaWMgYm9vbCBpc19tYXRlcmlhbCAoKTsKKysJ CVtDQ29kZSAoY25hbWUgPSAiY29nbF9pc19vZmZzY3JlZW4iKV0KKysJCXB1YmxpYyBib29sIGlz X29mZnNjcmVlbiAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9pc19waXhlbF9idWZmZXIi KV0KKysJCXB1YmxpYyBib29sIGlzX3BpeGVsX2J1ZmZlciAoKTsKKysJCVtDQ29kZSAoY25hbWUg PSAiY29nbF9pc19wcm9ncmFtIildCisrCQlwdWJsaWMgYm9vbCBpc19wcm9ncmFtICgpOworKwkJ W0NDb2RlIChjbmFtZSA9ICJjb2dsX2lzX3NoYWRlciIpXQorKwkJcHVibGljIGJvb2wgaXNfc2hh ZGVyICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2lzX3RleHR1cmUiKV0KKysJCXB1Ymxp YyBib29sIGlzX3RleHR1cmUgKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfaXNfdmVydGV4 X2J1ZmZlciIpXQorKwkJcHVibGljIGJvb2wgaXNfdmVydGV4X2J1ZmZlciAoKTsKKysJfQorKwor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjb3B5X2Z1bmN0aW9u ID0gImNvZ2xfcGF0aF9jb3B5IildCisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3MgUGF0aCB7 CisrCQlwdWJsaWMgc3RhdGljIHZvaWQgQG5ldyAoKTsKKysJfQorKworKwlbQ29tcGFjdF0KKysJ cHVibGljIGNsYXNzIFBpeGVsQnVmZmVyOiBIYW5kbGUgeworKwkJcHVibGljIFBpeGVsQnVmZmVy ICh1aW50IHNpemUpOworKwkJcHVibGljIFBpeGVsQnVmZmVyLmZvcl9zaXplICh1aW50IHdpZHRo LCB1aW50IGhlaWdodCwgQ29nbC5QaXhlbEZvcm1hdCBmb3JtYXQsIHVpbnQgc3RyaWRlKTsKKysJ fQorKworKwlbQ29tcGFjdF0KKysJW0NDb2RlIChjbmFtZSA9ICJDb2dsSGFuZGxlIiwgcmVmX2Z1 bmN0aW9uID0gImNvZ2xfcHJvZ3JhbV9yZWYiLCB1bnJlZl9mdW5jdGlvbiA9ICJjb2dsX3Byb2dy YW1fdW5yZWYiKV0KKysJcHVibGljIGNsYXNzIFByb2dyYW06IEhhbmRsZSB7CisrCQlbQ0NvZGUg KGNuYW1lID0gImNvZ2xfY3JlYXRlX3Byb2dyYW0iLCB0eXBlID0gIkNvZ2xIYW5kbGUqIiwgaGFz X2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1YmxpYyBQcm9ncmFtICgpOworKwkJ cHVibGljIHZvaWQgYXR0YWNoX3NoYWRlciAoQ29nbC5TaGFkZXIgc2hhZGVyX2hhbmRsZSk7Cisr CQlwdWJsaWMgaW50IGdldF91bmlmb3JtX2xvY2F0aW9uIChzdHJpbmcgdW5pZm9ybV9uYW1lKTsK KysJCXB1YmxpYyB2b2lkIGxpbmsgKCk7CisrCQlwdWJsaWMgc3RhdGljIHZvaWQgdW5pZm9ybV8x ZiAoaW50IHVuaWZvcm1fbm8sIGZsb2F0IHZhbHVlKTsKKysJCXB1YmxpYyBzdGF0aWMgdm9pZCB1 bmlmb3JtXzFpIChpbnQgdW5pZm9ybV9ubywgaW50IHZhbHVlKTsKKysJCXB1YmxpYyBzdGF0aWMg dm9pZCB1bmlmb3JtX2Zsb2F0IChpbnQgdW5pZm9ybV9ubywgaW50IHNpemUsIFtDQ29kZSAoYXJy YXlfbGVuZ3RoX3BvcyA9IDIuOSldIGZsb2F0W10gdmFsdWUpOworKwkJcHVibGljIHN0YXRpYyB2 b2lkIHVuaWZvcm1faW50IChpbnQgdW5pZm9ybV9ubywgaW50IHNpemUsIFtDQ29kZSAoYXJyYXlf bGVuZ3RoX3BvcyA9IDIuOSldIGludFtdIHZhbHVlKTsKKysJCXB1YmxpYyBzdGF0aWMgdm9pZCB1 bmlmb3JtX21hdHJpeCAoaW50IHVuaWZvcm1fbm8sIGludCBzaXplLCBib29sIHRyYW5zcG9zZSwg W0NDb2RlIChhcnJheV9sZW5ndGhfcG9zID0gMi45KV0gZmxvYXRbXSB2YWx1ZSk7CisrCQlwdWJs aWMgdm9pZCB1c2UgKCk7CisrCX0KKysKKysJW0NvbXBhY3RdCisrCVtDQ29kZSAoY25hbWUgPSAi Q29nbEhhbmRsZSIsIHJlZl9mdW5jdGlvbiA9ICJjb2dsX3NoYWRlcl9yZWYiLCB1bnJlZl9mdW5j dGlvbiA9ICJjb2dsX3NoYWRlcl91bnJlZiIpXQorKwlwdWJsaWMgY2xhc3MgU2hhZGVyOiBIYW5k bGUgeworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2NyZWF0ZV9zaGFkZXIiLCB0eXBlID0gIkNv Z2xIYW5kbGUqIiwgaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1YmxpYyBT aGFkZXIgKENvZ2wuU2hhZGVyVHlwZSBzaGFkZXJfdHlwZSk7CisrCQlwdWJsaWMgdm9pZCBjb21w aWxlICgpOworKwkJcHVibGljIHN0cmluZyBnZXRfaW5mb19sb2cgKCk7CisrCQlwdWJsaWMgQ29n bC5TaGFkZXJUeXBlIGdldF90eXBlICgpOworKwkJcHVibGljIGJvb2wgaXNfY29tcGlsZWQgKCk7 CisrCQlwdWJsaWMgdm9pZCBzb3VyY2UgKHN0cmluZyBzb3VyY2UpOworKwl9CisrCisrCVtDb21w YWN0XQorKwlbQ0NvZGUgKGNuYW1lID0gIkNvZ2xIYW5kbGUiLCByZWZfZnVuY3Rpb24gPSAiY29n bF92ZXJ0ZXhfYnVmZmVyX3JlZiIsIHVucmVmX2Z1bmN0aW9uID0gImNvZ2xfdmVydGV4X2J1ZmZl cl91bnJlZiIpXQorKwlwdWJsaWMgY2xhc3MgVmVydGV4QnVmZmVyOiBIYW5kbGUgeworKwkJW0ND b2RlICh0eXBlID0gIkNvZ2xIYW5kbGUqIiwgaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNl KV0KKysJCXB1YmxpYyBWZXJ0ZXhCdWZmZXIgKHVpbnQgbl92ZXJ0aWNlcyk7CisrCQlwdWJsaWMg dm9pZCBhZGQgKHN0cmluZyBhdHRyaWJ1dGVfbmFtZSwgdWNoYXIgbl9jb21wb25lbnRzLCBDb2ds LkF0dHJpYnV0ZVR5cGUgdHlwZSwgYm9vbCBub3JtYWxpemVkLCB1aW50MTYgc3RyaWRlLCB2b2lk KiBwb2ludGVyKTsKKysJCXB1YmxpYyB2b2lkIGRlbGV0ZSAoc3RyaW5nIGF0dHJpYnV0ZV9uYW1l KTsKKysJCXB1YmxpYyB2b2lkIGRpc2FibGUgKHN0cmluZyBhdHRyaWJ1dGVfbmFtZSk7CisrCQlw dWJsaWMgdm9pZCBkcmF3IChDb2dsLlZlcnRpY2VzTW9kZSBtb2RlLCBpbnQgZmlyc3QsIGludCBj b3VudCk7CisrCQlwdWJsaWMgdm9pZCBkcmF3X2VsZW1lbnRzIChDb2dsLlZlcnRpY2VzTW9kZSBt b2RlLCBWZXJ0ZXhCdWZmZXJJbmRpY2VzIGluZGljZXMsIGludCBtaW5faW5kZXgsIGludCBtYXhf aW5kZXgsIGludCBpbmRpY2VzX29mZnNldCwgaW50IGNvdW50KTsKKysJCXB1YmxpYyB2b2lkIGVu YWJsZSAoc3RyaW5nIGF0dHJpYnV0ZV9uYW1lKTsKKysJCXB1YmxpYyB1aW50IGdldF9uX3ZlcnRp Y2VzICgpOworKwkJcHVibGljIHZvaWQgc3VibWl0ICgpOworKwl9CisrCisrCVtDb21wYWN0XQor KwlbQ0NvZGUgKGNuYW1lID0gIkNvZ2xIYW5kbGUiKV0KKysJcHVibGljIGNsYXNzIFZlcnRleEJ1 ZmZlckluZGljZXM6IEhhbmRsZSB7CisrCQlwdWJsaWMgVmVydGV4QnVmZmVySW5kaWNlcyAoQ29n bC5JbmRpY2VzVHlwZSBpbmRpY2VzX3R5cGUsIHZvaWQqIGluZGljZXNfYXJyYXksIGludCBpbmRp Y2VzX2xlbik7CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgQ29nbC5WZXJ0ZXhCdWZmZXJJbmRp Y2VzIGdldF9mb3JfcXVhZHMgKHVpbnQgbl9pbmRpY2VzKTsKKysJCXB1YmxpYyBDb2dsLkluZGlj ZXNUeXBlIGdldF90eXBlICgpOworKwl9CisrCisrCVtDQ29kZSAodHlwZV9pZCA9ICJDT0dMX1RZ UEVfTUFUUklYIiwgY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlwdWJsaWMg c3RydWN0IE1hdHJpeCB7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfbWF0cml4X2luaXRfZnJv bV9hcnJheSIsIGFycmF5X2xlbmd0aCA9IGZhbHNlLCBhcnJheV9udWxsX3Rlcm1pbmF0ZWQgPSBm YWxzZSldCisrCQlwdWJsaWMgTWF0cml4LmZyb21fYXJyYXkgKFtDQ29kZSAoYXJyYXlfbGVuZ3Ro ID0gZmFsc2UpXSBmbG9hdFtdIGFycmF5KTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9tYXRy aXhfaW5pdF9pZGVudGl0eSIpXQorKwkJcHVibGljIE1hdHJpeC5pZGVudGl0eSAoKTsKKysJCVtD Q29kZSAoY25hbWUgPSAiY29nbF9tYXRyaXhfbXVsdGlwbHkiKV0KKysJCXB1YmxpYyBNYXRyaXgu bXVsdGlwbHkgKENvZ2wuTWF0cml4IGEsIENvZ2wuTWF0cml4IGIpOworKwl9CisrCisrCVtTaW1w bGVUeXBlXQorKwlbR0lSIChuYW1lID0gIkJvb2wiKV0KKysJW0Jvb2xlYW5UeXBlXQorKwlwdWJs aWMgc3RydWN0IEJvb2wgOiBib29sIHsKKysJfQorKworKwlwdWJsaWMgc3RhdGljIEdMaWIuQ2Fs bGJhY2sgZ2V0X3Byb2NfYWRkcmVzcyhzdHJpbmcgcyk7CisrfQorZGlmZiAtLWdpdCBhL3ZhcGkv bXV0dGVyLWNvZ2wtNi5kZXBzIGIvdmFwaS9tdXR0ZXItY29nbC02LmRlcHMKK25ldyBmaWxlIG1v ZGUgMTAwNjQ0CitpbmRleCAwMDAwMDAwMC4uOThjY2FjNWIKKy0tLSAvZGV2L251bGwKKysrKyBi L3ZhcGkvbXV0dGVyLWNvZ2wtNi5kZXBzCitAQCAtMCwwICsxIEBACisrcGFuZ28KK2RpZmYgLS1n aXQgYS92YXBpL211dHRlci1jb2dsLTYudmFwaSBiL3ZhcGkvbXV0dGVyLWNvZ2wtNi52YXBpCitu ZXcgZmlsZSBtb2RlIDEwMDY0NAoraW5kZXggMDAwMDAwMDAuLmM5YWI1ZDU3CistLS0gL2Rldi9u dWxsCisrKysgYi92YXBpL211dHRlci1jb2dsLTYudmFwaQorQEAgLTAsMCArMSwxMDc3IEBACisr LyogbXV0dGVyLWNvZ2wtNi52YXBpIGdlbmVyYXRlZCBieSB2YXBpZ2VuLCBkbyBub3QgbW9kaWZ5 LiAqLworKworK1tDQ29kZSAoY3ByZWZpeCA9ICJDb2dsIiwgZ2lyX25hbWVzcGFjZSA9ICJDb2ds IiwgZ2lyX3ZlcnNpb24gPSAiNiIsIGxvd2VyX2Nhc2VfY3ByZWZpeCA9ICJjb2dsXyIpXQorK25h bWVzcGFjZSBDb2dsIHsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5o IiwgY25hbWUgPSAiQ29nbEhhbmRsZSIsIHR5cGVfaWQgPSAiY29nbF9iaXRtYXBfZ2V0X2d0eXBl ICgpIildCisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3MgQml0bWFwIDogQ29nbC5IYW5kbGUg eworKwkJcHVibGljIHN0YXRpYyB1aW50MzIgZXJyb3JfcXVhcmsgKCk7CisrCQlbQ0NvZGUgKGhh c19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDb2dsQml0bWFwKiIpXQorKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEJpdG1hcC5mcm9tX2ZpbGUgKHN0 cmluZyBmaWxlbmFtZSkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMCIpXQorKwkJcHVibGljIENvZ2wuUGl4ZWxGb3JtYXQgZ2V0X2Zvcm1hdCAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgaW50IGdldF9oZWlnaHQgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGludCBnZXRfcm93c3RyaWRl ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyBib29s IGdldF9zaXplX2Zyb21fZmlsZSAoc3RyaW5nIGZpbGVuYW1lLCBvdXQgaW50IHdpZHRoLCBvdXQg aW50IGhlaWdodCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGlu dCBnZXRfd2lkdGggKCk7CisrCQlwdWJsaWMgc3RhdGljIENvZ2wuQml0bWFwIG5ld19mcm9tX2Zp bGUgKHN0cmluZyBmaWxlbmFtZSkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY25hbWUgPSAiQ29nbEhhbmRsZSIpXQor KwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIEJ1ZmZlciA6IENvZ2wuSGFuZGxlIHsKKysJCXB1 YmxpYyB1aW50IGdldF9zaXplICgpOworKwkJcHVibGljIGJvb2wgc2V0X2RhdGEgKHNpemVfdCBv ZmZzZXQsIFtDQ29kZSAoYXJyYXlfbGVuZ3RoX3R5cGUgPSAic2l6ZV90IildIHVpbnQ4W10gZGF0 YSk7CisrCQlwdWJsaWMgdm9pZCB1bm1hcCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY29nbC9jb2dsLmgiLCB0eXBlX2lkID0gImNvZ2xfY29udGV4dF9nZXRfZ3R5cGUg KCkiKV0KKysJcHVibGljIGNsYXNzIENvbnRleHQgOiBDb2dsLk9iamVjdCB7CisrCQlbQ0NvZGUg KGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgQ29udGV4dCAo KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjb3B5 X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24gPSAiZ19ib3hlZF9mcmVl IiwgdHlwZV9pZCA9ICJjb2dsX2ZyYW1lX2Nsb3N1cmVfZ2V0X2d0eXBlICgpIildCisrCVtDb21w YWN0XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNCIpXQorKwlwdWJsaWMgY2xhc3MgRnJhbWVD bG9zdXJlIHsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgi LCByZWZfZnVuY3Rpb24gPSAiY29nbF9oYW5kbGVfcmVmIiwgdW5yZWZfZnVuY3Rpb24gPSAiY29n bF9oYW5kbGVfdW5yZWYiKV0KKysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFzcyBIYW5kbGUgewor KwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2lzX2JpdG1hcCIpXQorKwkJcHVibGljIGJvb2wgaXNf Yml0bWFwICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2lzX2J1ZmZlciIpXQorKwkJcHVi bGljIGJvb2wgaXNfYnVmZmVyICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2lzX21hdGVy aWFsIildCisrCQlwdWJsaWMgYm9vbCBpc19tYXRlcmlhbCAoKTsKKysJCVtDQ29kZSAoY25hbWUg PSAiY29nbF9pc19vZmZzY3JlZW4iKV0KKysJCXB1YmxpYyBib29sIGlzX29mZnNjcmVlbiAoKTsK KysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9pc19waXhlbF9idWZmZXIiKV0KKysJCXB1YmxpYyBi b29sIGlzX3BpeGVsX2J1ZmZlciAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9pc19wcm9n cmFtIildCisrCQlwdWJsaWMgYm9vbCBpc19wcm9ncmFtICgpOworKwkJW0NDb2RlIChjbmFtZSA9 ICJjb2dsX2lzX3NoYWRlciIpXQorKwkJcHVibGljIGJvb2wgaXNfc2hhZGVyICgpOworKwkJW0ND b2RlIChjbmFtZSA9ICJjb2dsX2lzX3RleHR1cmUiKV0KKysJCXB1YmxpYyBib29sIGlzX3RleHR1 cmUgKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfaXNfdmVydGV4X2J1ZmZlciIpXQorKwkJ cHVibGljIGJvb2wgaXNfdmVydGV4X2J1ZmZlciAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIs IGZyZWVfZnVuY3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJjb2dsX21hdGVyaWFs X2dldF90eXBlICgpIildCisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3MgTWF0ZXJpYWwgewor KwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJW1ZlcnNpb24g KGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiKV0KKysJCXB1Ymxp YyBNYXRlcmlhbCAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRl ZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfYWxw aGFfdGVzdF9mdW5jdGlvbiAoQ29nbC5NYXRlcmlhbEFscGhhRnVuYyBhbHBoYV9mdW5jLCBmbG9h dCBhbHBoYV9yZWZlcmVuY2UpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXBy ZWNhdGVkX3NpbmNlID0gIjEuMTYiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBib29sIHNl dF9ibGVuZCAoc3RyaW5nIGJsZW5kX3N0cmluZykgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlbVmVy c2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIsIHNpbmNl ID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2JsZW5kX2NvbnN0YW50IChDb2dsLkNvbG9y IGNvbnN0YW50X2NvbG9yKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVj YXRlZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRf Y29sb3IgKENvZ2wuQ29sb3IgY29sb3IpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVl LCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2 b2lkIHNldF9jb2xvcjR1YiAodWludDggcmVkLCB1aW50OCBncmVlbiwgdWludDggYmx1ZSwgdWlu dDggYWxwaGEpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3Np bmNlID0gIjEuMTYiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9sYXllciAo aW50IGxheWVyX2luZGV4LCBDb2dsLkhhbmRsZSB0ZXh0dXJlKTsKKysJCVtWZXJzaW9uIChkZXBy ZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2UgPSAiMS4wIild CisrCQlwdWJsaWMgYm9vbCBzZXRfbGF5ZXJfY29tYmluZSAoaW50IGxheWVyX2luZGV4LCBzdHJp bmcgYmxlbmRfc3RyaW5nKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJCVtWZXJzaW9uIChkZXByZWNh dGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2UgPSAiMS4wIildCisr CQlwdWJsaWMgdm9pZCBzZXRfbGF5ZXJfY29tYmluZV9jb25zdGFudCAoaW50IGxheWVyX2luZGV4 LCBDb2dsLkNvbG9yIGNvbnN0YW50KTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwg ZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2IildCisrCQlwdWJsaWMgdm9pZCBzZXRfbGF5ZXJfZmls dGVycyAoaW50IGxheWVyX2luZGV4LCBDb2dsLk1hdGVyaWFsRmlsdGVyIG1pbl9maWx0ZXIsIENv Z2wuTWF0ZXJpYWxGaWx0ZXIgbWFnX2ZpbHRlcik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9 IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2xh eWVyX21hdHJpeCAoaW50IGxheWVyX2luZGV4LCBDb2dsLk1hdHJpeCBtYXRyaXgpOworKwkJW1Zl cnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiLCBzaW5j ZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBib29sIHNldF9sYXllcl9wb2ludF9zcHJpdGVfY29vcmRz X2VuYWJsZWQgKGludCBsYXllcl9pbmRleCwgYm9vbCBlbmFibGUpIHRocm93cyBHTGliLkVycm9y OworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEu MTYiLCBzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9wb2ludF9zaXplIChmbG9h dCBwb2ludF9zaXplKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRl ZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBzZXRfdXNl cl9wcm9ncmFtIChDb2dsLkhhbmRsZSBwcm9ncmFtKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0NvbXBh Y3RdCisrCXB1YmxpYyBjbGFzcyBNYXRlcmlhbExheWVyIHsKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCB0eXBlX2lkID0gImNvZ2xfb2JqZWN0X2dldF9n dHlwZSAoKSIpXQorKwlwdWJsaWMgYWJzdHJhY3QgY2xhc3MgT2JqZWN0IHsKKysJCVtDQ29kZSAo aGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBPYmplY3QgKCk7 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgdHlwZV9p ZCA9ICJjb2dsX29mZnNjcmVlbl9nZXRfZ3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIE9mZnNj cmVlbiA6IENvZ2wuT2JqZWN0LCBDb2dsLkZyYW1lYnVmZmVyIHsKKysJCVtDQ29kZSAoaGFzX2Nv bnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBPZmZzY3JlZW4gKCk7Cisr CQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlbVmVyc2lvbiAo ZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIpXQorKwkJcHVibGlj IE9mZnNjcmVlbi50b190ZXh0dXJlIChDb2dsLlRleHR1cmUgdGV4dHVyZSk7CisrCQlbQ0NvZGUg KGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwdWJsaWMgT2Zmc2NyZWVuLndp dGhfdGV4dHVyZSAoQ29nbC5UZXh0dXJlIHRleHR1cmUpOworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIHR5cGVfaWQgPSAiY29nbF9vbnNjcmVlbl9nZXRf Z3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIE9uc2NyZWVuIDogQ29nbC5PYmplY3QsIENvZ2wu RnJhbWVidWZmZXIgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2Up XQorKwkJcHJvdGVjdGVkIE9uc2NyZWVuICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTYi KV0KKysJCXB1YmxpYyBDb2dsLk9uc2NyZWVuRGlydHlDbG9zdXJlIGFkZF9kaXJ0eV9jYWxsYmFj ayAoW0NDb2RlIChkZWxlZ2F0ZV90YXJnZXRfcG9zID0gMS41KV0gQ29nbC5PbnNjcmVlbkRpcnR5 Q2FsbGJhY2sgY2FsbGJhY2ssIENvZ2wuVXNlckRhdGFEZXN0cm95Q2FsbGJhY2s/IGRlc3Ryb3kp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIENvZ2wuT25zY3JlZW5S ZXNpemVDbG9zdXJlIGFkZF9yZXNpemVfY2FsbGJhY2sgKFtDQ29kZSAoZGVsZWdhdGVfdGFyZ2V0 X3BvcyA9IDEuNSldIENvZ2wuT25zY3JlZW5SZXNpemVDYWxsYmFjayBjYWxsYmFjaywgQ29nbC5V c2VyRGF0YURlc3Ryb3lDYWxsYmFjaz8gZGVzdHJveSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xNCIpXQorKwkJcHVibGljIGludCBnZXRfYnVmZmVyX2FnZSAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjE0IildCisrCQlwdWJsaWMgaW50NjQgZ2V0X2ZyYW1lX2NvdW50ZXIgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgYm9vbCBnZXRfcmVzaXphYmxl ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgaGlkZSAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2IildCisrCQlwdWJsaWMgdm9pZCByZW1vdmVf ZGlydHlfY2FsbGJhY2sgKENvZ2wuT25zY3JlZW5EaXJ0eUNsb3N1cmUgY2xvc3VyZSk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xNCIpXQorKwkJcHVibGljIHZvaWQgcmVtb3ZlX2ZyYW1lX2Nh bGxiYWNrIChDb2dsLkZyYW1lQ2xvc3VyZSBjbG9zdXJlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIHJlbW92ZV9yZXNpemVfY2FsbGJhY2sgKENvZ2wuT25z Y3JlZW5SZXNpemVDbG9zdXJlIGNsb3N1cmUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIp XQorKwkJcHVibGljIHZvaWQgc2V0X3Jlc2l6YWJsZSAoYm9vbCByZXNpemFibGUpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgc2hvdyAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzd2FwX2J1ZmZlcnMgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNiIpXQorKwkJcHVibGljIHZvaWQgc3dhcF9idWZmZXJz X3dpdGhfZGFtYWdlIChpbnQgcmVjdGFuZ2xlcywgaW50IG5fcmVjdGFuZ2xlcyk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc3dhcF9yZWdpb24gKGludCBy ZWN0YW5nbGVzLCBpbnQgbl9yZWN0YW5nbGVzKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZy ZWVfZnVuY3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJjb2dsX29uc2NyZWVuX2Rp cnR5X2Nsb3N1cmVfZ2V0X2d0eXBlICgpIildCisrCVtDb21wYWN0XQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xNiIpXQorKwlwdWJsaWMgY2xhc3MgT25zY3JlZW5EaXJ0eUNsb3N1cmUgeworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNvcHlfZnVuY3Rp b24gPSAiZ19ib3hlZF9jb3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0eXBl X2lkID0gImNvZ2xfb25zY3JlZW5fcmVzaXplX2Nsb3N1cmVfZ2V0X2d0eXBlICgpIildCisrCVtD b21wYWN0XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCXB1YmxpYyBjbGFzcyBPbnNj cmVlblJlc2l6ZUNsb3N1cmUgeworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj b2dsL2NvZ2wuaCIsIGNvcHlfZnVuY3Rpb24gPSAiY29nbF9wYXRoX2NvcHkiKV0KKysJW0NvbXBh Y3RdCisrCXB1YmxpYyBjbGFzcyBQYXRoIHsKKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBAbmV3ICgp OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIHR5cGVf aWQgPSAiY29nbF9waXBlbGluZV9nZXRfZ3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFBpcGVs aW5lIDogQ29nbC5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0g ZmFsc2UpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIFBpcGVsaW5l IChDb2dsLkNvbnRleHQgY29udGV4dCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisr CQlwdWJsaWMgQ29nbC5QaXBlbGluZSBjb3B5ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIu MCIpXQorKwkJcHVibGljIHZvaWQgZm9yZWFjaF9sYXllciAoQ29nbC5QaXBlbGluZUxheWVyQ2Fs bGJhY2sgY2FsbGJhY2spOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGlj IENvZ2wuUGlwZWxpbmVBbHBoYUZ1bmMgZ2V0X2FscGhhX3Rlc3RfZnVuY3Rpb24gKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X2FscGhhX3Rlc3Rf cmVmZXJlbmNlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIENv Z2wuQ29sb3IgZ2V0X2NvbG9yICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJ cHVibGljIENvZ2wuUGlwZWxpbmVDdWxsRmFjZU1vZGUgZ2V0X2N1bGxfZmFjZV9tb2RlICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIENvZ2wuV2luZGluZyBnZXRf ZnJvbnRfZmFjZV93aW5kaW5nICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyBDb2dsLlBpcGVsaW5lRmlsdGVyIGdldF9sYXllcl9tYWdfZmlsdGVyIChpbnQgbGF5 ZXJfaW5kZXgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDb2ds LlBpcGVsaW5lRmlsdGVyIGdldF9sYXllcl9taW5fZmlsdGVyIChpbnQgbGF5ZXJfaW5kZXgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIGJvb2wgZ2V0X2xheWVyX3Bv aW50X3Nwcml0ZV9jb29yZHNfZW5hYmxlZCAoaW50IGxheWVyX2luZGV4KTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdW5vd25lZCBDb2dsLlRleHR1cmUgZ2V0X2xh eWVyX3RleHR1cmUgKGludCBsYXllcl9pbmRleCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42 IildCisrCQlwdWJsaWMgQ29nbC5QaXBlbGluZVdyYXBNb2RlIGdldF9sYXllcl93cmFwX21vZGVf cyAoaW50IGxheWVyX2luZGV4KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1 YmxpYyBDb2dsLlBpcGVsaW5lV3JhcE1vZGUgZ2V0X2xheWVyX3dyYXBfbW9kZV90IChpbnQgbGF5 ZXJfaW5kZXgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIGludCBn ZXRfbl9sYXllcnMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMg Ym9vbCBnZXRfcGVyX3ZlcnRleF9wb2ludF9zaXplICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjIuMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF9wb2ludF9zaXplICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIGludCBnZXRfdW5pZm9ybV9sb2NhdGlvbiAoc3Ry aW5nIHVuaWZvcm1fbmFtZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJs aWMgdW5vd25lZCBDb2dsLkhhbmRsZSBnZXRfdXNlcl9wcm9ncmFtICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHJlbW92ZV9sYXllciAoaW50IGxheWVy X2luZGV4KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNl dF9hbHBoYV90ZXN0X2Z1bmN0aW9uIChDb2dsLlBpcGVsaW5lQWxwaGFGdW5jIGFscGhhX2Z1bmMs IGZsb2F0IGFscGhhX3JlZmVyZW5jZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisr CQlwdWJsaWMgYm9vbCBzZXRfYmxlbmQgKHN0cmluZyBibGVuZF9zdHJpbmcpIHRocm93cyBHTGli LkVycm9yOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0 X2JsZW5kX2NvbnN0YW50IChDb2dsLkNvbG9yIGNvbnN0YW50X2NvbG9yKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9jb2xvciAoQ29nbC5Db2xvciBj b2xvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRf Y29sb3I0ZiAoZmxvYXQgcmVkLCBmbG9hdCBncmVlbiwgZmxvYXQgYmx1ZSwgZmxvYXQgYWxwaGEp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2NvbG9y NHViICh1aW50OCByZWQsIHVpbnQ4IGdyZWVuLCB1aW50OCBibHVlLCB1aW50OCBhbHBoYSk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfY3VsbF9mYWNl X21vZGUgKENvZ2wuUGlwZWxpbmVDdWxsRmFjZU1vZGUgY3VsbF9mYWNlX21vZGUpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2Zyb250X2ZhY2Vfd2lu ZGluZyAoQ29nbC5XaW5kaW5nIGZyb250X3dpbmRpbmcpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjIuMCIpXQorKwkJcHVibGljIGJvb2wgc2V0X2xheWVyX2NvbWJpbmUgKGludCBsYXllcl9pbmRl eCwgc3RyaW5nIGJsZW5kX3N0cmluZykgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbGF5ZXJfY29tYmluZV9jb25zdGFu dCAoaW50IGxheWVyX2luZGV4LCBDb2dsLkNvbG9yIGNvbnN0YW50KTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbGF5ZXJfZmlsdGVycyAoaW50IGxh eWVyX2luZGV4LCBDb2dsLlBpcGVsaW5lRmlsdGVyIG1pbl9maWx0ZXIsIENvZ2wuUGlwZWxpbmVG aWx0ZXIgbWFnX2ZpbHRlcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVi bGljIHZvaWQgc2V0X2xheWVyX21hdHJpeCAoaW50IGxheWVyX2luZGV4LCBDb2dsLk1hdHJpeCBt YXRyaXgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNl dF9sYXllcl9udWxsX3RleHR1cmUgKGludCBsYXllcl9pbmRleCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMi4wIildCisrCQlwdWJsaWMgYm9vbCBzZXRfbGF5ZXJfcG9pbnRfc3ByaXRlX2Nvb3Jk c19lbmFibGVkIChpbnQgbGF5ZXJfaW5kZXgsIGJvb2wgZW5hYmxlKSB0aHJvd3MgR0xpYi5FcnJv cjsKKysJCXB1YmxpYyB2b2lkIHNldF9sYXllcl90ZXh0dXJlIChpbnQgbGF5ZXJfaW5kZXgsIENv Z2wuVGV4dHVyZSB0ZXh0dXJlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1 YmxpYyB2b2lkIHNldF9sYXllcl93cmFwX21vZGUgKGludCBsYXllcl9pbmRleCwgQ29nbC5QaXBl bGluZVdyYXBNb2RlIG1vZGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVi bGljIHZvaWQgc2V0X2xheWVyX3dyYXBfbW9kZV9zIChpbnQgbGF5ZXJfaW5kZXgsIENvZ2wuUGlw ZWxpbmVXcmFwTW9kZSBtb2RlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1 YmxpYyB2b2lkIHNldF9sYXllcl93cmFwX21vZGVfdCAoaW50IGxheWVyX2luZGV4LCBDb2dsLlBp cGVsaW5lV3JhcE1vZGUgbW9kZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlw dWJsaWMgYm9vbCBzZXRfcGVyX3ZlcnRleF9wb2ludF9zaXplIChib29sIGVuYWJsZSkgdGhyb3dz IEdMaWIuRXJyb3I7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9p ZCBzZXRfcG9pbnRfc2l6ZSAoZmxvYXQgcG9pbnRfc2l6ZSk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfdW5pZm9ybV8xZiAoaW50IHVuaWZvcm1fbG9j YXRpb24sIGZsb2F0IHZhbHVlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1 YmxpYyB2b2lkIHNldF91bmlmb3JtXzFpIChpbnQgdW5pZm9ybV9sb2NhdGlvbiwgaW50IHZhbHVl KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF91bmlm b3JtX2Zsb2F0IChpbnQgdW5pZm9ybV9sb2NhdGlvbiwgaW50IG5fY29tcG9uZW50cywgaW50IGNv dW50LCBmbG9hdCB2YWx1ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJs aWMgdm9pZCBzZXRfdW5pZm9ybV9pbnQgKGludCB1bmlmb3JtX2xvY2F0aW9uLCBpbnQgbl9jb21w b25lbnRzLCBpbnQgY291bnQsIGludCB2YWx1ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4w IildCisrCQlwdWJsaWMgdm9pZCBzZXRfdW5pZm9ybV9tYXRyaXggKGludCB1bmlmb3JtX2xvY2F0 aW9uLCBpbnQgZGltZW5zaW9ucywgaW50IGNvdW50LCBib29sIHRyYW5zcG9zZSwgZmxvYXQgdmFs dWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3Vz ZXJfcHJvZ3JhbSAoQ29nbC5IYW5kbGUgcHJvZ3JhbSk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3Mg UGl4ZWxCdWZmZXIgOiBDb2dsLkhhbmRsZSB7CisrCQlwdWJsaWMgUGl4ZWxCdWZmZXIgKHVpbnQg c2l6ZSk7CisrCQlwdWJsaWMgUGl4ZWxCdWZmZXIuZm9yX3NpemUgKHVpbnQgd2lkdGgsIHVpbnQg aGVpZ2h0LCBDb2dsLlBpeGVsRm9ybWF0IGZvcm1hdCwgdWludCBzdHJpZGUpOworKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNuYW1lID0gIkNvZ2xIYW5k bGUiLCByZWZfZnVuY3Rpb24gPSAiY29nbF9wcm9ncmFtX3JlZiIsIHVucmVmX2Z1bmN0aW9uID0g ImNvZ2xfcHJvZ3JhbV91bnJlZiIpXQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIFByb2dy YW0gOiBDb2dsLkhhbmRsZSB7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfY3JlYXRlX3Byb2dy YW0iLCBoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ29nbEhhbmRsZSoi KV0KKysJCXB1YmxpYyBQcm9ncmFtICgpOworKwkJcHVibGljIHZvaWQgYXR0YWNoX3NoYWRlciAo Q29nbC5TaGFkZXIgc2hhZGVyX2hhbmRsZSk7CisrCQlwdWJsaWMgaW50IGdldF91bmlmb3JtX2xv Y2F0aW9uIChzdHJpbmcgdW5pZm9ybV9uYW1lKTsKKysJCXB1YmxpYyB2b2lkIGxpbmsgKCk7Cisr CQlwdWJsaWMgc3RhdGljIHZvaWQgdW5pZm9ybV8xZiAoaW50IHVuaWZvcm1fbm8sIGZsb2F0IHZh bHVlKTsKKysJCXB1YmxpYyBzdGF0aWMgdm9pZCB1bmlmb3JtXzFpIChpbnQgdW5pZm9ybV9ubywg aW50IHZhbHVlKTsKKysJCXB1YmxpYyBzdGF0aWMgdm9pZCB1bmlmb3JtX2Zsb2F0IChpbnQgdW5p Zm9ybV9ubywgaW50IHNpemUsIFtDQ29kZSAoYXJyYXlfbGVuZ3RoX3BvcyA9IDIuOSldIGZsb2F0 W10gdmFsdWUpOworKwkJcHVibGljIHN0YXRpYyB2b2lkIHVuaWZvcm1faW50IChpbnQgdW5pZm9y bV9ubywgaW50IHNpemUsIFtDQ29kZSAoYXJyYXlfbGVuZ3RoX3BvcyA9IDIuOSldIGludFtdIHZh bHVlKTsKKysJCXB1YmxpYyBzdGF0aWMgdm9pZCB1bmlmb3JtX21hdHJpeCAoaW50IHVuaWZvcm1f bm8sIGludCBzaXplLCBib29sIHRyYW5zcG9zZSwgW0NDb2RlIChhcnJheV9sZW5ndGhfcG9zID0g Mi45KV0gZmxvYXRbXSB2YWx1ZSk7CisrCQlwdWJsaWMgdm9pZCB1c2UgKCk7CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY25hbWUgPSAiQ29nbEhhbmRs ZSIsIHJlZl9mdW5jdGlvbiA9ICJjb2dsX3NoYWRlcl9yZWYiLCB1bnJlZl9mdW5jdGlvbiA9ICJj b2dsX3NoYWRlcl91bnJlZiIpXQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIFNoYWRlciA6 IENvZ2wuSGFuZGxlIHsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9jcmVhdGVfc2hhZGVyIiwg aGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNvZ2xIYW5kbGUqIildCisr CQlwdWJsaWMgU2hhZGVyIChDb2dsLlNoYWRlclR5cGUgc2hhZGVyX3R5cGUpOworKwkJcHVibGlj IHZvaWQgY29tcGlsZSAoKTsKKysJCXB1YmxpYyBzdHJpbmcgZ2V0X2luZm9fbG9nICgpOworKwkJ cHVibGljIENvZ2wuU2hhZGVyVHlwZSBnZXRfdHlwZSAoKTsKKysJCXB1YmxpYyBib29sIGlzX2Nv bXBpbGVkICgpOworKwkJcHVibGljIHZvaWQgc291cmNlIChzdHJpbmcgc291cmNlKTsKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBsb3dlcl9jYXNlX2Nz dWZmaXggPSAidGV4dHVyZV8yZCIsIHR5cGVfaWQgPSAiY29nbF90ZXh0dXJlXzJkX2dldF9ndHlw ZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgVGV4dHVyZTJEIDogQ29nbC5PYmplY3QsIENvZ2wuVGV4 dHVyZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlw cm90ZWN0ZWQgVGV4dHVyZTJEICgpOworKwkJcHVibGljIHZvaWQgZWdsX2ltYWdlX2V4dGVybmFs X2FsbG9jX2ZpbmlzaCAodm9pZCogdXNlcl9kYXRhLCBHTGliLkRlc3Ryb3lOb3RpZnkgZGVzdHJv eSk7CisrCQlwdWJsaWMgdm9pZCBlZ2xfaW1hZ2VfZXh0ZXJuYWxfYmluZCAoKTsKKysJCVtDQ29k ZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIyLjAiKV0KKysJCXB1YmxpYyBUZXh0dXJlMkQuZnJvbV9iaXRtYXAgKENvZ2wuQml0bWFwIGJp dG1hcCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwg bG93ZXJfY2FzZV9jc3VmZml4ID0gInRleHR1cmVfMmRfc2xpY2VkIiwgdHlwZV9pZCA9ICJjb2ds X3RleHR1cmVfMmRfc2xpY2VkX2dldF9ndHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgVGV4dHVy ZTJEU2xpY2VkIDogQ29nbC5PYmplY3QsIENvZ2wuVGV4dHVyZSB7CisrCQlbQ0NvZGUgKGhhc19j b25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgVGV4dHVyZTJEU2xpY2Vk ICgpOworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTYiKV0KKysJCXB1YmxpYyBUZXh0dXJlMkRTbGljZWQuZnJvbV9i aXRtYXAgKENvZ2wuQml0bWFwIGJtcCwgaW50IG1heF93YXN0ZSk7CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY25hbWUgPSAiQ29nbEhhbmRsZSIsIHJl Zl9mdW5jdGlvbiA9ICJjb2dsX3ZlcnRleF9idWZmZXJfcmVmIiwgdW5yZWZfZnVuY3Rpb24gPSAi Y29nbF92ZXJ0ZXhfYnVmZmVyX3VucmVmIildCisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3Mg VmVydGV4QnVmZmVyIDogQ29nbC5IYW5kbGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1 bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ29nbEhhbmRsZSoiKV0KKysJCXB1YmxpYyBWZXJ0ZXhC dWZmZXIgKHVpbnQgbl92ZXJ0aWNlcyk7CisrCQlwdWJsaWMgdm9pZCBhZGQgKHN0cmluZyBhdHRy aWJ1dGVfbmFtZSwgdWNoYXIgbl9jb21wb25lbnRzLCBDb2dsLkF0dHJpYnV0ZVR5cGUgdHlwZSwg Ym9vbCBub3JtYWxpemVkLCB1aW50MTYgc3RyaWRlLCB2b2lkKiBwb2ludGVyKTsKKysJCXB1Ymxp YyB2b2lkIEBkZWxldGUgKHN0cmluZyBhdHRyaWJ1dGVfbmFtZSk7CisrCQlwdWJsaWMgdm9pZCBk aXNhYmxlIChzdHJpbmcgYXR0cmlidXRlX25hbWUpOworKwkJcHVibGljIHZvaWQgZHJhdyAoQ29n bC5WZXJ0aWNlc01vZGUgbW9kZSwgaW50IGZpcnN0LCBpbnQgY291bnQpOworKwkJcHVibGljIHZv aWQgZHJhd19lbGVtZW50cyAoQ29nbC5WZXJ0aWNlc01vZGUgbW9kZSwgQ29nbC5WZXJ0ZXhCdWZm ZXJJbmRpY2VzIGluZGljZXMsIGludCBtaW5faW5kZXgsIGludCBtYXhfaW5kZXgsIGludCBpbmRp Y2VzX29mZnNldCwgaW50IGNvdW50KTsKKysJCXB1YmxpYyB2b2lkIGVuYWJsZSAoc3RyaW5nIGF0 dHJpYnV0ZV9uYW1lKTsKKysJCXB1YmxpYyB1aW50IGdldF9uX3ZlcnRpY2VzICgpOworKwkJcHVi bGljIHZvaWQgc3VibWl0ICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj b2dsL2NvZ2wuaCIsIGNuYW1lID0gIkNvZ2xIYW5kbGUiKV0KKysJW0NvbXBhY3RdCisrCXB1Ymxp YyBjbGFzcyBWZXJ0ZXhCdWZmZXJJbmRpY2VzIDogQ29nbC5IYW5kbGUgeworKwkJcHVibGljIFZl cnRleEJ1ZmZlckluZGljZXMgKENvZ2wuSW5kaWNlc1R5cGUgaW5kaWNlc190eXBlLCB2b2lkKiBp bmRpY2VzX2FycmF5LCBpbnQgaW5kaWNlc19sZW4pOworKwkJcHVibGljIHN0YXRpYyB1bm93bmVk IENvZ2wuVmVydGV4QnVmZmVySW5kaWNlcyBnZXRfZm9yX3F1YWRzICh1aW50IG5faW5kaWNlcyk7 CisrCQlwdWJsaWMgQ29nbC5JbmRpY2VzVHlwZSBnZXRfdHlwZSAoKTsKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCB0eXBlX2lkID0gImNvZ2xfZnJhbWVi dWZmZXJfZ2V0X2d0eXBlICgpIildCisrCXB1YmxpYyBpbnRlcmZhY2UgRnJhbWVidWZmZXIgOiBD b2dsLk9iamVjdCB7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgYm9v bCBhbGxvY2F0ZSAoKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjgiKV0KKysJCXB1YmxpYyB2b2lkIGNsZWFyICh1bG9uZyBidWZmZXJzLCBDb2dsLkNvbG9yIGNv bG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIGNsZWFy NGYgKHVsb25nIGJ1ZmZlcnMsIGZsb2F0IHJlZCwgZmxvYXQgZ3JlZW4sIGZsb2F0IGJsdWUsIGZs b2F0IGFscGhhKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lk IGRpc2NhcmRfYnVmZmVycyAodWxvbmcgYnVmZmVycyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMCIpXQorKwkJcHVibGljIHZvaWQgZHJhd19tdWx0aXRleHR1cmVkX3JlY3RhbmdsZSAoQ29n bC5QaXBlbGluZSBwaXBlbGluZSwgZmxvYXQgeF8xLCBmbG9hdCB5XzEsIGZsb2F0IHhfMiwgZmxv YXQgeV8yLCBbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gZmxvYXRbXSB0ZXhfY29vcmRz LCBpbnQgdGV4X2Nvb3Jkc19sZW4pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyB2b2lkIGRyYXdfcmVjdGFuZ2xlIChDb2dsLlBpcGVsaW5lIHBpcGVsaW5lLCBmbG9h dCB4XzEsIGZsb2F0IHlfMSwgZmxvYXQgeF8yLCBmbG9hdCB5XzIpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIGRyYXdfcmVjdGFuZ2xlcyAoQ29nbC5QaXBl bGluZSBwaXBlbGluZSwgW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIGZsb2F0W10gY29v cmRpbmF0ZXMsIHVpbnQgbl9yZWN0YW5nbGVzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEw IildCisrCQlwdWJsaWMgdm9pZCBkcmF3X3RleHR1cmVkX3JlY3RhbmdsZSAoQ29nbC5QaXBlbGlu ZSBwaXBlbGluZSwgZmxvYXQgeF8xLCBmbG9hdCB5XzEsIGZsb2F0IHhfMiwgZmxvYXQgeV8yLCBm bG9hdCBzXzEsIGZsb2F0IHRfMSwgZmxvYXQgc18yLCBmbG9hdCB0XzIpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIGRyYXdfdGV4dHVyZWRfcmVjdGFuZ2xl cyAoQ29nbC5QaXBlbGluZSBwaXBlbGluZSwgW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSld IGZsb2F0W10gY29vcmRpbmF0ZXMsIHVpbnQgbl9yZWN0YW5nbGVzKTsKKysJCXB1YmxpYyBzdGF0 aWMgdWludDMyIGVycm9yX3F1YXJrICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0K KysJCXB1YmxpYyB2b2lkIGZpbmlzaCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIild CisrCQlwdWJsaWMgdm9pZCBmcnVzdHVtIChmbG9hdCBsZWZ0LCBmbG9hdCByaWdodCwgZmxvYXQg Ym90dG9tLCBmbG9hdCB0b3AsIGZsb2F0IHpfbmVhciwgZmxvYXQgel9mYXIpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIGludCBnZXRfYWxwaGFfYml0cyAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X2JsdWVfYml0cyAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB1bm93bmVkIENvZ2wu Q29udGV4dCBnZXRfY29udGV4dCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJ CXB1YmxpYyBpbnQgZ2V0X2RlcHRoX2JpdHMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x OCIpXQorKwkJcHVibGljIGJvb2wgZ2V0X2RlcHRoX3dyaXRlX2VuYWJsZWQgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgYm9vbCBnZXRfZGl0aGVyX2VuYWJsZWQg KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgaW50IGdldF9ncmVl bl9iaXRzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIGludCBn ZXRfaGVpZ2h0ICgpOworKwkJcHVibGljIGJvb2wgZ2V0X2lzX3N0ZXJlbyAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ29nbC5NYXRyaXggZ2V0X21vZGVsdmll d19tYXRyaXggKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENv Z2wuTWF0cml4IGdldF9wcm9qZWN0aW9uX21hdHJpeCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjgiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X3JlZF9iaXRzICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X3NhbXBsZXNfcGVyX3BpeGVsICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjAiKV0KKysJCXB1YmxpYyBDb2dsLlN0ZXJlb01vZGUg Z2V0X3N0ZXJlb19tb2RlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVi bGljIHZvaWQgZ2V0X3ZpZXdwb3J0NGZ2IChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0g b3V0IHVub3duZWQgZmxvYXQgdmlld3BvcnRbNF0pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu OCIpXQorKwkJcHVibGljIGZsb2F0IGdldF92aWV3cG9ydF9oZWlnaHQgKCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3ZpZXdwb3J0X3dpZHRoICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIGZsb2F0IGdldF92aWV3 cG9ydF94ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIGZsb2F0 IGdldF92aWV3cG9ydF95ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVi bGljIGludCBnZXRfd2lkdGggKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJ cHVibGljIHZvaWQgaWRlbnRpdHlfbWF0cml4ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTAiKV0KKysJCXB1YmxpYyB2b2lkIG9ydGhvZ3JhcGhpYyAoZmxvYXQgeF8xLCBmbG9hdCB5XzEs IGZsb2F0IHhfMiwgZmxvYXQgeV8yLCBmbG9hdCBuZWFyLCBmbG9hdCBmYXIpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHBlcnNwZWN0aXZlIChmbG9hdCBm b3ZfeSwgZmxvYXQgYXNwZWN0LCBmbG9hdCB6X25lYXIsIGZsb2F0IHpfZmFyKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBwb3BfY2xpcCAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBwb3BfbWF0cml4ICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHB1c2hfbWF0cml4 ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHB1c2hf cmVjdGFuZ2xlX2NsaXAgKGZsb2F0IHhfMSwgZmxvYXQgeV8xLCBmbG9hdCB4XzIsIGZsb2F0IHlf Mik7CisrCQlwdWJsaWMgdm9pZCBwdXNoX3JlZ2lvbl9jbGlwIChDYWlyby5SZWdpb24gcmVnaW9u KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBwdXNoX3Nj aXNzb3JfY2xpcCAoaW50IHgsIGludCB5LCBpbnQgd2lkdGgsIGludCBoZWlnaHQpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBib29sIHJlYWRfcGl4ZWxzIChpbnQg eCwgaW50IHksIGludCB3aWR0aCwgaW50IGhlaWdodCwgQ29nbC5QaXhlbEZvcm1hdCBmb3JtYXQs IHVpbnQ4IHBpeGVscyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IGJvb2wgcmVhZF9waXhlbHNfaW50b19iaXRtYXAgKGludCB4LCBpbnQgeSwgQ29nbC5SZWFkUGl4 ZWxzRmxhZ3Mgc291cmNlLCBDb2dsLkJpdG1hcCBiaXRtYXApOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgcmVzb2x2ZV9zYW1wbGVzICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgcmVzb2x2ZV9zYW1wbGVzX3JlZ2lv biAoaW50IHgsIGludCB5LCBpbnQgd2lkdGgsIGludCBoZWlnaHQpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHJvdGF0ZSAoZmxvYXQgYW5nbGUsIGZsb2F0 IHgsIGZsb2F0IHksIGZsb2F0IHopOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJ cHVibGljIHZvaWQgcm90YXRlX2V1bGVyIChHcmFwaGVuZS5FdWxlciBldWxlcik7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2NhbGUgKGZsb2F0IHgsIGZs b2F0IHksIGZsb2F0IHopOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTgiKV0KKysJCXB1Ymxp YyB2b2lkIHNldF9kZXB0aF93cml0ZV9lbmFibGVkIChib29sIGRlcHRoX3dyaXRlX2VuYWJsZWQp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2RpdGhl cl9lbmFibGVkIChib29sIGRpdGhlcl9lbmFibGVkKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbW9kZWx2aWV3X21hdHJpeCAoQ29nbC5NYXRyaXgg bWF0cml4KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBz ZXRfcHJvamVjdGlvbl9tYXRyaXggKENvZ2wuTWF0cml4IG1hdHJpeCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBzZXRfc2FtcGxlc19wZXJfcGl4ZWwgKGlu dCBzYW1wbGVzX3Blcl9waXhlbCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yMCIpXQorKwkJ cHVibGljIHZvaWQgc2V0X3N0ZXJlb19tb2RlIChDb2dsLlN0ZXJlb01vZGUgc3RlcmVvX21vZGUp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3ZpZXdw b3J0IChmbG9hdCB4LCBmbG9hdCB5LCBmbG9hdCB3aWR0aCwgZmxvYXQgaGVpZ2h0KTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCB0cmFuc2Zvcm0gKENvZ2wu TWF0cml4IG1hdHJpeCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IHZvaWQgdHJhbnNsYXRlIChmbG9hdCB4LCBmbG9hdCB5LCBmbG9hdCB6KTsKKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCB0eXBlX2lkID0gImNvZ2xfdGV4 dHVyZV9nZXRfZ3R5cGUgKCkiKV0KKysJcHVibGljIGludGVyZmFjZSBUZXh0dXJlIDogQ29nbC5P YmplY3QgeworKwkJcHVibGljIGJvb2wgYWxsb2NhdGUgKCkgdGhyb3dzIEdMaWIuRXJyb3I7Cisr CQlwdWJsaWMgc3RhdGljIHVpbnQzMiBlcnJvcl9xdWFyayAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjE4IildCisrCQlwdWJsaWMgQ29nbC5UZXh0dXJlQ29tcG9uZW50cyBnZXRfY29tcG9u ZW50cyAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0X2RhdGEgKENvZ2wuUGl4ZWxGb3JtYXQgZm9ybWF0 LCB1aW50IHJvd3N0cmlkZSwgdWludDggZGF0YSk7CisrCQlwdWJsaWMgYm9vbCBnZXRfZ2xfdGV4 dHVyZSAob3V0IHVpbnQgb3V0X2dsX2hhbmRsZSwgb3V0IHVpbnQgb3V0X2dsX3RhcmdldCk7Cisr CQlwdWJsaWMgdWludCBnZXRfaGVpZ2h0ICgpOworKwkJcHVibGljIGludCBnZXRfbWF4X3dhc3Rl ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTgiKV0KKysJCXB1YmxpYyBib29sIGdldF9w cmVtdWx0aXBsaWVkICgpOworKwkJcHVibGljIHVpbnQgZ2V0X3dpZHRoICgpOworKwkJcHVibGlj IGJvb2wgaXNfc2xpY2VkICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXBy ZWNhdGVkX3NpbmNlID0gIjEuMTgiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBzdGF0aWMg Q29nbC5UZXh0dXJlIG5ld19mcm9tX2JpdG1hcCAoQ29nbC5CaXRtYXAgYml0bWFwLCBDb2dsLlRl eHR1cmVGbGFncyBmbGFncywgQ29nbC5QaXhlbEZvcm1hdCBpbnRlcm5hbF9mb3JtYXQpOworKwkJ W1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTgiLCBz aW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBzdGF0aWMgQ29nbC5UZXh0dXJlIG5ld19mcm9tX2Rh dGEgKGludCB3aWR0aCwgaW50IGhlaWdodCwgQ29nbC5UZXh0dXJlRmxhZ3MgZmxhZ3MsIENvZ2wu UGl4ZWxGb3JtYXQgZm9ybWF0LCBDb2dsLlBpeGVsRm9ybWF0IGludGVybmFsX2Zvcm1hdCwgaW50 IHJvd3N0cmlkZSwgdWludDggZGF0YSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUs IGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xOCIsIHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHN0 YXRpYyBDb2dsLlRleHR1cmUgbmV3X2Zyb21fZmlsZSAoc3RyaW5nIGZpbGVuYW1lLCBDb2dsLlRl eHR1cmVGbGFncyBmbGFncywgQ29nbC5QaXhlbEZvcm1hdCBpbnRlcm5hbF9mb3JtYXQpIHRocm93 cyBHTGliLkVycm9yOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVk X3NpbmNlID0gIjEuMTgiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBDb2dsLlRleHR1cmUg bmV3X2Zyb21fc3ViX3RleHR1cmUgKGludCBzdWJfeCwgaW50IHN1Yl95LCBpbnQgc3ViX3dpZHRo LCBpbnQgc3ViX2hlaWdodCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJl Y2F0ZWRfc2luY2UgPSAiMS4xOCIsIHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHN0YXRpYyBD b2dsLlRleHR1cmUgbmV3X3dpdGhfc2l6ZSAodWludCB3aWR0aCwgdWludCBoZWlnaHQsIENvZ2wu VGV4dHVyZUZsYWdzIGZsYWdzLCBDb2dsLlBpeGVsRm9ybWF0IGludGVybmFsX2Zvcm1hdCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2NvbXBvbmVu dHMgKENvZ2wuVGV4dHVyZUNvbXBvbmVudHMgY29tcG9uZW50cyk7CisrCQlwdWJsaWMgYm9vbCBz ZXRfZGF0YSAoQ29nbC5QaXhlbEZvcm1hdCBmb3JtYXQsIGludCByb3dzdHJpZGUsIHVpbnQ4IGRh dGEsIGludCBsZXZlbCkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3ByZW11bHRpcGxpZWQgKGJvb2wgcHJlbXVsdGlw bGllZCk7CisrCQlwdWJsaWMgYm9vbCBzZXRfcmVnaW9uIChpbnQgc3JjX3gsIGludCBzcmNfeSwg aW50IGRzdF94LCBpbnQgZHN0X3ksIHVpbnQgZHN0X3dpZHRoLCB1aW50IGRzdF9oZWlnaHQsIGlu dCB3aWR0aCwgaW50IGhlaWdodCwgQ29nbC5QaXhlbEZvcm1hdCBmb3JtYXQsIHVpbnQgcm93c3Ry aWRlLCB1aW50OCBkYXRhKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1Ymxp YyBib29sIHNldF9yZWdpb25fZnJvbV9iaXRtYXAgKGludCBzcmNfeCwgaW50IHNyY195LCBpbnQg ZHN0X3gsIGludCBkc3RfeSwgdWludCBkc3Rfd2lkdGgsIHVpbnQgZHN0X2hlaWdodCwgQ29nbC5C aXRtYXAgYml0bWFwKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9j b2dsLmgiKV0KKysJW1NpbXBsZVR5cGVdCisrCXB1YmxpYyBzdHJ1Y3QgQW5nbGUgOiBpbnQzMiB7 CisrCX0KKysJW0Jvb2xlYW5UeXBlXQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29n bC9jb2dsLmgiKV0KKysJW0dJUiAobmFtZSA9ICJCb29sIildCisrCVtTaW1wbGVUeXBlXQorKwlw dWJsaWMgc3RydWN0IEJvb2wgOiBib29sIHsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY29nbC9jb2dsLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNp bmNlID0gIjEuMCIpXQorKwlwdWJsaWMgc3RydWN0IENvbG9yIHsKKysJCXB1YmxpYyBDb2dsLkNv bG9yPyBjb3B5ICgpOworKwkJcHVibGljIENvbG9yLmZyb21fNGYgKGZsb2F0IHJlZCwgZmxvYXQg Z3JlZW4sIGZsb2F0IGJsdWUsIGZsb2F0IGFscGhhKTsKKysJCXB1YmxpYyBDb2xvci5mcm9tXzR1 YiAodWludDggcmVkLCB1aW50OCBncmVlbiwgdWludDggYmx1ZSwgdWludDggYWxwaGEpOworKwkJ cHVibGljIGZsb2F0IGdldF9hbHBoYSAoKTsKKysJCXB1YmxpYyB1aW50OCBnZXRfYWxwaGFfYnl0 ZSAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfYWxwaGFfZmxvYXQgKCk7CisrCQlwdWJsaWMgZmxv YXQgZ2V0X2JsdWUgKCk7CisrCQlwdWJsaWMgdWludDggZ2V0X2JsdWVfYnl0ZSAoKTsKKysJCXB1 YmxpYyBmbG9hdCBnZXRfYmx1ZV9mbG9hdCAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfZ3JlZW4g KCk7CisrCQlwdWJsaWMgdWludDggZ2V0X2dyZWVuX2J5dGUgKCk7CisrCQlwdWJsaWMgZmxvYXQg Z2V0X2dyZWVuX2Zsb2F0ICgpOworKwkJcHVibGljIGZsb2F0IGdldF9yZWQgKCk7CisrCQlwdWJs aWMgdWludDggZ2V0X3JlZF9ieXRlICgpOworKwkJcHVibGljIGZsb2F0IGdldF9yZWRfZmxvYXQg KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBpbml0X2Zy b21fNGYgKGZsb2F0IHJlZCwgZmxvYXQgZ3JlZW4sIGZsb2F0IGJsdWUsIGZsb2F0IGFscGhhKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIGluaXRfZnJvbV80 ZnYgKGZsb2F0IGNvbG9yX2FycmF5KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJ CXB1YmxpYyB2b2lkIGluaXRfZnJvbV80dWIgKHVpbnQ4IHJlZCwgdWludDggZ3JlZW4sIHVpbnQ4 IGJsdWUsIHVpbnQ4IGFscGhhKTsKKysJCXB1YmxpYyB2b2lkIHByZW11bHRpcGx5ICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2FscGhhIChmbG9h dCBhbHBoYSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBz ZXRfYWxwaGFfYnl0ZSAodWludDggYWxwaGEpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIp XQorKwkJcHVibGljIHZvaWQgc2V0X2FscGhhX2Zsb2F0IChmbG9hdCBhbHBoYSk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBzZXRfYmx1ZSAoZmxvYXQgYmx1 ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBzZXRfYmx1 ZV9ieXRlICh1aW50OCBibHVlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1 YmxpYyB2b2lkIHNldF9ibHVlX2Zsb2F0IChmbG9hdCBibHVlKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9ncmVlbiAoZmxvYXQgZ3JlZW4pOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2dyZWVuX2J5dGUg KHVpbnQ4IGdyZWVuKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2 b2lkIHNldF9ncmVlbl9mbG9hdCAoZmxvYXQgZ3JlZW4pOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuNCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3JlZCAoZmxvYXQgcmVkKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9yZWRfYnl0ZSAodWludDggcmVk KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9yZWRf ZmxvYXQgKGZsb2F0IHJlZCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNiIpXQorKwkJcHVi bGljIHZvaWQgdG9faHNsIChvdXQgZmxvYXQgaHVlLCBvdXQgZmxvYXQgc2F0dXJhdGlvbiwgb3V0 IGZsb2F0IGx1bWluYW5jZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJs aWMgdm9pZCB1bnByZW11bHRpcGx5ICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjb2dsL2NvZ2wuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMS44IildCisrCXB1YmxpYyBzdHJ1Y3QgRGVidWdPYmplY3RUeXBlSW5mbyB7CisrCQlw dWJsaWMgd2VhayBzdHJpbmcgbmFtZTsKKysJCXB1YmxpYyB1bG9uZyBpbnN0YW5jZV9jb3VudDsK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjb3B5X2Z1 bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwg dHlwZV9pZCA9ICJDT0dMX1RZUEVfTUFUUklYIildCisrCXB1YmxpYyBzdHJ1Y3QgTWF0cml4IHsK KysJCXB1YmxpYyBmbG9hdCB4eDsKKysJCXB1YmxpYyBmbG9hdCB5eDsKKysJCXB1YmxpYyBmbG9h dCB6eDsKKysJCXB1YmxpYyBmbG9hdCB3eDsKKysJCXB1YmxpYyBmbG9hdCB4eTsKKysJCXB1Ymxp YyBmbG9hdCB5eTsKKysJCXB1YmxpYyBmbG9hdCB6eTsKKysJCXB1YmxpYyBmbG9hdCB3eTsKKysJ CXB1YmxpYyBmbG9hdCB4ejsKKysJCXB1YmxpYyBmbG9hdCB5ejsKKysJCXB1YmxpYyBmbG9hdCB6 ejsKKysJCXB1YmxpYyBmbG9hdCB3ejsKKysJCXB1YmxpYyBmbG9hdCB4dzsKKysJCXB1YmxpYyBm bG9hdCB5dzsKKysJCXB1YmxpYyBmbG9hdCB6dzsKKysJCXB1YmxpYyBmbG9hdCB3dzsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBDb2dsLk1hdHJpeD8gY29weSAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB2b2lkIGZyZWUgKCk7Cisr CQlbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlLCBhcnJheV9udWxsX3Rlcm1pbmF0ZWQgPSBm YWxzZSwgY25hbWUgPSAiY29nbF9tYXRyaXhfaW5pdF9mcm9tX2FycmF5IildCisrCQlwdWJsaWMg TWF0cml4LmZyb21fYXJyYXkgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSBmbG9hdFtd IGFycmF5KTsKKysJCXB1YmxpYyB2b2lkIGZydXN0dW0gKGZsb2F0IGxlZnQsIGZsb2F0IHJpZ2h0 LCBmbG9hdCBib3R0b20sIGZsb2F0IHRvcCwgZmxvYXQgel9uZWFyLCBmbG9hdCB6X2Zhcik7Cisr CQlwdWJsaWMgdW5vd25lZCBmbG9hdFtdIGdldF9hcnJheSAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBib29sIGdldF9pbnZlcnNlIChvdXQgQ29nbC5NYXRyaXgg aW52ZXJzZSk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfbWF0cml4X2luaXRfaWRlbnRpdHki KV0KKysJCXB1YmxpYyBNYXRyaXguaWRlbnRpdHkgKCk7CisrCQlwdWJsaWMgdm9pZCBpbml0X2Zy b21fZXVsZXIgKEdyYXBoZW5lLkV1bGVyIGV1bGVyKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIy LjAiKV0KKysJCXB1YmxpYyB2b2lkIGluaXRfdHJhbnNsYXRpb24gKGZsb2F0IHR4LCBmbG9hdCB0 eSwgZmxvYXQgdHopOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIGJv b2wgaXNfaWRlbnRpdHkgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJs aWMgdm9pZCBsb29rX2F0IChmbG9hdCBleWVfcG9zaXRpb25feCwgZmxvYXQgZXllX3Bvc2l0aW9u X3ksIGZsb2F0IGV5ZV9wb3NpdGlvbl96LCBmbG9hdCBvYmplY3RfeCwgZmxvYXQgb2JqZWN0X3ks IGZsb2F0IG9iamVjdF96LCBmbG9hdCB3b3JsZF91cF94LCBmbG9hdCB3b3JsZF91cF95LCBmbG9h dCB3b3JsZF91cF96KTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9tYXRyaXhfbXVsdGlwbHki KV0KKysJCXB1YmxpYyBNYXRyaXgubXVsdGlwbHkgKENvZ2wuTWF0cml4IGEsIENvZ2wuTWF0cml4 IGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIG9ydGhv Z3JhcGhpYyAoZmxvYXQgeF8xLCBmbG9hdCB5XzEsIGZsb2F0IHhfMiwgZmxvYXQgeV8yLCBmbG9h dCBuZWFyLCBmbG9hdCBmYXIpOworKwkJcHVibGljIHZvaWQgcGVyc3BlY3RpdmUgKGZsb2F0IGZv dl95LCBmbG9hdCBhc3BlY3QsIGZsb2F0IHpfbmVhciwgZmxvYXQgel9mYXIpOworKwkJcHVibGlj IHZvaWQgcHJvamVjdF9wb2ludHMgKGludCBuX2NvbXBvbmVudHMsIHNpemVfdCBzdHJpZGVfaW4s IHZvaWQqIHBvaW50c19pbiwgc2l6ZV90IHN0cmlkZV9vdXQsIHZvaWQqIHBvaW50c19vdXQsIGlu dCBuX3BvaW50cyk7CisrCQlwdWJsaWMgdm9pZCByb3RhdGUgKGZsb2F0IGFuZ2xlLCBmbG9hdCB4 LCBmbG9hdCB5LCBmbG9hdCB6KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1 YmxpYyB2b2lkIHJvdGF0ZV9ldWxlciAoR3JhcGhlbmUuRXVsZXIgZXVsZXIpOworKwkJcHVibGlj IHZvaWQgc2NhbGUgKGZsb2F0IHN4LCBmbG9hdCBzeSwgZmxvYXQgc3opOworKwkJcHVibGljIHN0 YXRpYyB2b2lkIHRyYW5zZm9ybV9wb2ludCAocmVmIENvZ2wuTWF0cml4IG1hdHJpeCwgcmVmIGZs b2F0IHgsIHJlZiBmbG9hdCB5LCByZWYgZmxvYXQgeiwgcmVmIGZsb2F0IHcpOworKwkJcHVibGlj IHZvaWQgdHJhbnNmb3JtX3BvaW50cyAoaW50IG5fY29tcG9uZW50cywgc2l6ZV90IHN0cmlkZV9p biwgdm9pZCogcG9pbnRzX2luLCBzaXplX3Qgc3RyaWRlX291dCwgdm9pZCogcG9pbnRzX291dCwg aW50IG5fcG9pbnRzKTsKKysJCXB1YmxpYyB2b2lkIHRyYW5zbGF0ZSAoZmxvYXQgeCwgZmxvYXQg eSwgZmxvYXQgeik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZv aWQgdHJhbnNwb3NlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGlj IHZvaWQgdmlld18yZF9pbl9mcnVzdHVtIChmbG9hdCBsZWZ0LCBmbG9hdCByaWdodCwgZmxvYXQg Ym90dG9tLCBmbG9hdCB0b3AsIGZsb2F0IHpfbmVhciwgZmxvYXQgel8yZCwgZmxvYXQgd2lkdGhf MmQsIGZsb2F0IGhlaWdodF8yZCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlw dWJsaWMgdm9pZCB2aWV3XzJkX2luX3BlcnNwZWN0aXZlIChmbG9hdCBmb3ZfeSwgZmxvYXQgYXNw ZWN0LCBmbG9hdCB6X25lYXIsIGZsb2F0IHpfMmQsIGZsb2F0IHdpZHRoXzJkLCBmbG9hdCBoZWln aHRfMmQpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIs IGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNiIpXQorKwlw dWJsaWMgc3RydWN0IE9uc2NyZWVuRGlydHlJbmZvIHsKKysJCXB1YmxpYyBpbnQgeDsKKysJCXB1 YmxpYyBpbnQgeTsKKysJCXB1YmxpYyBpbnQgd2lkdGg7CisrCQlwdWJsaWMgaW50IGhlaWdodDsK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBoYXNfdHlw ZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBUZXh0dXJlVmVydGV4IHsKKysJCXB1Ymxp YyBmbG9hdCB4OworKwkJcHVibGljIGZsb2F0IHk7CisrCQlwdWJsaWMgZmxvYXQgejsKKysJCXB1 YmxpYyBmbG9hdCB0eDsKKysJCXB1YmxpYyBmbG9hdCB0eTsKKysJCXB1YmxpYyBDb2dsLkNvbG9y IGNvbG9yOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIs IGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1 YmxpYyBzdHJ1Y3QgVXNlckRhdGFLZXkgeworKwkJcHVibGljIGludCB1bnVzZWQ7CisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY25hbWUgPSAiX0NvZ2xD b2xvclNpemVDaGVjayIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgc3RydWN0IF9D b2xvclNpemVDaGVjayB7CisrCQlbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0KKysJCXB1 YmxpYyB3ZWFrIGNoYXJbXSBjb21waWxlX3RpbWVfYXNzZXJ0X0NvZ2xDb2xvcl9zaXplOworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNuYW1lID0gIl9D b2dsTWF0cml4U2l6ZUNoZWNrIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1 Y3QgX01hdHJpeFNpemVDaGVjayB7CisrCQlbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0K KysJCXB1YmxpYyB3ZWFrIGNoYXJbXSBjb21waWxlX3RpbWVfYXNzZXJ0X0NvZ2xNYXRyaXhfc2l6 ZTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjbmFt ZSA9ICJfQ29nbFRleHR1cmVWZXJ0ZXhTaXplQ2hlY2siLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0K KysJcHVibGljIHN0cnVjdCBfVGV4dHVyZVZlcnRleFNpemVDaGVjayB7CisrCQlbQ0NvZGUgKGFy cmF5X2xlbmd0aCA9IGZhbHNlKV0KKysJCXB1YmxpYyB3ZWFrIGNoYXJbXSBjb21waWxlX3RpbWVf YXNzZXJ0X0NvZ2xUZXh0dXJlVmVydGV4X3NpemU7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX0FUVFJJQlVURV9UWVBFXyIs IGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1 YmxpYyBlbnVtIEF0dHJpYnV0ZVR5cGUgeworKwkJQllURSwKKysJCVVOU0lHTkVEX0JZVEUsCisr CQlTSE9SVCwKKysJCVVOU0lHTkVEX1NIT1JULAorKwkJRkxPQVQKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfQklUTUFQX0VS Uk9SXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40Iild CisrCXB1YmxpYyBlbnVtIEJpdG1hcEVycm9yIHsKKysJCUZBSUxFRCwKKysJCVVOS05PV05fVFlQ RSwKKysJCUNPUlJVUFRfSU1BR0UKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfQkxFTkRfU1RSSU5HX0VSUk9SXyIsIGhhc190 eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBl bnVtIEJsZW5kU3RyaW5nRXJyb3IgeworKwkJUEFSU0VfRVJST1IsCisrCQlBUkdVTUVOVF9QQVJT RV9FUlJPUiwKKysJCUlOVkFMSURfRVJST1IsCisrCQlHUFVfVU5TVVBQT1JURURfRVJST1I7Cisr CQlwdWJsaWMgc3RhdGljIHVpbnQzMiBxdWFyayAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfQlVGRkVSX0JJVF8iLCBo YXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0ZsYWdzXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCXB1YmxpYyBlbnVtIEJ1ZmZlckJpdCB7CisrCQlDT0xPUiwKKysJCURFUFRILAorKwkJ U1RFTkNJTAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIs IGNwcmVmaXggPSAiQ09HTF8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0ZsYWdzXQorKwlb VmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCXB1YmxpYyBlbnVtIEJ1ZmZlclRhcmdldCB7Cisr CQlXSU5ET1dfQlVGRkVSLAorKwkJT0ZGU0NSRUVOX0JVRkZFUgorKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9ERVBUSF9URVNU X0ZVTkNUSU9OXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgZW51bSBEZXB0aFRl c3RGdW5jdGlvbiB7CisrCQlORVZFUiwKKysJCUxFU1MsCisrCQlFUVVBTCwKKysJCUxFUVVBTCwK KysJCUdSRUFURVIsCisrCQlOT1RFUVVBTCwKKysJCUdFUVVBTCwKKysJCUFMV0FZUworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09H TF9FR0xfSU1BR0VfRkxBR18iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0ZsYWdzXQorKwlw dWJsaWMgZW51bSBFZ2xJbWFnZUZsYWdzIHsKKysJCU5PTkUsCisrCQlOT19HRVRfREFUQQorKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAi Q09HTF9GRUFUVVJFX0lEXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgZW51bSBGZWF0dXJlSUQgeworKwkJW0NDb2RlIChjbmFt ZSA9ICJDT0dMX0ZFQVRVUkVfSURfVU5TSUdORURfSU5UX0lORElDRVMiKV0KKysJCU9HTF9GRUFU VVJFX0lEX1VOU0lHTkVEX0lOVF9JTkRJQ0VTLAorKwkJW0NDb2RlIChjbmFtZSA9ICJDT0dMX0ZF QVRVUkVfSURfTUFQX0JVRkZFUl9GT1JfUkVBRCIpXQorKwkJT0dMX0ZFQVRVUkVfSURfTUFQX0JV RkZFUl9GT1JfUkVBRCwKKysJCVtDQ29kZSAoY25hbWUgPSAiQ09HTF9GRUFUVVJFX0lEX01BUF9C VUZGRVJfRk9SX1dSSVRFIildCisrCQlPR0xfRkVBVFVSRV9JRF9NQVBfQlVGRkVSX0ZPUl9XUklU RSwKKysJCVtDQ29kZSAoY25hbWUgPSAiQ09HTF9GRUFUVVJFX0lEX1NXQVBfQlVGRkVSU19FVkVO VCIpXQorKwkJT0dMX0ZFQVRVUkVfSURfU1dBUF9CVUZGRVJTX0VWRU5ULAorKwkJW0NDb2RlIChj bmFtZSA9ICJDT0dMX0ZFQVRVUkVfSURfUFJFU0VOVEFUSU9OX1RJTUUiKV0KKysJCU9HTF9GRUFU VVJFX0lEX1BSRVNFTlRBVElPTl9USU1FLAorKwkJW0NDb2RlIChjbmFtZSA9ICJDT0dMX0ZFQVRV UkVfSURfRkVOQ0UiKV0KKysJCU9HTF9GRUFUVVJFX0lEX0ZFTkNFLAorKwkJW0NDb2RlIChjbmFt ZSA9ICJDT0dMX0ZFQVRVUkVfSURfVEVYVFVSRV9SRyIpXQorKwkJT0dMX0ZFQVRVUkVfSURfVEVY VFVSRV9SRywKKysJCVtDQ29kZSAoY25hbWUgPSAiQ09HTF9GRUFUVVJFX0lEX0JVRkZFUl9BR0Ui KV0KKysJCU9HTF9GRUFUVVJFX0lEX0JVRkZFUl9BR0UsCisrCQlbQ0NvZGUgKGNuYW1lID0gIkNP R0xfRkVBVFVSRV9JRF9URVhUVVJFX0VHTF9JTUFHRV9FWFRFUk5BTCIpXQorKwkJT0dMX0ZFQVRV UkVfSURfVEVYVFVSRV9FR0xfSU1BR0VfRVhURVJOQUwKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfRklMVEVSXyIsIGhhc190 eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgZW51bSBGaWx0ZXJSZXR1cm4geworKwkJQ09OVElO VUUsCisrCQlSRU1PVkUKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9j b2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfRlJBTUVfRVZFTlRfIiwgaGFzX3R5cGVfaWQgPSBmYWxz ZSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE0IildCisrCXB1YmxpYyBlbnVtIEZyYW1lRXZl bnQgeworKwkJU1lOQywKKysJCUNPTVBMRVRFCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX0ZSQU1FQlVGRkVSX0VSUk9SXyIs IGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgZW51bSBGcmFtZWJ1ZmZlckVycm9yIHsK KysJCVtDQ29kZSAoY25hbWUgPSAiQ09HTF9GUkFNRUJVRkZFUl9FUlJPUl9BTExPQ0FURSIpXQor KwkJRlJBTUVCVUZGRVJfRVJST1JfQUxMT0NBVEU7CisrCQlwdWJsaWMgc3RhdGljIHVpbnQzMiBx dWFyayAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgi LCBjcHJlZml4ID0gIkNPR0xfR1JBUEhJQ1NfUkVTRVRfU1RBVFVTXyIsIGhhc190eXBlX2lkID0g ZmFsc2UpXQorKwlwdWJsaWMgZW51bSBHcmFwaGljc1Jlc2V0U3RhdHVzIHsKKysJCU5PX0VSUk9S LAorKwkJR1VJTFRZX0NPTlRFWFRfUkVTRVQsCisrCQlJTk5PQ0VOVF9DT05URVhUX1JFU0VULAor KwkJVU5LTk9XTl9DT05URVhUX1JFU0VULAorKwkJUFVSR0VEX0NPTlRFWFRfUkVTRVQKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNP R0xfSU5ESUNFU19UWVBFX1VOU0lHTkVEXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJs aWMgZW51bSBJbmRpY2VzVHlwZSB7CisrCQlCWVRFLAorKwkJU0hPUlQsCisrCQlJTlQKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNP R0xfTUFURVJJQUxfQUxQSEFfRlVOQ18iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGlj IGVudW0gTWF0ZXJpYWxBbHBoYUZ1bmMgeworKwkJTkVWRVIsCisrCQlMRVNTLAorKwkJRVFVQUws CisrCQlMRVFVQUwsCisrCQlHUkVBVEVSLAorKwkJTk9URVFVQUwsCisrCQlHRVFVQUwsCisrCQlB TFdBWVMKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBj cHJlZml4ID0gIkNPR0xfTUFURVJJQUxfRklMVEVSXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQor KwlwdWJsaWMgZW51bSBNYXRlcmlhbEZpbHRlciB7CisrCQlORUFSRVNULAorKwkJTElORUFSLAor KwkJTkVBUkVTVF9NSVBNQVBfTkVBUkVTVCwKKysJCUxJTkVBUl9NSVBNQVBfTkVBUkVTVCwKKysJ CU5FQVJFU1RfTUlQTUFQX0xJTkVBUiwKKysJCUxJTkVBUl9NSVBNQVBfTElORUFSCisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dM X01BVEVSSUFMX1dSQVBfTU9ERV8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW1ZlcnNpb24g KHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgZW51bSBNYXRlcmlhbFdyYXBNb2RlIHsKKysJCVJF UEVBVCwKKysJCUNMQU1QX1RPX0VER0UsCisrCQlBVVRPTUFUSUMKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfUElQRUxJTkVf QUxQSEFfRlVOQ18iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIGVudW0gUGlwZWxp bmVBbHBoYUZ1bmMgeworKwkJTkVWRVIsCisrCQlMRVNTLAorKwkJRVFVQUwsCisrCQlMRVFVQUws CisrCQlHUkVBVEVSLAorKwkJTk9URVFVQUwsCisrCQlHRVFVQUwsCisrCQlBTFdBWVMKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNP R0xfUElQRUxJTkVfQ1VMTF9GQUNFX01PREVfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1 YmxpYyBlbnVtIFBpcGVsaW5lQ3VsbEZhY2VNb2RlIHsKKysJCU5PTkUsCisrCQlGUk9OVCwKKysJ CUJBQ0ssCisrCQlCT1RICisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wv Y29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX1BJUEVMSU5FX0ZJTFRFUl8iLCBoYXNfdHlwZV9pZCA9 IGZhbHNlKV0KKysJcHVibGljIGVudW0gUGlwZWxpbmVGaWx0ZXIgeworKwkJTkVBUkVTVCwKKysJ CUxJTkVBUiwKKysJCU5FQVJFU1RfTUlQTUFQX05FQVJFU1QsCisrCQlMSU5FQVJfTUlQTUFQX05F QVJFU1QsCisrCQlORUFSRVNUX01JUE1BUF9MSU5FQVIsCisrCQlMSU5FQVJfTUlQTUFQX0xJTkVB UgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVm aXggPSAiQ09HTF9QSVBFTElORV9XUkFQX01PREVfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisr CVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJcHVibGljIGVudW0gUGlwZWxpbmVXcmFwTW9k ZSB7CisrCQlSRVBFQVQsCisrCQlNSVJST1JFRF9SRVBFQVQsCisrCQlDTEFNUF9UT19FREdFLAor KwkJQVVUT01BVElDCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29n bC5oIiwgY3ByZWZpeCA9ICJDT0dMX1BJWEVMX0ZPUk1BVF8iLCBoYXNfdHlwZV9pZCA9IGZhbHNl KV0KKysJW0ZsYWdzXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCXB1YmxpYyBlbnVt IFBpeGVsRm9ybWF0IHsKKysJCUFOWSwKKysJCUFfOCwKKysJCVJHQl81NjUsCisrCQlSR0JBXzQ0 NDQsCisrCQlSR0JBXzU1NTEsCisrCQlZVVYsCisrCQlHXzgsCisrCQlSR184OCwKKysJCVJHQl84 ODgsCisrCQlCR1JfODg4LAorKwkJUkdCQV84ODg4LAorKwkJQkdSQV84ODg4LAorKwkJQVJHQl84 ODg4LAorKwkJQUJHUl84ODg4LAorKwkJUkdCQV8xMDEwMTAyLAorKwkJQkdSQV8xMDEwMTAyLAor KwkJQVJHQl8yMTAxMDEwLAorKwkJQUJHUl8yMTAxMDEwLAorKwkJUkdCQV84ODg4X1BSRSwKKysJ CUJHUkFfODg4OF9QUkUsCisrCQlBUkdCXzg4ODhfUFJFLAorKwkJQUJHUl84ODg4X1BSRSwKKysJ CVJHQkFfNDQ0NF9QUkUsCisrCQlSR0JBXzU1NTFfUFJFLAorKwkJUkdCQV8xMDEwMTAyX1BSRSwK KysJCUJHUkFfMTAxMDEwMl9QUkUsCisrCQlBUkdCXzIxMDEwMTBfUFJFLAorKwkJQUJHUl8yMTAx MDEwX1BSRSwKKysJCURFUFRIXzE2LAorKwkJREVQVEhfMzIsCisrCQlERVBUSF8yNF9TVEVOQ0lM Xzg7CisrCQlwdWJsaWMgaW50IGdldF9ieXRlc19wZXJfcGl4ZWwgKGludCBwbGFuZSk7CisrCQlw dWJsaWMgaW50IGdldF9uX3BsYW5lcyAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyB0b19z dHJpbmcgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5o IiwgY3ByZWZpeCA9ICJDT0dMX1JFQURfUElYRUxTX0NPTE9SXyIsIGhhc190eXBlX2lkID0gZmFs c2UpXQorKwlbRmxhZ3NdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGVu dW0gUmVhZFBpeGVsc0ZsYWdzIHsKKysJCVtDQ29kZSAoY25hbWUgPSAiQ09HTF9SRUFEX1BJWEVM U19DT0xPUl9CVUZGRVIiKV0KKysJCVJFQURfUElYRUxTX0NPTE9SX0JVRkZFUgorKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9S RU5ERVJFUl9FUlJPUl8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIGVudW0gUmVu ZGVyZXJFcnJvciB7CisrCQlYTElCX0RJU1BMQVlfT1BFTiwKKysJCUJBRF9DT05TVFJBSU5UCisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9 ICJDT0dMX1NIQURFUl9UWVBFXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBlbnVtIFNoYWRlclR5cGUgeworKwkJVkVSVEVYLAor KwkJRlJBR01FTlQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2ds LmgiLCBjcHJlZml4ID0gIkNPR0xfU1RFUkVPXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlw dWJsaWMgZW51bSBTdGVyZW9Nb2RlIHsKKysJCUJPVEgsCisrCQlMRUZULAorKwkJUklHSFQKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0g IkNPR0xfU1lTVEVNX0VSUk9SXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMS40IildCisrCXB1YmxpYyBlbnVtIFN5c3RlbUVycm9yIHsKKysJCVVOU1VQUE9S VEVELAorKwkJTk9fTUVNT1JZCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNv Z2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX1RFWFRVUkVfQ09NUE9ORU5UU18iLCBoYXNfdHlw ZV9pZCA9IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTgiKV0KKysJcHVibGljIGVu dW0gVGV4dHVyZUNvbXBvbmVudHMgeworKwkJQSwKKysJCVJHLAorKwkJUkdCLAorKwkJUkdCQSwK KysJCURFUFRICisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5o IiwgY3ByZWZpeCA9ICJDT0dMX1RFWFRVUkVfRVJST1JfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSld CisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJcHVibGljIGVudW0gVGV4dHVyZUVycm9y IHsKKysJCVNJWkUsCisrCQlGT1JNQVQsCisrCQlCQURfUEFSQU1FVEVSLAorKwkJVFlQRTsKKysJ CXB1YmxpYyBzdGF0aWMgdWludDMyIHF1YXJrICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9URVhUVVJFXyIsIGhhc190 eXBlX2lkID0gZmFsc2UpXQorKwlbRmxhZ3NdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0K KysJcHVibGljIGVudW0gVGV4dHVyZUZsYWdzIHsKKysJCU5PTkUsCisrCQlOT19BVVRPX01JUE1B UCwKKysJCU5PX1NMSUNJTkcsCisrCQlOT19BVExBUworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9WRVJUSUNFU19NT0RFXyIs IGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1 YmxpYyBlbnVtIFZlcnRpY2VzTW9kZSB7CisrCQlQT0lOVFMsCisrCQlMSU5FUywKKysJCUxJTkVf TE9PUCwKKysJCUxJTkVfU1RSSVAsCisrCQlUUklBTkdMRVMsCisrCQlUUklBTkdMRV9TVFJJUCwK KysJCVRSSUFOR0xFX0ZBTgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2ds L2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9XSU5ESU5HXyIsIGhhc190eXBlX2lkID0gZmFsc2Up XQorKwlwdWJsaWMgZW51bSBXaW5kaW5nIHsKKysJCUNMT0NLV0lTRSwKKysJCUNPVU5URVJfQ0xP Q0tXSVNFCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwg Y3ByZWZpeCA9ICJDT0dMX1dJTlNZU19GRUFUVVJFXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQor KwlwdWJsaWMgZW51bSBXaW5zeXNGZWF0dXJlIHsKKysJCU1VTFRJUExFX09OU0NSRUVOLAorKwkJ U1dBUF9USFJPVFRMRSwKKysJCVZCTEFOS19DT1VOVEVSLAorKwkJVkJMQU5LX1dBSVQsCisrCQlU RVhUVVJFX0ZST01fUElYTUFQLAorKwkJU1dBUF9CVUZGRVJTX0VWRU5ULAorKwkJU1dBUF9SRUdJ T04sCisrCQlTV0FQX1JFR0lPTl9USFJPVFRMRSwKKysJCVNXQVBfUkVHSU9OX1NZTkNIUk9OSVpF RCwKKysJCUJVRkZFUl9BR0UsCisrCQlTWU5DX0FORF9DT01QTEVURV9FVkVOVCwKKysJCU5fRkVB VFVSRVMKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBp bnN0YW5jZV9wb3MgPSAxLjkpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCXB1Ymxp YyBkZWxlZ2F0ZSB2b2lkIERlYnVnT2JqZWN0Rm9yZWFjaFR5cGVDYWxsYmFjayAoQ29nbC5EZWJ1 Z09iamVjdFR5cGVJbmZvIGluZm8pOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29n bC9jb2dsLmgiLCBpbnN0YW5jZV9wb3MgPSAxLjkpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC4x MCIpXQorKwlwdWJsaWMgZGVsZWdhdGUgdm9pZCBGZWF0dXJlQ2FsbGJhY2sgKENvZ2wuRmVhdHVy ZUlEIGZlYXR1cmUpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgi LCBpbnN0YW5jZV9wb3MgPSAyLjkpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNiIpXQorKwlw dWJsaWMgZGVsZWdhdGUgdm9pZCBPbnNjcmVlbkRpcnR5Q2FsbGJhY2sgKENvZ2wuT25zY3JlZW4g b25zY3JlZW4sIENvZ2wuT25zY3JlZW5EaXJ0eUluZm8gaW5mbyk7CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGluc3RhbmNlX3BvcyA9IDMuOSldCisrCVtWZXJz aW9uIChzaW5jZSA9ICIyLjAiKV0KKysJcHVibGljIGRlbGVnYXRlIHZvaWQgT25zY3JlZW5SZXNp emVDYWxsYmFjayAoQ29nbC5PbnNjcmVlbiBvbnNjcmVlbiwgaW50IHdpZHRoLCBpbnQgaGVpZ2h0 KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgaW5zdGFuY2Vf cG9zID0gMi45KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwlwdWJsaWMgZGVsZWdh dGUgYm9vbCBQaXBlbGluZUxheWVyQ2FsbGJhY2sgKENvZ2wuUGlwZWxpbmUgcGlwZWxpbmUsIGlu dCBsYXllcl9pbmRleCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wu aCIsIGluc3RhbmNlX3BvcyA9IDEuOSldCisrCXB1YmxpYyBkZWxlZ2F0ZSBib29sIFRleHR1cmUy REVHTEltYWdlRXh0ZXJuYWxBbGxvYyAoQ29nbC5UZXh0dXJlMkQgdGV4XzJkKSB0aHJvd3MgR0xp Yi5FcnJvcjsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgaGFz X3RhcmdldCA9IGZhbHNlKV0KKysJcHVibGljIGRlbGVnYXRlIHZvaWQgVXNlckRhdGFEZXN0cm95 Q2FsbGJhY2sgKHZvaWQqIGRhdGEpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29n bC9jb2dsLmgiLCBjbmFtZSA9ICJDT0dMX0FGSVJTVF9CSVQiKV0KKysJcHVibGljIGNvbnN0IGlu dCBBRklSU1RfQklUOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgi LCBjbmFtZSA9ICJDT0dMX0FfQklUIildCisrCXB1YmxpYyBjb25zdCBpbnQgQV9CSVQ7CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNuYW1lID0gIkNPR0xfQkdS X0JJVCIpXQorKwlwdWJsaWMgY29uc3QgaW50IEJHUl9CSVQ7CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNuYW1lID0gIkNPR0xfREVQVEhfQklUIildCisrCXB1 YmxpYyBjb25zdCBpbnQgREVQVEhfQklUOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y29nbC9jb2dsLmgiLCBjbmFtZSA9ICJDT0dMX1BJWEVMX0ZPUk1BVF9NQVhfUExBTkVTIildCisr CXB1YmxpYyBjb25zdCBpbnQgUElYRUxfRk9STUFUX01BWF9QTEFORVM7CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNuYW1lID0gIkNPR0xfUFJFTVVMVF9CSVQi KV0KKysJcHVibGljIGNvbnN0IGludCBQUkVNVUxUX0JJVDsKKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY25hbWUgPSAiQ09HTF9TVEVOQ0lMX0JJVCIpXQorKwlw dWJsaWMgY29uc3QgaW50IFNURU5DSUxfQklUOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY29nbC9jb2dsLmgiLCBjbmFtZSA9ICJDT0dMX1RFWFRVUkVfTUFYX1dBU1RFIildCisrCXB1 YmxpYyBjb25zdCBpbnQgVEVYVFVSRV9NQVhfV0FTVEU7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlwdWJsaWMgc3RhdGljIGJvb2wgYmxpdF9mcmFtZWJ1 ZmZlciAoQ29nbC5GcmFtZWJ1ZmZlciBzcmMsIENvZ2wuRnJhbWVidWZmZXIgZGVzdCwgaW50IHNy Y194LCBpbnQgc3JjX3ksIGludCBkc3RfeCwgaW50IGRzdF95LCBpbnQgd2lkdGgsIGludCBoZWln aHQpIHRocm93cyBHTGliLkVycm9yOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29n bC9jb2dsLmgiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGNsdXR0ZXJfd2luc3lzX2hhc19mZWF0 dXJlX0NMVVRURVIgKENvZ2wuV2luc3lzRmVhdHVyZSBmZWF0dXJlKTsKKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJcHVibGljIHN0YXRpYyBib29sIGNvbG9yX2VxdWFsICh2b2lkKiB2MSwgdm9pZCogdjIp OworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTYiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIGNvbG9yX2luaXRfZnJv bV9oc2wgKG91dCBDb2dsLkNvbG9yIGNvbG9yLCBmbG9hdCBodWUsIGZsb2F0IHNhdHVyYXRpb24s IGZsb2F0IGx1bWluYW5jZSk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2Nv Z2wuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCXB1YmxpYyBzdGF0aWMgdm9p ZCBkZWJ1Z19tYXRyaXhfcHJpbnQgKENvZ2wuTWF0cml4IG1hdHJpeCk7CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS44 IildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBkZWJ1Z19vYmplY3RfZm9yZWFjaF90eXBlIChDb2ds LkRlYnVnT2JqZWN0Rm9yZWFjaFR5cGVDYWxsYmFjayBmdW5jKTsKKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0K KysJcHVibGljIHN0YXRpYyB2b2lkIGRlYnVnX29iamVjdF9wcmludF9pbnN0YW5jZXMgKCk7Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBmbHVzaCAoKTsKKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEwIildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBmb3JlYWNoX2ZlYXR1cmUgKENvZ2wuQ29u dGV4dCBjb250ZXh0LCBDb2dsLkZlYXR1cmVDYWxsYmFjayBjYWxsYmFjayk7CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoZGVwcmVjYXRl ZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIpXQorKwlwdWJsaWMgc3RhdGljIGJv b2wgZ2V0X2JhY2tmYWNlX2N1bGxpbmdfZW5hYmxlZCAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE0IildCisr CXB1YmxpYyBzdGF0aWMgaW50NjQgZ2V0X2Nsb2NrX3RpbWUgKENvZ2wuQ29udGV4dCBjb250ZXh0 KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJz aW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2IildCisrCXB1 YmxpYyBzdGF0aWMgYm9vbCBnZXRfZGVwdGhfdGVzdF9lbmFibGVkICgpOworKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJcHVibGljIHN0YXRpYyBDb2dsLkdy YXBoaWNzUmVzZXRTdGF0dXMgZ2V0X2dyYXBoaWNzX3Jlc2V0X3N0YXR1cyAoQ29nbC5Db250ZXh0 IGNvbnRleHQpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0K KysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYi LCBzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIHN0YXRpYyBHTGliLk9wdGlvbkdyb3VwIGdldF9v cHRpb25fZ3JvdXAgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wu aCIpXQorKwlwdWJsaWMgc3RhdGljIEdMaWIuQ2FsbGJhY2sgZ2V0X3Byb2NfYWRkcmVzcyAoc3Ry aW5nIHMpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJ W1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTgiKV0K KysJcHVibGljIHN0YXRpYyBHTGliLlR5cGUgZ3R5cGVfbWF0cml4X2dldF90eXBlICgpOworKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTAiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGhhc19mZWF0dXJlIChDb2dsLkNv bnRleHQgY29udGV4dCwgQ29nbC5GZWF0dXJlSUQgZmVhdHVyZSk7CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIp XQorKwlwdWJsaWMgc3RhdGljIGJvb2wgaXNfY29udGV4dCAodm9pZCogb2JqZWN0KTsKKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEwIildCisrCXB1YmxpYyBzdGF0aWMgYm9vbCBpc19mcmFtZWJ1ZmZlciAodm9pZCog b2JqZWN0KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisr CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBzdGF0aWMgYm9vbCBpc19vbnNj cmVlbiAodm9pZCogb2JqZWN0KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wv Y29nbC5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJcHVibGljIHN0YXRpYyBi b29sIGlzX3BpcGVsaW5lICh2b2lkKiBvYmplY3QpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY29nbC9jb2dsLmgiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGlzX3RleHR1cmVfMmQg KHZvaWQqIG9iamVjdCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wu aCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgc3RhdGljIGJvb2wg aXNfdGV4dHVyZV8yZF9zbGljZWQgKHZvaWQqIG9iamVjdCk7CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisr CXB1YmxpYyBzdGF0aWMgYm9vbCBtYXRyaXhfZXF1YWwgKHZvaWQqIHYxLCB2b2lkKiB2Mik7Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAo ZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIpXQorKwlwdWJsaWMg c3RhdGljIHZvaWQgc2V0X2JhY2tmYWNlX2N1bGxpbmdfZW5hYmxlZCAoYm9vbCBzZXR0aW5nKTsK KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9u IChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2IildCisrCXB1Ymxp YyBzdGF0aWMgdm9pZCBzZXRfZGVwdGhfdGVzdF9lbmFibGVkIChib29sIHNldHRpbmcpOworKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKGRl cHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiKV0KKysJcHVibGljIHN0 YXRpYyB2b2lkIHNoYWRlcl9jb21waWxlIChDb2dsLkhhbmRsZSBoYW5kbGUpOworKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0 ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiKV0KKysJcHVibGljIHN0YXRpYyBz dHJpbmcgc2hhZGVyX2dldF9pbmZvX2xvZyAoQ29nbC5IYW5kbGUgaGFuZGxlKTsKKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChkZXByZWNh dGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2IildCisrCXB1YmxpYyBzdGF0aWMg Q29nbC5TaGFkZXJUeXBlIHNoYWRlcl9nZXRfdHlwZSAoQ29nbC5IYW5kbGUgaGFuZGxlKTsKKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChk ZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2IildCisrCXB1YmxpYyBz dGF0aWMgYm9vbCBzaGFkZXJfaXNfY29tcGlsZWQgKENvZ2wuSGFuZGxlIGhhbmRsZSk7CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoZGVw cmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIpXQorKwlwdWJsaWMgc3Rh dGljIHZvaWQgc2hhZGVyX3NvdXJjZSAoQ29nbC5IYW5kbGUgc2hhZGVyLCBzdHJpbmcgc291cmNl KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJz aW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE4Iiwgc2luY2Ug PSAiMS4wIildCisrCXB1YmxpYyBzdGF0aWMgQ29nbC5UZXh0dXJlIHRleHR1cmVfbmV3X2Zyb21f Yml0bWFwIChDb2dsLkJpdG1hcCBiaXRtYXAsIENvZ2wuVGV4dHVyZUZsYWdzIGZsYWdzLCBDb2ds LlBpeGVsRm9ybWF0IGludGVybmFsX2Zvcm1hdCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJl Y2F0ZWRfc2luY2UgPSAiMS4xOCIsIHNpbmNlID0gIjAuOCIpXQorKwlwdWJsaWMgc3RhdGljIENv Z2wuVGV4dHVyZSB0ZXh0dXJlX25ld19mcm9tX2RhdGEgKGludCB3aWR0aCwgaW50IGhlaWdodCwg Q29nbC5UZXh0dXJlRmxhZ3MgZmxhZ3MsIENvZ2wuUGl4ZWxGb3JtYXQgZm9ybWF0LCBDb2dsLlBp eGVsRm9ybWF0IGludGVybmFsX2Zvcm1hdCwgaW50IHJvd3N0cmlkZSwgdWludDggZGF0YSk7Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAo ZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xOCIsIHNpbmNlID0gIjAu OCIpXQorKwlwdWJsaWMgc3RhdGljIENvZ2wuVGV4dHVyZSB0ZXh0dXJlX25ld19mcm9tX2ZpbGUg KHN0cmluZyBmaWxlbmFtZSwgQ29nbC5UZXh0dXJlRmxhZ3MgZmxhZ3MsIENvZ2wuUGl4ZWxGb3Jt YXQgaW50ZXJuYWxfZm9ybWF0KSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1 ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE4Iiwgc2luY2UgPSAiMC44IildCisrCXB1YmxpYyBz dGF0aWMgQ29nbC5UZXh0dXJlIHRleHR1cmVfbmV3X3dpdGhfc2l6ZSAodWludCB3aWR0aCwgdWlu dCBoZWlnaHQsIENvZ2wuVGV4dHVyZUZsYWdzIGZsYWdzLCBDb2dsLlBpeGVsRm9ybWF0IGludGVy bmFsX2Zvcm1hdCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIp XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgc3RhdGljIHVpbnQzMiB4 MTFfb25zY3JlZW5fZ2V0X3dpbmRvd194aWQgKENvZ2wuT25zY3JlZW4gb25zY3JlZW4pOworK30K Ky0tIAorMi4yNS4wCisKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvYnVkZ2llLWRlc2t0b3AvdGVtcGxh dGUgYi9zcmNwa2dzL2J1ZGdpZS1kZXNrdG9wL3RlbXBsYXRlCmluZGV4IGIzMmU3NzM0ZDNiLi4x ODBjZGMwMmYxZiAxMDA2NDQKLS0tIGEvc3JjcGtncy9idWRnaWUtZGVza3RvcC90ZW1wbGF0ZQor KysgYi9zcmNwa2dzL2J1ZGdpZS1kZXNrdG9wL3RlbXBsYXRlCkBAIC0xLDIxICsxLDIyIEBACiAj IFRlbXBsYXRlIGZpbGUgZm9yICdidWRnaWUtZGVza3RvcCcKIHBrZ25hbWU9YnVkZ2llLWRlc2t0 b3AKIHZlcnNpb249MTAuNS4xCi1yZXZpc2lvbj0zCityZXZpc2lvbj00CiBidWlsZF9zdHlsZT1t ZXNvbgogYnVpbGRfaGVscGVyPWdpcgogY29uZmlndXJlX2FyZ3M9Ii1Ed2l0aC1ndGstZG9jPWZh bHNlIC1Ed2l0aC1kZXNrdG9wLWljb25zPW5vbmUiCiBob3N0bWFrZWRlcGVuZHM9InBrZy1jb25m aWcgaW50bHRvb2wgdmFsYSBnbGliLWRldmVsIGdvYmplY3QtaW50cm9zcGVjdGlvbiBzYXNzYyIK IG1ha2VkZXBlbmRzPSJhbHNhLWxpYi1kZXZlbCBsaWJub3RpZnktZGV2ZWwgYWNjb3VudHNzZXJ2 aWNlLWRldmVsIGxpYnBlYXMtZGV2ZWwgbGlid25jay1kZXZlbAotbXV0dGVyLWRldmVsIGlidXMt ZGV2ZWwgZ25vbWUtZGVza3RvcC1kZXZlbCBwdWxzZWF1ZGlvLWRldmVsIHVwb3dlci1kZXZlbCBn dGsrMy1kZXZlbCBwb2xraXQtZGV2ZWwKLWdub21lLWJsdWV0b290aC1kZXZlbCBnbm9tZS1tZW51 cy1kZXZlbCBnbm9tZS1zZXR0aW5ncy1kYWVtb24tZGV2ZWwgdmFsYSBsaWJ1dWlkLWRldmVsIGxp YnVwb3dlci1nbGliMyIKLWRlcGVuZHM9Imdub21lLXNlc3Npb24gZ25vbWUtc2V0dGluZ3MtZGFl bW9uIGdub21lLWNvbnRyb2wtY2VudGVyIGVsb2dpbmQiCisgbXV0dGVyLWRldmVsIGlidXMtZGV2 ZWwgZ25vbWUtZGVza3RvcC1kZXZlbCBwdWxzZWF1ZGlvLWRldmVsIHVwb3dlci1kZXZlbCBndGsr My1kZXZlbCBwb2xraXQtZGV2ZWwKKyBnbm9tZS1ibHVldG9vdGgtZGV2ZWwgZ25vbWUtbWVudXMt ZGV2ZWwgZ25vbWUtc2V0dGluZ3MtZGFlbW9uLWRldmVsIHZhbGEgbGlidXVpZC1kZXZlbCBsaWJ1 cG93ZXItZ2xpYjMiCitkZXBlbmRzPSJnbm9tZS1zZXNzaW9uIGdub21lLXNldHRpbmdzLWRhZW1v biBnbm9tZS1jb250cm9sLWNlbnRlciBnbm9tZS10aGVtZXMtZXh0cmEgZWxvZ2luZCIKIHNob3J0 X2Rlc2M9Ik1vZGVybiBkZXNrdG9wIGVudmlyb25tZW50IGZyb20gdGhlIFNvbHVzIFByb2plY3Qi CiBtYWludGFpbmVyPSJMb3JlbSA8bm90bG9yZW1pcHN1bUBwcm90b25tYWlsLmNvbT4iCiBsaWNl bnNlPSJHUEwtMi4wLW9ubHksIExHUEwtMi4xLW9ubHkiCiBob21lcGFnZT0iaHR0cHM6Ly9naXRo dWIuY29tL3NvbHVzLXByb2plY3QvYnVkZ2llLWRlc2t0b3AiCiBkaXN0ZmlsZXM9Imh0dHBzOi8v Z2l0aHViLmNvbS9zb2x1cy1wcm9qZWN0L2J1ZGdpZS1kZXNrdG9wL3JlbGVhc2VzL2Rvd25sb2Fk L3Yke3ZlcnNpb259L2J1ZGdpZS1kZXNrdG9wLSR7dmVyc2lvbn0udGFyLnh6IgogY2hlY2tzdW09 ZDAzNWVjNzY0ZTAwOTM3MjJhODMyNDExYWViNmFiYTI5NmMwOTk1ZDkyN2VhMDY5YjIwNWIxOWM4 NWFhZTU2NQorcGF0Y2hfYXJncz0iLU5wMSIKIAogcHJlX2NvbmZpZ3VyZSgpIHsKIAl2c2VkIC1p ICdzL2V4ZWMgZ25vbWUtc2Vzc2lvbi9leGVjIGdub21lLXNlc3Npb24gLS1idWlsdGluLycgc3Jj L3Nlc3Npb24vYnVkZ2llLWRlc2t0b3AuaW4KCkZyb20gMWVmZmVhYTliYzM4Y2VkMGJiODg2OTFm OTU0NDI4MmM3OTQ1MTBmNyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1u YWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogVGh1LCAzMCBBcHIgMjAyMCAxMzo0NjoxNiArMDYw MApTdWJqZWN0OiBbUEFUQ0ggNDMvNTJdIHhkZy1kZXNrdG9wLXBvcnRhbC1ndGs6IHJlYnVpbGQg YWdhaW5zdAogbGliZ25vbWUtZGVza3RvcC0zLnNvLjE5CgotLS0KIHNyY3BrZ3MveGRnLWRlc2t0 b3AtcG9ydGFsLWd0ay90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlv bigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MveGRnLWRlc2t0b3AtcG9y dGFsLWd0ay90ZW1wbGF0ZSBiL3NyY3BrZ3MveGRnLWRlc2t0b3AtcG9ydGFsLWd0ay90ZW1wbGF0 ZQppbmRleCBkZWUwZTQ2MzM4Ni4uNTU4Yzc1ZjUzOWQgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MveGRn LWRlc2t0b3AtcG9ydGFsLWd0ay90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3hkZy1kZXNrdG9wLXBv cnRhbC1ndGsvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICd4 ZGctZGVza3RvcC1wb3J0YWwtZ3RrJwogcGtnbmFtZT14ZGctZGVza3RvcC1wb3J0YWwtZ3RrCiB2 ZXJzaW9uPTEuNi4wCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1nbnUtY29u ZmlndXJlCiBob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcgbGlieHNsdCBnbGliLWRldmVsIHhk Zy1kZXNrdG9wLXBvcnRhbCBnZXR0ZXh0IgogbWFrZWRlcGVuZHM9ImZsYXRwYWstZGV2ZWwgZ3Rr KzMtZGV2ZWwgbGlieHNsdC1kZXZlbCBsaWJnbGliLWRldmVsCgpGcm9tIDU2ZTI2Y2JiNGY3MDNl Zjc0MDYwYTI1Y2NmZTNhNzJkYmVkMGQzYTUgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206 IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFRodSwgMzAgQXByIDIwMjAgMDI6 NDk6MTMgKzA2MDAKU3ViamVjdDogW1BBVENIIDQ0LzUyXSBjaGVlc2U6IHJlYnVpbGQgYWdhaW5z dCBsaWJnbm9tZS1kZXNrdG9wLTMuc28uMTkKCi0tLQogc3JjcGtncy9jaGVlc2UvdGVtcGxhdGUg fCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRp ZmYgLS1naXQgYS9zcmNwa2dzL2NoZWVzZS90ZW1wbGF0ZSBiL3NyY3BrZ3MvY2hlZXNlL3RlbXBs YXRlCmluZGV4IDdhNTZiYTAzOWZiLi4wMzdjZGE0OWM5OCAxMDA2NDQKLS0tIGEvc3JjcGtncy9j aGVlc2UvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9jaGVlc2UvdGVtcGxhdGUKQEAgLTEsNyArMSw3 IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdjaGVlc2UnCiBwa2duYW1lPWNoZWVzZQogdmVyc2lv bj0zLjM0LjAKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxlPW1lc29uCiBidWls ZF9oZWxwZXI9ImdpciIKIGNvbmZpZ3VyZV9hcmdzPSItRGd0a19kb2M9JCh2b3B0X2lmIGd0a19k b2MgJ3RydWUnICdmYWxzZScpCgpGcm9tIDBlODI5ODg1OGJkYTRkM2I1MzYxZjJkNjE0ZDZmNTY4 ZGM5NTRmMmIgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVA b3V0bG9vay5jb20+CkRhdGU6IFRodSwgMzAgQXByIDIwMjAgMDI6MzQ6NTQgKzA2MDAKU3ViamVj dDogW1BBVENIIDQ1LzUyXSBnbm9tZS1ib29rczogcmVidWlsZCBhZ2FpbnN0IGxpYmdub21lLWRl c2t0b3AtMy5zby4xOQoKLS0tCiBzcmNwa2dzL2dub21lLWJvb2tzL3RlbXBsYXRlIHwgMiArLQog MSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0 IGEvc3JjcGtncy9nbm9tZS1ib29rcy90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25vbWUtYm9va3MvdGVt cGxhdGUKaW5kZXggMTE0YjllMDM0YzIuLjFkNDk3NGZlMTgzIDEwMDY0NAotLS0gYS9zcmNwa2dz L2dub21lLWJvb2tzL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtYm9va3MvdGVtcGxhdGUK QEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbm9tZS1ib29rcycKIHBrZ25h bWU9Z25vbWUtYm9va3MKIHZlcnNpb249My4zNC4wCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBi dWlsZF9oZWxwZXI9ImdpciIKIGJ1aWxkX3N0eWxlPW1lc29uCiBob3N0bWFrZWRlcGVuZHM9InBr Zy1jb25maWcgdmFsYSBnbGliLWRldmVsIGxpYnJzdmcgZG9jYm9vay14c2wgbGlieHNsdAoKRnJv bSBmNDZkZjZmYmJkM2ZiN2NjMmI1YThjZmM0ZTRmMWEyNmU4NDRjOGJjIE1vbiBTZXAgMTcgMDA6 MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUaHUs IDMwIEFwciAyMDIwIDAyOjQ3OjMxICswNjAwClN1YmplY3Q6IFtQQVRDSCA0Ni81Ml0gZ25vbWUt Y2hhcmFjdGVyczogcmVidWlsZCBhZ2FpbnN0CiBsaWJnbm9tZS1kZXNrdG9wLTMuc28uMTkKCi0t LQogc3JjcGtncy9nbm9tZS1jaGFyYWN0ZXJzL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5n ZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9n bm9tZS1jaGFyYWN0ZXJzL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1jaGFyYWN0ZXJzL3RlbXBs YXRlCmluZGV4IDg5ODY4ZjRiYzA0Li5hYzI2NGU1MWE2YSAxMDA2NDQKLS0tIGEvc3JjcGtncy9n bm9tZS1jaGFyYWN0ZXJzL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtY2hhcmFjdGVycy90 ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLWNoYXJh Y3RlcnMnCiBwa2duYW1lPWdub21lLWNoYXJhY3RlcnMKIHZlcnNpb249My4zNC4wCi1yZXZpc2lv bj0yCityZXZpc2lvbj0zCiBidWlsZF9zdHlsZT1tZXNvbgogYnVpbGRfaGVscGVyPSJnaXIiCiBo b3N0bWFrZWRlcGVuZHM9ImdldHRleHQgZ2pzIGdsaWItZGV2ZWwgaXRzdG9vbCBwa2ctY29uZmln IgoKRnJvbSBjZjlkZDI3OTNkMDRkMTBlZTkwNjI0MjcyMjVmMjJkZjI2MDM5NDhkIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRl OiBUaHUsIDMwIEFwciAyMDIwIDAyOjU1OjE4ICswNjAwClN1YmplY3Q6IFtQQVRDSCA0Ny81Ml0g Z25vbWUtZG9jdW1lbnRzOiByZWJ1aWxkIGFnYWluc3QKIGxpYmdub21lLWRlc2t0b3AtMy5zby4x OQoKLS0tCiBzcmNwa2dzL2dub21lLWRvY3VtZW50cy90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBj aGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3Br Z3MvZ25vbWUtZG9jdW1lbnRzL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1kb2N1bWVudHMvdGVt cGxhdGUKaW5kZXggOTdiNTNkNjM1ZDcuLjdlNDViODI1ZTcxIDEwMDY0NAotLS0gYS9zcmNwa2dz L2dub21lLWRvY3VtZW50cy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dub21lLWRvY3VtZW50cy90 ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLWRvY3Vt ZW50cycKIHBrZ25hbWU9Z25vbWUtZG9jdW1lbnRzCiB2ZXJzaW9uPTMuMzQuMAotcmV2aXNpb249 MQorcmV2aXNpb249MgogYnVpbGRfaGVscGVyPSJnaXIiCiBidWlsZF9zdHlsZT1tZXNvbgogaG9z dG1ha2VkZXBlbmRzPSJkb2Nib29rLXhzbCBnZXR0ZXh0IGl0c3Rvb2wgcGtnLWNvbmZpZyBnbGli LWRldmVsIGxpYnhzbHQgZ2RrLXBpeGJ1ZgoKRnJvbSA2ZDgwZjVkYTI2ZjY4MDRhNWU2MTEwNGM0 ZTllNWExM2U1ZWZkYmI0IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5h YmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUaHUsIDMwIEFwciAyMDIwIDAyOjU2OjU2ICswNjAw ClN1YmplY3Q6IFtQQVRDSCA0OC81Ml0gZ25vbWUtZm9udC12aWV3ZXI6IHJlYnVpbGQgYWdhaW5z dAogbGliZ25vbWUtZGVza3RvcC0zLnNvLjE5CgotLS0KIHNyY3BrZ3MvZ25vbWUtZm9udC12aWV3 ZXIvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVs ZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLWZvbnQtdmlld2VyL3RlbXBsYXRl IGIvc3JjcGtncy9nbm9tZS1mb250LXZpZXdlci90ZW1wbGF0ZQppbmRleCA2ZDAzNTM2NmQ0NC4u Zjc0ZmNiY2IwMDAgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtZm9udC12aWV3ZXIvdGVtcGxh dGUKKysrIGIvc3JjcGtncy9nbm9tZS1mb250LXZpZXdlci90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcg QEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLWZvbnQtdmlld2VyJwogcGtnbmFtZT1nbm9t ZS1mb250LXZpZXdlcgogdmVyc2lvbj0zLjM0LjAKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1 aWxkX3N0eWxlPW1lc29uCiBob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcgZ2xpYi1kZXZlbCIK IG1ha2VkZXBlbmRzPSJmb250Y29uZmlnLWRldmVsIGZyZWV0eXBlLWRldmVsIGdsaWItZGV2ZWwg Z3RrKzMtZGV2ZWwKCkZyb20gMjc5Nzk1OWYyNTBhNmU1MjEwZjkzYWU5MTc2MDRkZjcwYTE0YTE0 ZiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29r LmNvbT4KRGF0ZTogU3VuLCAzIE1heSAyMDIwIDAyOjI3OjE3ICswNjAwClN1YmplY3Q6IFtQQVRD SCA0OS81Ml0gZ25vbWUtc2NyZWVuc2F2ZXI6IHJlYnVpbGQgYWdhaW5zdAogbGliZ25vbWUtZGVz a3RvcC0zLnNvLjE5CgotLS0KIC4uLi9wYXRjaGVzL2dub21lLWRlc2t0b3AtMy4zNi5wYXRjaCAg ICAgICAgICAgICAgICB8IDEzICsrKysrKysrKysrKysKIHNyY3BrZ3MvZ25vbWUtc2NyZWVuc2F2 ZXIvdGVtcGxhdGUgICAgICAgICAgICAgICAgICB8ICA1ICsrKy0tCiAyIGZpbGVzIGNoYW5nZWQs IDE2IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3Jj cGtncy9nbm9tZS1zY3JlZW5zYXZlci9wYXRjaGVzL2dub21lLWRlc2t0b3AtMy4zNi5wYXRjaAoK ZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtc2NyZWVuc2F2ZXIvcGF0Y2hlcy9nbm9tZS1kZXNr dG9wLTMuMzYucGF0Y2ggYi9zcmNwa2dzL2dub21lLXNjcmVlbnNhdmVyL3BhdGNoZXMvZ25vbWUt ZGVza3RvcC0zLjM2LnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw Li41OGQ5MmU0NjNhMwotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvZ25vbWUtc2NyZWVuc2F2 ZXIvcGF0Y2hlcy9nbm9tZS1kZXNrdG9wLTMuMzYucGF0Y2gKQEAgLTAsMCArMSwxMyBAQAorZGlm ZiAtTmF1ciBnbm9tZS1zY3JlZW5zYXZlci0zLjYuMS5vcmlnL3NyYy9ncy1tYW5hZ2VyLmMgZ25v bWUtc2NyZWVuc2F2ZXItMy42LjEvc3JjL2dzLW1hbmFnZXIuYworLS0tIGdub21lLXNjcmVlbnNh dmVyLTMuNi4xLm9yaWcvc3JjL2dzLW1hbmFnZXIuYwkyMDIwLTAzLTA4IDA4OjUzOjQ2LjQwODQz MTU3OCArMDAwMAorKysrIGdub21lLXNjcmVlbnNhdmVyLTMuNi4xL3NyYy9ncy1tYW5hZ2VyLmMJ MjAyMC0wMy0wOCAwODo1NDozMS44NzU3Mzg3MzIgKzAwMDAKK0BAIC03ODgsOCArNzg4LDcgQEAK KyAgICAgICAgIHN1cmZhY2UgPSBnbm9tZV9iZ19jcmVhdGVfc3VyZmFjZSAobWFuYWdlci0+cHJp di0+YmcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdka193 aW5kb3csCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRo LAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQsCist ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZBTFNFKTsKKysgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0KTsKKyAgICAgICAg IGdzX3dpbmRvd19zZXRfYmFja2dyb3VuZF9zdXJmYWNlICh3aW5kb3csIHN1cmZhY2UpOworICAg ICAgICAgY2Fpcm9fc3VyZmFjZV9kZXN0cm95IChzdXJmYWNlKTsKKyB9CmRpZmYgLS1naXQgYS9z cmNwa2dzL2dub21lLXNjcmVlbnNhdmVyL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1zY3JlZW5z YXZlci90ZW1wbGF0ZQppbmRleCAzNjNmY2YxMmUxMC4uNTRhOWEzNWVjY2IgMTAwNjQ0Ci0tLSBh L3NyY3BrZ3MvZ25vbWUtc2NyZWVuc2F2ZXIvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS1z Y3JlZW5zYXZlci90ZW1wbGF0ZQpAQCAtMSwxNSArMSwxNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZv ciAnZ25vbWUtc2NyZWVuc2F2ZXInCiBwa2duYW1lPWdub21lLXNjcmVlbnNhdmVyCiB2ZXJzaW9u PTMuNi4xCi1yZXZpc2lvbj0yCityZXZpc2lvbj0zCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJl CiBjb25maWd1cmVfYXJncz0iLS1lbmFibGUtY29tcGlsZS13YXJuaW5ncz1taW5pbXVtIgogaG9z dG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIGF1dG9tYWtlIGludGx0b29sIGdsaWItZGV2ZWwiCiBt YWtlZGVwZW5kcz0iZ25vbWUtZGVza3RvcC1kZXZlbCBkYnVzLWdsaWItZGV2ZWwgcGFtLWRldmVs IgogZGVwZW5kcz0iZ25vbWUtZGVza3RvcCBsaWJnbm9tZWtiZCBkYnVzIgotc2hvcnRfZGVzYz0i QSBuZXcgc2NyZWVuc2F2ZXIgdGhhdCBjYW4gcmVwbGFjZSB4c2NyZWVuc2F2ZXIiCitzaG9ydF9k ZXNjPSJOZXcgc2NyZWVuc2F2ZXIgdGhhdCBjYW4gcmVwbGFjZSB4c2NyZWVuc2F2ZXIiCiBtYWlu dGFpbmVyPSJzaGl6b25pYyA8cmVhbHRpYXpAZ21haWwuY29tPiIKIGxpY2Vuc2U9IkdQTC0zLjAt b3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9Qcm9qZWN0cy9Hbm9t ZVNjcmVlbnNhdmVyIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJz aW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgogY2hlY2tzdW09ZjM5Yjc4ZDRm N2ZlZDc0OGM3ZjBhMzFkNjk0MTEyZmI5MDdjNmQzYzRlNjNkYjIyZWI4NThkZjA3ZTk2MmNkMAor cGF0Y2hfYXJncz0iLU5wMSIKCkZyb20gMGNmYmMxZTYyNmNiNDA3OGQwODcwMTY4NDZiMTJhNjI2 ZmNiNDE3MiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBv dXRsb29rLmNvbT4KRGF0ZTogU3VuLCAzIE1heSAyMDIwIDExOjQzOjE5ICswNjAwClN1YmplY3Q6 IFtQQVRDSCA1MC81Ml0gZ25vbWUtd2VhdGhlcjogcmVidWlsZCBhZ2FpbnN0IGxpYmdub21lLWRl c2t0b3AtMy5zby4xOQoKLS0tCiBzcmNwa2dzL2dub21lLXdlYXRoZXIvdGVtcGxhdGUgfCAyICst CiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1n aXQgYS9zcmNwa2dzL2dub21lLXdlYXRoZXIvdGVtcGxhdGUgYi9zcmNwa2dzL2dub21lLXdlYXRo ZXIvdGVtcGxhdGUKaW5kZXggZDMwYmU5YmYxOTIuLmMwMjhlNDZiYTY1IDEwMDY0NAotLS0gYS9z cmNwa2dzL2dub21lLXdlYXRoZXIvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS13ZWF0aGVy L3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ25vbWUtd2Vh dGhlcicKIHBrZ25hbWU9Z25vbWUtd2VhdGhlcgogdmVyc2lvbj0zLjM2LjEKLXJldmlzaW9uPTEK K3JldmlzaW9uPTIKIGJ1aWxkX2hlbHBlcj0iZ2lyIgogYnVpbGRfc3R5bGU9bWVzb24KIGhvc3Rt YWtlZGVwZW5kcz0iZ2V0dGV4dCBwa2ctY29uZmlnIGl0c3Rvb2wgZ2xpYi1kZXZlbCBnanMiCgpG cm9tIDgzZDZhNDE4ZDc1NDYwNjk4ZjRlNDVmMzQzY2VjNjNmODc5Njc3NjkgTW9uIFNlcCAxNyAw MDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFRo dSwgMzAgQXByIDIwMjAgMDI6NTc6NTcgKzA2MDAKU3ViamVjdDogW1BBVENIIDUxLzUyXSB0b3Rl bTogcmVidWlsZCBhZ2FpbnN0IGxpYmdub21lLWRlc2t0b3AtMy5zby4xOQoKLS0tCiBzcmNwa2dz L3RvdGVtL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAx IGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy90b3RlbS90ZW1wbGF0ZSBiL3NyY3Br Z3MvdG90ZW0vdGVtcGxhdGUKaW5kZXggODE1MjJiMzE0ODguLmU0MTg2NjMyMTUzIDEwMDY0NAot LS0gYS9zcmNwa2dzL3RvdGVtL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvdG90ZW0vdGVtcGxhdGUK QEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICd0b3RlbScKIHBrZ25hbWU9dG90 ZW0KIHZlcnNpb249My4zNC4xCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1t ZXNvbgogYnVpbGRfaGVscGVyPSJnaXIiCiBjb25maWd1cmVfYXJncz0iLURlbmFibGUtcHl0aG9u PW5vIC1EZW5hYmxlLW5hdXRpbHVzPXllcwoKRnJvbSA4YzZhNGFjY2UyZmEyMGYzMmQxMzJmYTMy ZmEyZWQ3MTliYWNkYTIzIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5h YmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUaHUsIDMwIEFwciAyMDIwIDAzOjA0OjA3ICswNjAw ClN1YmplY3Q6IFtQQVRDSCA1Mi81Ml0gbHV0cmlzOiByZWJ1aWxkIGFnYWluc3QgbGliZ25vbWUt ZGVza3RvcC0zLnNvLjE5CgpbY2kgc2tpcF0KLS0tCiBzcmNwa2dzL2x1dHJpcy90ZW1wbGF0ZSB8 IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlm ZiAtLWdpdCBhL3NyY3BrZ3MvbHV0cmlzL3RlbXBsYXRlIGIvc3JjcGtncy9sdXRyaXMvdGVtcGxh dGUKaW5kZXggYzNjNDczOTJmZjYuLjdlZTc0Y2M3OTkwIDEwMDY0NAotLS0gYS9zcmNwa2dzL2x1 dHJpcy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2x1dHJpcy90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcg QEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2x1dHJpcycKIHBrZ25hbWU9bHV0cmlzCiB2ZXJzaW9u PTAuNS42Ci1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBhcmNocz1ub2FyY2gKIGJ1aWxkX3N0eWxl PXB5dGhvbjMtbW9kdWxlCiBidWlsZF9oZWxwZXI9ImdpciIK --===============6136341628768355111==--