From mboxrd@z Thu Jan 1 00:00:00 1970 Received: (qmail 29119 invoked from network); 29 May 2020 12:13:27 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 29 May 2020 12:13:27 -0000 Content-Type: multipart/mixed; boundary="===============0986225898709114706==" 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: Fri, 29 May 2020 14:13:25 +0200 List-Id: Message-ID: <20200529121325.SVBtE8fBnZjTMb_-rVf94D7hx3DaD0VbfnYUR7ygXC8@z> GitHub notification mails are now in MIME to allow UTF8. --===============0986225898709114706== 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= --===============0986225898709114706== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-gedit-21382.patch" RnJvbSBjMDBiZDcwOTJhNGJiYTBiNmE5NWU3ODUwNGM5MTAyMDc0ZDA1ZDYwIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBX ZWQsIDI5IEFwciAyMDIwIDE1OjQ5OjE2ICswNjAwClN1YmplY3Q6IFtQQVRDSCAwMS81Ml0gZ25v bWUtZGVza3RvcDogdXBkYXRlIHRvIDMuMzYuMi4KCi0tLQogY29tbW9uL3NobGlicyAgICAgICAg ICAgICAgICAgIHwgMiArLQogc3JjcGtncy9nbm9tZS1kZXNrdG9wL3RlbXBsYXRlIHwgOCArKysr LS0tLQogMiBmaWxlcyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDUgZGVsZXRpb25zKC0pCgpk aWZmIC0tZ2l0IGEvY29tbW9uL3NobGlicyBiL2NvbW1vbi9zaGxpYnMKaW5kZXggZjVjNWJlZDZi OTMuLjE1MzYzNDY4YTJiIDEwMDY0NAotLS0gYS9jb21tb24vc2hsaWJzCisrKyBiL2NvbW1vbi9z aGxpYnMKQEAgLTExNzYsNyArMTE3Niw3IEBAIGxpYmdzdGJhc2VjYW1lcmFiaW5zcmMtMS4wLnNv 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 Z2lyIgogYnVpbGRfb3B0aW9uc19kZWZhdWx0PSJnaXIiCgpGcm9tIDNjZTlmMGU3YTMyMTVkMTA4 OWIwN2U0MDAyNTRiNDc0MzUwYTNjODEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5h ZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFN1biwgMyBNYXkgMjAyMCAxMzoxNzow NyArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMDIvNTJdIGdub21lLXNlc3Npb246IHVwZGF0ZSB0byAz LjM2LjAuCgotLS0KIHNyY3BrZ3MvZ25vbWUtc2Vzc2lvbi90ZW1wbGF0ZSB8IDEwICsrKysrKyst LS0KIDEgZmlsZSBjaGFuZ2VkLCA3IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpkaWZm IC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1zZXNzaW9uL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1z ZXNzaW9uL3RlbXBsYXRlCmluZGV4IDQ0NDRmMTYyYmYxLi44OGRlZTIwZWI2ZSAxMDA2NDQKLS0t IGEvc3JjcGtncy9nbm9tZS1zZXNzaW9uL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtc2Vz c2lvbi90ZW1wbGF0ZQpAQCAtMSw5ICsxLDkgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21l LXNlc3Npb24nCiBwa2duYW1lPWdub21lLXNlc3Npb24KLXZlcnNpb249My4zNC4xCit2ZXJzaW9u PTMuMzYuMAogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9bWVzb24KLWNvbmZpZ3VyZV9hcmdzPSIt RHN5c3RlbWRfam91cm5hbD1mYWxzZSIKK2NvbmZpZ3VyZV9hcmdzPSItRHN5c3RlbWRfc2Vzc2lv bj1kaXNhYmxlIC1Ec3lzdGVtZF9qb3VybmFsPWZhbHNlIgogaG9zdG1ha2VkZXBlbmRzPSJnbGli LWRldmVsIGludGx0b29sIHBrZy1jb25maWcgeG1sdG8iCiBtYWtlZGVwZW5kcz0iZWxvZ2luZC1k ZXZlbCBnbm9tZS1kZXNrdG9wLWRldmVsIGd0ayszLWRldmVsIGpzb24tZ2xpYi1kZXZlbAogIGxp YmdsaWItZGV2ZWwgbGliSUNFLWRldmVsIGxpYlNNLWRldmVsIGxpYlh0c3QtZGV2ZWwgc3RhcnR1 cC1ub3RpZmljYXRpb24tZGV2ZWwKQEAgLTE1LDQgKzE1LDggQEAgbWFpbnRhaW5lcj0iRW5ubyBC b2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIs IExHUEwtMi4xLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9H Tk9NRS9nbm9tZS1zZXNzaW9uIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0v JHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09ZDc4 MDFmZTJkNWE3NTFiMTljYjU4MDgxNzcxMzE2YTc2YWFiZDVjNTUwY2Q1OGQ0ZTRjNmE1YTRlZDM1 NjY2MAorY2hlY2tzdW09ZDU0YjM4YjgxOGM4MTJmNjRiODJjYzZhMTI3OWUzY2E1YTZlMzkxZWU2 NjI3OTMzMjJhMzhjYWI1NjcwYmI3YQorCitwb3N0X2luc3RhbGwoKSB7CisJcm0gLXJmICR7REVT VERJUn0vdXNyL2xpYi9zeXN0ZW1kCit9CgpGcm9tIGU1OWFiOGEyY2RhMzZjZTlhYzM0NjUyMTIz Nzg4ZGQ3NDNkODFjODIgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFi aWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IE1vbiwgMjcgQXByIDIwMjAgMTI6MjA6MTUgKzA2MDAK U3ViamVjdDogW1BBVENIIDAzLzUyXSBuYXV0aWx1czogdXBkYXRlIHRvIDMuMzYuMi4KCi0tLQog c3JjcGtncy9uYXV0aWx1cy90ZW1wbGF0ZSB8IDYgKysrLS0tCiAxIGZpbGUgY2hhbmdlZCwgMyBp bnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbmF1dGls dXMvdGVtcGxhdGUgYi9zcmNwa2dzL25hdXRpbHVzL3RlbXBsYXRlCmluZGV4IDUzN2E4NTE5NzNm Li4xMDEwODczZjRmMCAxMDA2NDQKLS0tIGEvc3JjcGtncy9uYXV0aWx1cy90ZW1wbGF0ZQorKysg Yi9zcmNwa2dzL25hdXRpbHVzL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBm aWxlIGZvciAnbmF1dGlsdXMnCiBwa2duYW1lPW5hdXRpbHVzCi12ZXJzaW9uPTMuMzYuMS4xCit2 ZXJzaW9uPTMuMzYuMgogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9bWVzb24KIGJ1aWxkX2hlbHBl cj0iZ2lyIgpAQCAtMTYsOCArMTYsOCBAQCBzaG9ydF9kZXNjPSJHTk9NRSBmaWxlIG1hbmFnZXIi CiBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5z ZT0iR1BMLTIuMC1vci1sYXRlciwgTEdQTC0yLjEtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6 Ly93aWtpLmdub21lLm9yZy9OYXV0aWx1cyIKLWRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3Br Z25hbWV9LyR7dmVyc2lvbjo6NH0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNr c3VtPWY5MjUyZjUwODIxMWQ5ZjM2OGE0OWRiNjk3ODkwZjg5NWQwODBmMDk1OTBhZWNhZjMzODAz YTUxOWRlZjdiZGUKK2Rpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lv biUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKK2NoZWNrc3VtPTI2NjczYzk1OTk1 MDI0NTJjZjI5OTM1ODcyOWJlOGI1NTQwNjZhOWI2NzBkODliMjRlMjQ1MTYwZDE1Nzc2ZmEKIAog YnVpbGRfb3B0aW9ucz0iZ2lyIgogYnVpbGRfb3B0aW9uc19kZWZhdWx0PSJnaXIiCgpGcm9tIDUz Mzk1YzkxMWYyMDYwYjhlYTE0NGNkZDU0ODU2YzkxMGYwYzZhYjkgTW9uIFNlcCAxNyAwMDowMDow MCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IE1vbiwgMjcg QXByIDIwMjAgMTI6MjY6MDQgKzA2MDAKU3ViamVjdDogW1BBVENIIDA0LzUyXSBnbm9tZS0yMDQ4 OiB1cGRhdGUgdG8gMy4zNi4yLgoKLS0tCiBzcmNwa2dzL2dub21lLTIwNDgvdGVtcGxhdGUgfCA0 ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpk aWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS0yMDQ4L3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS0y MDQ4L3RlbXBsYXRlCmluZGV4IGI1OWNjZjZkZTQ2Li45ODliNmZmMTI1YiAxMDA2NDQKLS0tIGEv c3JjcGtncy9nbm9tZS0yMDQ4L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtMjA0OC90ZW1w bGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLTIwNDgnCiBw a2duYW1lPWdub21lLTIwNDgKLXZlcnNpb249My4zNi4wCit2ZXJzaW9uPTMuMzYuMgogcmV2aXNp b249MQogYnVpbGRfc3R5bGU9bWVzb24KIGhvc3RtYWtlZGVwZW5kcz0iZ2V0dGV4dCBnbGliLWRl dmVsIGl0c3Rvb2wgcGtnLWNvbmZpZyB2YWxhIgpAQCAtMTEsNCArMTEsNCBAQCBtYWludGFpbmVy PSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTMuMC1v ci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL0FwcHMvMjA0OCIKIGRp c3RmaWxlcz0iJHtHTk9NRV9TSVRFfS9nbm9tZS0yMDQ4LyR7dmVyc2lvbiUuKn0vZ25vbWUtMjA0 OC0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTFiNzkwZjE0NWQwYmQ2N2E1MzM5YzE2YTcw Njc0ODA3MzQ0ZWQxMTgzMWU4YzAyNDVlZDMxOTU2YjRiMzgyODEKK2NoZWNrc3VtPTI5ZGE3NDk5 Yzg5ZWU3NGY5ODM0ZThkZTJiODU2MzMyMzlhNjZlNWM1M2Q5NTZhOGU5NWE5ODdiZGI0YjMzMjEK CkZyb20gMzU4YjY0NzM1MGQwMTZlYmM5MGUzYjFmZjEwMmI1YWFlMTgxZjRhNSBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTog TW9uLCAyNyBBcHIgMjAyMCAxMjo0MzowMiArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMDUvNTJdIGdu b21lLW11c2ljOiB1cGRhdGUgdG8gMy4zNi4yLgoKLS0tCiBzcmNwa2dzL2dub21lLW11c2ljL3Rl bXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0 aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtbXVzaWMvdGVtcGxhdGUgYi9zcmNw a2dzL2dub21lLW11c2ljL3RlbXBsYXRlCmluZGV4IDEyNTExNzM2NDA3Li44MDJiY2VhODkxZiAx MDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1tdXNpYy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2du b21lLW11c2ljL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAn Z25vbWUtbXVzaWMnCiBwa2duYW1lPWdub21lLW11c2ljCi12ZXJzaW9uPTMuMzYuMQordmVyc2lv bj0zLjM2LjIKIHJldmlzaW9uPTEKIGJ1aWxkX2hlbHBlcj0iZ2lyIgogYnVpbGRfc3R5bGU9bWVz b24KQEAgLTE1LDUgKzE1LDUgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lk bGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6 Ly93aWtpLmdub21lLm9yZy9BcHBzL011c2ljIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7 cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hl Y2tzdW09N2I4MGY2MzBkMTU4MzM0OTM1YTg3NjAyOTY1NTBjYzkxYjUwZDYwNGZhNjhiNDAyZmU1 MTY1YjE1MzFlYzMzMgorY2hlY2tzdW09YWJhZDQxM2FlYmZhOGY4MTQxYWJjNzE2NDgwOWU4YzQ2 NzdmOGI2NTM4Zjg5MjEyODE5M2UwOTdlMGU5ODJhNQogbGliMzJkaXNhYmxlZD15ZXMKCkZyb20g NTY5MDNmNWY0NTQ4MTE1MWRkNTUxYTA0NWFlZjFjNWM2MWNmNTZjYyBNb24gU2VwIDE3IDAwOjAw OjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogTW9uLCAy NyBBcHIgMjAyMCAxMzowMjo0NyArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMDYvNTJdIGRldmhlbHA6 IHVwZGF0ZSB0byAzLjM2LjIuCgotLS0KIHNyY3BrZ3MvZGV2aGVscC90ZW1wbGF0ZSB8IDQgKyst LQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYg LS1naXQgYS9zcmNwa2dzL2RldmhlbHAvdGVtcGxhdGUgYi9zcmNwa2dzL2RldmhlbHAvdGVtcGxh dGUKaW5kZXggYTFjMmRjYmI3NjIuLmJhNzVkZmZkY2U3IDEwMDY0NAotLS0gYS9zcmNwa2dzL2Rl dmhlbHAvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9kZXZoZWxwL3RlbXBsYXRlCkBAIC0xLDYgKzEs NiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZGV2aGVscCcKIHBrZ25hbWU9ZGV2aGVscAotdmVy c2lvbj0zLjM2LjEKK3ZlcnNpb249My4zNi4yCiByZXZpc2lvbj0xCiBidWlsZF9oZWxwZXI9Imdp ciIKIGJ1aWxkX3N0eWxlPW1lc29uCkBAIC0xMSw3ICsxMSw3IEBAIG1haW50YWluZXI9IkVubm8g Qm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVy IgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcvQXBwcy9EZXZoZWxwIgogZGlzdGZp bGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7 dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09NGNmOGVjOTMwMmJjNGE3OWUwMWFjNTNiZDljOGI5 NWE1OTZmNzFmMzUzNTFmNDhiNjMyNjMyMjdmMDlhOGEzZAorY2hlY2tzdW09OGI1YTg0MzE5ZWZi YjJlZjFiYzQwMjJlZTNlZDJkNjY3ODc5NGViYTJkZmE5OTNlNTBlMDNkNmU3YjkzMGM1ZQogCiBk ZXZoZWxwLWRldmVsX3BhY2thZ2UoKSB7CiAJc2hvcnRfZGVzYys9IiAtIGRldmVsb3BtZW50IGZp bGVzIgoKRnJvbSAzYmE1NDFkODFiMmMyZTZjZTMzNmNjZDdjMjdkODlkNmVmNzZhNTMwIE1vbiBT ZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpE YXRlOiBNb24sIDI3IEFwciAyMDIwIDEzOjE3OjQyICswNjAwClN1YmplY3Q6IFtQQVRDSCAwNy81 Ml0gZW9nOiB1cGRhdGUgdG8gMy4zNi4yLgoKLS0tCiBzcmNwa2dzL2VvZy90ZW1wbGF0ZSB8IDQg KystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRp ZmYgLS1naXQgYS9zcmNwa2dzL2VvZy90ZW1wbGF0ZSBiL3NyY3BrZ3MvZW9nL3RlbXBsYXRlCmlu ZGV4IGY1MzQwMDAwZWI1Li4yNzYzOTljYTJjYyAxMDA2NDQKLS0tIGEvc3JjcGtncy9lb2cvdGVt cGxhdGUKKysrIGIvc3JjcGtncy9lb2cvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBs YXRlIGZpbGUgZm9yICdlb2cnCiBwa2duYW1lPWVvZwotdmVyc2lvbj0zLjM2LjEKK3ZlcnNpb249 My4zNi4yCiByZXZpc2lvbj0xCiBidWlsZF9oZWxwZXI9ImdpciIKIGJ1aWxkX3N0eWxlPW1lc29u CkBAIC0xNCw3ICsxNCw3IEBAIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxp bnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8v d2lraS5nbm9tZS5vcmcvQXBwcy9FeWVPZkdub21lIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9 L2VvZy8ke3ZlcnNpb24lLip9L2VvZy0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPWU0NTRh MWE3YWE1ZTNhMzMyMWVhYjAxMTY3NzgxMTBlNWE3YTdiNjNiY2YyMTY3NmVkYTFhN2JlMTg3Yzlj OTUKK2NoZWNrc3VtPTVjMDU2YjAyOTVhOGUwNmQwOTNiOGZjNjBiMTBlMmE4YzE5YWJkYjdiZWFl MWM3ZTdlMDU5NWVjZTJlMWI3OGMKIHNobGliX3Byb3ZpZGVzPSJsaWJlb2cuc28iCiBsaWIzMmRp c2FibGVkPXllcwogCgpGcm9tIDgwZTRmZWZjOWQ4ZmIxYzAyOTI0MTk0MTJhODExODg2OGU0ZjE1 MjkgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9v ay5jb20+CkRhdGU6IFdlZCwgMjkgQXByIDIwMjAgMTY6MDg6MjMgKzA2MDAKU3ViamVjdDogW1BB VENIIDA4LzUyXSBldmluY2U6IHVwZGF0ZSB0byAzLjM2LjEuCgotLS0KIHNyY3BrZ3MvZXZpbmNl L3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRl bGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZXZpbmNlL3RlbXBsYXRlIGIvc3JjcGtn cy9ldmluY2UvdGVtcGxhdGUKaW5kZXggYzMzN2EyNjZjZTAuLmY1ZGZkZGFiMzZhIDEwMDY0NAot LS0gYS9zcmNwa2dzL2V2aW5jZS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2V2aW5jZS90ZW1wbGF0 ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2V2aW5jZScKIHBrZ25hbWU9 ZXZpbmNlCi12ZXJzaW9uPTMuMzYuMAordmVyc2lvbj0zLjM2LjEKIHJldmlzaW9uPTEKIGJ1aWxk X2hlbHBlcj0iZ2lyIgogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQpAQCAtMTksNyArMTksNyBA QCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5z ZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL0Fw cHMvRXZpbmNlIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9u JS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09ODUxZDliNTIzNGQ0 NzlhYjRjOGY3YzVjYmFjZWIwZTkxYWQ3OWNjYmExYTdiNzMzY2RlNzJkYWNjOTI4ZmJhOAorY2hl Y2tzdW09OGNiOGJmZDM1OGEwMmQ4ZWRiYTUxMTE0NTQ4ZTk4MTU0MzIxZTA4OTViZjM3OWE1YmIz MzZhNDU4ZDU5NGJkNwogCiBidWlsZF9vcHRpb25zPSJnaXIiCiBidWlsZF9vcHRpb25zX2RlZmF1 bHQ9ImdpciIKCkZyb20gZjZiYjYwY2Y1ZGVhNDhmYTUzNDVjN2I0MTlkNjQyZThkNTE1YWVjYiBN b24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNv bT4KRGF0ZTogTW9uLCAyNyBBcHIgMjAyMCAxMzozMDo1NiArMDYwMApTdWJqZWN0OiBbUEFUQ0gg MDkvNTJdIGdub21lLW1hcHM6IHVwZGF0ZSB0byAzLjM2LjIuCgotLS0KIHNyY3BrZ3MvZ25vbWUt bWFwcy90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwg MiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLW1hcHMvdGVtcGxhdGUg Yi9zcmNwa2dzL2dub21lLW1hcHMvdGVtcGxhdGUKaW5kZXggMDMwMGJlNjA1OTkuLjlmZGQyN2Ri M2JkIDEwMDY0NAotLS0gYS9zcmNwa2dzL2dub21lLW1hcHMvdGVtcGxhdGUKKysrIGIvc3JjcGtn cy9nbm9tZS1tYXBzL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZv ciAnZ25vbWUtbWFwcycKIHBrZ25hbWU9Z25vbWUtbWFwcwotdmVyc2lvbj0zLjM2LjEKK3ZlcnNp b249My4zNi4yCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1tZXNvbgogaG9zdG1ha2VkZXBlbmRz PSJnbGliLWRldmVsIGdvYmplY3QtaW50cm9zcGVjdGlvbiBpbnRsdG9vbCBwa2ctY29uZmlnIEFw cFN0cmVhbSIKQEAgLTEyLDUgKzEyLDUgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRv eEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0i aHR0cHM6Ly93aWtpLmdub21lLm9yZy9BcHBzL01hcHMiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lU RX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoi Ci1jaGVja3N1bT0xYTMyZWZkOTZhZDg5OGY3N2E2MzZkMmQwNDYzZDc1NzAwOWI0YjgxMjI1OWM4 OWZmZGNiOTFkNmFmYzA1MmY5CitjaGVja3N1bT01YmEyMTliOWRlOTg2NzhjZWZhNTg0OGY2NTM4 ZGI4ZGJkMDdmNmM3NDdmZDQzYTk5MTY3YTI2Njg3OGE5Nzg0CiBub2Nyb3NzPSJldm9sdXRpb24t ZGF0YXNlcnZlciBjcm9zcyBnaXIgZG9lc24ndCB3b3JrIgoKRnJvbSAxZGE3N2FmMmEzZDkwYzE5 MzY1NDhlMDJkNTVmODA1Mjc4ZGRkZTRkIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBO YWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBNb24sIDI3IEFwciAyMDIwIDE0OjI3 OjEwICswNjAwClN1YmplY3Q6IFtQQVRDSCAxMC81Ml0gZ2VkaXQ6IHVwZGF0ZSB0byAzLjM2LjIu CgotLS0KIHNyY3BrZ3MvZ2VkaXQvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAy IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nZWRp dC90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ2VkaXQvdGVtcGxhdGUKaW5kZXggNGUyNzNhYWYxODIuLmUz ZWJlYTA1ZWE3IDEwMDY0NAotLS0gYS9zcmNwa2dzL2dlZGl0L3RlbXBsYXRlCisrKyBiL3NyY3Br Z3MvZ2VkaXQvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdn ZWRpdCcKIHBrZ25hbWU9Z2VkaXQKLXZlcnNpb249My4zNi4xCit2ZXJzaW9uPTMuMzYuMgogcmV2 aXNpb249MQogYnVpbGRfaGVscGVyPSJnaXIiCiBidWlsZF9zdHlsZT1tZXNvbgpAQCAtMTcsNyAr MTcsNyBAQCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+Igog bGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUu b3JnL0FwcHMvR2VkaXQiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3Zl cnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT02ZGMzOGVk YTIyN2QxYzM2OGUwMzllOWJmZjQ4NWQwYmVlOWE0OWQ1Zjk1NjBjMzg3ZWUwOGY1ODE4YTRlMzg3 CitjaGVja3N1bT02ODg3NTU0NjQzYzViMWIzODYyYWMzNjRkOTdiN2I1MDIyNGJmZjk1ZTY3NThh ZWFhMDhmNGE0ODJiNTU0MTk3CiBzaGxpYl9wcm92aWRlcz0ibGliZ2VkaXQtMy4zNi5zbyIKIHB5 dGhvbl92ZXJzaW9uPTMKIAoKRnJvbSBkZDRhMDFlOTcxMTVlYjA4ZDM3ZWU0MmRhZWM3MzVlNWU5 N2UxNzhlIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91 dGxvb2suY29tPgpEYXRlOiBNb24sIDI3IEFwciAyMDIwIDE1OjAyOjE0ICswNjAwClN1YmplY3Q6 IFtQQVRDSCAxMS81Ml0gZ25vbWUtY29udGFjdHM6IHVwZGF0ZSB0byAzLjM2LjEuCgotLS0KIHNy Y3BrZ3MvZ25vbWUtY29udGFjdHMvdGVtcGxhdGUgfCA4ICsrKystLS0tCiAxIGZpbGUgY2hhbmdl ZCwgNCBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mv Z25vbWUtY29udGFjdHMvdGVtcGxhdGUgYi9zcmNwa2dzL2dub21lLWNvbnRhY3RzL3RlbXBsYXRl CmluZGV4IDJhODIxM2E3MjQwLi4wMWZiODJiNzgyNiAxMDA2NDQKLS0tIGEvc3JjcGtncy9nbm9t ZS1jb250YWN0cy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dub21lLWNvbnRhY3RzL3RlbXBsYXRl CkBAIC0xLDEwICsxLDEwIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbm9tZS1jb250YWN0cycK IHBrZ25hbWU9Z25vbWUtY29udGFjdHMKLXZlcnNpb249My4zNC4wCi1yZXZpc2lvbj0yCit2ZXJz aW9uPTMuMzYuMQorcmV2aXNpb249MQogd3Jrc3JjPSJnbm9tZS1jb250YWN0cy0ke3ZlcnNpb24l Lip9IgogYnVpbGRfc3R5bGU9bWVzb24KLWhvc3RtYWtlZGVwZW5kcz0iZG9jYm9vay14c2wgZ2V0 dGV4dCBnbGliLWRldmVsIGxpYnhzbHQgcGtnLWNvbmZpZyB2YWxhIgoraG9zdG1ha2VkZXBlbmRz PSJkb2Nib29rLXhzbCBmb2xrcy1kZXZlbCBnZXR0ZXh0IGdsaWItZGV2ZWwgbGlieHNsdCBwa2ct Y29uZmlnIHZhbGEiCiBtYWtlZGVwZW5kcz0iY2hlZXNlLWRldmVsIGZvbGtzLWRldmVsIGdlb2Nv ZGUtZ2xpYi1kZXZlbCBnbm9tZS1kZXNrdG9wLWRldmVsCiAgbGliY2hhbXBsYWluLWRldmVsIGxp Ym5vdGlmeS1kZXZlbCB2YWxhLWRldmVsIGxpYmhhbmR5LWRldmVsIgogZGVwZW5kcz0iZGVza3Rv cC1maWxlLXV0aWxzIgpAQCAtMTMsNCArMTMsNCBAQCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8 Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVw YWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL0FwcHMvQ29udGFjdHMiCiBkaXN0ZmlsZXM9IiR7 R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9u JS4qfS50YXIueHoiCi1jaGVja3N1bT05OTYwMmVjOGQ2NjBjMWYzYzkyY2FlNjM1NmY2NGY3MmZi NmRiNThlNTViY2UyN2E1OTkzMzBiZjdiNjIyZjEyCitjaGVja3N1bT1lZWNiZDIyMDlkOTNjOGQz MWRmOTJmNmNjZjc5MTgzYjQ1NmM2ZTA3YTI4YWUwMTU1Y2JkYTE4YWFiZDM2ZjdiCgpGcm9tIGU4 NDlkNTc0NTI4ZjE4MzRmOWU2NmNjOTMyMzMzYmRmZDcxMzc5ZWMgTW9uIFNlcCAxNyAwMDowMDow MCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFRodSwgMzAg QXByIDIwMjAgMDI6NTI6MTIgKzA2MDAKU3ViamVjdDogW1BBVENIIDEyLzUyXSBnbm9tZS1jbG9j a3M6IHVwZGF0ZSB0byAzLjM2LjIuCgotLS0KIHNyY3BrZ3MvZ25vbWUtY2xvY2tzL3RlbXBsYXRl IHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygt KQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtY2xvY2tzL3RlbXBsYXRlIGIvc3JjcGtncy9n bm9tZS1jbG9ja3MvdGVtcGxhdGUKaW5kZXggM2UwNDliNDJmYjEuLjM0YjE1OWFlNmE2IDEwMDY0 NAotLS0gYS9zcmNwa2dzL2dub21lLWNsb2Nrcy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dub21l LWNsb2Nrcy90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2du b21lLWNsb2NrcycKIHBrZ25hbWU9Z25vbWUtY2xvY2tzCi12ZXJzaW9uPTMuMzYuMAordmVyc2lv bj0zLjM2LjIKIHJldmlzaW9uPTEKIGJ1aWxkX2hlbHBlcj0iZ2lyIgogYnVpbGRfc3R5bGU9bWVz b24KQEAgLTE1LDQgKzE1LDQgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lk bGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6 Ly93aWtpLmdub21lLm9yZy9BcHBzL0Nsb2NrcyIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8k e3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNo ZWNrc3VtPTRjOTc4YjBjN2Y3YjlkYWViZDI3MmQwMTc1ZjhhNTQ0MTVlMjA3OGYxMzRmNDhhZGQ1 Y2YyNDM2MmVlZjQ5YzYKK2NoZWNrc3VtPWYxMWIxYjIyZWMxZjI4NWU1MDk4ODM2ODRjMGIxZjRh NTE0OTZhZWExMDU1OTEyMzllNWIyNmY4OTg2NzUxZTYKCkZyb20gZGUyNzFhMzM3YjM0NmY5ZDk1 ZGMyMDE4MjkxNDNjMWU3NmM2MDc2OCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFm aXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogTW9uLCAyNyBBcHIgMjAyMCAxNToyOToz MCArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMTMvNTJdIGdub21lLWVwdWItdGh1bWJuYWlsZXI6IHVw ZGF0ZSB0byAxLjYuCgotLS0KIHNyY3BrZ3MvZ25vbWUtZXB1Yi10aHVtYm5haWxlci90ZW1wbGF0 ZSB8IDYgKysrLS0tCiAxIGZpbGUgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9u cygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtZXB1Yi10aHVtYm5haWxlci90ZW1wbGF0 ZSBiL3NyY3BrZ3MvZ25vbWUtZXB1Yi10aHVtYm5haWxlci90ZW1wbGF0ZQppbmRleCBiMTZlNzA1 NDc1Zi4uZDY3Yjc3ZjFlNDMgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtZXB1Yi10aHVtYm5h aWxlci90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dub21lLWVwdWItdGh1bWJuYWlsZXIvdGVtcGxh dGUKQEAgLTEsMTMgKzEsMTMgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLWVwdWItdGh1 bWJuYWlsZXInCiBwa2duYW1lPWdub21lLWVwdWItdGh1bWJuYWlsZXIKLXZlcnNpb249MS41Cit2 ZXJzaW9uPTEuNgogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogaG9zdG1h a2VkZXBlbmRzPSJwa2ctY29uZmlnIgogbWFrZWRlcGVuZHM9Imdkay1waXhidWYtZGV2ZWwgbGli YXJjaGl2ZS1kZXZlbCBsaWJ4bWwyLWRldmVsIgogc2hvcnRfZGVzYz0iVGh1bWJuYWlsZXIgZm9y IEVQdWIgYW5kIE1PQkkgYm9va3MiCiBtYWludGFpbmVyPSJBbGlmIFJhY2htYXdhZGkgPGFyY2hA c3Vib3NpdG8uY29tPiIKLWxpY2Vuc2U9IkdQTC0zIgorbGljZW5zZT0iR1BMLTIuMC1vci1sYXRl ciIKIGhvbWVwYWdlPSJodHRwczovL2dpdC5nbm9tZS5vcmcvYnJvd3NlL2dub21lLWVwdWItdGh1 bWJuYWlsZXIiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb259 LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT0zMDgyMTBmNTgwMDIxOWY2 NGNhZTQ4MjhlNTliYjhlNmU0YzUzYjg4ODA0OGNmNDg3MjIxYWViNDMzN2Q3OTFhCitjaGVja3N1 bT1iNTAyNDIwZDliMDJlYTBiMGZjNzk4NmVmNWEwOTFhMTJiMjI4NmJlMTRmZWQ5ZTQ3NTk0ZmU5 ZmEwYzU4OThlCgpGcm9tIDM2YjM3YmI5ZDY4ZDdjZWIyMTY2YzY5OTQ0NWQ1MDZmOTM0Y2UyOGEg TW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5j b20+CkRhdGU6IE1vbiwgMjcgQXByIDIwMjAgMTY6MjM6NDYgKzA2MDAKU3ViamVjdDogW1BBVENI IDE0LzUyXSBnbm9tZS10ZXJtaW5hbDogdXBkYXRlIHRvIDMuMzYuMi4KCi0tLQogc3JjcGtncy9n bm9tZS10ZXJtaW5hbC90ZW1wbGF0ZSB8IDYgKysrLS0tCiAxIGZpbGUgY2hhbmdlZCwgMyBpbnNl cnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtdGVy bWluYWwvdGVtcGxhdGUgYi9zcmNwa2dzL2dub21lLXRlcm1pbmFsL3RlbXBsYXRlCmluZGV4IGJm M2Q1YmNkZDQyLi4yMmRiYzExYmFkYSAxMDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS10ZXJtaW5h bC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dub21lLXRlcm1pbmFsL3RlbXBsYXRlCkBAIC0xLDYg KzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ25vbWUtdGVybWluYWwnCiBwa2duYW1lPWdu b21lLXRlcm1pbmFsCi12ZXJzaW9uPTMuMzYuMS4xCit2ZXJzaW9uPTMuMzYuMgogcmV2aXNpb249 MQogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9Ii0tZGlzYWJsZS1z dGF0aWMgLS13aXRoLW5hdXRpbHVzLWV4dGVuc2lvbiIKQEAgLTEzLDggKzEzLDggQEAgc2hvcnRf ZGVzYz0iR05PTUUgdGVybWluYWwgZW11bGF0b3IgYXBwbGljYXRpb24iCiBtYWludGFpbmVyPSJF bm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTIuMC1vci1s YXRlciwgR0ZETC0xLjMtb25seSIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL0Fw cHMvVGVybWluYWwiCi1kaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNp b246MDo0fS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09ZjNkNzA4YTFl NzZkNzdjMWM4NWIxMjZmNmUwMDMyMjBhMTVkNGE0NmE1MGZkODA3MGUxYTNhYWJlNjc4YTM3Ngor ZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25h bWV9LSR7dmVyc2lvbn0udGFyLnh6IgorY2hlY2tzdW09NDFkMWI2YTNkYzk3YzA2NmUyOTRhY2Ri N2YzNjkzMWU4MTY2ODYzOGRjYzkyZmZhMjViY2EzZGRlYmFjZGY0NgogbGliMzJkaXNhYmxlZD15 ZXMKIAogaWYgWyAiJENST1NTX0JVSUxEIiBdOyB0aGVuCgpGcm9tIDQ4NDcyNGQxNDJkYjE4MTlj OWNiNWRiZjkwNDRlZmJhODViNDcxODMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5h 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 X0hPTUUvZCcKKwl9CitmaQoKRnJvbSAyOGQwMWRlMDBiZThkYTU0ZWE4OTAzNjVkNmVlNmNhNDcz NTRhZDA1IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91 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 ZF9vcHRpb25zX2RlZmF1bHQrPSIgY2hlZXNlIgogZmkKCkZyb20gNmE2MjFkOWVjYzM4ZWIxYjA1 MDY4YjYzNmMwYjEyYThlOWNlYzEwZiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFm 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 b3N0bWFrZWRlcGVuZHMrPSIgcG9sa2l0IgoKRnJvbSBmOTQwMzA4ZGEyNjFhNjc4NGJmMjNkMjZm MWY5MGYwMzI2M2IyYjliIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5h YmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBGcmksIDEgTWF5IDIwMjAgMTA6MTE6NTQgKzA2MDAK U3ViamVjdDogW1BBVENIIDE4LzUyXSBnbm9tZS11c2VyLWRvY3M6IHVwZGF0ZSB0byAzLjM2LjIu CgotLS0KIHNyY3BrZ3MvZ25vbWUtdXNlci1kb2NzL3RlbXBsYXRlIHwgOCArKysrLS0tLQogMSBm aWxlIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQg YS9zcmNwa2dzL2dub21lLXVzZXItZG9jcy90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25vbWUtdXNlci1k b2NzL3RlbXBsYXRlCmluZGV4IDRjYjU1Mzk2ZTM3Li5jYTk5MzM0NmUzYSAxMDA2NDQKLS0tIGEv c3JjcGtncy9nbm9tZS11c2VyLWRvY3MvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS11c2Vy LWRvY3MvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbm9t ZS11c2VyLWRvY3MnCiBwa2duYW1lPWdub21lLXVzZXItZG9jcwotdmVyc2lvbj0zLjM0LjAKK3Zl cnNpb249My4zNi4yCiByZXZpc2lvbj0xCiBhcmNocz1ub2FyY2gKIGJ1aWxkX3N0eWxlPWdudS1j b25maWd1cmUKQEAgLTEwLDcgKzEwLDcgQEAgZGVwZW5kcz0ieWVscCIKIHNob3J0X2Rlc2M9IlVz ZXIgZG9jdW1lbnRhdGlvbiBmb3IgR05PTUUiCiBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290 dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iQ0MtQlktMy4wIgotaG9tZXBhZ2U9Imh0dHBz Oi8vZ2l0aHViLmNvbS9HTk9NRS9nbm9tZS11c2VyLWRvY3MiCi0jY2hhbmdlbG9nPSJodHRwczov L3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vR05PTUUvZ25vbWUtdXNlci1kb2NzL21hc3Rlci9O RVdTIgoraG9tZXBhZ2U9Imh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS11c2Vy LWRvY3MiCitjaGFuZ2Vsb2c9Imh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS11 c2VyLWRvY3MvLS9yYXcvMy4zNi4yL05FV1MiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtw a2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVj a3N1bT04Zjk5MDdmZjE1ZmZmOTdkYTc1ZWNlNjQ1Y2M4Njc2NjcwM2FjNTRkNzE2ZDI1NTYzYmE2 N2ZmZWQxYWYyNGVkCitjaGVja3N1bT0xOThmZTRjODM2Nzc1YTVkYzI1NDNhNmE1MjBkZmIwYWM1 YmYyOTJjZGNiMzU4YTU3Yzg2ZjM1ZjcwNWU5OTU4CgpGcm9tIDc1ZDQ0YzdlNTk1ZDc2NDI4NGFh M2VjZWE5ZmU4MzUxZTcwZWY4Y2IgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlz 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 MWUyMzU0ZDJkMWFjMDVjZjFjNzlhMDFjYzk3NWM2YWE4OTE0NTc1NgoKRnJvbSA5ODU3ODI2YzQw ZmY0OWJmM2QzYjAzOTBmZjcxMTJjZmYwZmUyYWUwIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpG cm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBGcmksIDEgTWF5IDIwMjAg MDg6Mzg6MTUgKzA2MDAKU3ViamVjdDogW1BBVENIIDIwLzUyXSBldm9sdXRpb24tZGF0YS1zZXJ2 ZXI6IHVwZGF0ZSB0byAzLjM2LjIuCgotLS0KIHNyY3BrZ3MvZXZvbHV0aW9uLWRhdGEtc2VydmVy L3RlbXBsYXRlIHwgNiArKystLS0KIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMg ZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9ldm9sdXRpb24tZGF0YS1zZXJ2ZXIv dGVtcGxhdGUgYi9zcmNwa2dzL2V2b2x1dGlvbi1kYXRhLXNlcnZlci90ZW1wbGF0ZQppbmRleCA0 YWU4MjBiZTA2OC4uZGVjNzJlN2M0MjQgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZXZvbHV0aW9uLWRh dGEtc2VydmVyL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZXZvbHV0aW9uLWRhdGEtc2VydmVyL3Rl bXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZXZvbHV0aW9uLWRh dGEtc2VydmVyJwogcGtnbmFtZT1ldm9sdXRpb24tZGF0YS1zZXJ2ZXIKLXZlcnNpb249My4zNi4x Ci1yZXZpc2lvbj0yCit2ZXJzaW9uPTMuMzYuMgorcmV2aXNpb249MQogYnVpbGRfc3R5bGU9Y21h a2UKIGJ1aWxkX2hlbHBlcj1naXIKIGNvbmZpZ3VyZV9hcmdzPSItREVOQUJMRV9VT0E9T0ZGCkBA IC0xNyw3ICsxNyw3IEBAIGxpY2Vuc2U9IkxHUEwtMi4xLW9ubHkiCiBob21lcGFnZT0iaHR0cHM6 Ly93aWtpLmdub21lLm9yZy9BcHBzL0V2b2x1dGlvbiIKIGNoYW5nZWxvZz0iaHR0cHM6Ly9yYXcu Z2l0aHVidXNlcmNvbnRlbnQuY29tL0dOT01FL2V2b2x1dGlvbi1kYXRhLXNlcnZlci9nbm9tZS0z LTM2L05FV1MiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24l Lip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT0xMzEyMmIyZWRkZGI5 ODMwNjIwN2QyYTM1ZDVjY2FlMjVhOTA3MDI3NjljYTBhMGI1MTY1M2I1OTg0OTg2Nzk2CitjaGVj a3N1bT05OGUyNzRjZmVjMTZjZWU2YTRiM2I5Yzc4OTdmNmUxMTM2ZDAwZTRmMzFhMGQ2NjIxNDky NWFiYmFjNzZlOTdiCiAKIGJ1aWxkX29wdGlvbnM9ImdpciIKIGlmIFsgLXogIiRDUk9TU19CVUlM RCIgXTsgdGhlbgoKRnJvbSA3ZjQ4OGQ1NGQ2YWM2NjQzMTAxNWUzM2YyNDA3Mzg2MTM3YTI2YzRi IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2su Y29tPgpEYXRlOiBGcmksIDEgTWF5IDIwMjAgMDg6Mzg6MjMgKzA2MDAKU3ViamVjdDogW1BBVENI IDIxLzUyXSBldm9sdXRpb246IHVwZGF0ZSB0byAzLjM2LjIuCgotLS0KIHNyY3BrZ3MvZXZvbHV0 aW9uL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAy IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZXZvbHV0aW9uL3RlbXBsYXRlIGIv c3JjcGtncy9ldm9sdXRpb24vdGVtcGxhdGUKaW5kZXggNTYwZWQ5M2RhMDIuLmM5YzNhZmI3ZjZm IDEwMDY0NAotLS0gYS9zcmNwa2dzL2V2b2x1dGlvbi90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2V2 b2x1dGlvbi90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2V2 b2x1dGlvbicKIHBrZ25hbWU9ZXZvbHV0aW9uCi12ZXJzaW9uPTMuMzYuMQordmVyc2lvbj0zLjM2 LjIKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPWNtYWtlCiBjb25maWd1cmVfYXJncz0iLURFTkFC TEVfQVVUT0FSPU9GRiAtREVOQUJMRV9MSUJDUllQVFVJPU9GRiAtREVOQUJMRV9HVEtTUEVMTD1P RkYKQEAgLTE5LDcgKzE5LDcgQEAgbGljZW5zZT0iTEdQTC0yLjEtb3ItbGF0ZXIsIExHUEwtMy4w LW9yLWxhdGVyLCBHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9t ZS5vcmcvQXBwcy9Fdm9sdXRpb24iCiBjaGFuZ2Vsb2c9Imh0dHBzOi8vcmF3LmdpdGh1YnVzZXJj b250ZW50LmNvbS9HTk9NRS9ldm9sdXRpb24vZ25vbWUtMy0zNi9ORVdTIgogZGlzdGZpbGVzPSIk e0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lv bn0udGFyLnh6IgotY2hlY2tzdW09ODczYWNmMWRiZWMzOGU2N2UxNjkwNjQ2NDVhYzNhOWI5YTk0 NGJkMmI2MzMxNjFkZjZlNWYwNTcwMGUzNmNiOAorY2hlY2tzdW09YzUwOTQ4YzFhM2RkYjM5Yjcy YWNkOTNkZTc3Zjk0Nzg3Y2RjMWJlZjMzMGI5NjdiYmI4YjZjNzIzMzQzMzE4YQogc2hsaWJfcHJv dmlkZXM9ImxpYmV2b2x1dGlvbi1jYWxlbmRhci5zbyBsaWJldm9sdXRpb24tdXRpbC5zbyBsaWJl bWFpbC1lbmdpbmUuc28KICBsaWJldm9sdXRpb24tbWFpbC5zbyBsaWJldm9sdXRpb24tc2hlbGwu c28iCiAKCkZyb20gNzYyMGMzMDliMWYxMzI3M2Y5YWZjMGY3MWRmYWMyY2U4YjJmZjkwNSBNb24g U2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4K RGF0ZTogRnJpLCAxIE1heSAyMDIwIDA4OjM4OjI3ICswNjAwClN1YmplY3Q6IFtQQVRDSCAyMi81 Ml0gZXZvbHV0aW9uLWV3czogdXBkYXRlIHRvIDMuMzYuMi4KCi0tLQogc3JjcGtncy9ldm9sdXRp b24tZXdzL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCsp LCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZXZvbHV0aW9uLWV3cy90ZW1w bGF0ZSBiL3NyY3BrZ3MvZXZvbHV0aW9uLWV3cy90ZW1wbGF0ZQppbmRleCA0ZmY4MTE2NDY2Yy4u YTE3MWY0YzRhMDggMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZXZvbHV0aW9uLWV3cy90ZW1wbGF0ZQor KysgYi9zcmNwa2dzL2V2b2x1dGlvbi1ld3MvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRl bXBsYXRlIGZpbGUgZm9yICdldm9sdXRpb24tZXdzJwogcGtnbmFtZT1ldm9sdXRpb24tZXdzCi12 ZXJzaW9uPTMuMzYuMQordmVyc2lvbj0zLjM2LjIKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPWNt YWtlCiBjb25maWd1cmVfYXJncz0iLURMSUJFWEVDX0lOU1RBTExfRElSPS91c3IvbGliL2V2b2x1 dGlvbiIKQEAgLTEyLDQgKzEyLDQgQEAgbGljZW5zZT0iTEdQTC0yLjEtb3ItbGF0ZXIiCiBob21l cGFnZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9BcHBzL0V2b2x1dGlvbiIKIGNoYW5nZWxvZz0i aHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNvbnRlbnQuY29tL0dOT01FL2V2b2x1dGlvbi1ld3MvZ25v bWUtMy0zNi9ORVdTIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJz aW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09ZDA4ODNjN2Qy Mjc4MjdjYzVjNDQ2OGI3ZTMxYTNlZTM3MGJjZDdkNDFhNGRiYjk1MGFiNWRiMzZjOTU1MWFjMQor Y2hlY2tzdW09MmU0MmU0ODkwNDg3ZjhjN2Y5ZDc3NmE0NDQ0ZGY2ZWZkNTI5OWNhMDAzYTMwMDAy ZWI1ZjAyMjA5MWRjMzU5ZAoKRnJvbSBlYjkxOTBlNGQ0ZDQ4MzA3OGZhNTg4YjI4Y2U1MGJjZTg5 ODdhNmNlIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91 dGxvb2suY29tPgpEYXRlOiBUdWUsIDUgTWF5IDIwMjAgMTE6MjA6MjMgKzA2MDAKU3ViamVjdDog W1BBVENIIDIzLzUyXSBhdGs6IHVwZGF0ZSB0byAyLjM2LjAuCgotLS0KIHNyY3BrZ3MvYXRrL3Rl bXBsYXRlIHwgNiArKystLS0KIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVs ZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9hdGsvdGVtcGxhdGUgYi9zcmNwa2dzL2F0 ay90ZW1wbGF0ZQppbmRleCA3YzE0YjExNjU5OC4uY2EyMmQzNjYxOTggMTAwNjQ0Ci0tLSBhL3Ny Y3BrZ3MvYXRrL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvYXRrL3RlbXBsYXRlCkBAIC0xLDE4ICsx LDE4IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdhdGsnCiBwa2duYW1lPWF0awotdmVyc2lvbj0y LjM0LjEKK3ZlcnNpb249Mi4zNi4wCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1tZXNvbgogYnVp bGRfaGVscGVyPSJnaXIiCiBjb25maWd1cmVfYXJncz0iLURpbnRyb3NwZWN0aW9uPSQodm9wdF9p ZiBnaXIgdHJ1ZSBmYWxzZSkiCi1ob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcgZ2xpYi1kZXZl bCIKK2hvc3RtYWtlZGVwZW5kcz0iZ2V0dGV4dCBwa2ctY29uZmlnIGdsaWItZGV2ZWwiCiBtYWtl ZGVwZW5kcz0ibGliZ2xpYi1kZXZlbCIKIHNob3J0X2Rlc2M9IlNldCBvZiBpbnRlcmZhY2VzIGZv ciBhY2Nlc3NpYmlsaXR5IgogbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGlu dXgub3JnPiIKIGxpY2Vuc2U9IkxHUEwtMi4xLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8v ZGV2ZWxvcGVyLmdub21lLm9yZy9hdGsvIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9L2F0ay8k e3ZlcnNpb24lLip9L2F0ay0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPWQ0ZjBlM2IzZDIx MjY1ZmNmMmJjMzcxZTExN2RhNTFjNDJlZGUxYTcxZjZkYjFjODM0ZTY5NzZiYjIwOTk3Y2IKK2No ZWNrc3VtPWZiNzYyNDdlMzY5NDAyYmUyM2YxZjVjNjVkMzhhOTYzOWMxMTY0ZDkzNGU0MGY2YTlj ZjNjOWU5NmI2NTI3ODgKIAogIyBQYWNrYWdlIGJ1aWxkIG9wdGlvbnMKIGJ1aWxkX29wdGlvbnM9 ImdpciIKCkZyb20gODhmMDAwNzk5NTVmNjExNmViMjNkMWQ2MTUzNmZhM2Y5OWUzZTc0MiBNb24g U2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4K RGF0ZTogVHVlLCA1IE1heSAyMDIwIDEyOjQzOjUyICswNjAwClN1YmplY3Q6IFtQQVRDSCAyNC81 Ml0gYXQtc3BpMi1jb3JlOiB1cGRhdGUgdG8gMi4zNi4wLgoKLS0tCiBzcmNwa2dzL2F0LXNwaTIt Y29yZS90ZW1wbGF0ZSB8IDkgKysrKy0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgNCBpbnNlcnRpb25z KCspLCA1IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvYXQtc3BpMi1jb3JlL3Rl bXBsYXRlIGIvc3JjcGtncy9hdC1zcGkyLWNvcmUvdGVtcGxhdGUKaW5kZXggYjM4M2ZlOTliZWQu LmZiNzk5YWY3ZTUyIDEwMDY0NAotLS0gYS9zcmNwa2dzL2F0LXNwaTItY29yZS90ZW1wbGF0ZQor KysgYi9zcmNwa2dzL2F0LXNwaTItY29yZS90ZW1wbGF0ZQpAQCAtMSwxOCArMSwxNyBAQAogIyBU ZW1wbGF0ZSBmaWxlIGZvciAnYXQtc3BpMi1jb3JlJwogcGtnbmFtZT1hdC1zcGkyLWNvcmUKLXZl cnNpb249Mi4zNC4wCit2ZXJzaW9uPTIuMzYuMAogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9bWVz b24KIGJ1aWxkX2hlbHBlcj0iZ2lyIgotaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIGRidXMg Z2xpYi1kZXZlbCIKLW1ha2VkZXBlbmRzPSJsaWJnbGliLWRldmVsIGxpYlhleHQtZGV2ZWwgbGli U00tZGV2ZWwgbGliWHRzdC1kZXZlbAotIGxpYlhldmllLWRldmVsIGRidXMtZGV2ZWwiCitob3N0 bWFrZWRlcGVuZHM9ImdldHRleHQgcGtnLWNvbmZpZyBkYnVzIGdsaWItZGV2ZWwiCittYWtlZGVw ZW5kcz0ibGliZ2xpYi1kZXZlbCBsaWJTTS1kZXZlbCBsaWJYdHN0LWRldmVsIGRidXMtZGV2ZWwi CiBzaG9ydF9kZXNjPSJBc3Npc3RpdmUgVGVjaG5vbG9neSBTZXJ2aWNlIFByb3ZpZGVyIEludGVy ZmFjZSIKIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBs aWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vZ2l0bGFiLmdub21l Lm9yZy9HTk9NRS9hdC1zcGkyLWNvcmUiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2du YW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1 bT1kNjI5Y2RiZDY3NGU1MzlmODkxMjAyODUxMmFmNTgzOTkwOTM4YzdiNDllMjUxODRjMTI2YjAw MTIxZWYxMWM2CitjaGVja3N1bT04OGRhNTdkZTBhN2UzYzYwYmMzNDFhOTc0YTgwZmRiYTA5MTYx MmRiMzU0N2M0MTBkNmRlYWIwMzljYTVjMDVhCiAKICMgUGFja2FnZSBidWlsZCBvcHRpb25zCiBi dWlsZF9vcHRpb25zPSJnaXIiCgpGcm9tIGQyN2Y4ZjljZmJmMDgyYTg3YWM5YjVlMjdmYTdhZTdk NjI2NTE2ZjMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVA b3V0bG9vay5jb20+CkRhdGU6IFR1ZSwgNSBNYXkgMjAyMCAxMjo0NDowMCArMDYwMApTdWJqZWN0 OiBbUEFUQ0ggMjUvNTJdIGF0LXNwaTItYXRrOiB1cGRhdGUgdG8gMi4zNC4yLgoKLS0tCiBzcmNw a2dzL2F0LXNwaTItYXRrL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNl cnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvYXQtc3BpMi1h dGsvdGVtcGxhdGUgYi9zcmNwa2dzL2F0LXNwaTItYXRrL3RlbXBsYXRlCmluZGV4IDQzNTFiNzk5 NmYzLi5hYTdiODgzOWM5ZiAxMDA2NDQKLS0tIGEvc3JjcGtncy9hdC1zcGkyLWF0ay90ZW1wbGF0 ZQorKysgYi9zcmNwa2dzL2F0LXNwaTItYXRrL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBU ZW1wbGF0ZSBmaWxlIGZvciAnYXQtc3BpMi1hdGsnCiBwa2duYW1lPWF0LXNwaTItYXRrCi12ZXJz aW9uPTIuMzQuMQordmVyc2lvbj0yLjM0LjIKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPW1lc29u CiBob3N0bWFrZWRlcGVuZHM9ImxpYnRvb2wgcGtnLWNvbmZpZyBpbnRsdG9vbCBnbGliLWRldmVs IgpAQCAtMTAsNyArMTAsNyBAQCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRs aW51eC5vcmc+IgogbGljZW5zZT0iTEdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cDov L3d3dy5nbm9tZS5vcmciCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3Zl cnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT03NzZkZjkz MDc0OGZkZTcxYzEyOGJlNmMzNjZhOTg3Yjk4YjZlZTY2ZDUwOGVkOWM4ZGIyMzU1YmY0YjljYzE2 CitjaGVja3N1bT05MDEzMjNjZWUwZWVmMDVjMDFlYzRkZWUwNmM3MDFhZWVjYTgxYTMxNGE3ZDYw MjE2ZmEzNjMwMDVlMjdmNGYwCiAKIGF0LXNwaTItYXRrLWRldmVsX3BhY2thZ2UoKSB7CiAJZGVw ZW5kcz0iJHttYWtlZGVwZW5kc30gJHtzb3VyY2Vwa2d9Pj0ke3ZlcnNpb259XyR7cmV2aXNpb259 IgoKRnJvbSBiMDk1NTgyNDNjZDY3NTczMjRkYmYxZmY1NmI5MjcyNWU4ZGE3ZTFjIE1vbiBTZXAg 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 UHl0aG9uMi9QeXRob24zfSIKIAlwa2dfaW5zdGFsbCgpIHsKCkZyb20gNTlhOTY0YmNkZjcwNGYy ZDRkNTYwMWYyNTQ4MjdkZWE2NWE3NjQyYyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTog TmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCA1IE1heSAyMDIwIDE1OjQz OjAxICswNjAwClN1YmplY3Q6IFtQQVRDSCAyNy81Ml0gZm9sa3M6IHVwZGF0ZSB0byAwLjE0LjAu CgotLS0KIGNvbW1vbi9zaGxpYnMgICAgICAgICAgfCAgNyArKysrLS0tCiBzcmNwa2dzL2ZvbGtz L3RlbXBsYXRlIHwgMTIgKysrKysrLS0tLS0tCiAyIGZpbGVzIGNoYW5nZWQsIDEwIGluc2VydGlv bnMoKyksIDkgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvY29tbW9uL3NobGlicyBiL2NvbW1v bi9zaGxpYnMKaW5kZXggMTUzNjM0NjhhMmIuLjNkYzBjYzFhN2IwIDEwMDY0NAotLS0gYS9jb21t b24vc2hsaWJzCisrKyBiL2NvbW1vbi9zaGxpYnMKQEAgLTgzNCw5ICs4MzQsMTAgQEAgbGliZG1y 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+PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0iCgpGcm9tIDA1NGRlODQzYzczMzFkN2VlYjIzYzAz MDJhNzk5NTM2MWQyYmZjZTYgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxt bmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IEZyaSwgMSBNYXkgMjAyMCAwODo0MTo1NiArMDYw MApTdWJqZWN0OiBbUEFUQ0ggMjgvNTJdIGZpbGUtcm9sbGVyOiB1cGRhdGUgdG8gMy4zNi4yLgoK LS0tCiBzcmNwa2dzL2ZpbGUtcm9sbGVyL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdl ZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mv ZmlsZS1yb2xsZXIvdGVtcGxhdGUgYi9zcmNwa2dzL2ZpbGUtcm9sbGVyL3RlbXBsYXRlCmluZGV4 IDVmYjc2ZDk3MzA3Li42YTBjMjgwZjBkNSAxMDA2NDQKLS0tIGEvc3JjcGtncy9maWxlLXJvbGxl ci90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2ZpbGUtcm9sbGVyL3RlbXBsYXRlCkBAIC0xLDYgKzEs NiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZmlsZS1yb2xsZXInCiBwa2duYW1lPWZpbGUtcm9s bGVyCi12ZXJzaW9uPTMuMzYuMAordmVyc2lvbj0zLjM2LjIKIHJldmlzaW9uPTEKIGJ1aWxkX3N0 eWxlPW1lc29uCiBob3N0bWFrZWRlcGVuZHM9ImdldHRleHQgZ2xpYi1kZXZlbCBpdHN0b29sIHBr Zy1jb25maWciCkBAIC0xMiw0ICsxMiw0IEBAIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0 b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9 Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcvQXBwcy9GaWxlUm9sbGVyIgogZGlzdGZpbGVzPSIke0dO T01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0u dGFyLnh6IgotY2hlY2tzdW09YjkxNDRkZThmNTM2ZjU4M2VjMjlkNzAzYzJjMTcwYmYyZDAwYzZj MTY2Y2Q1ZTNmN2VmYWJkYTU1MWYxMDQ3OAorY2hlY2tzdW09MjY4ZjdmZGFkOGQyYTc4ZGZlZDVl ODJlYjg3MTBiYWQzODljMzExYjcyMDY2NmQ2ZjA3YTA0ZWQ1MTA1NmJkMgoKRnJvbSBiMWVhZmFk MWQ1OTk5OTYwZDlmY2JlMjgyNWE2YThhY2Y3NTRhN2ZjIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAw MQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUdWUsIDUgTWF5IDIw MjAgMDc6NTg6MDIgKzA2MDAKU3ViamVjdDogW1BBVENIIDI5LzUyXSBkY29uZi1lZGl0b3I6IHVw ZGF0ZSB0byAzLjM2LjIuCgotLS0KIHNyY3BrZ3MvZGNvbmYtZWRpdG9yL3RlbXBsYXRlIHwgNCAr Ky0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlm ZiAtLWdpdCBhL3NyY3BrZ3MvZGNvbmYtZWRpdG9yL3RlbXBsYXRlIGIvc3JjcGtncy9kY29uZi1l ZGl0b3IvdGVtcGxhdGUKaW5kZXggZGUyNTBiYmM4YTkuLjNiOGNkOGNiNzJmIDEwMDY0NAotLS0g YS9zcmNwa2dzL2Rjb25mLWVkaXRvci90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2Rjb25mLWVkaXRv ci90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2Rjb25mLWVk aXRvcicKIHBrZ25hbWU9ZGNvbmYtZWRpdG9yCi12ZXJzaW9uPTMuMzYuMAordmVyc2lvbj0zLjM2 LjIKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPW1lc29uCiBob3N0bWFrZWRlcGVuZHM9ImRvY2Jv b2steHNsIGdsaWItZGV2ZWwgbGlieHNsdCBwa2ctY29uZmlnIHZhbGEiCkBAIC0xMCw0ICsxMCw0 IEBAIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNl bnNlPSJHUEwtMy4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcv UHJvamVjdHMvZGNvbmYiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3Zl cnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT03MmVlZDA1 NjcwOTE3ZjhlNDMyMDBlNDBjY2M2YmU2MDIxMWYwYTg3YjAxNzUzNGVhYzFmZDZjNzE3M2EwNjkz CitjaGVja3N1bT1lZGNlYzg4NjdmMDE4NTg5MTI1ZjE3NzQwNzc2MGM2NDJiYmJiNTJmZTUxMjJk YWFjNTkwNTIyM2Q2YjNlMWM3CgpGcm9tIDAxMjgzOWI5MTUwYTY5ODA4MWU2ZDFhZTg2YmE5Yjgy ZjlkOWRlMTIgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVA b3V0bG9vay5jb20+CkRhdGU6IFR1ZSwgNSBNYXkgMjAyMCAxMDoyMDo1NiArMDYwMApTdWJqZWN0 OiBbUEFUQ0ggMzAvNTJdIHRyYWNrZXI6IHVwZGF0ZSB0byAyLjMuNC4KCi0tLQogc3JjcGtncy90 cmFja2VyL3RlbXBsYXRlIHwgOCArKysrLS0tLQogMSBmaWxlIGNoYW5nZWQsIDQgaW5zZXJ0aW9u cygrKSwgNCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3RyYWNrZXIvdGVtcGxh dGUgYi9zcmNwa2dzL3RyYWNrZXIvdGVtcGxhdGUKaW5kZXggMzcwNzRjYjM0OGQuLmU4MTRmNzdj NzExIDEwMDY0NAotLS0gYS9zcmNwa2dzL3RyYWNrZXIvdGVtcGxhdGUKKysrIGIvc3JjcGtncy90 cmFja2VyL3RlbXBsYXRlCkBAIC0xLDEzICsxLDEzIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICd0 cmFja2VyJwogcGtnbmFtZT10cmFja2VyCi12ZXJzaW9uPTIuMy4xCi1yZXZpc2lvbj0yCit2ZXJz aW9uPTIuMy40CityZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1tZXNvbgogYnVpbGRfaGVscGVyPSJn aXIiCiBjb25maWd1cmVfYXJncz0iLURkb2NzPWZhbHNlIC1EZnRzPXRydWUgLURmdW5jdGlvbmFs X3Rlc3RzPWZhbHNlCiAgLURqb3VybmFsPXRydWUgLURtYW49dHJ1ZSAtRG5ldHdvcmtfbWFuYWdl cj1lbmFibGVkIC1Ec3RlbW1lcj1kaXNhYmxlZAogIC1Ec3lzdGVtZF91c2VyX3NlcnZpY2VzPW5v IgotaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIGdsaWItZGV2ZWwgdmFsYSIKK2hvc3RtYWtl ZGVwZW5kcz0iZ2V0dGV4dCBwa2ctY29uZmlnIGdsaWItZGV2ZWwgdmFsYSIKIG1ha2VkZXBlbmRz PSJkYnVzLWRldmVsIGxpYmdsaWItZGV2ZWwgaWN1LWRldmVsIGpzb24tZ2xpYi1kZXZlbAogIGxp YnNvdXAtZGV2ZWwgbGlieG1sMi1kZXZlbCBzcWxpdGUtZGV2ZWwgTmV0d29ya01hbmFnZXItZGV2 ZWwKICBiYXNoLWNvbXBsZXRpb24iCkBAIC0xNiw3ICsxNiw3IEBAIG1haW50YWluZXI9Ik9ycGhh bmVkIDxvcnBoYW5Adm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgog aG9tZXBhZ2U9Imh0dHBzOi8vbGl2ZS5nbm9tZS5vcmcvVHJhY2tlciIKIGRpc3RmaWxlcz0iJHtH Tk9NRV9TSVRFfS90cmFja2VyLyR7dmVyc2lvbiUuKn0vdHJhY2tlci0ke3ZlcnNpb259LnRhci54 eiIKLWNoZWNrc3VtPWI2NzQ4NzI2ZTQ2NWFkMmY0ZDk5MTU2MDYzNGIxZmQwZGY4ODQxZjNkOTgx YjNiODM3YzQxNjJhYmVkZjA4YTEKK2NoZWNrc3VtPTU3Nzk1MjI0NGFiOTc3Yzc4YjBiODhlMmY2 M2M0MTk3ZWFiYTE2ZTRkNjZiZmY2OTJiN2Y1ODk5M2UwNjUxNmQKIAogaWYgWyAiJENST1NTX0JV SUxEIiBdOyB0aGVuCiAJaG9zdG1ha2VkZXBlbmRzKz0iIGRidXMiCgpGcm9tIGZhNjdmMjU1OGFh YmM1YzEyMWZjOWViNDNiMjAxOTA3NDc3M2E2ZWQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZy b206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFdlZCwgNiBNYXkgMjAyMCAx OTo1NjoxNCArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMzEvNTJdIG9yY2E6IHVwZGF0ZSB0byAzLjM2 LjIuCgotLS0KIHNyY3BrZ3Mvb3JjYS90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQs IDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL29y Y2EvdGVtcGxhdGUgYi9zcmNwa2dzL29yY2EvdGVtcGxhdGUKaW5kZXggZjcwMjAyZTZkNzYuLjhh NzBjODQ5ZjZkIDEwMDY0NAotLS0gYS9zcmNwa2dzL29yY2EvdGVtcGxhdGUKKysrIGIvc3JjcGtn cy9vcmNhL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnb3Jj YScKIHBrZ25hbWU9b3JjYQotdmVyc2lvbj0zLjM2LjEKK3ZlcnNpb249My4zNi4yCiByZXZpc2lv bj0xCiBhcmNocz1ub2FyY2gKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKQEAgLTEzLDcgKzEz LDcgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxp Y2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21lLm9y Zy9Qcm9qZWN0cy9PcmNhIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2 ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09YzFhYzY0 OGI2YmUzMTQ4OGMyNmZmOTU5MTE0Mjg3ODY5ZGY5Y2UzY2EyMTk5OWU0MGRlZDg3NzQxYzk4ODMx ZgorY2hlY2tzdW09Y2YwMDU1Yjc2ZjIxNTljMzNjOWQ5ZjdkZWJiNzY5NDM1YzIwMWJiZmE2ZGNm MGYwMWZkYzU4ZTkyOTQ3YmY0MwogCiBpZiBbICIkQ1JPU1NfQlVJTEQiIF07IHRoZW4KIAlob3N0 bWFrZWRlcGVuZHMrPSIgcHl0aG9uMy1nb2JqZWN0LWRldmVsIgoKRnJvbSA0NzBmMjk1NWU0MTA5 NDVmNWNiNTA3Y2NkYTI1MmFhOTAwMmJiZmRjIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9t OiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUdWUsIDUgTWF5IDIwMjAgMTE6 MDM6MjkgKzA2MDAKU3ViamVjdDogW1BBVENIIDMyLzUyXSBnbm9tZS1nZXR0aW5nLXN0YXJ0ZWQt ZG9jczogdXBkYXRlIHRvIDMuMzYuMi4KCi0tLQogc3JjcGtncy9nbm9tZS1nZXR0aW5nLXN0YXJ0 ZWQtZG9jcy90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygr KSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLWdldHRpbmctc3Rh cnRlZC1kb2NzL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1nZXR0aW5nLXN0YXJ0ZWQtZG9jcy90 ZW1wbGF0ZQppbmRleCA1YmVjOTM0OTBiYS4uYmVkOWI2OTYxNjIgMTAwNjQ0Ci0tLSBhL3NyY3Br Z3MvZ25vbWUtZ2V0dGluZy1zdGFydGVkLWRvY3MvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9t ZS1nZXR0aW5nLXN0YXJ0ZWQtZG9jcy90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxh dGUgZmlsZSBmb3IgJ2dub21lLWdldHRpbmctc3RhcnRlZC1kb2NzJwogcGtnbmFtZT1nbm9tZS1n ZXR0aW5nLXN0YXJ0ZWQtZG9jcwotdmVyc2lvbj0zLjM0LjAKK3ZlcnNpb249My4zNi4yCiByZXZp c2lvbj0xCiBhcmNocz1ub2FyY2gKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKQEAgLTExLDQg KzExLDQgQEAgbGljZW5zZT0iQ0MtQlktU0EtMy4wIgogaG9tZXBhZ2U9Imh0dHBzOi8vZ2l0bGFi Lmdub21lLm9yZy9HTk9NRS9nbm9tZS1nZXR0aW5nLXN0YXJ0ZWQtZG9jcyIKICNjaGFuZ2Vsb2c9 Imh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS1nZXR0aW5nLXN0YXJ0ZWQtZG9j cy9yYXcvbWFzdGVyL05FV1MiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8k e3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT1mNzBj ZTJjYTIzYWQ3ODYyMTVmM2M5MmVjODU3ODNlM2FhYmVkMDdlNGY3ODcwMGZhMjdmOWIyY2Y3NmUw M2RiCitjaGVja3N1bT0wNDk0Yjg5MTNhOTQ2YjY0NTA1MzZlMTIwYzE1NGFiZDI5MjM4ZWJiYTJm NTI3MzQ1OTJiMWY2NDVlNTIxZGM2CgpGcm9tIGY5ZGRhOTI1MDVmM2IwYmZkMzQ2NDg4MjdmMWFl ODI5Njc2MzVmZGYgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQu MjVAb3V0bG9vay5jb20+CkRhdGU6IFN1biwgMTkgQXByIDIwMjAgMTY6NTE6NDIgKzA2MDAKU3Vi amVjdDogW1BBVENIIDMzLzUyXSBnbm9tZS1wYW5lbDogdXBkYXRlIHRvIDMuMzYuMS4KCi0tLQog Y29tbW9uL3NobGlicyAgICAgICAgICAgICAgICB8IDMgKystCiBzcmNwa2dzL2dub21lLXBhbmVs L3RlbXBsYXRlIHwgNiArKystLS0KIDIgZmlsZXMgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCA0 IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2NvbW1vbi9zaGxpYnMgYi9jb21tb24vc2hsaWJz CmluZGV4IDNkYzBjYzFhN2IwLi43ZjY1NjFjZWJjYSAxMDA2NDQKLS0tIGEvY29tbW9uL3NobGli cworKysgYi9jb21tb24vc2hsaWJzCkBAIC01NjYsNyArNTY2LDggQEAgbGlicGFja2FnZWtpdC1n bGliMi5zby4xOCBQYWNrYWdlS2l0LTEuMS4xMl8xCiBsaWJwc2wuc28uNSBsaWJwc2wtMC4yMC4y XzEKIGxpYnNvdXAtMi40LnNvLjEgbGlic291cC0yLjM0LjBfMQogbGlic291cC1nbm9tZS0yLjQu c28uMSBsaWJzb3VwLWdub21lLTIuMzQuMF8xCi1saWJwYW5lbC1hcHBsZXQuc28uMyBnbm9tZS1w YW5lbC0zLjMwLjBfMQorbGliZ25vbWUtcGFuZWwuc28uMCBnbm9tZS1wYW5lbC0zLjM2LjFfMQor bGlicGFuZWwtYXBwbGV0LnNvLjMgZ25vbWUtcGFuZWwtMy4zNi4xXzEKIGxpYnVuaW51bS5zby41 IGxpYnVuaW51bS0yLjdfMQogbGlidW5pcXVlLTMuMC5zby4wIGxpYnVuaXF1ZS0yLjkxLjRfMQog bGlid2Via2l0Mmd0ay00LjAuc28uMzcgd2Via2l0Mmd0ay0yLjYuMl8xCmRpZmYgLS1naXQgYS9z cmNwa2dzL2dub21lLXBhbmVsL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1wYW5lbC90ZW1wbGF0 ZQppbmRleCA3MGYyM2I4YjU1MS4uOWIwMGJmYWI2NTggMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25v bWUtcGFuZWwvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS1wYW5lbC90ZW1wbGF0ZQpAQCAt MSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLXBhbmVsJwogcGtnbmFtZT1n bm9tZS1wYW5lbAotdmVyc2lvbj0zLjM0LjEKLXJldmlzaW9uPTMKK3ZlcnNpb249My4zNi4xCity ZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBjb25maWd1cmVfYXJncz0iYXhf Y3Zfem9uZWluZm9fdHpkaXI9L3Vzci9zaGFyZS96b25laW5mbyIKIGhvc3RtYWtlZGVwZW5kcz0i Z2V0dGV4dC1kZXZlbCBnbGliLWRldmVsIGl0c3Rvb2wgcGtnLWNvbmZpZyB0emRhdGEgZ2V0dGV4 dCIKQEAgLTE0LDcgKzE0LDcgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lk bGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIsIEdGREwtMS4xLW9yLWxhdGVy LCBMR1BMLTIuMS1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL1By b2plY3RzL0dub21lUGFuZWwiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8k e3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT1hNmJj MDI1NTI1MmVlYjRiOTY0YmNiZTU1ZmQ3OTA4YjY5ZjkxNGMwNjJjNWVjOGRmZjVhYzAyNjJkMjli OTBkCitjaGVja3N1bT0xZTIxYjcyNmRkMzk3NTIzYWU3OWQyOWViNTM4YmNhZTA5ZTM0MjdlMjNj Y2Q2M2YyOGViMjVlZjM1NTJhYmQzCiBwYXRjaF9hcmdzPSItTnAxIgogCiBnbm9tZS1wYW5lbC1k ZXZlbF9wYWNrYWdlKCkgewoKRnJvbSBhODliMzVhM2UyNmZiODYwMTliM2ZiMjk5MzJjYjIwMzk0 ZjcwNmUyIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91 dGxvb2suY29tPgpEYXRlOiBTdW4sIDE5IEFwciAyMDIwIDE3OjI2OjM2ICswNjAwClN1YmplY3Q6 IFtQQVRDSCAzNC81Ml0gbWV0YWNpdHk6IHVwZGF0ZSB0byAzLjM2LjEuCgotLS0KIGNvbW1vbi9z aGxpYnMgICAgICAgICAgICAgfCAxICsKIHNyY3BrZ3MvbWV0YWNpdHkvdGVtcGxhdGUgfCA2ICsr Ky0tLQogMiBmaWxlcyBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpk aWZmIC0tZ2l0IGEvY29tbW9uL3NobGlicyBiL2NvbW1vbi9zaGxpYnMKaW5kZXggN2Y2NTYxY2Vi Y2EuLjRiZTViZjAwNjI0IDEwMDY0NAotLS0gYS9jb21tb24vc2hsaWJzCisrKyBiL2NvbW1vbi9z aGxpYnMKQEAgLTU2OCw2ICs1NjgsNyBAQCBsaWJzb3VwLTIuNC5zby4xIGxpYnNvdXAtMi4zNC4w XzEKIGxpYnNvdXAtZ25vbWUtMi40LnNvLjEgbGlic291cC1nbm9tZS0yLjM0LjBfMQogbGliZ25v bWUtcGFuZWwuc28uMCBnbm9tZS1wYW5lbC0zLjM2LjFfMQogbGlicGFuZWwtYXBwbGV0LnNvLjMg Z25vbWUtcGFuZWwtMy4zNi4xXzEKK2xpYm1ldGFjaXR5LnNvLjEgbWV0YWNpdHktMy4zNi4xXzEK IGxpYnVuaW51bS5zby41IGxpYnVuaW51bS0yLjdfMQogbGlidW5pcXVlLTMuMC5zby4wIGxpYnVu aXF1ZS0yLjkxLjRfMQogbGlid2Via2l0Mmd0ay00LjAuc28uMzcgd2Via2l0Mmd0ay0yLjYuMl8x CmRpZmYgLS1naXQgYS9zcmNwa2dzL21ldGFjaXR5L3RlbXBsYXRlIGIvc3JjcGtncy9tZXRhY2l0 eS90ZW1wbGF0ZQppbmRleCAxZDQxOTI2NzY2OC4uYmI3ZGZjMGJmYzkgMTAwNjQ0Ci0tLSBhL3Ny Y3BrZ3MvbWV0YWNpdHkvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9tZXRhY2l0eS90ZW1wbGF0ZQpA QCAtMSw5ICsxLDkgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ21ldGFjaXR5JwogcGtnbmFtZT1t ZXRhY2l0eQotdmVyc2lvbj0zLjMwLjEKK3ZlcnNpb249My4zNi4xCiByZXZpc2lvbj0xCiBidWls ZF9zdHlsZT1nbnUtY29uZmlndXJlCi1ob3N0bWFrZWRlcGVuZHM9ImdldHRleHQtZGV2ZWwgZ2xp Yi1kZXZlbCBpdHN0b29sIHBrZy1jb25maWcgeWVscC10b29scyB6ZW5pdHkiCitob3N0bWFrZWRl cGVuZHM9ImdldHRleHQgZ2xpYi1kZXZlbCBpdHN0b29sIHBrZy1jb25maWcgeWVscC10b29scyB6 ZW5pdHkiCiBtYWtlZGVwZW5kcz0iZ3NldHRpbmdzLWRlc2t0b3Atc2NoZW1hcy1kZXZlbCBndGsr My1kZXZlbCBsaWJjYW5iZXJyYS1kZXZlbAogIGxpYmdsaWItZGV2ZWwgbGliZ3RvcC1kZXZlbCBs aWJTTS1kZXZlbCBsaWJYY29tcG9zaXRlLWRldmVsIGxpYlhkYW1hZ2UtZGV2ZWwKICBsaWJYZml4 ZXMtZGV2ZWwgbGliWGluZXJhbWEtZGV2ZWwgbGliWHJlbmRlci1kZXZlbCBsaWJYMTEtZGV2ZWwg cGFuZ28tZGV2ZWwKQEAgLTE0LDQgKzE0LDQgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdv dHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFn ZT0iaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL21ldGFjaXR5IgogZGlzdGZpbGVzPSIk e0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lv bn0udGFyLnh6IgotY2hlY2tzdW09MGYxMzExYjdhYTM4ZGU3MWM2NjA4MGJkMmI3NDRkZTJjZDk1 ODBhZmNhZWU5YzYwOTdhN2QzZjVjNDIxNzk4YQorY2hlY2tzdW09MTFmMDc2OTNlMmIyNjY4NDA3 NTkwNjNhNGJjODA3MzQ2MDcwZThlN2ZlYzhmNTNjZDA3NTdmNjY2MmMxYjMyMwoKRnJvbSA5ZDAw M2ZkZmMwN2RlNjZkZDI2NDVmNTUzNDRhMGQwNmM5N2MyNDNmIE1vbiBTZXAgMTcgMDA6MDA6MDAg MjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBXZWQsIDI5IEFw ciAyMDIwIDA1OjMyOjEwICswNjAwClN1YmplY3Q6IFtQQVRDSCAzNS81Ml0gZ25vbWUtbWVudXM6 IHVwZGF0ZSB0byAzLjM2LjAuCgotLS0KIHNyY3BrZ3MvZ25vbWUtbWVudXMvdGVtcGxhdGUgfCA2 ICsrKy0tLQogMSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkK CmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLW1lbnVzL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9t ZS1tZW51cy90ZW1wbGF0ZQppbmRleCAyOTEwMjEyOWMzOC4uZTc4N2ZiOGRlNmIgMTAwNjQ0Ci0t LSBhL3NyY3BrZ3MvZ25vbWUtbWVudXMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS1tZW51 cy90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLW1l bnVzJwogcGtnbmFtZT1nbm9tZS1tZW51cwotdmVyc2lvbj0zLjMyLjAKLXJldmlzaW9uPTIKK3Zl cnNpb249My4zNi4wCityZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBidWls ZF9oZWxwZXI9ImdpciIKIGNvbmZpZ3VyZV9hcmdzPSItLWRpc2FibGUtc3RhdGljIgpAQCAtMTIs NyArMTIsNyBAQCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+ IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciwgTEdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFn ZT0iaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLW1lbnVzIgogZGlzdGZpbGVz PSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVy c2lvbn0udGFyLnh6IgotY2hlY2tzdW09Yzg1MGM2NGIyMDc0MjY1ZmU1OWUwOTlhMzQwYjg2ODlj ZjNkZDQ2NThkYzlmZWRkZDJhYjVlOTVmMWE3NGI3NAorY2hlY2tzdW09ZDkzNDhmMzhiZGU5NTZm YzMyNzUzYjI4YzFjZGUxOWMxNzViZmRiZjFmNGQ1YjA2MDAzYjNhYTA5MTUzYmIxZgogCiBidWls ZF9vcHRpb25zPSJnaXIiCiBidWlsZF9vcHRpb25zX2RlZmF1bHQ9ImdpciIKCkZyb20gMThmZmFk NDc2MzJmOTg1YjgwMWQ5Y2IwOGFkMjVlNzA1MWExMThiMCBNb24gU2VwIDE3IDAwOjAwOjAwIDIw MDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogRnJpLCAxIE1heSAy MDIwIDA2OjAzOjU1ICswNjAwClN1YmplY3Q6IFtQQVRDSCAzNi81Ml0gZ25vbWUtZmxhc2hiYWNr OiB1cGRhdGUgdG8gMy4zNi4zLgoKLS0tCiAuLi4vZ25vbWUtZmxhc2hiYWNrL3BhdGNoZXMvY29t cGl6LTAuOC5wYXRjaCAgfCAyOCArKysrKysrKysrKysrKysrKysrCiBzcmNwa2dzL2dub21lLWZs YXNoYmFjay90ZW1wbGF0ZSAgICAgICAgICAgICAgfCAyNiArKysrKysrKysrKy0tLS0tLQogMiBm aWxlcyBjaGFuZ2VkLCA0NSBpbnNlcnRpb25zKCspLCA5IGRlbGV0aW9ucygtKQogY3JlYXRlIG1v ZGUgMTAwNjQ0IHNyY3BrZ3MvZ25vbWUtZmxhc2hiYWNrL3BhdGNoZXMvY29tcGl6LTAuOC5wYXRj aAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtZmxhc2hiYWNrL3BhdGNoZXMvY29tcGl6LTAu OC5wYXRjaCBiL3NyY3BrZ3MvZ25vbWUtZmxhc2hiYWNrL3BhdGNoZXMvY29tcGl6LTAuOC5wYXRj aApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uZThhMmE1Yzg3ZmQKLS0t IC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2dub21lLWZsYXNoYmFjay9wYXRjaGVzL2NvbXBpei0w LjgucGF0Y2gKQEAgLTAsMCArMSwyOCBAQAorZGlmZiAtLWdpdCBjb25maWd1cmUgY29uZmlndXJl CitpbmRleCAyNmNlYTUxLi5kMjQ2M2NjIDEwMDc1NQorLS0tIGNvbmZpZ3VyZQorKysrIGNvbmZp Z3VyZQorQEAgLTIwODQyLDggKzIwODQyLDggQEAgZmkKKyBpZiB0ZXN0ICJ4JHdpdGhfY29tcGl6 X3Nlc3Npb24iICE9ICJ4bm8iOyB0aGVuIDoKKyAKKyAgIGlmIHRlc3QgLW4gIiRQS0dfQ09ORklH IiAmJiBcCistICAgIHsgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBc JFBLR19DT05GSUcgLS1leGlzdHMgLS1wcmludC1lcnJvcnMgXCJsaWJjb21waXpjb25maWcgPj0g MC45LjE0LjBcIiI7IH0gPiY1CistICAoJFBLR19DT05GSUcgLS1leGlzdHMgLS1wcmludC1lcnJv cnMgImxpYmNvbXBpemNvbmZpZyA+PSAwLjkuMTQuMCIpIDI+JjUKKysgICAgeyB7ICRhc19lY2hv ICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IFwkUEtHX0NPTkZJRyAtLWV4aXN0cyAtLXBy aW50LWVycm9ycyBcImxpYmNvbXBpemNvbmZpZyA+PSAwLjguMTYuMFwiIjsgfSA+JjUKKysgICgk UEtHX0NPTkZJRyAtLWV4aXN0cyAtLXByaW50LWVycm9ycyAibGliY29tcGl6Y29uZmlnID49IDAu OC4xNi4wIikgMj4mNQorICAgYWNfc3RhdHVzPSQ/CisgICAkYXNfZWNobyAiJGFzX21lOiR7YXNf bGluZW5vLSRMSU5FTk99OiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgIHRlc3QgJGFjX3N0YXR1 cyA9IDA7IH07IHRoZW4KK2RpZmYgLS1naXQgY29uZmlndXJlLmFjIGNvbmZpZ3VyZS5hYworaW5k ZXggYjZlMTQ3MC4uZDI4YTcwYiAxMDA2NDQKKy0tLSBjb25maWd1cmUuYWMKKysrKyBjb25maWd1 cmUuYWMKK0BAIC0zNDAsNyArMzQwLDcgQEAgQUNfQVJHX1dJVEgoW2NvbXBpei1zZXNzaW9uXSwK KyAgICAgICAgICAgICBbd2l0aF9jb21waXpfc2Vzc2lvbj0iJHdpdGh2YWwiXSwgW3dpdGhfY29t cGl6X3Nlc3Npb249ImF1dG8iXSkKKyAKKyBBU19JRihbdGVzdCAieCR3aXRoX2NvbXBpel9zZXNz aW9uIiAhPSAieG5vIl0sIFsKKy0gIFBLR19DSEVDS19FWElTVFMoW2xpYmNvbXBpemNvbmZpZyA+ PSAwLjkuMTQuMF0sCisrICBQS0dfQ0hFQ0tfRVhJU1RTKFtsaWJjb21waXpjb25maWcgPj0gMC44 LjE2LjBdLAorICAgICAgICAgICAgICAgICAgICBbZm91bmRfY29tcGl6PSJ5ZXMiXSwgW2ZvdW5k X2NvbXBpej0ibm8iXSkKKyAKKyAgIEFTX0lGKFt0ZXN0ICJ4JGZvdW5kX2NvbXBpeiIgPSAieHll cyJdLCBbCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLWZsYXNoYmFjay90ZW1wbGF0ZSBiL3Ny Y3BrZ3MvZ25vbWUtZmxhc2hiYWNrL3RlbXBsYXRlCmluZGV4IGQzMjEyMGNhYjZmLi44OTVkZmM0 Mzg3OCAxMDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1mbGFzaGJhY2svdGVtcGxhdGUKKysrIGIv c3JjcGtncy9nbm9tZS1mbGFzaGJhY2svdGVtcGxhdGUKQEAgLTEsMjAgKzEsMjggQEAKICMgVGVt cGxhdGUgZmlsZSBmb3IgJ2dub21lLWZsYXNoYmFjaycKIHBrZ25hbWU9Z25vbWUtZmxhc2hiYWNr Ci12ZXJzaW9uPTMuMzQuMgordmVyc2lvbj0zLjM2LjMKIHJldmlzaW9uPTEKIGJ1aWxkX2hlbHBl cj1naXIKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKLWNvbmZpZ3VyZV9hcmdzPSItLWVuYWJs ZS1jb21waWxlLXdhcm5pbmdzPW1pbmltdW0iCi1ob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcg YXV0b21ha2UgZ2xpYi1kZXZlbCBnZXR0ZXh0IgotbWFrZWRlcGVuZHM9Imd0ayszLWRldmVsIGdz ZXR0aW5ncy1kZXNrdG9wLXNjaGVtYXMtZGV2ZWwKLSBsaWJnbGliLWRldmVsIGdkay1waXhidWYt ZGV2ZWwgdXBvd2VyLWRldmVsIGlidXMtZGV2ZWwgcG9sa2l0LWRldmVsCi0gcHVsc2VhdWRpby1k ZXZlbCBsaWJjYW5iZXJyYS1kZXZlbCBsaWJ4Y2ItZGV2ZWwgbGliWDExLWRldmVsIHBhbmdvLWRl dmVsCi0gbGlieGtiZmlsZS1kZXZlbCBnbm9tZS1ibHVldG9vdGgtZGV2ZWwgZ25vbWUtZGVza3Rv cC1kZXZlbCIKK2NvbmZpZ3VyZV9hcmdzPSItLXdpdGgtY29tcGl6LXNlc3Npb24gLS1lbmFibGUt Y29tcGlsZS13YXJuaW5ncz1taW5pbXVtIgoraG9zdG1ha2VkZXBlbmRzPSJnZXR0ZXh0LWRldmVs IHBrZy1jb25maWcgYXV0b21ha2UgZ2xpYi1kZXZlbCBnZXR0ZXh0IGxpYnRvb2wiCittYWtlZGVw ZW5kcz0iZ3RrKzMtZGV2ZWwgcGFtLWRldmVsIGdzZXR0aW5ncy1kZXNrdG9wLXNjaGVtYXMtZGV2 ZWwgZWxvZ2luZC1kZXZlbAorIGdkbS1kZXZlbCBsaWJjb21waXpjb25maWctZGV2ZWwgbGliZ2xp Yi1kZXZlbCBnZGstcGl4YnVmLWRldmVsIHVwb3dlci1kZXZlbCBpYnVzLWRldmVsCisgcG9sa2l0 LWRldmVsIHB1bHNlYXVkaW8tZGV2ZWwgbGliY2FuYmVycmEtZGV2ZWwgbGlieGNiLWRldmVsIGxp YlgxMS1kZXZlbCBwYW5nby1kZXZlbAorIGxpYnhrYmZpbGUtZGV2ZWwgZ25vbWUtYmx1ZXRvb3Ro LWRldmVsIGdub21lLWRlc2t0b3AtZGV2ZWwgZ25vbWUtcGFuZWwtZGV2ZWwiCiBkZXBlbmRzPSJn bm9tZS1ibHVldG9vdGggZ25vbWUtc2Vzc2lvbiBnbm9tZS1zZXR0aW5ncy1kYWVtb24KLSBnbm9t ZS1wYW5lbCBnbm9tZS10aGVtZXMtc3RhbmRhcmQgbWV0YWNpdHkiCisgZ25vbWUtcGFuZWwgZ25v bWUtdGhlbWVzLWV4dHJhIG1ldGFjaXR5Igogc2hvcnRfZGVzYz0iR05PTUUgMyBzZXNzaW9uIHdp dGggc2ltaWxhciB1c2VyIGV4cGVyaWVuY2UgdG8gdGhlIEdOT01FIDIueCBzZXJpZXMiCiBtYWlu dGFpbmVyPSJzaGl6b25pYyA8cmVhbHRpYXpAZ21haWwuY29tPiIKIGxpY2Vuc2U9IkdQTC0zLjAt b3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9Qcm9qZWN0cy9Hbm9t ZUZsYXNoYmFjayIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lv biUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTNiZTY1Mzg4Y2Qy YzhmMzk3NDFiY2MwNWRhODdlZjQwMDM1MTgzYTlhMzk1MDJkNjc2OTYyNDJjMmFlYjQ2OWMKK2No ZWNrc3VtPTJkYmE5ZWE0MGYyZGE4MWMyMjk1NGE4Y2NjMjlmOGYxZmE0Y2E4Mzk1YTZiYjU1MjUw NjYzNTgzMjc1MWMxYTcKKworcHJlX2NvbmZpZ3VyZSgpIHsKKwlhdXRvcmVjb25mIC12ZmkKK30K KworcG9zdF9pbnN0YWxsKCkgeworCXZzZWQgLWkgLWUgInMvIC0tc3lzdGVtZC8vZyIgJHtERVNU RElSfS91c3IvbGliZXhlYy9nbm9tZS1mbGFzaGJhY2ste2NvbXBpeixtZXRhY2l0eX0KK30KCkZy b20gNDRjMTI0NjY4MmU2MjcxYWYyZGM4YzA4ZDFkNjAxNDI5MTUwOGI3OCBNb24gU2VwIDE3IDAw OjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogV2Vk LCAyOSBBcHIgMjAyMCAwNjo1OTo0MCArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMzcvNTJdIGdyYXBo ZW5lOiB1cGRhdGUgdG8gMS4xMC4wLgoKLS0tCiBzcmNwa2dzL2dyYXBoZW5lL3RlbXBsYXRlIHwg MTAgKysrKystLS0tLQogMSBmaWxlIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlv bnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dyYXBoZW5lL3RlbXBsYXRlIGIvc3JjcGtncy9n cmFwaGVuZS90ZW1wbGF0ZQppbmRleCBmMmZlODFhM2Y0Ny4uY2I3Mzg1ZmVkYjcgMTAwNjQ0Ci0t LSBhL3NyY3BrZ3MvZ3JhcGhlbmUvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9ncmFwaGVuZS90ZW1w bGF0ZQpAQCAtMSwxMCArMSwxMCBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ3JhcGhlbmUnCiBw a2duYW1lPWdyYXBoZW5lCi12ZXJzaW9uPTEuOC4yCi1yZXZpc2lvbj0yCit2ZXJzaW9uPTEuMTAu MAorcmV2aXNpb249MQogYnVpbGRfc3R5bGU9bWVzb24KIGJ1aWxkX2hlbHBlcj0iZ2lyIgotY29u ZmlndXJlX2FyZ3M9Ii1EdGVzdHM9ZmFsc2UgLURiZW5jaG1hcmtzPWZhbHNlCitjb25maWd1cmVf YXJncz0iLUR0ZXN0cz1mYWxzZSAtRGFybV9uZW9uPWZhbHNlCiAgLURpbnRyb3NwZWN0aW9uPSQo dm9wdF9pZiBnaXIgdHJ1ZSBmYWxzZSkiCiBob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWciCiBt YWtlZGVwZW5kcz0ibGliZ2xpYi1kZXZlbCIKQEAgLTEzLDEzICsxMywxMyBAQCBtYWludGFpbmVy PSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iTUlUIgogaG9t ZXBhZ2U9Imh0dHBzOi8vZ2l0aHViLmNvbS9lYmFzc2kvZ3JhcGhlbmUiCiBkaXN0ZmlsZXM9IiR7 R05PTUVfU0lURX0vZ3JhcGhlbmUvJHt2ZXJzaW9uJS4qfS9ncmFwaGVuZS0ke3ZlcnNpb259LnRh ci54eiIKLWNoZWNrc3VtPWIzZmNmMjA5OTZlNTdiMWY0ZGYzOTQxY2FhYzEwZjE0M2JiMjk4OTBh NDJmN2E2NTQwN2NkMTkyNzFmYzg5ZjcKK2NoZWNrc3VtPTQwNmQ5N2Y1MWRkNGNhNjFlOTFmODQ2 NjZhMDBjM2U5NzZkM2U2NjdjZDI0OGI3NmQ5MmZkYjM1Y2U4NzY0OTkKIAogYnVpbGRfb3B0aW9u cz0iZ2lyIgogYnVpbGRfb3B0aW9uc19kZWZhdWx0PSJnaXIiCiAKIHBvc3RfaW5zdGFsbCgpIHsK LQl2bGljZW5zZSBMSUNFTlNFCisJdmxpY2Vuc2UgTElDRU5TRS50eHQgTElDRU5TRQogfQogCiBn cmFwaGVuZS1kZXZlbF9wYWNrYWdlKCkgewoKRnJvbSAyZDYxMzc0MzY2YmIwNGM5NDU5M2Y5MGI4 Y2NjMTVjZjI5OWVmMDRkIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5h YmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUaHUsIDMwIEFwciAyMDIwIDExOjUzOjI5ICswNjAw ClN1YmplY3Q6IFtQQVRDSCAzOC81Ml0gbXV0dGVyOiB1cGRhdGUgdG8gMy4zNi4yLgoKLS0tCiBj b21tb24vc2hsaWJzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAxOCArKysrKyst LS0tLS0KIC4uLi9wYXRjaGVzL2ZpeC1jb2dsLWVnbC1pbmNsdWRlcy5wYXRjaCAgICAgICB8IDEx IC0tLS0tLS0tCiBzcmNwa2dzL211dHRlci90ZW1wbGF0ZSAgICAgICAgICAgICAgICAgICAgICAg fCAyOCArKysrKysrKystLS0tLS0tLS0tCiAzIGZpbGVzIGNoYW5nZWQsIDIzIGluc2VydGlvbnMo KyksIDM0IGRlbGV0aW9ucygtKQogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvbXV0dGVyL3Bh dGNoZXMvZml4LWNvZ2wtZWdsLWluY2x1ZGVzLnBhdGNoCgpkaWZmIC0tZ2l0IGEvY29tbW9uL3No bGlicyBiL2NvbW1vbi9zaGxpYnMKaW5kZXggNGJlNWJmMDA2MjQuLjUzOWNjODFjZTNmIDEwMDY0 NAotLS0gYS9jb21tb24vc2hsaWJzCisrKyBiL2NvbW1vbi9zaGxpYnMKQEAgLTMwMTIsMTUgKzMw MTIsMTUgQEAgbGliZGVjb3JhdGlvbi5zby4wIGNvbXBpei1jb3JlLTAuOC4xNF8xCiBsaWJjb21w aXpjb25maWcuc28uMCBsaWJjb21waXpjb25maWctMC44LjE0XzEKIGxpYmVtZXJhbGRlbmdpbmUu c28uMCBlbWVyYWxkLTAuOC4xNF8xCiBsaWJoYW5ndWwuc28uMSBsaWJoYW5ndWwtMC4xLjBfMQot bGlibXV0dGVyLTUuc28uMCBtdXR0ZXItMy4zNC4xXzEKLWxpYm11dHRlci1jbHV0dGVyLTUuc28g bXV0dGVyLTMuMzQuMV8xCi1saWJtdXR0ZXItY2x1dHRlci01LnNvLjAgbXV0dGVyLTMuMzQuMV8x Ci1saWJtdXR0ZXItY29nbC1wYXRoLTUuc28gbXV0dGVyLTMuMzQuMV8xCi1saWJtdXR0ZXItY29n bC1wYXRoLTUuc28uMCBtdXR0ZXItMy4zNC4xXzEKLWxpYm11dHRlci1jb2dsLTUuc28gbXV0dGVy LTMuMzQuMV8xCi1saWJtdXR0ZXItY29nbC01LnNvLjAgbXV0dGVyLTMuMzQuMV8xCi1saWJtdXR0 ZXItY29nbC1wYW5nby01LnNvIG11dHRlci0zLjM0LjFfMQotbGlibXV0dGVyLWNvZ2wtcGFuZ28t NS5zby4wIG11dHRlci0zLjM0LjFfMQorbGlibXV0dGVyLTYuc28uMCBtdXR0ZXItMy4zNi4xXzEK K2xpYm11dHRlci1jbHV0dGVyLTYuc28gbXV0dGVyLTMuMzYuMV8xCitsaWJtdXR0ZXItY2x1dHRl ci02LnNvLjAgbXV0dGVyLTMuMzYuMV8xCitsaWJtdXR0ZXItY29nbC1wYXRoLTYuc28gbXV0dGVy LTMuMzYuMV8xCitsaWJtdXR0ZXItY29nbC1wYXRoLTYuc28uMCBtdXR0ZXItMy4zNi4xXzEKK2xp Ym11dHRlci1jb2dsLTYuc28gbXV0dGVyLTMuMzYuMV8xCitsaWJtdXR0ZXItY29nbC02LnNvLjAg bXV0dGVyLTMuMzYuMV8xCitsaWJtdXR0ZXItY29nbC1wYW5nby02LnNvIG11dHRlci0zLjM2LjFf MQorbGlibXV0dGVyLWNvZ2wtcGFuZ28tNi5zby4wIG11dHRlci0zLjM2LjFfMQogbGliZ2VvY2x1 ZS0yLnNvLjAgZ2VvY2x1ZTItMi40LjRfMQogbGliZ2VwdWIuc28uMCBsaWJnZXB1Yi0wLjRfMQog bGlic2xvcHkuc28uNy41IHNsb3AtNy41XzEKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbXV0dGVyL3Bh dGNoZXMvZml4LWNvZ2wtZWdsLWluY2x1ZGVzLnBhdGNoIGIvc3JjcGtncy9tdXR0ZXIvcGF0Y2hl cy9maXgtY29nbC1lZ2wtaW5jbHVkZXMucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cmlu ZGV4IGQ5MDk4ODg4N2MzLi4wMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL211dHRlci9wYXRjaGVz L2ZpeC1jb2dsLWVnbC1pbmNsdWRlcy5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDExICswLDAg QEAKLS0tLSBjb2dsL2NvZ2wvbWVzb24uYnVpbGQJMjAxOS0xMC0wOCAxOToxNToxMC4wMDAwMDAw MDAgKzAyMDAKLSsrKyBjb2dsL2NvZ2wvbWVzb24uYnVpbGQJMjAxOS0xMi0xNiAxNTo0NTo0NC4w Mzc2NDA1NDggKzAxMDAKLUBAIC00OCw3ICs0OCw3IEBACi0gYnVpbHRfaGVhZGVycyArPSBbY29n bF9nbF9oZWFkZXJfaF0KLSAKLSBpZiBoYXZlX2VnbAotLSAgY29nbF9lZ2xfaW5jbHVkZXNfc3Ry aW5nID0gJyNpbmNsdWRlIDxFR0wvZWdsLmg+XG4jaW5jbHVkZSA8RUdML2VnbGV4dC5oPicKLSsg IGNvZ2xfZWdsX2luY2x1ZGVzX3N0cmluZyA9ICcjaW5jbHVkZSA8RUdML2VnbC5oPlxuI2luY2x1 ZGUgPEVHTC9lZ2xleHQuaD5cbiNpbmNsdWRlIDxFR0wvZWdsbWVzYWV4dC5oPicKLSBlbHNlCi0g ICBjb2dsX2VnbF9pbmNsdWRlc19zdHJpbmcgPSAnJwotIGVuZGlmCmRpZmYgLS1naXQgYS9zcmNw a2dzL211dHRlci90ZW1wbGF0ZSBiL3NyY3BrZ3MvbXV0dGVyL3RlbXBsYXRlCmluZGV4IDRlMGJk MzJiNjdkLi43YzE0ODI5YWY5ZSAxMDA2NDQKLS0tIGEvc3JjcGtncy9tdXR0ZXIvdGVtcGxhdGUK KysrIGIvc3JjcGtncy9tdXR0ZXIvdGVtcGxhdGUKQEAgLTEsMzQgKzEsMzQgQEAKICMgVGVtcGxh dGUgZmlsZSBmb3IgJ211dHRlcicKIHBrZ25hbWU9bXV0dGVyCi12ZXJzaW9uPTMuMzQuMQotcmV2 aXNpb249MgordmVyc2lvbj0zLjM2LjIKK3JldmlzaW9uPTEKIGJ1aWxkX2hlbHBlcj0iZ2lyIgog YnVpbGRfc3R5bGU9bWVzb24KLWNvbmZpZ3VyZV9hcmdzPSItRGVnbF9kZXZpY2U9dHJ1ZSAtRHVk ZXY9dHJ1ZSAtRG5hdGl2ZV9iYWNrZW5kPXRydWUKLSAtRHByb2ZpbGVyPWZhbHNlIC1EaW50cm9z cGVjdGlvbj10cnVlIC1EeHdheWxhbmRfcGF0aD0vdXNyL2Jpbi9Yd2F5bGFuZCIKK2NvbmZpZ3Vy ZV9hcmdzPSItRGVnbF9kZXZpY2U9dHJ1ZSAtRHVkZXY9dHJ1ZSAtRG5hdGl2ZV9iYWNrZW5kPXRy dWUgLURwcm9maWxlcj1mYWxzZQorIC1EaW50cm9zcGVjdGlvbj10cnVlIC1EeHdheWxhbmRfaW5p dGZkPWRpc2FibGVkIC1EeHdheWxhbmRfcGF0aD0vdXNyL2Jpbi9Yd2F5bGFuZCIKIGhvc3RtYWtl ZGVwZW5kcz0iZ2V0dGV4dCBnbGliLWRldmVsIHBrZy1jb25maWcgemVuaXR5IHdheWxhbmQtZGV2 ZWwgeG9yZy1zZXJ2ZXIiCi1tYWtlZGVwZW5kcz0iZWxvZ2luZC1kZXZlbCBnbGliLWRldmVsIGdu b21lLWRlc2t0b3AtZGV2ZWwganNvbi1nbGliLWRldmVsCi0gbGliZ2xpYi1kZXZlbCBsaWJTTS1k ZXZlbCBsaWJYdHN0LWRldmVsIGxpYmNhbmJlcnJhLWRldmVsIGxpYmlucHV0LWRldmVsCi0gTWVz YUxpYi1kZXZlbCBwaXBld2lyZS1kZXZlbCBzdGFydHVwLW5vdGlmaWNhdGlvbi1kZXZlbCB3YXls YW5kLXByb3RvY29scwotIGdub21lLXNldHRpbmdzLWRhZW1vbi1kZXZlbCIKK21ha2VkZXBlbmRz PSJlbG9naW5kLWRldmVsIGdsaWItZGV2ZWwgZ25vbWUtZGVza3RvcC1kZXZlbCBncmFwaGVuZS1k ZXZlbAorIGpzb24tZ2xpYi1kZXZlbCBsaWJnbGliLWRldmVsIGxpYlNNLWRldmVsIGxpYlh0c3Qt ZGV2ZWwgbGliY2FuYmVycmEtZGV2ZWwKKyBsaWJpbnB1dC1kZXZlbCBNZXNhTGliLWRldmVsIHBp cGV3aXJlLWRldmVsIHN0YXJ0dXAtbm90aWZpY2F0aW9uLWRldmVsCisgd2F5bGFuZC1wcm90b2Nv bHMgZ25vbWUtc2V0dGluZ3MtZGFlbW9uLWRldmVsIgogZGVwZW5kcz0iZGVza3RvcC1maWxlLXV0 aWxzIHplbml0eSIKIHNob3J0X2Rlc2M9IkxpZ2h0d2VpZ2h0IEdUSyszIHdpbmRvdyBtYW5hZ2Vy IgogbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vu c2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9Q cm9qZWN0cy9NdXR0ZXIvIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2 ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09YmExODI2 Y2Y4OGJkYjgxZTYzOTQzY2FjMDE0YThlOGJjZjM1ZWMxNzhjNTMyNjQ0MDFmOWM3MmZkZWFiNzU4 ZQotc2hsaWJfcHJvdmlkZXM9ImxpYm11dHRlci1jbHV0dGVyLTUuc28gbGlibXV0dGVyLWNvZ2wt NS5zbwotIGxpYm11dHRlci1jb2dsLXBhbmdvLTUuc28gbGlibXV0dGVyLWNvZ2wtcGF0aC01LnNv IgorY2hlY2tzdW09NzViMzc2NGViMDU5ZmM5MzVhNTQ1MjNhNjJiZWMxYmVkYjkzNTI4NDA0NmI2 ZGFhNTA4NjliMTk1YWRkZGFmNAorc2hsaWJfcHJvdmlkZXM9ImxpYm11dHRlci1jbHV0dGVyLTYu c28gbGlibXV0dGVyLWNvZ2wtNi5zbworIGxpYm11dHRlci1jb2dsLXBhbmdvLTYuc28gbGlibXV0 dGVyLWNvZ2wtcGF0aC02LnNvIgogCiBtdXR0ZXItZGV2ZWxfcGFja2FnZSgpIHsKLQlkZXBlbmRz PSJnc2V0dGluZ3MtZGVza3RvcC1zY2hlbWFzIGd0ayszLWRldmVsIGNsdXR0ZXItZGV2ZWwgbGli WDExLWRldmVsCi0JIGxpYlh0c3QtZGV2ZWwgbXV0dGVyLSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0i CisJZGVwZW5kcz0iZ3NldHRpbmdzLWRlc2t0b3Atc2NoZW1hcyBncmFwaGVuZS1kZXZlbCBndGsr My1kZXZlbCBjbHV0dGVyLWRldmVsCisJIGxpYlgxMS1kZXZlbCBsaWJYdHN0LWRldmVsIG11dHRl ci0ke3ZlcnNpb259XyR7cmV2aXNpb259IgogCXNob3J0X2Rlc2MrPSIgLSBkZXZlbG9wbWVudCBm aWxlcyIKIAlwa2dfaW5zdGFsbCgpIHsKIAkJdm1vdmUgdXNyL2luY2x1ZGUKIAkJdm1vdmUgdXNy L2xpYi9wa2djb25maWcKLQkJdm1vdmUgInVzci9saWIvbXV0dGVyLTUvKi5naXIiCisJCXZtb3Zl ICJ1c3IvbGliL211dHRlci02LyouZ2lyIgogCQl2bW92ZSAidXNyL2xpYi8qLnNvIgogCX0KIH0K CkZyb20gMTM1NjVlMzU4ZmNmZjIwNmQ0MWExMDQwMmE2YTE5NjcwYjdhMTVhMCBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTog TW9uLCA0IE1heSAyMDIwIDE0OjM4OjIzICswNjAwClN1YmplY3Q6IFtQQVRDSCAzOS81Ml0gZ25v bWUtc2hlbGw6IHVwZGF0ZSB0byAzLjM2LjIuCgotLS0KIHNyY3BrZ3MvZ25vbWUtc2hlbGwvdGVt cGxhdGUgfCA4ICsrKystLS0tCiAxIGZpbGUgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCA0IGRl bGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtc2hlbGwvdGVtcGxhdGUgYi9z cmNwa2dzL2dub21lLXNoZWxsL3RlbXBsYXRlCmluZGV4IDk2YzViODBhMTk0Li5iNjdhYzY1M2Q5 MCAxMDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1zaGVsbC90ZW1wbGF0ZQorKysgYi9zcmNwa2dz L2dub21lLXNoZWxsL3RlbXBsYXRlCkBAIC0xLDEyICsxLDEyIEBACiAjIFRlbXBsYXRlIGZpbGUg Zm9yICdnbm9tZS1zaGVsbCcKIHBrZ25hbWU9Z25vbWUtc2hlbGwKLXZlcnNpb249My4zNC4xCit2 ZXJzaW9uPTMuMzYuMgogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9bWVzb24KIGJ1aWxkX2hlbHBl cj1naXIKIGNvbmZpZ3VyZV9hcmdzPSItRHN5c3RlbWQ9ZmFsc2UiCi1ob3N0bWFrZWRlcGVuZHM9 ImdvYmplY3QtaW50cm9zcGVjdGlvbiBndGstZG9jIGxpYnhzbHQgcGtnLWNvbmZpZyBweXRob24z IHNhc3NjCi0gYXNjaWlkb2MgcGVybCBnbGliLWRldmVsIG11dHRlci1kZXZlbCIKK2hvc3RtYWtl ZGVwZW5kcz0iZ2V0dGV4dCBnb2JqZWN0LWludHJvc3BlY3Rpb24gZ3RrLWRvYyBsaWJ4c2x0IHBr Zy1jb25maWcgcHl0aG9uMyBzYXNzYworIGFzY2lpZG9jIHBlcmwgZ2pzLWRldmVsIGdsaWItZGV2 ZWwgbXV0dGVyLWRldmVsIgogbWFrZWRlcGVuZHM9ImF0LXNwaTItYXRrIGNhcmlib3UtZGV2ZWwg ZXZvbHV0aW9uLWRhdGEtc2VydmVyLWRldmVsIGZvbGtzLWRldmVsCiAgZ2NyLWRldmVsIGdqcy1k ZXZlbCBnbm9tZS1ibHVldG9vdGgtZGV2ZWwgZ25vbWUtY29udHJvbC1jZW50ZXItZGV2ZWwgZ25v bWUtZGVza3RvcC1kZXZlbAogIGdub21lLW1lbnVzLWRldmVsIGdzZXR0aW5ncy1kZXNrdG9wLXNj aGVtYXMtZGV2ZWwgZ3N0cmVhbWVyMS1kZXZlbCBndGsrMy1kZXZlbApAQCAtMjEsNCArMjEsNCBA QCBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9t ZS5vcmcvUHJvamVjdHMvR25vbWVTaGVsbCIKIGNoYW5nZWxvZz0iaHR0cHM6Ly9yYXcuZ2l0aHVi dXNlcmNvbnRlbnQuY29tL0dOT01FL2dub21lLXNoZWxsL2dub21lLTMtMzAvTkVXUyIKIGRpc3Rm aWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0k e3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPWNjZDg2NTU5YjljODk3YzIxOWQyZDJlYmZkYjg0 MTNlZmE0YzFiZWU4NDY0MjdjNzUwY2I4YTMwMWIzZjZkMWUKK2NoZWNrc3VtPTNiMTI5YjJhMWYx ZjE2NTRhMTAxMDk4ZWE4YjkxYTczYTgzNmFhZDdkMTY2ZjUyZGQ0NmIxYzYwMzdlYzE3NTMKCkZy b20gMWJhNjBmNjA2MDVjMDcwMGI1YTliOWQxYzg5YWRlZDhjMjRmMWNkYiBNb24gU2VwIDE3IDAw OjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogTW9u LCA0IE1heSAyMDIwIDE0OjM4OjMyICswNjAwClN1YmplY3Q6IFtQQVRDSCA0MC81Ml0gZ25vbWUt c2hlbGwtZXh0ZW5zaW9uczogdXBkYXRlIHRvIDMuMzYuMi4KCi0tLQogc3JjcGtncy9nbm9tZS1z aGVsbC1leHRlbnNpb25zL3RlbXBsYXRlIHwgNiArKystLS0KIDEgZmlsZSBjaGFuZ2VkLCAzIGlu c2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1z aGVsbC1leHRlbnNpb25zL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1zaGVsbC1leHRlbnNpb25z L3RlbXBsYXRlCmluZGV4IDk3MTY4YjQwZjY2Li5lMWRkNDNiYjE1MiAxMDA2NDQKLS0tIGEvc3Jj cGtncy9nbm9tZS1zaGVsbC1leHRlbnNpb25zL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUt c2hlbGwtZXh0ZW5zaW9ucy90ZW1wbGF0ZQpAQCAtMSwxNSArMSwxNSBAQAogIyBUZW1wbGF0ZSBm aWxlIGZvciAnZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucycKIHBrZ25hbWU9Z25vbWUtc2hlbGwtZXh0 ZW5zaW9ucwotdmVyc2lvbj0zLjM0LjEKK3ZlcnNpb249My4zNi4yCiByZXZpc2lvbj0xCiBhcmNo cz1ub2FyY2gKIGJ1aWxkX3N0eWxlPW1lc29uCiBjb25maWd1cmVfYXJncz0iLURleHRlbnNpb25f c2V0PWFsbCIKLWhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyIKK2hvc3RtYWtlZGVwZW5kcz0i Z2V0dGV4dCBwa2ctY29uZmlnIgogZGVwZW5kcz0iZ25vbWUtc2hlbGw+PSR7dmVyc2lvbn0gbmF1 dGlsdXMgdW56aXAiCiBzaG9ydF9kZXNjPSJFeHRlbnNpb25zIGZvciBHTk9NRSBzaGVsbCwgaW5j bHVkaW5nIGNsYXNzaWMgbW9kZSIKIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9p ZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBz Oi8vd2lraS5nbm9tZS5vcmcvUHJvamVjdHMvR25vbWVTaGVsbC9FeHRlbnNpb25zIgogZGlzdGZp bGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7 dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09YjBhZDUxMTQzYjFiZjQwZGVmNGExMGY4ZmQwYWIw ZmZiNDcyMTgzMDQ4MDA3OTRlNjJjYWRkMjlkMGFjYzc1YgorY2hlY2tzdW09OTc4MjAyZGU1MTVj ZGIwM2E1ODg1ODU5YzUzODM2NmJjYThmZDc4NzYyY2U5OGIxNzJhYzJjMDEyNmY4MDAzZgoKRnJv bSA3YTg1NjM4MTI1NWU0NTI1OTZjOWI1NDliMTQ4MTMyODRjNmQ2ZWMxIE1vbiBTZXAgMTcgMDA6 MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUaHUs IDcgTWF5IDIwMjAgMTI6Mjc6NTUgKzA2MDAKU3ViamVjdDogW1BBVENIIDQxLzUyXSBnZG06IHVw ZGF0ZSB0byAzLjM2LjIuCgotLS0KIHNyY3BrZ3MvZ2RtL3RlbXBsYXRlIHwgOCArKysrLS0tLQog MSBmaWxlIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKCmRpZmYgLS1n aXQgYS9zcmNwa2dzL2dkbS90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ2RtL3RlbXBsYXRlCmluZGV4IGJi NWI0ODY5MmQ0Li4wOTljNGNjOWQ0ZCAxMDA2NDQKLS0tIGEvc3JjcGtncy9nZG0vdGVtcGxhdGUK KysrIGIvc3JjcGtncy9nZG0vdGVtcGxhdGUKQEAgLTEsMTEgKzEsMTEgQEAKICMgVGVtcGxhdGUg ZmlsZSBmb3IgJ2dkbScKIHBrZ25hbWU9Z2RtCi12ZXJzaW9uPTMuMzQuMQordmVyc2lvbj0zLjM2 LjIKIHJldmlzaW9uPTEKIGJ1aWxkX2hlbHBlcj0iZ2lyIgogYnVpbGRfc3R5bGU9Z251LWNvbmZp Z3VyZQogY29uZmlndXJlX2FyZ3M9IiQodm9wdF9lbmFibGUgZ2lyIGludHJvc3BlY3Rpb24pCi0g LS1kaXNhYmxlLXNjaGVtYXMtY29tcGlsZSAtLWRpc2FibGUtc3RhdGljIC0td2l0aC1kZWZhdWx0 LXBhbS1jb25maWc9YXJjaAorIC0tZGlzYWJsZS1zdGF0aWMgLS13aXRoLWRlZmF1bHQtcGFtLWNv bmZpZz1hcmNoCiAgLS13aXRoLWF0LXNwaS1yZWdpc3RyeWQtZGlyZWN0b3J5PS91c3IvbGliZXhl YyAtLXdpdGhvdXQtdGNwLXdyYXBwZXJzCiAgLS13aXRoLXNjcmVlbnNob3QtZGlyPS92YXIvbGli L2dkbS9ncmVldGVyIC0tc2JpbmRpcj0vdXNyL2JpbiAtLXdpdGhvdXQtcGx5bW91dGgKICAtLXdp dGgteGF1dGgtZGlyPS9ydW4vZ2RtIC0td2l0aC1waWQtZmlsZT0vcnVuL2dkbS9nZG0ucGlkCkBA IC0xNCwxNCArMTQsMTQgQEAgaG9zdG1ha2VkZXBlbmRzPSJkY29uZiBnZXR0ZXh0IGl0c3Rvb2wg cGtnLWNvbmZpZyIKIG1ha2VkZXBlbmRzPSJhY2NvdW50c3NlcnZpY2UtZGV2ZWwgZWxvZ2luZC1k ZXZlbCBnZXR0ZXh0LWRldmVsIGdsaWItZGV2ZWwKICBpc28tY29kZXMgbGliU00tZGV2ZWwgbGli Y2FuYmVycmEtZGV2ZWwgbnNzLWRldmVsIHBhbS1kZXZlbCB1cG93ZXItZGV2ZWwiCiBkZXBlbmRz PSJnbm9tZS1zZXR0aW5ncy1kYWVtb24gZ25vbWUtc2hlbGwgeG9yZy1zZXJ2ZXIgeG9yZy1zZXJ2 ZXIteHdheWxhbmQKLSB4cmRiIgorIHhyZGIgZ3NldHRpbmdzLWRlc2t0b3Atc2NoZW1hcyIKIGNo ZWNrZGVwZW5kcz0iY2hlY2stZGV2ZWwiCiBzaG9ydF9kZXNjPSJHTk9NRSBEaXNwbGF5IE1hbmFn ZXIiCiBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGlj ZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3Jn L1Byb2plY3RzL0dETSIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVy c2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPWU4NWRmNjU3 YWE4ZDkzNjFhZjRmYjEyMjAxNGQ4ZjEyM2E5M2JmZTQ1YTc2NjJmYmEyYjM3M2Q4MzlkYmQ4ZDMK K2NoZWNrc3VtPTNmNTYxYzEwYWUyZTU5NDJiMDMwMjZmMDJjMGFhN2Q4NzEyZTM4MjcwOGIxN2Ew OTcwODc0ZGY4MTc1YjgzYTgKIAogY29uZl9maWxlcz0iCiAJL2V0Yy9nZG0vY3VzdG9tLmNvbmYK CkZyb20gZmRkYWRmMjI5YWMyNDZiYmNkZDI4YzY0ZjViNTE2YTA4YTNkOGMwOSBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTog RnJpLCAxIE1heSAyMDIwIDE4OjI0OjAyICswNTMwClN1YmplY3Q6IFtQQVRDSCA0Mi81Ml0gYnVk Z2llLWRlc2t0b3A6IHJlYnVpbGQgYWdhaW5zdAogbGliZ25vbWUtZGVza3RvcC0zLnNvLjE5Cgot LS0KIC4uLi9wYXRjaGVzL011dHRlci0zLjM1LjkwLXN1cHBvcnQtMTkxOC5wYXRjaCB8IDEyNzEz ICsrKysrKysrKysrKysrKysKIHNyY3BrZ3MvYnVkZ2llLWRlc2t0b3AvdGVtcGxhdGUgICAgICAg ICAgICAgICB8ICAgICA5ICstCiAyIGZpbGVzIGNoYW5nZWQsIDEyNzE4IGluc2VydGlvbnMoKyks IDQgZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9idWRnaWUtZGVza3Rv cC9wYXRjaGVzL011dHRlci0zLjM1LjkwLXN1cHBvcnQtMTkxOC5wYXRjaAoKZGlmZiAtLWdpdCBh L3NyY3BrZ3MvYnVkZ2llLWRlc2t0b3AvcGF0Y2hlcy9NdXR0ZXItMy4zNS45MC1zdXBwb3J0LTE5 MTgucGF0Y2ggYi9zcmNwa2dzL2J1ZGdpZS1kZXNrdG9wL3BhdGNoZXMvTXV0dGVyLTMuMzUuOTAt c3VwcG9ydC0xOTE4LnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw Li5iZmYxYmFkMDM5ZgotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvYnVkZ2llLWRlc2t0b3Av cGF0Y2hlcy9NdXR0ZXItMy4zNS45MC1zdXBwb3J0LTE5MTgucGF0Y2gKQEAgLTAsMCArMSwxMjcx MyBAQAorRnJvbSA5ZDA5YTFiMTViYmY2Njc4MGNjODllZmYzYzRiODRlNjY2YjBiZmRhIE1vbiBT ZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTogRGF2aWQgTW9oYW1tZWQgPGZvc3NmcmVlZG9tQHVz ZXJzLm5vcmVwbHkuZ2l0aHViLmNvbT4KK0RhdGU6IFR1ZSwgMTggRmViIDIwMjAgMDY6NDA6MTIg KzAwMDAKK1N1YmplY3Q6IFtQQVRDSF0gTXV0dGVyIDMuMzYgc3VwcG9ydCAoIzE5MTgpCisKKyog QWRkIG11dHRlciAzLjM1LjIgc3VwcG9ydAorCisqIE11dHRlciBjb21waWxlciBmbGFncyBuZWVk cyB0byBiZSBzcGVjaWZpZWQgYmVmb3JlIGRlcGVuZGVuY3kgY2hlY2tzCisKKyogUmVnZW5lcmF0 ZSB2YXBpIGZvciAzLjM1LjkwCisKK09yaWdpbjogaHR0cHM6Ly9naXRodWIuY29tL3NvbHVzLXBy b2plY3QvYnVkZ2llLWRlc2t0b3AvY29tbWl0cy85ZDA5YTFiMTViCistLS0KKyBzcmMvd20vbWVz b24uYnVpbGQgICAgICAgICAgICAgICAgfCAgIDEyICstCisgc3JjL3dtL3dtLnZhbGEgICAgICAg ICAgICAgICAgICAgIHwgICAxNiArLQorIHZhcGkvQ2x1dHRlci02Lm1ldGFkYXRhICAgICAgICAg ICB8ICAyMDQgKworIHZhcGkvQ29nbC02Lm1ldGFkYXRhICAgICAgICAgICAgICB8ICAgMjcgKwor IHZhcGkvTWV0YS02Lm1ldGFkYXRhICAgICAgICAgICAgICB8ICAgODAgKworIHZhcGkvZ3JhcGhl bmUtZ29iamVjdC0xLjAudmFwaSAgICB8ICA2OTEgKysrCisgdmFwaS9saWJtdXR0ZXItNi5kZXBz ICAgICAgICAgICAgIHwgICAgNiArCisgdmFwaS9saWJtdXR0ZXItNi52YXBpICAgICAgICAgICAg IHwgMTQ3NSArKysrKworIHZhcGkvbXV0dGVyLWNsdXR0ZXItNi1jdXN0b20udmFsYSB8ICAxNDcg KworIHZhcGkvbXV0dGVyLWNsdXR0ZXItNi5kZXBzICAgICAgICB8ICAgIDQgKworIHZhcGkvbXV0 dGVyLWNsdXR0ZXItNi52YXBpICAgICAgICB8IDg2ODcgKysrKysrKysrKysrKysrKysrKysrKysr KysrKysKKyB2YXBpL211dHRlci1jb2dsLTYtY3VzdG9tLnZhbGEgICAgfCAgMTI1ICsKKyB2YXBp L211dHRlci1jb2dsLTYuZGVwcyAgICAgICAgICAgfCAgICAxICsKKyB2YXBpL211dHRlci1jb2ds LTYudmFwaSAgICAgICAgICAgfCAxMDc3ICsrKysKKyAxNCBmaWxlcyBjaGFuZ2VkLCAxMjU0OSBp bnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorIGNyZWF0ZSBtb2RlIDEwMDY0NCB2YXBpL0Ns dXR0ZXItNi5tZXRhZGF0YQorIGNyZWF0ZSBtb2RlIDEwMDY0NCB2YXBpL0NvZ2wtNi5tZXRhZGF0 YQorIGNyZWF0ZSBtb2RlIDEwMDY0NCB2YXBpL01ldGEtNi5tZXRhZGF0YQorIGNyZWF0ZSBtb2Rl IDEwMDY0NCB2YXBpL2dyYXBoZW5lLWdvYmplY3QtMS4wLnZhcGkKKyBjcmVhdGUgbW9kZSAxMDA2 NDQgdmFwaS9saWJtdXR0ZXItNi5kZXBzCisgY3JlYXRlIG1vZGUgMTAwNjQ0IHZhcGkvbGlibXV0 dGVyLTYudmFwaQorIGNyZWF0ZSBtb2RlIDEwMDY0NCB2YXBpL211dHRlci1jbHV0dGVyLTYtY3Vz dG9tLnZhbGEKKyBjcmVhdGUgbW9kZSAxMDA2NDQgdmFwaS9tdXR0ZXItY2x1dHRlci02LmRlcHMK KyBjcmVhdGUgbW9kZSAxMDA2NDQgdmFwaS9tdXR0ZXItY2x1dHRlci02LnZhcGkKKyBjcmVhdGUg bW9kZSAxMDA2NDQgdmFwaS9tdXR0ZXItY29nbC02LWN1c3RvbS52YWxhCisgY3JlYXRlIG1vZGUg MTAwNjQ0IHZhcGkvbXV0dGVyLWNvZ2wtNi5kZXBzCisgY3JlYXRlIG1vZGUgMTAwNjQ0IHZhcGkv bXV0dGVyLWNvZ2wtNi52YXBpCisKK2RpZmYgLS1naXQgYS9zcmMvd20vbWVzb24uYnVpbGQgYi9z cmMvd20vbWVzb24uYnVpbGQKK2luZGV4IGUzOWI4Njc4Li40YmNjMGY5ZSAxMDA2NDQKKy0tLSBh L3NyYy93bS9tZXNvbi5idWlsZAorKysrIGIvc3JjL3dtL21lc29uLmJ1aWxkCitAQCAtMjUsMTEg KzI1LDE5IEBAIGlmIG5vdCBkZXBfbXV0dGVyLmZvdW5kKCkKKyAgICAgICAgIG1lc3NhZ2UoJ1Vz aW5nIG5ldyBsaWJtdXR0ZXItNCBBQkkgZnJvbSBHTk9NRSAzLjMyJykKKyAgICAgICAgIHZhcGlf bXV0dGVyID0gJ2xpYm11dHRlci00JworICAgICBlbHNlCistICAgICAgICBkZXBfbXV0dGVyID0g ZGVwZW5kZW5jeSgnbGlibXV0dGVyLTUnLCB2ZXJzaW9uOiBnbm9tZV9taW5pbXVtX3ZlcnNpb24p CisrICAgICAgICBkZXBfbXV0dGVyID0gZGVwZW5kZW5jeSgnbGlibXV0dGVyLTUnLCB2ZXJzaW9u OiBnbm9tZV9taW5pbXVtX3ZlcnNpb24sIHJlcXVpcmVkOiBmYWxzZSkKKysgICAgICAgIGJ1ZGdp ZV93bV9zdGF0dXNfdmFsYV9hcmdzICs9IFsnLUQnLCAnSEFWRV9NVVRURVJfNSddCisgICAgICAg ICBpZiBkZXBfbXV0dGVyLmZvdW5kKCkKKyAgICAgICAgICAgICBtZXNzYWdlKCdVc2luZyBuZXcg bGlibXV0dGVyLTUgQUJJIGZyb20gR05PTUUgMy4zNCcpCisgICAgICAgICAgICAgdmFwaV9tdXR0 ZXIgPSAnbGlibXV0dGVyLTUnCistICAgICAgICAgICAgYnVkZ2llX3dtX3N0YXR1c192YWxhX2Fy Z3MgKz0gWyctRCcsICdIQVZFX01VVFRFUl81J10KKysgICAgICAgIGVsc2UKKysgICAgICAgICAg ICBkZXBfbXV0dGVyID0gZGVwZW5kZW5jeSgnbGlibXV0dGVyLTYnLCB2ZXJzaW9uOiBnbm9tZV9t aW5pbXVtX3ZlcnNpb24pCisrICAgICAgICAgICAgYnVkZ2llX3dtX3N0YXR1c192YWxhX2FyZ3Mg Kz0gWyctRCcsICdIQVZFX01VVFRFUl82J10KKysgICAgICAgICAgICBpZiBkZXBfbXV0dGVyLmZv dW5kKCkKKysgICAgICAgICAgICAgICAgZGVwX2dyYXBoZW5lID0gZGVwZW5kZW5jeSgnZ3JhcGhl bmUtZ29iamVjdC0xLjAnLCB2ZXJzaW9uOiAnPj0gMS4xMCcpCisrICAgICAgICAgICAgICAgIG1l c3NhZ2UoJ1VzaW5nIG5ldyBsaWJtdXR0ZXItNiBBQkkgZnJvbSBHTk9NRSAzLjM2JykKKysgICAg ICAgICAgICAgICAgdmFwaV9tdXR0ZXIgPSAnbGlibXV0dGVyLTYnCisrICAgICAgICAgICAgZW5k aWYKKyAgICAgICAgIGVuZGlmCisgICAgIGVuZGlmCisgZW5kaWYKK2RpZmYgLS1naXQgYS9zcmMv d20vd20udmFsYSBiL3NyYy93bS93bS52YWxhCitpbmRleCBmZWU4OTQ0My4uYmI0NmNkMDYgMTAw NjQ0CistLS0gYS9zcmMvd20vd20udmFsYQorKysrIGIvc3JjL3dtL3dtLnZhbGEKK0BAIC0xMzcs OCArMTM3LDEzIEBAIHB1YmxpYyBjbGFzcyBCdWRnaWVXTSA6IE1ldGEuUGx1Z2luCisgICAgIHB1 YmxpYyBzdGF0aWMgc3RyaW5nW10/IG9sZF9hcmdzOworICAgICBwdWJsaWMgc3RhdGljIGJvb2wg d2F5bGFuZCA9IGZhbHNlOworIAorKyNpZiBIQVZFX01VVFRFUl82CisrICAgIHN0YXRpYyBHcmFw aGVuZS5Qb2ludCBQVl9DRU5URVI7CisrICAgIHN0YXRpYyBHcmFwaGVuZS5Qb2ludCBQVl9OT1JN OworKyNlbHNlCisgICAgIHN0YXRpYyBDbHV0dGVyLlBvaW50IFBWX0NFTlRFUjsKKyAgICAgc3Rh dGljIENsdXR0ZXIuUG9pbnQgUFZfTk9STTsKKysjZW5kaWYKKyAKKyAgICAgcHJpdmF0ZSBNZXRh LkJhY2tncm91bmRHcm91cD8gYmFja2dyb3VuZF9ncm91cDsKKyAKK0BAIC0xNzEsMTAgKzE3Niwx NSBAQCBwdWJsaWMgY2xhc3MgQnVkZ2llV00gOiBNZXRhLlBsdWdpbgorICAgICAgICAgICAgIGxp Y2Vuc2UgPSAiR1BMLTIuMCIsCisgICAgICAgICAgICAgZGVzY3JpcHRpb24gPSAiQnVkZ2llIFdp bmRvdyBNYW5hZ2VyIgorICAgICAgICAgfTsKKysjaWYgSEFWRV9NVVRURVJfNgorKyAgICAgICAg UFZfQ0VOVEVSID0gR3JhcGhlbmUuUG9pbnQoKTsKKysgICAgICAgIFBWX05PUk0gPSBHcmFwaGVu ZS5Qb2ludCgpOworKyNlbHNlCisgICAgICAgICBQVl9DRU5URVIgPSBDbHV0dGVyLlBvaW50LmFs bG9jKCk7CisrICAgICAgICBQVl9OT1JNID0gQ2x1dHRlci5Qb2ludC5hbGxvYygpOworKyNlbmRp ZgorICAgICAgICAgUFZfQ0VOVEVSLnggPSAwLjVmOworICAgICAgICAgUFZfQ0VOVEVSLnkgPSAw LjVmOworLSAgICAgICAgUFZfTk9STSA9IENsdXR0ZXIuUG9pbnQuYWxsb2MoKTsKKyAgICAgICAg IFBWX05PUk0ueCA9IDAuMGY7CisgICAgICAgICBQVl9OT1JNLnkgPSAwLjBmOworICAgICB9CitA QCAtMTAwMSw3ICsxMDExLDExIEBAIHB1YmxpYyBjbGFzcyBCdWRnaWVXTSA6IE1ldGEuUGx1Z2lu CisgICAgICAgICB0aWxlX3ByZXZpZXcuc2V0KCJzY2FsZS14IiwgTk9USUZJQ0FUSU9OX01BUF9T Q0FMRV9YLCAic2NhbGUteSIsIE5PVElGSUNBVElPTl9NQVBfU0NBTEVfWSwKKyAgICAgICAgICAg ICAicGl2b3QtcG9pbnQiLCBQVl9DRU5URVIpOworIAorKyNpZiBIQVZFX01VVFRFUl82CisrICAg ICAgICAvL3RpbGVfcHJldmlldy5sb3dlcih3aW5fYWN0b3IpOworKyNlbHNlCisgICAgICAgICB0 aWxlX3ByZXZpZXcubG93ZXIod2luX2FjdG9yKTsKKysjZW5kaWYKKyAgICAgICAgIHRpbGVfcHJl dmlldy50aWxlX3JlY3QgPSB0aWxlX3JlY3Q7CisgCisgICAgICAgICB0aWxlX3ByZXZpZXcuc2hv dygpOworZGlmZiAtLWdpdCBhL3ZhcGkvQ2x1dHRlci02Lm1ldGFkYXRhIGIvdmFwaS9DbHV0dGVy LTYubWV0YWRhdGEKK25ldyBmaWxlIG1vZGUgMTAwNjQ0CitpbmRleCAwMDAwMDAwMC4uOGMyNmEx MjIKKy0tLSAvZGV2L251bGwKKysrKyBiL3ZhcGkvQ2x1dHRlci02Lm1ldGFkYXRhCitAQCAtMCww ICsxLDIwNCBAQAorKy8vIE5vbiBtaW5pLW9iamVjdAorK0FjdG9yQm94IHN0cnVjdAorK0NvbG9y IHN0cnVjdAorK0ZvZyBzdHJ1Y3QKKytHZW9tZXRyeSBzdHJ1Y3QKKytLbm90IHN0cnVjdAorK1Bh dGhOb2RlIHN0cnVjdAorK1BlcnNwZWN0aXZlIHN0cnVjdAorK1VuaXRzIHN0cnVjdAorK1ZlcnRl eCBzdHJ1Y3QKKysKKysqLnJlZiB1bm93bmVkCisrCisraW5pdC5hcmd2IHVub3duZWQKKytpbml0 X3dpdGhfYXJncworKwkuYXJndiB1bm93bmVkCisrQWN0b3IKKysJLmFwcGx5X3RyYW5zZm9ybS5t YXRyaXggcmVmCisrCS5nZXRfYWJzX2FsbG9jYXRpb25fdmVydGljZXMudmVydHMgb3V0PWZhbHNl CisrCS5nZXRfYWxsb2NhdGlvbl92ZXJ0aWNlcy52ZXJ0cyBvdXQ9ZmFsc2UKKytDYW52YXMKKysJ Lm5ldyBzeW1ib2xfdHlwZT0iY29uc3RydWN0b3IiCisrRXZlbnQudHlwZSNtZXRob2QgbmFtZT0i Z2V0X3R5cGUiCisrSW1hZ2UKKysJLm5ldyBzeW1ib2xfdHlwZT0iY29uc3RydWN0b3IiCisrCisr Ly8gPz8/CisrQWN0b3IuaGFzX3BvaW50ZXIjbWV0aG9kIG5hbWU9ImdldF9oYXNfcG9pbnRlciIK KytJbml0RXJyb3IgZXJyb3Jkb21haW49ZmFsc2UKKysKKysvLyBOb3QgYWxsIGJhY2tpbmcgc3lt Ym9scyBhcmUgZGVwcmVjYXRlZAorK0FjdG9yLnBpY2sgZGVwcmVjYXRlZD1mYWxzZQorKworKy8v IE51bGxhYmxlIHJldHVybiB2YWx1ZXMKKytBY3RvcgorKwkuZ2V0X3BhcmVudCBudWxsYWJsZQor K3ZhbHVlX2dldF9jb2xvciBudWxsYWJsZQorKworKy8vIG1ldGhvZC92aXJ0dWFsLW1ldGhvZC9z aWduYWwgZG9uJ3QgbWF0Y2gKKytBY3RvcgorKwkuZXZlbnQjbWV0aG9kIG5hbWU9ImVtaXRfZXZl bnQiCisrCS5nZXRfcGFpbnRfdm9sdW1lI21ldGhvZCBza2lwCisrCS5xdWV1ZV9yZWRyYXcjc2ln bmFsIHNraXAKKysJLnF1ZXVlX3JlZHJhdyN2aXJ0dWFsX21ldGhvZCBza2lwCisrQ29udGFpbmVy CisrCS5hZGRfYWN0b3Igc2tpcD1mYWxzZQorK1RleHQKKysJLmFjdGl2YXRlI21ldGhvZCBuYW1l PSJ0cnlfYWN0aXZhdGUiCisrCS5pbnNlcnRfdGV4dCNzaWduYWwgc2tpcAorK1RleHRCdWZmZXIu Z2V0X3RleHQjdmlydHVhbF9tZXRob2QgbmFtZT0iZ2V0X3RleHRfd2l0aF9sZW5ndGgiCisrCisr Ly8gdmlydHVhbC9hYnN0cmFjdCBkaXN0aW5jdGlvbgorK0NvbnRhaW5lcgorKwkubG93ZXIgdmly dHVhbAorKwkucmFpc2UgdmlydHVhbAorKwkuKl9jaGlsZF9tZXRhI3ZpcnR1YWxfbWV0aG9kIHZp cnR1YWwKKysJLmZvcmVhY2hfd2l0aF9pbnRlcm5hbHMjdmlydHVhbF9tZXRob2QgdmlydHVhbAor KworKy8vIERlZmF1bHQgdmFsdWVzCisrQ29udGFpbmVyCisrCS5sb3dlci5zaWJsaW5nIG51bGxh YmxlIGRlZmF1bHQ9bnVsbAorKwkucmFpc2Uuc2libGluZyBudWxsYWJsZSBkZWZhdWx0PW51bGwK KytTdGFnZS5yZWFkX3BpeGVscworKwkud2lkdGggZGVmYXVsdD0tMQorKwkuaGVpZ2h0IGRlZmF1 bHQ9LTEKKytUZXh0CisrCS5wb3NpdGlvbl90b19jb29yZHMubGluZV9oZWlnaHQgZGVmYXVsdD1u dWxsCisrCisrLy8gUmVwYXJlbnRlZCBmdW5jcyBtZXRob2RzIGNhbid0IGJlIGluc3RhbmNlIG1l dGhvZHMKKytmZWF0dXJlX2F2YWlsYWJsZSBza2lwCisrZmVhdHVyZV9nZXRfYWxsIHNraXAKKysK KysvLyBTa2lwcGVkIGJ5IGctaSBmb3IgdW5rbm93biByZWFzb25zCisrTGF5b3V0TWFuYWdlcgor KwkuY3JlYXRlX2NoaWxkX21ldGEgc2tpcD1mYWxzZQorKworKy8vIFZhcmlhZGljIGFyZ3VtZW50 cworK0FjdG9yCisrCS5hbmltYXRlIHNraXA9ZmFsc2UKKysJLmFuaW1hdGVfd2l0aF9hbHBoYSBz a2lwPWZhbHNlCisrCS5hbmltYXRlX3dpdGhfdGltZWxpbmUgc2tpcD1mYWxzZQorK0JveAorKwku cGFjayBza2lwPWZhbHNlCisrCS5wYWNrX2FmdGVyIHNraXA9ZmFsc2UKKysJLnBhY2tfYXQgc2tp cD1mYWxzZQorKwkucGFja19iZWZvcmUgc2tpcD1mYWxzZQorK0NvbnRhaW5lcgorKwkuYWRkX3Zh bGlzdCBza2lwPWZhbHNlCisrCS5jaGlsZF9nZXQgc2tpcD1mYWxzZQorKwkuY2hpbGRfc2V0IHNr aXA9ZmFsc2UKKysJLnJlbW92ZSBza2lwPWZhbHNlCisrCS5yZW1vdmVfdmFsaXN0IHNraXA9ZmFs c2UKKytJbnRlcnZhbAorKwkubmV3IHNraXA9ZmFsc2UKKysJLmdldF9pbnRlcnZhbCBza2lwPWZh bHNlCisrCS5zZXRfZmluYWwgc2tpcD1mYWxzZQorKwkuc2V0X2luaXRpYWwgc2tpcD1mYWxzZQor Kwkuc2V0X2ludGVydmFsIHNraXA9ZmFsc2UKKytMYXlvdXRNYW5hZ2VyCisrCS5jaGlsZF9nZXQg c2tpcD1mYWxzZQorKwkuY2hpbGRfc2V0IHNraXA9ZmFsc2UKKytTY3JpcHQKKysJLmdldF9vYmpl Y3RzIHNraXA9ZmFsc2UKKysKKysvLyBDaGFuZ2luZyBlcnJvciBkb21haW5zCisrVGV4dHVyZQor KwkubmV3X2Zyb21fZmlsZSB0aHJvd3M9IkNsdXR0ZXIuVGV4dHVyZUVycm9yIgorKworKy8vIFNr aXBwZWQgdXBzdHJlYW0gZm9yIHVua25vd24gcmVhc29ucworK0FscGhhLnJlZ2lzdGVyX2Z1bmMg c2tpcD1mYWxzZQorK0ludGVydmFsLnJlZ2lzdGVyX3Byb2dyZXNzX2Z1bmMgc2tpcD1mYWxzZQor K2dldF9vcHRpb25fZ3JvdXAgc2tpcD1mYWxzZQorK2dldF9vcHRpb25fZ3JvdXBfd2l0aG91dF9p bml0IHNraXA9ZmFsc2UKKyt0aHJlYWRzX2FkZF9pZGxlIHNraXA9ZmFsc2UKKyt0aHJlYWRzX2Fk ZF9pZGxlX2Z1bGwgc2tpcD1mYWxzZQorK3RocmVhZHNfYWRkX3RpbWVvdXQgc2tpcD1mYWxzZQor K3RocmVhZHNfYWRkX3RpbWVvdXRfZnVsbCBza2lwPWZhbHNlCisrCisrLy8gc3RydWN0L2NsYXNz IGNvbmZ1c2lvbgorK0FjdG9yQm94CisrCS5uZXcgc2tpcAorKwkuZnJvbV92ZXJ0aWNlcyBza2lw CisrVW5pdHMuZnJvbV8qIHNraXAKKytDb2xvcgorKwkubmV3IHNraXAKKytWZXJ0ZXgubmV3IHNr aXAKKysKKysvLyBDbGFzcyBtZXRob2RzCisrY29udGFpbmVyX2NsYXNzX2ZpbmRfY2hpbGRfcHJv cGVydHkgc2tpcAorK2NvbnRhaW5lcl9jbGFzc19saXN0X2NoaWxkX3Byb3BlcnRpZXMgc2tpcAor KworKy8vIE1vdmUgc3ltYm9scworK2dldF9hY3Rvcl9ieV9naWQgcGFyZW50PSJDbHV0dGVyLkFj dG9yIiBuYW1lPSJnZXRfYnlfZ2lkIgorK3VuaXRzX2Zyb21fKiBza2lwCisrCisrLy8gQ2xhc3Nl cyBtYXJrZWQgYXMgb3V0IGJ1dCBub3QgZG91YmxlIHB0cgorK0FjdG9yCisrCS5nZXRfbWFyZ2lu Lm1hcmdpbiBvdXQ9ZmFsc2UKKytEcmFnQWN0aW9uCisrCS5nZXRfZHJhZ19hcmVhLmRyYWdfYXJl YSBvdXQ9ZmFsc2UKKytJbnB1dERldmljZQorKwkuZ2V0X2Nvb3Jkcy5wb2ludCBvdXQ9ZmFsc2UK KytSZWN0CisrCS5nZXRfY2VudGVyLmNlbnRlciBvdXQ9ZmFsc2UKKysJLmludGVyc2VjdGlvbi5y ZXMgb3V0PWZhbHNlCisrCS51bmlvbi5yZXMgb3V0PWZhbHNlCisrVGltZWxpbmUKKysJLmdldF9j dWJpY19iZXppZXJfcHJvZ3Jlc3MuY18qIG91dD1mYWxzZQorK1pvb21BY3Rpb24KKysJLmdldF9m b2NhbF9wb2ludC5wb2ludCBvdXQ9ZmFsc2UKKysJLmdldF90cmFuc2Zvcm1lZF9mb2NhbF9wb2lu dC5wb2ludCBvdXQ9ZmFsc2UKKysKKysvLyBTdHJ1Y3QgcmV0dXJuIHZhbHVlcworK2NvbG9yX2dl dF9zdGF0aWMgbnVsbGFibGUKKysKKysvLyBSZW1vdmUgZm9yIGNsdXR0ZXItMi4wCisrLy8vLy8v Ly8vLy8vLy8vLy8vLy8vLy8vLworKworK1N0YWdlCisrIAkuZXZlbnQgbmFtZT0iZW1pdF9ldmVu dCIKKysKKysvLyAqRXZlbnQgc2hvdWxkIGJlIGNvbXBhY3QgY2xhc3NlcyBkZXJpdmVkIGZyb20g Q2x1dHRlci5FdmVudAorK0V2ZW50LnR5cGUgc2tpcD1mYWxzZQorK0FueUV2ZW50IHN0cnVjdD1m YWxzZSBiYXNlX3R5cGU9IkNsdXR0ZXIuRXZlbnQiCisrQnV0dG9uRXZlbnQgc3RydWN0PWZhbHNl IGJhc2VfdHlwZT0iQ2x1dHRlci5FdmVudCIKKytDcm9zc2luZ0V2ZW50IHN0cnVjdD1mYWxzZSBi YXNlX3R5cGU9IkNsdXR0ZXIuRXZlbnQiCisrS2V5RXZlbnQgc3RydWN0PWZhbHNlIGJhc2VfdHlw ZT0iQ2x1dHRlci5FdmVudCIKKytNb3Rpb25FdmVudCBzdHJ1Y3Q9ZmFsc2UgYmFzZV90eXBlPSJD bHV0dGVyLkV2ZW50IgorK1Njcm9sbEV2ZW50IHN0cnVjdD1mYWxzZSBiYXNlX3R5cGU9IkNsdXR0 ZXIuRXZlbnQiCisrU3RhZ2VTdGF0ZUV2ZW50IHN0cnVjdD1mYWxzZSBiYXNlX3R5cGU9IkNsdXR0 ZXIuRXZlbnQiCisrVG91Y2hFdmVudCBzdHJ1Y3Q9ZmFsc2UgYmFzZV90eXBlPSJDbHV0dGVyLkV2 ZW50IgorK1RvdWNocGFkUGluY2hFdmVudCBzdHJ1Y3Q9ZmFsc2UgYmFzZV90eXBlPSJDbHV0dGVy LkV2ZW50IgorK1RvdWNocGFkU3dpcGVFdmVudCBzdHJ1Y3Q9ZmFsc2UgYmFzZV90eXBlPSJDbHV0 dGVyLkV2ZW50IgorKworKy8vIEtleXN5bXMgdXNlZCB0byBiZSBDTFVUVEVSX1ggaW5zdGVhZCBv ZiBDTFVUVEVSX0tFWV9YCisrKiNjb25zdGFudCBza2lwCisrQ09HTCBza2lwPWZhbHNlCisrQ1VS UkVOVF9USU1FIHNraXA9ZmFsc2UKKytGTEFWT1VSIHNraXA9ZmFsc2UKKytQQVRIX1JFTEFUSVZF IHNraXA9ZmFsc2UKKytQUklPUklUWV9SRURSQVcgc2tpcD1mYWxzZQorKworKy8vIENsdXR0ZXIg ZGV2cyBkb24ndCBsaWtlIHVzIGNyZWF0aW5nIG5lc3RlZCBuYW1lc3BhY2VzCisrdmFsdWVfKiBu YW1lPSJ2YWx1ZV8oLispIiBwYXJlbnQ9IkNsdXR0ZXIuVmFsdWUiCisrdGhyZWFkc18qIG5hbWU9 InRocmVhZHNfKC4rKSIgcGFyZW50PSJDbHV0dGVyLlRocmVhZHMiCisrdGhyZWFkc19hZGRfaWRs ZSBuYW1lPSJhZGQiIHBhcmVudD0iQ2x1dHRlci5UaHJlYWRzLklkbGUiCisrdGhyZWFkc19hZGRf aWRsZV9mdWxsIG5hbWU9ImFkZF9mdWxsIiBwYXJlbnQ9IkNsdXR0ZXIuVGhyZWFkcy5JZGxlIgor K3RocmVhZHNfYWRkX3RpbWVvdXQgbmFtZT0iYWRkIiBwYXJlbnQ9IkNsdXR0ZXIuVGhyZWFkcy5U aW1lb3V0IgorK3RocmVhZHNfYWRkX3RpbWVvdXRfZnVsbCBuYW1lPSJhZGRfZnVsbCIgcGFyZW50 PSJDbHV0dGVyLlRocmVhZHMuVGltZW91dCIKKysKKysvLyBCYWNrd2FyZHMgY29tcGF0aWJpbGl0 eQorK0NvbG9yLmFsbG9jIHN5bWJvbF90eXBlPSJmdW5jdGlvbiIKKytQb2ludC5hbGxvYyBzeW1i b2xfdHlwZT0iZnVuY3Rpb24iCisrUmVjdC5hbGxvYyBzeW1ib2xfdHlwZT0iZnVuY3Rpb24iCisr U2l6ZS5hbGxvYyBzeW1ib2xfdHlwZT0iZnVuY3Rpb24iCisrVmVydGV4LmFsbG9jIHN5bWJvbF90 eXBlPSJmdW5jdGlvbiIKKysKKytCaW5BbGlnbm1lbnQgZGVwcmVjYXRlZD1mYWxzZSBkZXByZWNh dGVkX3NpbmNlPW51bGwKKytCaW5BbGlnbm1lbnQuKiBkZXByZWNhdGVkCisrQmluQWxpZ25tZW50 LnN0YXJ0IGRlcHJlY2F0ZWQ9ZmFsc2UKKytCaW5MYXlvdXQubmV3LipfYWxpZ24gZGVmYXVsdD1D bHV0dGVyLkJpbkFsaWdubWVudC5TVEFSVAorKworKy8vIFBvc3NpYmx5IGtlZXAKKytLRVlfKiBz a2lwPWZhbHNlIG5hbWU9IktFWV8oLispIiB0eXBlPSJ1aW50IiBwYXJlbnQ9IkNsdXR0ZXIuS2V5 IgorZGlmZiAtLWdpdCBhL3ZhcGkvQ29nbC02Lm1ldGFkYXRhIGIvdmFwaS9Db2dsLTYubWV0YWRh dGEKK25ldyBmaWxlIG1vZGUgMTAwNjQ0CitpbmRleCAwMDAwMDAwMC4uMDkyYjVlMjkKKy0tLSAv ZGV2L251bGwKKysrKyBiL3ZhcGkvQ29nbC02Lm1ldGFkYXRhCitAQCAtMCwwICsxLDI3IEBACisr Q29nbCBjaGVhZGVyX2ZpbGVuYW1lPSJjb2dsL2NvZ2wuaCIKKysKKytDb2xvciBzdHJ1Y3QKKysg IC5uZXcgc2tpcAorKyAgLmZyZWUgc2tpcAorKworK2NyZWF0ZV9wcm9ncmFtIHNraXAKKytjcmVh dGVfc2hhZGVyIHNraXAKKysKKysKKytpc19iaXRtYXAgc2tpcAorK2lzX21hdGVyaWFsIHNraXAK Kytpc19vZmZzY3JlZW4gc2tpcAorK2lzX3Byb2dyYW0gc2tpcAorK2lzX3NoYWRlciBza2lwCisr aXNfdGV4dHVyZSBza2lwCisraXNfdmVydGV4X2J1ZmZlciBza2lwCisrCisrTWF0cml4IHN0cnVj dAorKyAgLmdldF9hcnJheSBhcnJheT10cnVlIGFycmF5X2xlbmd0aF9pZHg9LTEKKysgIC5nZXRf aW52ZXJzZS5pbnZlcnNlIG91dD10cnVlCisrICAubXVsdGlwbHkgc2tpcAorKyAgLmluaXRfZnJv bV9hcnJheSBza2lwCisrICAuaW5pdF9pZGVudGl0eSBza2lwCisrICAudHJhbnNmb3JtX3BvaW50 LiogcmVmPXRydWUKKysKKytwcm9ncmFtXyogc2tpcAorZGlmZiAtLWdpdCBhL3ZhcGkvTWV0YS02 Lm1ldGFkYXRhIGIvdmFwaS9NZXRhLTYubWV0YWRhdGEKK25ldyBmaWxlIG1vZGUgMTAwNjQ0Citp bmRleCAwMDAwMDAwMC4uMWQ5ODQ3NzgKKy0tLSAvZGV2L251bGwKKysrKyBiL3ZhcGkvTWV0YS02 Lm1ldGFkYXRhCitAQCAtMCwwICsxLDgwIEBACisrQmFja2VuZCBjaGVhZGVyX2ZpbGVuYW1lPSJt ZXRhL21ldGEtYmFja2VuZC5oIgorK0JhY2tncm91bmQgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9t ZXRhLWJhY2tncm91bmQuaCIKKytCYWNrZ3JvdW5kQWN0b3IgY2hlYWRlcl9maWxlbmFtZT0ibWV0 YS9tZXRhLWJhY2tncm91bmQtYWN0b3IuaCIKKytCYWNrZ3JvdW5kR3JvdXAgY2hlYWRlcl9maWxl bmFtZT0ibWV0YS9tZXRhLWJhY2tncm91bmQtZ3JvdXAuaCIKKytCYWNrZ3JvdW5kSW1hZ2UgY2hl YWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLWJhY2tncm91bmQtaW1hZ2UuaCIKKytCYWNrZ3JvdW5k SW1hZ2VDYWNoZSBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtYmFja2dyb3VuZC1pbWFnZS5o IgorK0JhcnJpZXIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9iYXJyaWVyLmgiCisrQmFycmllckV2 ZW50IGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvYmFycmllci5oIgorK0Nsb3NlRGlhbG9nIGNoZWFk ZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1jbG9zZS1kaWFsb2cuaCIKKytDdXJzb3JUcmFja2VyIGNo ZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1jdXJzb3ItdHJhY2tlci5oIgorK0Rpc3BsYXkgY2hl YWRlcl9maWxlbmFtZT0ibWV0YS9kaXNwbGF5LmgiCisrRG5kIGNoZWFkZXJfZmlsZW5hbWU9Im1l dGEvbWV0YS1kbmQuaCIKKytJZGxlTW9uaXRvciBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEt aWRsZS1tb25pdG9yLmgiCisrSW5oaWJpdFNob3J0Y3V0c0RpYWxvZyBjaGVhZGVyX2ZpbGVuYW1l PSJtZXRhL21ldGEtaW5oaWJpdC1zaG9ydGN1dHMtZGlhbG9nLmgiCisrTGF1bmNoQ29udGV4dCBj aGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtbGF1bmNoLWNvbnRleHQuaCIKKytNZXRhIGNoZWFk ZXJfZmlsZW5hbWU9Im1ldGEvbWFpbi5oIgorK01vbml0b3JNYW5hZ2VyIGNoZWFkZXJfZmlsZW5h bWU9Im1ldGEvbWV0YS1tb25pdG9yLW1hbmFnZXIuaCIKKytQcmVmZXJlbmNlIGNoZWFkZXJfZmls ZW5hbWU9Im1ldGEvcHJlZnMuaCIKKytSZW1vdGVBY2Nlc3NDb250cm9sbGVyIGNoZWFkZXJfZmls ZW5hbWU9Im1ldGEvbWV0YS1yZW1vdGUtYWNjZXNzLWNvbnRyb2xsZXIuaCIKKytSZW1vdGVBY2Nl c3NIYW5kbGUgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLXJlbW90ZS1hY2Nlc3MtY29udHJv bGxlci5oIgorK1NldHRpbmdzIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1zZXR0aW5ncy5o IgorK1NoYWRvd0ZhY3RvcnkgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLXNoYWRvdy1mYWN0 b3J5LmgiCisrU2hhcGVkVGV4dHVyZSBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtc2hhcGVk LXRleHR1cmUuaCIKKytTb3VuZFBsYXllciBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtc291 bmQtcGxheWVyLmgiCisrU3RhZ2UgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLXN0YWdlLmgi CisrU3RhcnR1cE5vdGlmaWNhdGlvbiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtc3RhcnR1 cC1ub3RpZmljYXRpb24uaCIKKytUaGVtZSBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3RoZW1lLmgi CisrV2luZG93IGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvd2luZG93LmgiCisrV2luZG93QWN0b3Ig Y2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLXdpbmRvdy1hY3Rvci5oIgorK1dpbmRvd0dyb3Vw IGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS13aW5kb3ctZ3JvdXAuaCIKKytXaW5kb3dTaGFw ZSBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtd2luZG93LXNoYXBlLmgiCisrV29ya3NwYWNl IGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvd29ya3NwYWNlLmgiCisrV29ya3NwYWNlTWFuYWdlciBj aGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtd29ya3NwYWNlLW1hbmFnZXIuaCIKKytYMTFEaXNw bGF5IGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS14MTEtZGlzcGxheS5oIgorK1JlY3Rhbmds ZSBzdHJ1Y3QKKytQbHVnaW4gY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLXBsdWdpbi5oIgor K1BsdWdpbkluZm8gY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLXBsdWdpbi5oIgorK3ByZWZz XyogY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9wcmVmcy5oIiBwYXJlbnQ9Ik1ldGEuUHJlZnMiCisr YWRkX3ZlcmJvc2VfdG9waWMgcGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1l dGEvdXRpbC5oIgorK3gxMV9lcnJvcl90cmFwX3BvcCBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hlYWRl cl9maWxlbmFtZT0ibWV0YS91dGlsLmgiCisreDExX2Vycm9yX3RyYXBfcHVzaCBwYXJlbnQ9Ik1l dGEuVXRpbCIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS91dGlsLmgiCisreDExX2Vycm9yX3RyYXBf cG9wX3dpdGhfcmV0dXJuIHBhcmVudD0iTWV0YS5VdGlsIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRh L3V0aWwuaCIKKytleHRlcm5hbF9iaW5kaW5nX25hbWVfZm9yX2FjdGlvbiBwYXJlbnQ9Ik1ldGEu VXRpbCIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS91dGlsLmgiCisrZ2V0X2xvY2FsZV9kaXJlY3Rp b24gcGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvdXRpbC5oIgorK2dy YXZpdHlfdG9fc3RyaW5nIHBhcmVudD0iTWV0YS5VdGlsIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRh L3V0aWwuaCIKKytpc19kZWJ1Z2dpbmcgcGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5h bWU9Im1ldGEvdXRpbC5oIgorK2lzX3N5bmNpbmcgcGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJf ZmlsZW5hbWU9Im1ldGEvdXRpbC5oIgorK2lzX3ZlcmJvc2UgcGFyZW50PSJNZXRhLlV0aWwiIGNo ZWFkZXJfZmlsZW5hbWU9Im1ldGEvdXRpbC5oIgorK2lzX3dheWxhbmRfY29tcG9zaXRvciBwYXJl bnQ9Ik1ldGEuVXRpbCIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS91dGlsLmgiCisrbGF0ZXJfYWRk IHBhcmVudD0iTWV0YS5VdGlsIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIKKytsYXRl cl9yZW1vdmUgcGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvdXRpbC5o IgorK3BvcF9ub19tc2dfcHJlZml4IHBhcmVudD0iTWV0YS5VdGlsIiBjaGVhZGVyX2ZpbGVuYW1l PSJtZXRhL3V0aWwuaCIKKytwdXNoX25vX21zZ19wcmVmaXggcGFyZW50PSJNZXRhLlV0aWwiIGNo ZWFkZXJfZmlsZW5hbWU9Im1ldGEvdXRpbC5oIgorK3JlY3QgcGFyZW50PSJNZXRhLlV0aWwiIGNo ZWFkZXJfZmlsZW5hbWU9Im1ldGEvdXRpbC5oIgorK3JlbW92ZV92ZXJib3NlX3RvcGljIHBhcmVu dD0iTWV0YS5VdGlsIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIKKyt1bnNpZ25lZF9s b25nX2VxdWFsIHBhcmVudD0iTWV0YS5VdGlsIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwu aCIKKyt1bnNpZ25lZF9sb25nX2hhc2ggcGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5h bWU9Im1ldGEvdXRpbC5oIgorK3Nob3dfZGlhbG9nIHBhcmVudD0iTWV0YS5VdGlsIiBjaGVhZGVy X2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIKKytnZXRfc3RhZ2VfZm9yX2Rpc3BsYXkgcGFyZW50PSJN ZXRhLkNvbXBvc2l0b3IiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvY29tcG9zaXRvci1tdXR0ZXIu aCIKKytnZXRfd2luZG93X2FjdG9ycyBwYXJlbnQ9Ik1ldGEuQ29tcG9zaXRvciIgY2hlYWRlcl9m aWxlbmFtZT0ibWV0YS9jb21wb3NpdG9yLW11dHRlci5oIgorK2dldF93aW5kb3dfZ3JvdXBfZm9y X2Rpc3BsYXkgcGFyZW50PSJNZXRhLkNvbXBvc2l0b3IiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEv Y29tcG9zaXRvci1tdXR0ZXIuaCIKKytnZXRfdG9wX3dpbmRvd19ncm91cF9mb3JfZGlzcGxheSBw YXJlbnQ9Ik1ldGEuQ29tcG9zaXRvciIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9jb21wb3NpdG9y LW11dHRlci5oIgorK2dldF9mZWVkYmFja19ncm91cF9mb3JfZGlzcGxheSBwYXJlbnQ9Ik1ldGEu Q29tcG9zaXRvciIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9jb21wb3NpdG9yLW11dHRlci5oIgor K2Rpc2FibGVfdW5yZWRpcmVjdF9mb3JfZGlzcGxheSBwYXJlbnQ9Ik1ldGEuQ29tcG9zaXRvciIg Y2hlYWRlcl9maWxlbmFtZT0ibWV0YS9jb21wb3NpdG9yLW11dHRlci5oIgorK2VuYWJsZV91bnJl ZGlyZWN0X2Zvcl9kaXNwbGF5IHBhcmVudD0iTWV0YS5Db21wb3NpdG9yIiBjaGVhZGVyX2ZpbGVu YW1lPSJtZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgiCisrc2V0X3N0YWdlX2lucHV0X3JlZ2lvbiBw YXJlbnQ9Ik1ldGEuQ29tcG9zaXRvciIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9jb21wb3NpdG9y LW11dHRlci5oIgorK2VtcHR5X3N0YWdlX2lucHV0X3JlZ2lvbiBwYXJlbnQ9Ik1ldGEuQ29tcG9z aXRvciIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9jb21wb3NpdG9yLW11dHRlci5oIgorK2ZvY3Vz X3N0YWdlX3dpbmRvdyBwYXJlbnQ9Ik1ldGEuQ29tcG9zaXRvciIgY2hlYWRlcl9maWxlbmFtZT0i bWV0YS9jb21wb3NpdG9yLW11dHRlci5oIgorK2tleWJpbmRpbmdzX3NldF9jdXN0b21faGFuZGxl ciBwYXJlbnQ9Ik1ldGEuS2V5QmluZGluZyIgbmFtZT0ic2V0X2N1c3RvbV9oYW5kbGVyIgorK0tl eUhhbmRsZXJGdW5jLmV2ZW50IHR5cGU9IkNsdXR0ZXIuS2V5RXZlbnQ/IgorK2dldF9iYWNrZW5k IHBhcmVudD0iTWV0YS5CYWNrZW5kIgorK1dpbmRvdy5mb2N1cyNzaWduYWwgc2tpcD10cnVlCisr V2luZG93LmdldF94d2luZG93IHNraXA9ZmFsc2UKKytnZXRfb3B0aW9uX2NvbnRleHQgc2tpcD1m YWxzZQorK3NldF9nbm9tZV93bV9rZXliaW5kaW5ncyBza2lwPWZhbHNlCisrc2V0X3dtX25hbWUg c2tpcD1mYWxzZQorK2luaXQgc2tpcD1mYWxzZQorK3J1biBza2lwPWZhbHNlCisrc2hvd19kaWFs b2cgc2tpcD1mYWxzZQorK2dldF9iYWNrZW5kIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1i YWNrZW5kLmgiCitkaWZmIC0tZ2l0IGEvdmFwaS9ncmFwaGVuZS1nb2JqZWN0LTEuMC52YXBpIGIv dmFwaS9ncmFwaGVuZS1nb2JqZWN0LTEuMC52YXBpCituZXcgZmlsZSBtb2RlIDEwMDY0NAoraW5k ZXggMDAwMDAwMDAuLjY5ODAxNTM1CistLS0gL2Rldi9udWxsCisrKysgYi92YXBpL2dyYXBoZW5l LWdvYmplY3QtMS4wLnZhcGkKK0BAIC0wLDAgKzEsNjkxIEBACisrLyogZ3JhcGhlbmUtZ29iamVj dC0xLjAudmFwaSBnZW5lcmF0ZWQgYnkgdmFwaWdlbiwgZG8gbm90IG1vZGlmeS4gKi8KKysKKytb Q0NvZGUgKGNwcmVmaXggPSAiR3JhcGhlbmUiLCBnaXJfbmFtZXNwYWNlID0gIkdyYXBoZW5lIiwg Z2lyX3ZlcnNpb24gPSAiMS4wIiwgbG93ZXJfY2FzZV9jcHJlZml4ID0gImdyYXBoZW5lXyIpXQor K25hbWVzcGFjZSBHcmFwaGVuZSB7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFw aGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJncmFwaGVuZV9ib3hfdCIsIHR5cGVfaWQgPSAiZ3Jh cGhlbmVfYm94X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJ cHVibGljIHN0cnVjdCBCb3ggeworKwkJcHVibGljIGJvb2wgY29udGFpbnNfYm94IChHcmFwaGVu ZS5Cb3ggYik7CisrCQlwdWJsaWMgYm9vbCBjb250YWluc19wb2ludCAoR3JhcGhlbmUuUG9pbnQz RCBwb2ludCk7CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuQm94PyBlbXB0eSAo KTsKKysJCXB1YmxpYyBib29sIGVxdWFsIChHcmFwaGVuZS5Cb3ggYik7CisrCQlwdWJsaWMgR3Jh cGhlbmUuQm94IGV4cGFuZCAoR3JhcGhlbmUuUG9pbnQzRCBwb2ludCk7CisrCQlwdWJsaWMgR3Jh cGhlbmUuQm94IGV4cGFuZF9zY2FsYXIgKGZsb2F0IHNjYWxhcik7CisrCQlwdWJsaWMgR3JhcGhl bmUuQm94IGV4cGFuZF92ZWMzIChHcmFwaGVuZS5WZWMzIHZlYyk7CisrCQlwdWJsaWMgR3JhcGhl bmUuU3BoZXJlIGdldF9ib3VuZGluZ19zcGhlcmUgKCk7CisrCQlwdWJsaWMgR3JhcGhlbmUuUG9p bnQzRCBnZXRfY2VudGVyICgpOworKwkJcHVibGljIGZsb2F0IGdldF9kZXB0aCAoKTsKKysJCXB1 YmxpYyBmbG9hdCBnZXRfaGVpZ2h0ICgpOworKwkJcHVibGljIEdyYXBoZW5lLlBvaW50M0QgZ2V0 X21heCAoKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludDNEIGdldF9taW4gKCk7CisrCQlwdWJs aWMgR3JhcGhlbmUuVmVjMyBnZXRfc2l6ZSAoKTsKKysJCXB1YmxpYyB2b2lkIGdldF92ZXJ0aWNl cyAoW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIHJlZiBHcmFwaGVuZS5WZWMzIHZlcnRp Y2VzWzhdKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfd2lkdGggKCk7CisrCQlwdWJsaWMgc3RhdGlj IHVub3duZWQgR3JhcGhlbmUuQm94PyBpbmZpbml0ZSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIEdy YXBoZW5lLkJveD8gaW5pdCAoR3JhcGhlbmUuUG9pbnQzRD8gbWluLCBHcmFwaGVuZS5Qb2ludDNE PyBtYXgpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuQm94PyBpbml0X2Zyb21fYm94IChH cmFwaGVuZS5Cb3ggc3JjKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLkJveD8gaW5pdF9m cm9tX3BvaW50cyAoW0NDb2RlIChhcnJheV9sZW5ndGhfY25hbWUgPSAibl9wb2ludHMiLCBhcnJh eV9sZW5ndGhfcG9zID0gMC41LCBhcnJheV9sZW5ndGhfdHlwZSA9ICJndWludCIpXSBHcmFwaGVu ZS5Qb2ludDNEW10gcG9pbnRzKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLkJveD8gaW5p dF9mcm9tX3ZlYzMgKEdyYXBoZW5lLlZlYzM/IG1pbiwgR3JhcGhlbmUuVmVjMz8gbWF4KTsKKysJ CXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLkJveD8gaW5pdF9mcm9tX3ZlY3RvcnMgKFtDQ29kZSAo YXJyYXlfbGVuZ3RoX2NuYW1lID0gIm5fdmVjdG9ycyIsIGFycmF5X2xlbmd0aF9wb3MgPSAwLjUs IGFycmF5X2xlbmd0aF90eXBlID0gImd1aW50IildIEdyYXBoZW5lLlZlYzNbXSB2ZWN0b3JzKTsK KysJCXB1YmxpYyBib29sIGludGVyc2VjdGlvbiAoR3JhcGhlbmUuQm94IGIsIG91dCBHcmFwaGVu ZS5Cb3ggcmVzKTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5Cb3g/IG1pbnVz X29uZSAoKTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5Cb3g/IG9uZSAoKTsK KysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5Cb3g/IG9uZV9taW51c19vbmUgKCk7 CisrCQlwdWJsaWMgR3JhcGhlbmUuQm94IHVuaW9uIChHcmFwaGVuZS5Cb3ggYik7CisrCQlwdWJs aWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuQm94PyB6ZXJvICgpOworKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJncmFwaGVu ZV9ldWxlcl90IiwgdHlwZV9pZCA9ICJncmFwaGVuZV9ldWxlcl9nZXRfdHlwZSAoKSIpXQorKwlb VmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBzdHJ1Y3QgRXVsZXIgeworKwkJcHVi bGljIGJvb2wgZXF1YWwgKEdyYXBoZW5lLkV1bGVyIGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfYWxwaGEgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF9iZXRhICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfZ2FtbWEgKCk7CisrCQlwdWJs aWMgR3JhcGhlbmUuRXVsZXJPcmRlciBnZXRfb3JkZXIgKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0 X3ggKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X3kgKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X3og KCk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5FdWxlcj8gaW5pdCAoZmxvYXQgeCwgZmxv YXQgeSwgZmxvYXQgeik7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5FdWxlcj8gaW5pdF9m cm9tX2V1bGVyIChHcmFwaGVuZS5FdWxlcj8gc3JjKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBo ZW5lLkV1bGVyPyBpbml0X2Zyb21fbWF0cml4IChHcmFwaGVuZS5NYXRyaXg/IG0sIEdyYXBoZW5l LkV1bGVyT3JkZXIgb3JkZXIpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuRXVsZXI/IGlu aXRfZnJvbV9xdWF0ZXJuaW9uIChHcmFwaGVuZS5RdWF0ZXJuaW9uPyBxLCBHcmFwaGVuZS5FdWxl ck9yZGVyIG9yZGVyKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMg dW5vd25lZCBHcmFwaGVuZS5FdWxlcj8gaW5pdF9mcm9tX3JhZGlhbnMgKGZsb2F0IHgsIGZsb2F0 IHksIGZsb2F0IHosIEdyYXBoZW5lLkV1bGVyT3JkZXIgb3JkZXIpOworKwkJcHVibGljIHVub3du ZWQgR3JhcGhlbmUuRXVsZXI/IGluaXRfZnJvbV92ZWMzIChHcmFwaGVuZS5WZWMzPyB2LCBHcmFw aGVuZS5FdWxlck9yZGVyIG9yZGVyKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLkV1bGVy PyBpbml0X3dpdGhfb3JkZXIgKGZsb2F0IHgsIGZsb2F0IHksIGZsb2F0IHosIEdyYXBoZW5lLkV1 bGVyT3JkZXIgb3JkZXIpOworKwkJcHVibGljIEdyYXBoZW5lLkV1bGVyIHJlb3JkZXIgKEdyYXBo ZW5lLkV1bGVyT3JkZXIgb3JkZXIpOworKwkJcHVibGljIEdyYXBoZW5lLk1hdHJpeCB0b19tYXRy aXggKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIEdyYXBoZW5l LlF1YXRlcm5pb24gdG9fcXVhdGVybmlvbiAoKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMzIHRv X3ZlYzMgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdv YmplY3QuaCIsIGNuYW1lID0gImdyYXBoZW5lX2ZydXN0dW1fdCIsIHR5cGVfaWQgPSAiZ3JhcGhl bmVfZnJ1c3R1bV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisr CXB1YmxpYyBzdHJ1Y3QgRnJ1c3R1bSB7CisrCQlwdWJsaWMgYm9vbCBjb250YWluc19wb2ludCAo R3JhcGhlbmUuUG9pbnQzRCBwb2ludCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisr CQlwdWJsaWMgYm9vbCBlcXVhbCAoR3JhcGhlbmUuRnJ1c3R1bSBiKTsKKysJCXB1YmxpYyB2b2lk IGdldF9wbGFuZXMgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSByZWYgR3JhcGhlbmUu UGxhbmUgcGxhbmVzWzZdKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLkZydXN0dW0/IGlu aXQgKEdyYXBoZW5lLlBsYW5lIHAwLCBHcmFwaGVuZS5QbGFuZSBwMSwgR3JhcGhlbmUuUGxhbmUg cDIsIEdyYXBoZW5lLlBsYW5lIHAzLCBHcmFwaGVuZS5QbGFuZSBwNCwgR3JhcGhlbmUuUGxhbmUg cDUpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuRnJ1c3R1bT8gaW5pdF9mcm9tX2ZydXN0 dW0gKEdyYXBoZW5lLkZydXN0dW0gc3JjKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLkZy dXN0dW0/IGluaXRfZnJvbV9tYXRyaXggKEdyYXBoZW5lLk1hdHJpeCBtYXRyaXgpOworKwkJcHVi bGljIGJvb2wgaW50ZXJzZWN0c19ib3ggKEdyYXBoZW5lLkJveCBib3gpOworKwkJcHVibGljIGJv b2wgaW50ZXJzZWN0c19zcGhlcmUgKEdyYXBoZW5lLlNwaGVyZSBzcGhlcmUpOworKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJn cmFwaGVuZV9tYXRyaXhfdCIsIHR5cGVfaWQgPSAiZ3JhcGhlbmVfbWF0cml4X2dldF90eXBlICgp IildCisrCXB1YmxpYyBzdHJ1Y3QgTWF0cml4IHsKKysJCXB1YmxpYyBib29sIGRlY29tcG9zZSAo b3V0IEdyYXBoZW5lLlZlYzMgdHJhbnNsYXRlLCBvdXQgR3JhcGhlbmUuVmVjMyBzY2FsZSwgb3V0 IEdyYXBoZW5lLlF1YXRlcm5pb24gcm90YXRlLCBvdXQgR3JhcGhlbmUuVmVjMyBzaGVhciwgb3V0 IEdyYXBoZW5lLlZlYzQgcGVyc3BlY3RpdmUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIp XQorKwkJcHVibGljIGZsb2F0IGRldGVybWluYW50ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyBib29sIGVxdWFsIChHcmFwaGVuZS5NYXRyaXggYik7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGJvb2wgZXF1YWxfZmFzdCAoR3Jh cGhlbmUuTWF0cml4IGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGlj IEdyYXBoZW5lLlZlYzQgZ2V0X3JvdyAodWludCBpbmRleF8pOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF92YWx1ZSAodWludCByb3csIHVpbnQgY29s KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfeF9z Y2FsZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgZmxvYXQg Z2V0X3hfdHJhbnNsYXRpb24gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlw dWJsaWMgZmxvYXQgZ2V0X3lfc2NhbGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIp XQorKwkJcHVibGljIGZsb2F0IGdldF95X3RyYW5zbGF0aW9uICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF96X3NjYWxlICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfel90cmFuc2xhdGlvbiAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBo ZW5lLk1hdHJpeD8gaW5pdF9mcm9tXzJkIChkb3VibGUgeHgsIGRvdWJsZSB5eCwgZG91YmxlIHh5 LCBkb3VibGUgeXksIGRvdWJsZSB4XzAsIGRvdWJsZSB5XzApOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuTWF0cml4PyBpbml0X2Zyb21f ZmxvYXQgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSBmbG9hdCB2WzE2XSk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5NYXRy aXg/IGluaXRfZnJvbV9tYXRyaXggKEdyYXBoZW5lLk1hdHJpeCBzcmMpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuTWF0cml4PyBpbml0 X2Zyb21fdmVjNCAoR3JhcGhlbmUuVmVjNCB2MCwgR3JhcGhlbmUuVmVjNCB2MSwgR3JhcGhlbmUu VmVjNCB2MiwgR3JhcGhlbmUuVmVjNCB2Myk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIild CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5NYXRyaXg/IGluaXRfZnJ1c3R1bSAoZmxvYXQg bGVmdCwgZmxvYXQgcmlnaHQsIGZsb2F0IGJvdHRvbSwgZmxvYXQgdG9wLCBmbG9hdCB6X25lYXIs IGZsb2F0IHpfZmFyKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1 bm93bmVkIEdyYXBoZW5lLk1hdHJpeD8gaW5pdF9pZGVudGl0eSAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLk1hdHJpeD8gaW5pdF9s b29rX2F0IChHcmFwaGVuZS5WZWMzIGV5ZSwgR3JhcGhlbmUuVmVjMyBjZW50ZXIsIEdyYXBoZW5l LlZlYzMgdXApOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3du ZWQgR3JhcGhlbmUuTWF0cml4PyBpbml0X29ydGhvIChmbG9hdCBsZWZ0LCBmbG9hdCByaWdodCwg ZmxvYXQgdG9wLCBmbG9hdCBib3R0b20sIGZsb2F0IHpfbmVhciwgZmxvYXQgel9mYXIpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuTWF0 cml4PyBpbml0X3BlcnNwZWN0aXZlIChmbG9hdCBmb3Z5LCBmbG9hdCBhc3BlY3QsIGZsb2F0IHpf bmVhciwgZmxvYXQgel9mYXIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVi bGljIHVub3duZWQgR3JhcGhlbmUuTWF0cml4PyBpbml0X3JvdGF0ZSAoZmxvYXQgYW5nbGUsIEdy YXBoZW5lLlZlYzMgYXhpcyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJs aWMgdW5vd25lZCBHcmFwaGVuZS5NYXRyaXg/IGluaXRfc2NhbGUgKGZsb2F0IHgsIGZsb2F0IHks IGZsb2F0IHopOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3du ZWQgR3JhcGhlbmUuTWF0cml4PyBpbml0X3NrZXcgKGZsb2F0IHhfc2tldywgZmxvYXQgeV9za2V3 KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBo ZW5lLk1hdHJpeD8gaW5pdF90cmFuc2xhdGUgKEdyYXBoZW5lLlBvaW50M0QgcCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuTWF0cml4IGludGVycG9s YXRlIChHcmFwaGVuZS5NYXRyaXggYiwgZG91YmxlIGZhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCQlwdWJsaWMgYm9vbCBpbnZlcnNlIChvdXQgR3JhcGhlbmUuTWF0cml4 IHJlcyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgYm9vbCBpc18y ZCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBib29sIGlzX2Jh Y2tmYWNlX3Zpc2libGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJs aWMgYm9vbCBpc19pZGVudGl0eSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJ CXB1YmxpYyBib29sIGlzX3Npbmd1bGFyICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIp XQorKwkJcHVibGljIEdyYXBoZW5lLk1hdHJpeCBtdWx0aXBseSAoR3JhcGhlbmUuTWF0cml4IGIp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBib29sIG5lYXIgKEdy YXBoZW5lLk1hdHJpeCBiLCBmbG9hdCBlcHNpbG9uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5NYXRyaXggbm9ybWFsaXplICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLk1hdHJpeCBwZXJzcGVjdGl2 ZSAoZmxvYXQgZGVwdGgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGlj IHZvaWQgcHJpbnQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg R3JhcGhlbmUuUG9pbnQgcHJvamVjdF9wb2ludCAoR3JhcGhlbmUuUG9pbnQgcCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgR3JhcGhlbmUuUXVhZCBwcm9qZWN0X3Jl Y3QgKEdyYXBoZW5lLlJlY3Qgcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlw dWJsaWMgR3JhcGhlbmUuUmVjdCBwcm9qZWN0X3JlY3RfYm91bmRzIChHcmFwaGVuZS5SZWN0IHIp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgcm90YXRlIChm bG9hdCBhbmdsZSwgR3JhcGhlbmUuVmVjMyBheGlzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjIiKV0KKysJCXB1YmxpYyB2b2lkIHJvdGF0ZV9ldWxlciAoR3JhcGhlbmUuRXVsZXIgZSk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCByb3RhdGVfcXVhdGVy bmlvbiAoR3JhcGhlbmUuUXVhdGVybmlvbiBxKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyB2b2lkIHJvdGF0ZV94IChmbG9hdCBhbmdsZSk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCByb3RhdGVfeSAoZmxvYXQgYW5nbGUpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgcm90YXRlX3ogKGZs b2F0IGFuZ2xlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lk IHNjYWxlIChmbG9hdCBmYWN0b3JfeCwgZmxvYXQgZmFjdG9yX3ksIGZsb2F0IGZhY3Rvcl96KTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNrZXdfeHkgKGZs b2F0IGZhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9p ZCBza2V3X3h6IChmbG9hdCBmYWN0b3IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwkJcHVibGljIHZvaWQgc2tld195eiAoZmxvYXQgZmFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBib29sIHRvXzJkIChvdXQgZG91YmxlIHh4LCBvdXQgZG91 YmxlIHl4LCBvdXQgZG91YmxlIHh5LCBvdXQgZG91YmxlIHl5LCBvdXQgZG91YmxlIHhfMCwgb3V0 IGRvdWJsZSB5XzApOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZv aWQgdG9fZmxvYXQgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSByZWYgZmxvYXQgdlsx Nl0pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlJl Y3QgdHJhbnNmb3JtX2JvdW5kcyAoR3JhcGhlbmUuUmVjdCByKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5Cb3ggdHJhbnNmb3JtX2JveCAoR3JhcGhl bmUuQm94IGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBo ZW5lLlBvaW50IHRyYW5zZm9ybV9wb2ludCAoR3JhcGhlbmUuUG9pbnQgcCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQzRCB0cmFuc2Zvcm1f cG9pbnQzZCAoR3JhcGhlbmUuUG9pbnQzRCBwKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQi KV0KKysJCXB1YmxpYyBHcmFwaGVuZS5SYXkgdHJhbnNmb3JtX3JheSAoR3JhcGhlbmUuUmF5IHIp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlF1YWQg dHJhbnNmb3JtX3JlY3QgKEdyYXBoZW5lLlJlY3Qgcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4yIildCisrCQlwdWJsaWMgR3JhcGhlbmUuU3BoZXJlIHRyYW5zZm9ybV9zcGhlcmUgKEdyYXBo ZW5lLlNwaGVyZSBzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBH cmFwaGVuZS5WZWMzIHRyYW5zZm9ybV92ZWMzIChHcmFwaGVuZS5WZWMzIHYpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzQgdHJhbnNmb3JtX3Zl YzQgKEdyYXBoZW5lLlZlYzQgdik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlw dWJsaWMgdm9pZCB0cmFuc2xhdGUgKEdyYXBoZW5lLlBvaW50M0QgcG9zKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5NYXRyaXggdHJhbnNwb3NlICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIEdyYXBoZW5lLlBvaW50 M0QgdW5wcm9qZWN0X3BvaW50M2QgKEdyYXBoZW5lLk1hdHJpeCBtb2RlbHZpZXcsIEdyYXBoZW5l LlBvaW50M0QgcG9pbnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGlj IEdyYXBoZW5lLlJlY3QgdW50cmFuc2Zvcm1fYm91bmRzIChHcmFwaGVuZS5SZWN0IHIsIEdyYXBo ZW5lLlJlY3QgYm91bmRzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1Ymxp YyBib29sIHVudHJhbnNmb3JtX3BvaW50IChHcmFwaGVuZS5Qb2ludCBwLCBHcmFwaGVuZS5SZWN0 IGJvdW5kcywgb3V0IEdyYXBoZW5lLlBvaW50IHJlcyk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdyYXBoZW5lX3BsYW5l X3QiLCB0eXBlX2lkID0gImdyYXBoZW5lX3BsYW5lX2dldF90eXBlICgpIildCisrCVtWZXJzaW9u IChzaW5jZSA9ICIxLjIiKV0KKysJcHVibGljIHN0cnVjdCBQbGFuZSB7CisrCQlwdWJsaWMgZmxv YXQgZGlzdGFuY2UgKEdyYXBoZW5lLlBvaW50M0QgcG9pbnQpOworKwkJcHVibGljIGJvb2wgZXF1 YWwgKEdyYXBoZW5lLlBsYW5lIGIpOworKwkJcHVibGljIGZsb2F0IGdldF9jb25zdGFudCAoKTsK KysJCXB1YmxpYyBHcmFwaGVuZS5WZWMzIGdldF9ub3JtYWwgKCk7CisrCQlwdWJsaWMgdW5vd25l ZCBHcmFwaGVuZS5QbGFuZT8gaW5pdCAoR3JhcGhlbmUuVmVjMz8gbm9ybWFsLCBmbG9hdCBjb25z dGFudCk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5QbGFuZT8gaW5pdF9mcm9tX3BsYW5l IChHcmFwaGVuZS5QbGFuZSBzcmMpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUGxhbmU/ IGluaXRfZnJvbV9wb2ludCAoR3JhcGhlbmUuVmVjMyBub3JtYWwsIEdyYXBoZW5lLlBvaW50M0Qg cG9pbnQpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUGxhbmU/IGluaXRfZnJvbV9wb2lu dHMgKEdyYXBoZW5lLlBvaW50M0QgYSwgR3JhcGhlbmUuUG9pbnQzRCBiLCBHcmFwaGVuZS5Qb2lu dDNEIGMpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUGxhbmU/IGluaXRfZnJvbV92ZWM0 IChHcmFwaGVuZS5WZWM0IHNyYyk7CisrCQlwdWJsaWMgR3JhcGhlbmUuUGxhbmUgbmVnYXRlICgp OworKwkJcHVibGljIEdyYXBoZW5lLlBsYW5lIG5vcm1hbGl6ZSAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgR3JhcGhlbmUuUGxhbmUgdHJhbnNmb3JtIChHcmFw aGVuZS5NYXRyaXggbWF0cml4LCBHcmFwaGVuZS5NYXRyaXg/IG5vcm1hbF9tYXRyaXgpOworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFt ZSA9ICJncmFwaGVuZV9wb2ludF90IiwgdHlwZV9pZCA9ICJncmFwaGVuZV9wb2ludF9nZXRfdHlw ZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBzdHJ1Y3QgUG9p bnQgeworKwkJcHVibGljIGZsb2F0IHg7CisrCQlwdWJsaWMgZmxvYXQgeTsKKysJCXB1YmxpYyBm bG9hdCBkaXN0YW5jZSAoR3JhcGhlbmUuUG9pbnQgYiwgb3V0IGZsb2F0IGRfeCwgb3V0IGZsb2F0 IGRfeSk7CisrCQlwdWJsaWMgYm9vbCBlcXVhbCAoR3JhcGhlbmUuUG9pbnQgYik7CisrCQlwdWJs aWMgdW5vd25lZCBHcmFwaGVuZS5Qb2ludD8gaW5pdCAoZmxvYXQgeCwgZmxvYXQgeSk7CisrCQlw dWJsaWMgdW5vd25lZCBHcmFwaGVuZS5Qb2ludD8gaW5pdF9mcm9tX3BvaW50IChHcmFwaGVuZS5Q b2ludCBzcmMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHVub3du ZWQgR3JhcGhlbmUuUG9pbnQ/IGluaXRfZnJvbV92ZWMyIChHcmFwaGVuZS5WZWMyIHNyYyk7Cisr CQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQgaW50ZXJwb2xhdGUgKEdyYXBoZW5lLlBvaW50IGIsIGRv dWJsZSBmYWN0b3IpOworKwkJcHVibGljIGJvb2wgbmVhciAoR3JhcGhlbmUuUG9pbnQgYiwgZmxv YXQgZXBzaWxvbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgR3Jh cGhlbmUuVmVjMiB0b192ZWMyICgpOworKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5l LlBvaW50PyB6ZXJvICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFw aGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJncmFwaGVuZV9wb2ludDNkX3QiLCBsb3dlcl9jYXNl X2NzdWZmaXggPSAicG9pbnQzZCIsIHR5cGVfaWQgPSAiZ3JhcGhlbmVfcG9pbnQzZF9nZXRfdHlw ZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBzdHJ1Y3QgUG9p bnQzRCB7CisrCQlwdWJsaWMgZmxvYXQgeDsKKysJCXB1YmxpYyBmbG9hdCB5OworKwkJcHVibGlj IGZsb2F0IHo7CisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQzRCBjcm9zcyAoR3JhcGhlbmUuUG9p bnQzRCBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBmbG9hdCBk aXN0YW5jZSAoR3JhcGhlbmUuUG9pbnQzRCBiLCBvdXQgR3JhcGhlbmUuVmVjMyBkZWx0YSk7Cisr CQlwdWJsaWMgZmxvYXQgZG90IChHcmFwaGVuZS5Qb2ludDNEIGIpOworKwkJcHVibGljIGJvb2wg ZXF1YWwgKEdyYXBoZW5lLlBvaW50M0QgYik7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5Q b2ludDNEPyBpbml0IChmbG9hdCB4LCBmbG9hdCB5LCBmbG9hdCB6KTsKKysJCXB1YmxpYyB1bm93 bmVkIEdyYXBoZW5lLlBvaW50M0Q/IGluaXRfZnJvbV9wb2ludCAoR3JhcGhlbmUuUG9pbnQzRCBz cmMpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUG9pbnQzRD8gaW5pdF9mcm9tX3ZlYzMg KEdyYXBoZW5lLlZlYzMgdik7CisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQzRCBpbnRlcnBvbGF0 ZSAoR3JhcGhlbmUuUG9pbnQzRCBiLCBkb3VibGUgZmFjdG9yKTsKKysJCXB1YmxpYyBmbG9hdCBs ZW5ndGggKCk7CisrCQlwdWJsaWMgYm9vbCBuZWFyIChHcmFwaGVuZS5Qb2ludDNEIGIsIGZsb2F0 IGVwc2lsb24pOworKwkJcHVibGljIEdyYXBoZW5lLlBvaW50M0Qgbm9ybWFsaXplICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlBvaW50M0Qgbm9y bWFsaXplX3ZpZXdwb3J0IChHcmFwaGVuZS5SZWN0IHZpZXdwb3J0LCBmbG9hdCB6X25lYXIsIGZs b2F0IHpfZmFyKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludDNEIHNjYWxlIChmbG9hdCBmYWN0 b3IpOworKwkJcHVibGljIEdyYXBoZW5lLlZlYzMgdG9fdmVjMyAoKTsKKysJCXB1YmxpYyBzdGF0 aWMgdW5vd25lZCBHcmFwaGVuZS5Qb2ludDNEPyB6ZXJvICgpOworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJncmFwaGVuZV9x dWFkX3QiLCB0eXBlX2lkID0gImdyYXBoZW5lX3F1YWRfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgc3RydWN0IFF1YWQgeworKwkJcHVibGljIEdy YXBoZW5lLlJlY3QgYm91bmRzICgpOworKwkJcHVibGljIGJvb2wgY29udGFpbnMgKEdyYXBoZW5l LlBvaW50IHApOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUG9pbnQ/IGdldF9wb2ludCAo dWludCBpbmRleF8pOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUXVhZD8gaW5pdCAoR3Jh cGhlbmUuUG9pbnQgcDEsIEdyYXBoZW5lLlBvaW50IHAyLCBHcmFwaGVuZS5Qb2ludCBwMywgR3Jh cGhlbmUuUG9pbnQgcDQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGlj IHVub3duZWQgR3JhcGhlbmUuUXVhZD8gaW5pdF9mcm9tX3BvaW50cyAoW0NDb2RlIChhcnJheV9s ZW5ndGggPSBmYWxzZSldIEdyYXBoZW5lLlBvaW50IHBvaW50c1s0XSk7CisrCQlwdWJsaWMgdW5v d25lZCBHcmFwaGVuZS5RdWFkPyBpbml0X2Zyb21fcmVjdCAoR3JhcGhlbmUuUmVjdCByKTsKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25h bWUgPSAiZ3JhcGhlbmVfcXVhdGVybmlvbl90IiwgdHlwZV9pZCA9ICJncmFwaGVuZV9xdWF0ZXJu aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGlj IHN0cnVjdCBRdWF0ZXJuaW9uIHsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlw dWJsaWMgR3JhcGhlbmUuUXVhdGVybmlvbiBhZGQgKEdyYXBoZW5lLlF1YXRlcm5pb24gYik7Cisr CQlwdWJsaWMgZmxvYXQgZG90IChHcmFwaGVuZS5RdWF0ZXJuaW9uIGIpOworKwkJcHVibGljIGJv b2wgZXF1YWwgKEdyYXBoZW5lLlF1YXRlcm5pb24gYik7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFw aGVuZS5RdWF0ZXJuaW9uPyBpbml0IChmbG9hdCB4LCBmbG9hdCB5LCBmbG9hdCB6LCBmbG9hdCB3 KTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlF1YXRlcm5pb24/IGluaXRfZnJvbV9hbmds ZV92ZWMzIChmbG9hdCBhbmdsZSwgR3JhcGhlbmUuVmVjMyBheGlzKTsKKysJCXB1YmxpYyB1bm93 bmVkIEdyYXBoZW5lLlF1YXRlcm5pb24/IGluaXRfZnJvbV9hbmdsZXMgKGZsb2F0IGRlZ194LCBm bG9hdCBkZWdfeSwgZmxvYXQgZGVnX3opOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQor KwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUXVhdGVybmlvbj8gaW5pdF9mcm9tX2V1bGVyIChH cmFwaGVuZS5FdWxlciBlKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlF1YXRlcm5pb24/ IGluaXRfZnJvbV9tYXRyaXggKEdyYXBoZW5lLk1hdHJpeCBtKTsKKysJCXB1YmxpYyB1bm93bmVk IEdyYXBoZW5lLlF1YXRlcm5pb24/IGluaXRfZnJvbV9xdWF0ZXJuaW9uIChHcmFwaGVuZS5RdWF0 ZXJuaW9uIHNyYyk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5RdWF0ZXJuaW9uPyBpbml0 X2Zyb21fcmFkaWFucyAoZmxvYXQgcmFkX3gsIGZsb2F0IHJhZF95LCBmbG9hdCByYWRfeik7Cisr CQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5RdWF0ZXJuaW9uPyBpbml0X2Zyb21fdmVjNCAoR3Jh cGhlbmUuVmVjNCBzcmMpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUXVhdGVybmlvbj8g aW5pdF9pZGVudGl0eSAoKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5RdWF0ZXJuaW9uIGludmVydCAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgR3JhcGhlbmUuUXVh dGVybmlvbiBtdWx0aXBseSAoR3JhcGhlbmUuUXVhdGVybmlvbiBiKTsKKysJCXB1YmxpYyBHcmFw aGVuZS5RdWF0ZXJuaW9uIG5vcm1hbGl6ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEw IildCisrCQlwdWJsaWMgR3JhcGhlbmUuUXVhdGVybmlvbiBzY2FsZSAoZmxvYXQgZmFjdG9yKTsK KysJCXB1YmxpYyBHcmFwaGVuZS5RdWF0ZXJuaW9uIHNsZXJwIChHcmFwaGVuZS5RdWF0ZXJuaW9u IGIsIGZsb2F0IGZhY3Rvcik7CisrCQlwdWJsaWMgdm9pZCB0b19hbmdsZV92ZWMzIChvdXQgZmxv YXQgYW5nbGUsIG91dCBHcmFwaGVuZS5WZWMzIGF4aXMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMiIpXQorKwkJcHVibGljIHZvaWQgdG9fYW5nbGVzIChvdXQgZmxvYXQgZGVnX3gsIG91dCBm bG9hdCBkZWdfeSwgb3V0IGZsb2F0IGRlZ196KTsKKysJCXB1YmxpYyBHcmFwaGVuZS5NYXRyaXgg dG9fbWF0cml4ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZv aWQgdG9fcmFkaWFucyAob3V0IGZsb2F0IHJhZF94LCBvdXQgZmxvYXQgcmFkX3ksIG91dCBmbG9h dCByYWRfeik7CisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjNCB0b192ZWM0ICgpOworKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJn cmFwaGVuZV9yYXlfdCIsIHR5cGVfaWQgPSAiZ3JhcGhlbmVfcmF5X2dldF90eXBlICgpIildCisr CVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIHN0cnVjdCBSYXkgeworKwkJcHVi bGljIGJvb2wgZXF1YWwgKEdyYXBoZW5lLlJheSBiKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2lu dDNEIGdldF9jbG9zZXN0X3BvaW50X3RvX3BvaW50IChHcmFwaGVuZS5Qb2ludDNEIHApOworKwkJ cHVibGljIEdyYXBoZW5lLlZlYzMgZ2V0X2RpcmVjdGlvbiAoKTsKKysJCXB1YmxpYyBmbG9hdCBn ZXRfZGlzdGFuY2VfdG9fcGxhbmUgKEdyYXBoZW5lLlBsYW5lIHApOworKwkJcHVibGljIGZsb2F0 IGdldF9kaXN0YW5jZV90b19wb2ludCAoR3JhcGhlbmUuUG9pbnQzRCBwKTsKKysJCXB1YmxpYyBH cmFwaGVuZS5Qb2ludDNEIGdldF9vcmlnaW4gKCk7CisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQz RCBnZXRfcG9zaXRpb25fYXQgKGZsb2F0IHQpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUu UmF5PyBpbml0IChHcmFwaGVuZS5Qb2ludDNEPyBvcmlnaW4sIEdyYXBoZW5lLlZlYzM/IGRpcmVj dGlvbik7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5SYXk/IGluaXRfZnJvbV9yYXkgKEdy YXBoZW5lLlJheSBzcmMpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUmF5PyBpbml0X2Zy b21fdmVjMyAoR3JhcGhlbmUuVmVjMz8gb3JpZ2luLCBHcmFwaGVuZS5WZWMzPyBkaXJlY3Rpb24p OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5SYXlJ bnRlcnNlY3Rpb25LaW5kIGludGVyc2VjdF9ib3ggKEdyYXBoZW5lLkJveCBiLCBvdXQgZmxvYXQg dF9vdXQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBHcmFwaGVu ZS5SYXlJbnRlcnNlY3Rpb25LaW5kIGludGVyc2VjdF9zcGhlcmUgKEdyYXBoZW5lLlNwaGVyZSBz LCBvdXQgZmxvYXQgdF9vdXQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1 YmxpYyBHcmFwaGVuZS5SYXlJbnRlcnNlY3Rpb25LaW5kIGludGVyc2VjdF90cmlhbmdsZSAoR3Jh cGhlbmUuVHJpYW5nbGUgdCwgb3V0IGZsb2F0IHRfb3V0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEwIildCisrCQlwdWJsaWMgYm9vbCBpbnRlcnNlY3RzX2JveCAoR3JhcGhlbmUuQm94IGIp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBib29sIGludGVyc2Vj dHNfc3BoZXJlIChHcmFwaGVuZS5TcGhlcmUgcyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MCIpXQorKwkJcHVibGljIGJvb2wgaW50ZXJzZWN0c190cmlhbmdsZSAoR3JhcGhlbmUuVHJpYW5n bGUgdCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmpl Y3QuaCIsIGNuYW1lID0gImdyYXBoZW5lX3JlY3RfdCIsIHR5cGVfaWQgPSAiZ3JhcGhlbmVfcmVj dF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBz dHJ1Y3QgUmVjdCB7CisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQgb3JpZ2luOworKwkJcHVibGlj IEdyYXBoZW5lLlNpemUgc2l6ZTsKKysJCXB1YmxpYyBzdGF0aWMgR3JhcGhlbmUuUmVjdD8gYWxs b2MgKCk7CisrCQlwdWJsaWMgYm9vbCBjb250YWluc19wb2ludCAoR3JhcGhlbmUuUG9pbnQgcCk7 CisrCQlwdWJsaWMgYm9vbCBjb250YWluc19yZWN0IChHcmFwaGVuZS5SZWN0IGIpOworKwkJcHVi bGljIGJvb2wgZXF1YWwgKEdyYXBoZW5lLlJlY3QgYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS40IildCisrCQlwdWJsaWMgR3JhcGhlbmUuUmVjdCBleHBhbmQgKEdyYXBoZW5lLlBvaW50IHAp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfYXJl YSAoKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludCBnZXRfYm90dG9tX2xlZnQgKCk7CisrCQlw dWJsaWMgR3JhcGhlbmUuUG9pbnQgZ2V0X2JvdHRvbV9yaWdodCAoKTsKKysJCXB1YmxpYyBHcmFw aGVuZS5Qb2ludCBnZXRfY2VudGVyICgpOworKwkJcHVibGljIGZsb2F0IGdldF9oZWlnaHQgKCk7 CisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQgZ2V0X3RvcF9sZWZ0ICgpOworKwkJcHVibGljIEdy YXBoZW5lLlBvaW50IGdldF90b3BfcmlnaHQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40 IildCisrCQlwdWJsaWMgdm9pZCBnZXRfdmVydGljZXMgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0g ZmFsc2UpXSByZWYgR3JhcGhlbmUuVmVjMiB2ZXJ0aWNlc1s0XSk7CisrCQlwdWJsaWMgZmxvYXQg Z2V0X3dpZHRoICgpOworKwkJcHVibGljIGZsb2F0IGdldF94ICgpOworKwkJcHVibGljIGZsb2F0 IGdldF95ICgpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUmVjdD8gaW5pdCAoZmxvYXQg eCwgZmxvYXQgeSwgZmxvYXQgd2lkdGgsIGZsb2F0IGhlaWdodCk7CisrCQlwdWJsaWMgdW5vd25l ZCBHcmFwaGVuZS5SZWN0PyBpbml0X2Zyb21fcmVjdCAoR3JhcGhlbmUuUmVjdCBzcmMpOworKwkJ cHVibGljIHVub3duZWQgR3JhcGhlbmUuUmVjdD8gaW5zZXQgKGZsb2F0IGRfeCwgZmxvYXQgZF95 KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5SZWN0 IGluc2V0X3IgKGZsb2F0IGRfeCwgZmxvYXQgZF95KTsKKysJCXB1YmxpYyBHcmFwaGVuZS5SZWN0 IGludGVycG9sYXRlIChHcmFwaGVuZS5SZWN0IGIsIGRvdWJsZSBmYWN0b3IpOworKwkJcHVibGlj IGJvb2wgaW50ZXJzZWN0aW9uIChHcmFwaGVuZS5SZWN0IGIsIG91dCBHcmFwaGVuZS5SZWN0IHJl cyk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5SZWN0PyBub3JtYWxpemUgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgR3JhcGhlbmUuUmVjdCBub3JtYWxp emVfciAoKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlJlY3Q/IG9mZnNldCAoZmxvYXQg ZF94LCBmbG9hdCBkX3kpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGlj IEdyYXBoZW5lLlJlY3Qgb2Zmc2V0X3IgKGZsb2F0IGRfeCwgZmxvYXQgZF95KTsKKysJCVtWZXJz aW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2Ug PSAiMS40IildCisrCQlwdWJsaWMgR3JhcGhlbmUuUmVjdCByb3VuZCAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgR3JhcGhlbmUuUmVjdCByb3VuZF9leHRlbnRz ICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0g IjEuNCIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUmVjdD8g cm91bmRfdG9fcGl4ZWwgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVi bGljIEdyYXBoZW5lLlJlY3Qgc2NhbGUgKGZsb2F0IHNfaCwgZmxvYXQgc192KTsKKysJCXB1Ymxp YyBHcmFwaGVuZS5SZWN0IHVuaW9uIChHcmFwaGVuZS5SZWN0IGIpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuNCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLlJlY3Q/IHpl cm8gKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmpl Y3QuaCIsIGNuYW1lID0gImdyYXBoZW5lX3NpbWQ0Zl90IiwgaGFzX3R5cGVfaWQgPSBmYWxzZSld CisrCXB1YmxpYyBzdHJ1Y3QgU2ltZDRGIHsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfc2ltZDR4NGZfdCIs IGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgc3RydWN0IFNpbWQ0WDRGIHsKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUg PSAiZ3JhcGhlbmVfc2l6ZV90IiwgdHlwZV9pZCA9ICJncmFwaGVuZV9zaXplX2dldF90eXBlICgp IildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIHN0cnVjdCBTaXplIHsK KysJCXB1YmxpYyBmbG9hdCB3aWR0aDsKKysJCXB1YmxpYyBmbG9hdCBoZWlnaHQ7CisrCQlwdWJs aWMgYm9vbCBlcXVhbCAoR3JhcGhlbmUuU2l6ZSBiKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBo ZW5lLlNpemU/IGluaXQgKGZsb2F0IHdpZHRoLCBmbG9hdCBoZWlnaHQpOworKwkJcHVibGljIHVu b3duZWQgR3JhcGhlbmUuU2l6ZT8gaW5pdF9mcm9tX3NpemUgKEdyYXBoZW5lLlNpemUgc3JjKTsK KysJCXB1YmxpYyBHcmFwaGVuZS5TaXplIGludGVycG9sYXRlIChHcmFwaGVuZS5TaXplIGIsIGRv dWJsZSBmYWN0b3IpOworKwkJcHVibGljIEdyYXBoZW5lLlNpemUgc2NhbGUgKGZsb2F0IGZhY3Rv cik7CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuU2l6ZT8gemVybyAoKTsKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25h bWUgPSAiZ3JhcGhlbmVfc3BoZXJlX3QiLCB0eXBlX2lkID0gImdyYXBoZW5lX3NwaGVyZV9nZXRf dHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBzdHJ1Y3Qg U3BoZXJlIHsKKysJCXB1YmxpYyBib29sIGNvbnRhaW5zX3BvaW50IChHcmFwaGVuZS5Qb2ludDNE IHBvaW50KTsKKysJCXB1YmxpYyBmbG9hdCBkaXN0YW5jZSAoR3JhcGhlbmUuUG9pbnQzRCBwb2lu dCk7CisrCQlwdWJsaWMgYm9vbCBlcXVhbCAoR3JhcGhlbmUuU3BoZXJlIGIpOworKwkJcHVibGlj IEdyYXBoZW5lLkJveCBnZXRfYm91bmRpbmdfYm94ICgpOworKwkJcHVibGljIEdyYXBoZW5lLlBv aW50M0QgZ2V0X2NlbnRlciAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfcmFkaXVzICgpOworKwkJ cHVibGljIHVub3duZWQgR3JhcGhlbmUuU3BoZXJlPyBpbml0IChHcmFwaGVuZS5Qb2ludDNEPyBj ZW50ZXIsIGZsb2F0IHJhZGl1cyk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5TcGhlcmU/ IGluaXRfZnJvbV9wb2ludHMgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoX2NuYW1lID0gIm5fcG9pbnRz IiwgYXJyYXlfbGVuZ3RoX3BvcyA9IDAuNSwgYXJyYXlfbGVuZ3RoX3R5cGUgPSAiZ3VpbnQiKV0g R3JhcGhlbmUuUG9pbnQzRFtdIHBvaW50cywgR3JhcGhlbmUuUG9pbnQzRD8gY2VudGVyKTsKKysJ CXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlNwaGVyZT8gaW5pdF9mcm9tX3ZlY3RvcnMgKFtDQ29k ZSAoYXJyYXlfbGVuZ3RoX2NuYW1lID0gIm5fdmVjdG9ycyIsIGFycmF5X2xlbmd0aF9wb3MgPSAw LjUsIGFycmF5X2xlbmd0aF90eXBlID0gImd1aW50IildIEdyYXBoZW5lLlZlYzNbXSB2ZWN0b3Jz LCBHcmFwaGVuZS5Qb2ludDNEPyBjZW50ZXIpOworKwkJcHVibGljIGJvb2wgaXNfZW1wdHkgKCk7 CisrCQlwdWJsaWMgR3JhcGhlbmUuU3BoZXJlIHRyYW5zbGF0ZSAoR3JhcGhlbmUuUG9pbnQzRCBw b2ludCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmpl Y3QuaCIsIGNuYW1lID0gImdyYXBoZW5lX3RyaWFuZ2xlX3QiLCB0eXBlX2lkID0gImdyYXBoZW5l X3RyaWFuZ2xlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJ cHVibGljIHN0cnVjdCBUcmlhbmdsZSB7CisrCQlwdWJsaWMgYm9vbCBjb250YWluc19wb2ludCAo R3JhcGhlbmUuUG9pbnQzRCBwKTsKKysJCXB1YmxpYyBib29sIGVxdWFsIChHcmFwaGVuZS5Ucmlh bmdsZSBiKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfYXJlYSAoKTsKKysJCXB1YmxpYyBib29sIGdl dF9iYXJ5Y29vcmRzIChHcmFwaGVuZS5Qb2ludDNEPyBwLCBvdXQgR3JhcGhlbmUuVmVjMiByZXMp OworKwkJcHVibGljIEdyYXBoZW5lLkJveCBnZXRfYm91bmRpbmdfYm94ICgpOworKwkJcHVibGlj IEdyYXBoZW5lLlBvaW50M0QgZ2V0X21pZHBvaW50ICgpOworKwkJcHVibGljIEdyYXBoZW5lLlZl YzMgZ2V0X25vcm1hbCAoKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5QbGFuZSBnZXRfcGxhbmUgKCk7 CisrCQlwdWJsaWMgdm9pZCBnZXRfcG9pbnRzIChvdXQgR3JhcGhlbmUuUG9pbnQzRCBhLCBvdXQg R3JhcGhlbmUuUG9pbnQzRCBiLCBvdXQgR3JhcGhlbmUuUG9pbnQzRCBjKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgYm9vbCBnZXRfdXYgKEdyYXBoZW5lLlBvaW50 M0Q/IHAsIEdyYXBoZW5lLlZlYzIgdXZfYSwgR3JhcGhlbmUuVmVjMiB1dl9iLCBHcmFwaGVuZS5W ZWMyIHV2X2MsIG91dCBHcmFwaGVuZS5WZWMyIHJlcyk7CisrCQlwdWJsaWMgdm9pZCBnZXRfdmVy dGljZXMgKG91dCBHcmFwaGVuZS5WZWMzIGEsIG91dCBHcmFwaGVuZS5WZWMzIGIsIG91dCBHcmFw aGVuZS5WZWMzIGMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1 bm93bmVkIEdyYXBoZW5lLlRyaWFuZ2xlPyBpbml0X2Zyb21fZmxvYXQgKFtDQ29kZSAoYXJyYXlf bGVuZ3RoID0gZmFsc2UpXSBmbG9hdCBhWzNdLCBbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNl KV0gZmxvYXQgYlszXSwgW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIGZsb2F0IGNbM10p OworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuVHJpYW5nbGU/IGluaXRfZnJvbV9wb2ludDNk IChHcmFwaGVuZS5Qb2ludDNEPyBhLCBHcmFwaGVuZS5Qb2ludDNEPyBiLCBHcmFwaGVuZS5Qb2lu dDNEPyBjKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlRyaWFuZ2xlPyBpbml0X2Zyb21f dmVjMyAoR3JhcGhlbmUuVmVjMz8gYSwgR3JhcGhlbmUuVmVjMz8gYiwgR3JhcGhlbmUuVmVjMz8g Yyk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3Qu aCIsIGNuYW1lID0gImdyYXBoZW5lX3ZlYzJfdCIsIHR5cGVfaWQgPSAiZ3JhcGhlbmVfdmVjMl9n ZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgc3RydWN0IFZlYzIgeworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzIgYWRkIChHcmFwaGVuZS5WZWMyIGIp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzIg ZGl2aWRlIChHcmFwaGVuZS5WZWMyIGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwkJcHVibGljIGZsb2F0IGRvdCAoR3JhcGhlbmUuVmVjMiBiKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBib29sIGVxdWFsIChHcmFwaGVuZS5WZWMyIHYyKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfeCAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfeSAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlZl YzI/IGluaXQgKGZsb2F0IHgsIGZsb2F0IHkpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIp XQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuVmVjMj8gaW5pdF9mcm9tX2Zsb2F0IChbQ0Nv ZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gZmxvYXQgc3JjWzJdKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlZlYzI/IGluaXRfZnJv bV92ZWMyIChHcmFwaGVuZS5WZWMyIHNyYyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIp XQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzIgaW50ZXJwb2xhdGUgKEdyYXBoZW5lLlZlYzIgdjIs IGRvdWJsZSBmYWN0b3IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGlj IGZsb2F0IGxlbmd0aCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1Ymxp YyBHcmFwaGVuZS5WZWMyIG1heCAoR3JhcGhlbmUuVmVjMiBiKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMyIG1pbiAoR3JhcGhlbmUuVmVjMiBi KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMy IG11bHRpcGx5IChHcmFwaGVuZS5WZWMyIGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIp XQorKwkJcHVibGljIGJvb2wgbmVhciAoR3JhcGhlbmUuVmVjMiB2MiwgZmxvYXQgZXBzaWxvbik7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMiBu ZWdhdGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhl bmUuVmVjMiBub3JtYWxpemUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlw dWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuVmVjMj8gb25lICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzIgc2NhbGUgKGZsb2F0IGZh Y3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUu VmVjMiBzdWJ0cmFjdCAoR3JhcGhlbmUuVmVjMiBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjAiKV0KKysJCXB1YmxpYyB2b2lkIHRvX2Zsb2F0IChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZh bHNlKV0gcmVmIGZsb2F0IGRlc3RbMl0pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLlZlYzI/IHhfYXhpcyAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVu ZS5WZWMyPyB5X2F4aXMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJs aWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuVmVjMj8gemVybyAoKTsKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiZ3JhcGhl bmVfdmVjM190IiwgdHlwZV9pZCA9ICJncmFwaGVuZV92ZWMzX2dldF90eXBlICgpIildCisrCXB1 YmxpYyBzdHJ1Y3QgVmVjMyB7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJs aWMgR3JhcGhlbmUuVmVjMyBhZGQgKEdyYXBoZW5lLlZlYzMgYik7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMyBjcm9zcyAoR3JhcGhlbmUuVmVj MyBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5W ZWMzIGRpdmlkZSAoR3JhcGhlbmUuVmVjMyBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyBmbG9hdCBkb3QgKEdyYXBoZW5lLlZlYzMgYik7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgYm9vbCBlcXVhbCAoR3JhcGhlbmUuVmVjMyB2Mik7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3ggKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMiBn ZXRfeHkgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhl bmUuVmVjMyBnZXRfeHkwICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVi bGljIEdyYXBoZW5lLlZlYzQgZ2V0X3h5ejAgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjNCBnZXRfeHl6MSAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWM0IGdldF94eXp3IChmbG9hdCB3 KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfeSAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfeiAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBo ZW5lLlZlYzM/IGluaXQgKGZsb2F0IHgsIGZsb2F0IHksIGZsb2F0IHopOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuVmVjMz8gaW5pdF9m cm9tX2Zsb2F0IChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gZmxvYXQgc3JjWzNdKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5l LlZlYzM/IGluaXRfZnJvbV92ZWMzIChHcmFwaGVuZS5WZWMzIHNyYyk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzMgaW50ZXJwb2xhdGUgKEdy YXBoZW5lLlZlYzMgdjIsIGRvdWJsZSBmYWN0b3IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MCIpXQorKwkJcHVibGljIGZsb2F0IGxlbmd0aCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMzIG1heCAoR3JhcGhlbmUuVmVjMyBiKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMzIG1pbiAo R3JhcGhlbmUuVmVjMyBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1Ymxp YyBHcmFwaGVuZS5WZWMzIG11bHRpcGx5IChHcmFwaGVuZS5WZWMzIGIpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIGJvb2wgbmVhciAoR3JhcGhlbmUuVmVjMyB2Miwg ZmxvYXQgZXBzaWxvbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMg R3JhcGhlbmUuVmVjMyBuZWdhdGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisr CQlwdWJsaWMgR3JhcGhlbmUuVmVjMyBub3JtYWxpemUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuVmVjMz8gb25lICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzMg c2NhbGUgKGZsb2F0IGZhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlw dWJsaWMgR3JhcGhlbmUuVmVjMyBzdWJ0cmFjdCAoR3JhcGhlbmUuVmVjMyBiKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHRvX2Zsb2F0IChbQ0NvZGUgKGFy cmF5X2xlbmd0aCA9IGZhbHNlKV0gcmVmIGZsb2F0IGRlc3RbM10pOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLlZlYzM/IHhf YXhpcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBzdGF0aWMg dW5vd25lZCBHcmFwaGVuZS5WZWMzPyB5X2F4aXMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4wIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuVmVjMz8gel9heGlzICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVk IEdyYXBoZW5lLlZlYzM/IHplcm8gKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdyYXBoZW5lX3ZlYzRfdCIsIHR5cGVf aWQgPSAiZ3JhcGhlbmVfdmVjNF9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgc3RydWN0IFZlYzQg eworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzQg YWRkIChHcmFwaGVuZS5WZWM0IGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJ cHVibGljIEdyYXBoZW5lLlZlYzQgZGl2aWRlIChHcmFwaGVuZS5WZWM0IGIpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGRvdCAoR3JhcGhlbmUuVmVjNCBi KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBib29sIGVxdWFsIChH cmFwaGVuZS5WZWM0IHYyKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1Ymxp YyBmbG9hdCBnZXRfdyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1Ymxp YyBmbG9hdCBnZXRfeCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1Ymxp YyBHcmFwaGVuZS5WZWMyIGdldF94eSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0K KysJCXB1YmxpYyBHcmFwaGVuZS5WZWMzIGdldF94eXogKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3kgKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3ogKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5WZWM0PyBpbml0IChmbG9hdCB4 LCBmbG9hdCB5LCBmbG9hdCB6LCBmbG9hdCB3KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlZlYzQ/IGluaXRfZnJvbV9mbG9hdCAoW0ND b2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIGZsb2F0IHNyY1s0XSk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5WZWM0PyBpbml0X2Zy b21fdmVjMiAoR3JhcGhlbmUuVmVjMiBzcmMsIGZsb2F0IHosIGZsb2F0IHcpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuVmVjND8gaW5p dF9mcm9tX3ZlYzMgKEdyYXBoZW5lLlZlYzMgc3JjLCBmbG9hdCB3KTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlZlYzQ/IGluaXRfZnJv bV92ZWM0IChHcmFwaGVuZS5WZWM0IHNyYyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIp XQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzQgaW50ZXJwb2xhdGUgKEdyYXBoZW5lLlZlYzQgdjIs IGRvdWJsZSBmYWN0b3IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGlj IGZsb2F0IGxlbmd0aCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1Ymxp YyBHcmFwaGVuZS5WZWM0IG1heCAoR3JhcGhlbmUuVmVjNCBiKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWM0IG1pbiAoR3JhcGhlbmUuVmVjNCBi KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWM0 IG11bHRpcGx5IChHcmFwaGVuZS5WZWM0IGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIp XQorKwkJcHVibGljIGJvb2wgbmVhciAoR3JhcGhlbmUuVmVjNCB2MiwgZmxvYXQgZXBzaWxvbik7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjNCBu ZWdhdGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhl bmUuVmVjNCBub3JtYWxpemUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlw dWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuVmVjND8gb25lICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzQgc2NhbGUgKGZsb2F0IGZh Y3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUu VmVjNCBzdWJ0cmFjdCAoR3JhcGhlbmUuVmVjNCBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjAiKV0KKysJCXB1YmxpYyB2b2lkIHRvX2Zsb2F0IChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZh bHNlKV0gcmVmIGZsb2F0IGRlc3RbNF0pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLlZlYzQ/IHdfYXhpcyAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVu ZS5WZWM0PyB4X2F4aXMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJs aWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuVmVjND8geV9heGlzICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLlZlYzQ/ IHpfYXhpcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBzdGF0 aWMgdW5vd25lZCBHcmFwaGVuZS5WZWM0PyB6ZXJvICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJncmFwaGVuZV9ldWxl cl9vcmRlcl90IiwgY3ByZWZpeCA9ICJHUkFQSEVORV9FVUxFUl9PUkRFUl8iLCBoYXNfdHlwZV9p ZCA9IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwlwdWJsaWMgZW51bSBF dWxlck9yZGVyIHsKKysJCURFRkFVTFQsCisrCQlYWVosCisrCQlZWlgsCisrCQlaWFksCisrCQlY WlksCisrCQlZWFosCisrCQlaWVgsCisrCQlTWFlaLAorKwkJU1hZWCwKKysJCVNYWlksCisrCQlT WFpYLAorKwkJU1laWCwKKysJCVNZWlksCisrCQlTWVhaLAorKwkJU1lYWSwKKysJCVNaWFksCisr CQlTWlhaLAorKwkJU1pZWCwKKysJCVNaWVosCisrCQlSWllYLAorKwkJUlhZWCwKKysJCVJZWlgs CisrCQlSWFpYLAorKwkJUlhaWSwKKysJCVJZWlksCisrCQlSWlhZLAorKwkJUllYWSwKKysJCVJZ WFosCisrCQlSWlhaLAorKwkJUlhZWiwKKysJCVJaWVoKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfcmF5X2lu dGVyc2VjdGlvbl9raW5kX3QiLCBjcHJlZml4ID0gIkdSQVBIRU5FX1JBWV9JTlRFUlNFQ1RJT05f S0lORF8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAi KV0KKysJcHVibGljIGVudW0gUmF5SW50ZXJzZWN0aW9uS2luZCB7CisrCQlOT05FLAorKwkJRU5U RVIsCisrCQlMRUFWRQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVu ZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJHUkFQSEVORV9IQVNfR0NDIildCisrCXB1YmxpYyBjb25z dCBpbnQgSEFTX0dDQzsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdv YmplY3QuaCIsIGNuYW1lID0gIkdSQVBIRU5FX0hBU19TQ0FMQVIiKV0KKysJcHVibGljIGNvbnN0 IGludCBIQVNfU0NBTEFSOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUt Z29iamVjdC5oIiwgY25hbWUgPSAiR1JBUEhFTkVfSEFTX1NTRSIpXQorKwlwdWJsaWMgY29uc3Qg aW50IEhBU19TU0U7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2Jq ZWN0LmgiLCBjbmFtZSA9ICJHUkFQSEVORV9QSSIpXQorKwlwdWJsaWMgY29uc3QgZG91YmxlIFBJ OworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25h bWUgPSAiR1JBUEhFTkVfUElfMiIpXQorKwlwdWJsaWMgY29uc3QgZG91YmxlIFBJXzI7CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJH UkFQSEVORV9TSU1EX1MiKV0KKysJcHVibGljIGNvbnN0IHN0cmluZyBTSU1EX1M7CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJHUkFQ SEVORV9WRUMyX0xFTiIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBj b25zdCBpbnQgVkVDMl9MRU47CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVu ZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJHUkFQSEVORV9WRUMzX0xFTiIpXQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBjb25zdCBpbnQgVkVDM19MRU47CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJHUkFQSEVO RV9WRUM0X0xFTiIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBjb25z dCBpbnQgVkVDNF9MRU47CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1n b2JqZWN0LmgiLCBjbmFtZSA9ICJmYWxzZSIpXQorKwlwdWJsaWMgY29uc3QgaW50IEBmYWxzZTsK KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1l ID0gInRydWUiKV0KKysJcHVibGljIGNvbnN0IGludCBAdHJ1ZTsKKyt9CitkaWZmIC0tZ2l0IGEv dmFwaS9saWJtdXR0ZXItNi5kZXBzIGIvdmFwaS9saWJtdXR0ZXItNi5kZXBzCituZXcgZmlsZSBt b2RlIDEwMDY0NAoraW5kZXggMDAwMDAwMDAuLjIyMzUyNWU0CistLS0gL2Rldi9udWxsCisrKysg Yi92YXBpL2xpYm11dHRlci02LmRlcHMKK0BAIC0wLDAgKzEsNiBAQAorK2d0aystMy4wCisranNv bi1nbGliLTEuMAorK211dHRlci1jbHV0dGVyLTYKKyt4MTEKKyt4Zml4ZXMtNC4wCisrZ3JhcGhl bmUtZ29iamVjdC0xLjAKK2RpZmYgLS1naXQgYS92YXBpL2xpYm11dHRlci02LnZhcGkgYi92YXBp L2xpYm11dHRlci02LnZhcGkKK25ldyBmaWxlIG1vZGUgMTAwNjQ0CitpbmRleCAwMDAwMDAwMC4u MzFmNDgwMWMKKy0tLSAvZGV2L251bGwKKysrKyBiL3ZhcGkvbGlibXV0dGVyLTYudmFwaQorQEAg LTAsMCArMSwxNDc1IEBACisrLyogbGlibXV0dGVyLTYudmFwaSBnZW5lcmF0ZWQgYnkgdmFwaWdl biwgZG8gbm90IG1vZGlmeS4gKi8KKysKKytbQ0NvZGUgKGNwcmVmaXggPSAiTWV0YSIsIGdpcl9u YW1lc3BhY2UgPSAiTWV0YSIsIGdpcl92ZXJzaW9uID0gIjYiLCBsb3dlcl9jYXNlX2NwcmVmaXgg PSAibWV0YV8iKV0KKytuYW1lc3BhY2UgTWV0YSB7CisrCW5hbWVzcGFjZSBDb21wb3NpdG9yIHsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgi LCBjbmFtZSA9ICJtZXRhX2Rpc2FibGVfdW5yZWRpcmVjdF9mb3JfZGlzcGxheSIpXQorKwkJcHVi bGljIHN0YXRpYyB2b2lkIGRpc2FibGVfdW5yZWRpcmVjdF9mb3JfZGlzcGxheSAoTWV0YS5EaXNw bGF5IGRpc3BsYXkpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvY29tcG9z aXRvci1tdXR0ZXIuaCIsIGNuYW1lID0gIm1ldGFfZW5hYmxlX3VucmVkaXJlY3RfZm9yX2Rpc3Bs YXkiKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBlbmFibGVfdW5yZWRpcmVjdF9mb3JfZGlzcGxh eSAoTWV0YS5EaXNwbGF5IGRpc3BsYXkpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g Im1ldGEvY29tcG9zaXRvci1tdXR0ZXIuaCIsIGNuYW1lID0gIm1ldGFfZm9jdXNfc3RhZ2Vfd2lu ZG93IildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQgZm9jdXNfc3RhZ2Vfd2luZG93IChNZXRhLkRp c3BsYXkgZGlzcGxheSwgdWludDMyIHRpbWVzdGFtcCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAibWV0YS9jb21wb3NpdG9yLW11dHRlci5oIiwgY25hbWUgPSAibWV0YV9nZXRfZmVl ZGJhY2tfZ3JvdXBfZm9yX2Rpc3BsYXkiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0 dGVyLkFjdG9yIGdldF9mZWVkYmFja19ncm91cF9mb3JfZGlzcGxheSAoTWV0YS5EaXNwbGF5IGRp c3BsYXkpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvY29tcG9zaXRvci1t dXR0ZXIuaCIsIGNuYW1lID0gIm1ldGFfZ2V0X3N0YWdlX2Zvcl9kaXNwbGF5IildCisrCQlwdWJs aWMgc3RhdGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfc3RhZ2VfZm9yX2Rpc3BsYXkgKE1l dGEuRGlzcGxheSBkaXNwbGF5KTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRh L2NvbXBvc2l0b3ItbXV0dGVyLmgiLCBjbmFtZSA9ICJtZXRhX2dldF90b3Bfd2luZG93X2dyb3Vw X2Zvcl9kaXNwbGF5IildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBn ZXRfdG9wX3dpbmRvd19ncm91cF9mb3JfZGlzcGxheSAoTWV0YS5EaXNwbGF5IGRpc3BsYXkpOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvY29tcG9zaXRvci1tdXR0ZXIuaCIs IGNuYW1lID0gIm1ldGFfZ2V0X3dpbmRvd19hY3RvcnMiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5v d25lZCBHTGliLkxpc3Q8Q2x1dHRlci5BY3Rvcj4gZ2V0X3dpbmRvd19hY3RvcnMgKE1ldGEuRGlz cGxheSBkaXNwbGF5KTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL2NvbXBv c2l0b3ItbXV0dGVyLmgiLCBjbmFtZSA9ICJtZXRhX2dldF93aW5kb3dfZ3JvdXBfZm9yX2Rpc3Bs YXkiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF93aW5kb3df Z3JvdXBfZm9yX2Rpc3BsYXkgKE1ldGEuRGlzcGxheSBkaXNwbGF5KTsKKysJfQorKwluYW1lc3Bh Y2UgUHJlZnMgeworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIs IGNuYW1lID0gIm1ldGFfcHJlZnNfYmVsbF9pc19hdWRpYmxlIildCisrCQlwdWJsaWMgc3RhdGlj IGJvb2wgcHJlZnNfYmVsbF9pc19hdWRpYmxlICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfY2hhbmdlX3dvcmtzcGFj ZV9uYW1lIildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQgcHJlZnNfY2hhbmdlX3dvcmtzcGFjZV9u YW1lIChpbnQgaSwgc3RyaW5nIG5hbWUpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g Im1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X2FjdGlvbl9kb3VibGVfY2xp Y2tfdGl0bGViYXIiKV0KKysJCXB1YmxpYyBzdGF0aWMgR0Rlc2t0b3AuVGl0bGViYXJBY3Rpb24g cHJlZnNfZ2V0X2FjdGlvbl9kb3VibGVfY2xpY2tfdGl0bGViYXIgKCk7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRf YWN0aW9uX21pZGRsZV9jbGlja190aXRsZWJhciIpXQorKwkJcHVibGljIHN0YXRpYyBHRGVza3Rv cC5UaXRsZWJhckFjdGlvbiBwcmVmc19nZXRfYWN0aW9uX21pZGRsZV9jbGlja190aXRsZWJhciAo KTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9 ICJtZXRhX3ByZWZzX2dldF9hY3Rpb25fcmlnaHRfY2xpY2tfdGl0bGViYXIiKV0KKysJCXB1Ymxp YyBzdGF0aWMgR0Rlc2t0b3AuVGl0bGViYXJBY3Rpb24gcHJlZnNfZ2V0X2FjdGlvbl9yaWdodF9j bGlja190aXRsZWJhciAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3By ZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9hdHRhY2hfbW9kYWxfZGlhbG9ncyIpXQor KwkJcHVibGljIHN0YXRpYyBib29sIHByZWZzX2dldF9hdHRhY2hfbW9kYWxfZGlhbG9ncyAoKTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJt ZXRhX3ByZWZzX2dldF9hdXRvX21heGltaXplIildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wgcHJl ZnNfZ2V0X2F1dG9fbWF4aW1pemUgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi bWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfYXV0b19yYWlzZSIpXQorKwkJ cHVibGljIHN0YXRpYyBib29sIHByZWZzX2dldF9hdXRvX3JhaXNlICgpOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0 X2F1dG9fcmFpc2VfZGVsYXkiKV0KKysJCXB1YmxpYyBzdGF0aWMgaW50IHByZWZzX2dldF9hdXRv X3JhaXNlX2RlbGF5ICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJl ZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X2J1dHRvbl9sYXlvdXQiKV0KKysJCXB1Ymxp YyBzdGF0aWMgTWV0YS5CdXR0b25MYXlvdXQgcHJlZnNfZ2V0X2J1dHRvbl9sYXlvdXQgKCk7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0 YV9wcmVmc19nZXRfY2VudGVyX25ld193aW5kb3dzIildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wg cHJlZnNfZ2V0X2NlbnRlcl9uZXdfd2luZG93cyAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9jb21wb3NpdGlu Z19tYW5hZ2VyIildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wgcHJlZnNfZ2V0X2NvbXBvc2l0aW5n X21hbmFnZXIgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5o IiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfY3Vyc29yX3NpemUiKV0KKysJCXB1YmxpYyBzdGF0 aWMgaW50IHByZWZzX2dldF9jdXJzb3Jfc2l6ZSAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9jdXJzb3JfdGhl bWUiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBzdHJpbmcgcHJlZnNfZ2V0X2N1cnNvcl90 aGVtZSAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBj bmFtZSA9ICJtZXRhX3ByZWZzX2dldF9kaXNhYmxlX3dvcmthcm91bmRzIildCisrCQlwdWJsaWMg c3RhdGljIGJvb2wgcHJlZnNfZ2V0X2Rpc2FibGVfd29ya2Fyb3VuZHMgKCk7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19n ZXRfZHJhZ190aHJlc2hvbGQiKV0KKysJCXB1YmxpYyBzdGF0aWMgaW50IHByZWZzX2dldF9kcmFn X3RocmVzaG9sZCAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZz LmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9kcmFnZ2FibGVfYm9yZGVyX3dpZHRoIildCisr CQlwdWJsaWMgc3RhdGljIGludCBwcmVmc19nZXRfZHJhZ2dhYmxlX2JvcmRlcl93aWR0aCAoKTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJt ZXRhX3ByZWZzX2dldF9keW5hbWljX3dvcmtzcGFjZXMiKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9v bCBwcmVmc19nZXRfZHluYW1pY193b3Jrc3BhY2VzICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X2VkZ2VfdGls aW5nIildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wgcHJlZnNfZ2V0X2VkZ2VfdGlsaW5nICgpOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1l dGFfcHJlZnNfZ2V0X2ZvY3VzX2NoYW5nZV9vbl9wb2ludGVyX3Jlc3QiKV0KKysJCXB1YmxpYyBz dGF0aWMgYm9vbCBwcmVmc19nZXRfZm9jdXNfY2hhbmdlX29uX3BvaW50ZXJfcmVzdCAoKTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRh X3ByZWZzX2dldF9mb2N1c19tb2RlIildCisrCQlwdWJsaWMgc3RhdGljIEdEZXNrdG9wLkZvY3Vz TW9kZSBwcmVmc19nZXRfZm9jdXNfbW9kZSAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9mb2N1c19uZXdfd2lu ZG93cyIpXQorKwkJcHVibGljIHN0YXRpYyBHRGVza3RvcC5Gb2N1c05ld1dpbmRvd3MgcHJlZnNf Z2V0X2ZvY3VzX25ld193aW5kb3dzICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g Im1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X2ZvcmNlX2Z1bGxzY3JlZW4i KV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBwcmVmc19nZXRfZm9yY2VfZnVsbHNjcmVlbiAoKTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJt ZXRhX3ByZWZzX2dldF9nbm9tZV9hY2Nlc3NpYmlsaXR5IildCisrCQlwdWJsaWMgc3RhdGljIGJv b2wgcHJlZnNfZ2V0X2dub21lX2FjY2Vzc2liaWxpdHkgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfZ25vbWVf YW5pbWF0aW9ucyIpXQorKwkJcHVibGljIHN0YXRpYyBib29sIHByZWZzX2dldF9nbm9tZV9hbmlt YXRpb25zICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIs IGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X2tleWJpbmRpbmdfYWN0aW9uIildCisrCQlwdWJsaWMg c3RhdGljIE1ldGEuS2V5QmluZGluZ0FjdGlvbiBwcmVmc19nZXRfa2V5YmluZGluZ19hY3Rpb24g KHN0cmluZyBuYW1lKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZz LmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9tb3VzZV9idXR0b25fbWVudSIpXQorKwkJcHVi bGljIHN0YXRpYyBpbnQgcHJlZnNfZ2V0X21vdXNlX2J1dHRvbl9tZW51ICgpOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNf Z2V0X21vdXNlX2J1dHRvbl9tb2RzIildCisrCQlwdWJsaWMgc3RhdGljIE1ldGEuVmlydHVhbE1v ZGlmaWVyIHByZWZzX2dldF9tb3VzZV9idXR0b25fbW9kcyAoKTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9tb3Vz ZV9idXR0b25fcmVzaXplIildCisrCQlwdWJsaWMgc3RhdGljIGludCBwcmVmc19nZXRfbW91c2Vf YnV0dG9uX3Jlc2l6ZSAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3By ZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9udW1fd29ya3NwYWNlcyIpXQorKwkJcHVi bGljIHN0YXRpYyBpbnQgcHJlZnNfZ2V0X251bV93b3Jrc3BhY2VzICgpOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0 X3JhaXNlX29uX2NsaWNrIildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wgcHJlZnNfZ2V0X3JhaXNl X29uX2NsaWNrICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMu aCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X3Nob3dfZmFsbGJhY2tfYXBwX21lbnUiKV0KKysJ CXB1YmxpYyBzdGF0aWMgYm9vbCBwcmVmc19nZXRfc2hvd19mYWxsYmFja19hcHBfbWVudSAoKTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJt ZXRhX3ByZWZzX2dldF90aXRsZWJhcl9mb250IildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQg UGFuZ28uRm9udERlc2NyaXB0aW9uIHByZWZzX2dldF90aXRsZWJhcl9mb250ICgpOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJl ZnNfZ2V0X3Zpc3VhbF9iZWxsIildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wgcHJlZnNfZ2V0X3Zp c3VhbF9iZWxsICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMu aCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X3Zpc3VhbF9iZWxsX3R5cGUiKV0KKysJCXB1Ymxp YyBzdGF0aWMgR0Rlc2t0b3AuVmlzdWFsQmVsbFR5cGUgcHJlZnNfZ2V0X3Zpc3VhbF9iZWxsX3R5 cGUgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25h bWUgPSAibWV0YV9wcmVmc19nZXRfd29ya3NwYWNlX25hbWUiKV0KKysJCXB1YmxpYyBzdGF0aWMg dW5vd25lZCBzdHJpbmcgcHJlZnNfZ2V0X3dvcmtzcGFjZV9uYW1lIChpbnQgaSk7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVm c19nZXRfd29ya3NwYWNlc19vbmx5X29uX3ByaW1hcnkiKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9v bCBwcmVmc19nZXRfd29ya3NwYWNlc19vbmx5X29uX3ByaW1hcnkgKCk7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19pbml0 IildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQgcHJlZnNfaW5pdCAoKTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX3NldF9m b3JjZV9mdWxsc2NyZWVuIildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQgcHJlZnNfc2V0X2ZvcmNl X2Z1bGxzY3JlZW4gKGJvb2wgd2hldGhlcik7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19zZXRfbnVtX3dvcmtzcGFjZXMi KV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBwcmVmc19zZXRfbnVtX3dvcmtzcGFjZXMgKGludCBu X3dvcmtzcGFjZXMpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMu aCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfc2V0X3Nob3dfZmFsbGJhY2tfYXBwX21lbnUiKV0KKysJ CXB1YmxpYyBzdGF0aWMgdm9pZCBwcmVmc19zZXRfc2hvd19mYWxsYmFja19hcHBfbWVudSAoYm9v bCB3aGV0aGVyKTsKKysJfQorKwluYW1lc3BhY2UgVXRpbCB7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX2FkZF92ZXJib3NlX3RvcGlj IildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQgYWRkX3ZlcmJvc2VfdG9waWMgKE1ldGEuRGVidWdU b3BpYyB0b3BpYyk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgi LCBjbmFtZSA9ICJtZXRhX2V4dGVybmFsX2JpbmRpbmdfbmFtZV9mb3JfYWN0aW9uIildCisrCQlw dWJsaWMgc3RhdGljIHN0cmluZyBleHRlcm5hbF9iaW5kaW5nX25hbWVfZm9yX2FjdGlvbiAodWlu dCBrZXliaW5kaW5nX2FjdGlvbik7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0 YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX2dldF9sb2NhbGVfZGlyZWN0aW9uIildCisrCQlwdWJs aWMgc3RhdGljIE1ldGEuTG9jYWxlRGlyZWN0aW9uIGdldF9sb2NhbGVfZGlyZWN0aW9uICgpOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRpbC5oIiwgY25hbWUgPSAibWV0 YV9ncmF2aXR5X3RvX3N0cmluZyIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIHN0cmluZyBn cmF2aXR5X3RvX3N0cmluZyAoaW50IGdyYXZpdHkpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gIm1ldGEvdXRpbC5oIiwgY25hbWUgPSAibWV0YV9pc19kZWJ1Z2dpbmciKV0KKysJCXB1 YmxpYyBzdGF0aWMgYm9vbCBpc19kZWJ1Z2dpbmcgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX2lzX3N5bmNpbmciKV0KKysJCXB1 YmxpYyBzdGF0aWMgYm9vbCBpc19zeW5jaW5nICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gIm1ldGEvdXRpbC5oIiwgY25hbWUgPSAibWV0YV9pc192ZXJib3NlIildCisrCQlwdWJs aWMgc3RhdGljIGJvb2wgaXNfdmVyYm9zZSAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJtZXRhL3V0aWwuaCIsIGNuYW1lID0gIm1ldGFfaXNfd2F5bGFuZF9jb21wb3NpdG9yIild CisrCQlwdWJsaWMgc3RhdGljIGJvb2wgaXNfd2F5bGFuZF9jb21wb3NpdG9yICgpOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRpbC5oIiwgY25hbWUgPSAibWV0YV9sYXRl cl9hZGQiKV0KKysJCXB1YmxpYyBzdGF0aWMgdWludCBsYXRlcl9hZGQgKE1ldGEuTGF0ZXJUeXBl IHdoZW4sIG93bmVkIEdMaWIuU291cmNlRnVuYyBmdW5jKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJtZXRhL3V0aWwuaCIsIGNuYW1lID0gIm1ldGFfbGF0ZXJfcmVtb3ZlIildCisr CQlwdWJsaWMgc3RhdGljIHZvaWQgbGF0ZXJfcmVtb3ZlICh1aW50IGxhdGVyX2lkKTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3V0aWwuaCIsIGNuYW1lID0gIm1ldGFfcG9w X25vX21zZ19wcmVmaXgiKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBwb3Bfbm9fbXNnX3ByZWZp eCAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3V0aWwuaCIsIGNuYW1l ID0gIm1ldGFfcHVzaF9ub19tc2dfcHJlZml4IildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQgcHVz aF9ub19tc2dfcHJlZml4ICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEv dXRpbC5oIiwgY25hbWUgPSAibWV0YV9yZWN0IildCisrCQlwdWJsaWMgc3RhdGljIE1ldGEuUmVj dGFuZ2xlPyByZWN0IChpbnQgeCwgaW50IHksIGludCB3aWR0aCwgaW50IGhlaWdodCk7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX3Jl bW92ZV92ZXJib3NlX3RvcGljIildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQgcmVtb3ZlX3ZlcmJv c2VfdG9waWMgKE1ldGEuRGVidWdUb3BpYyB0b3BpYyk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX3Nob3dfZGlhbG9nIildCisrCQlw dWJsaWMgc3RhdGljIEdMaWIuUGlkIHNob3dfZGlhbG9nIChzdHJpbmcgdHlwZSwgc3RyaW5nIG1l c3NhZ2UsIHN0cmluZyB0aW1lb3V0LCBzdHJpbmcgZGlzcGxheSwgc3RyaW5nIG9rX3RleHQsIHN0 cmluZyBjYW5jZWxfdGV4dCwgc3RyaW5nIGljb25fbmFtZSwgaW50IHRyYW5zaWVudF9mb3IsIEdM aWIuU0xpc3Q8dm9pZCo+IGNvbHVtbnMsIEdMaWIuU0xpc3Q8dm9pZCo+IGVudHJpZXMpOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRpbC5oIiwgY25hbWUgPSAibWV0YV91 bnNpZ25lZF9sb25nX2VxdWFsIildCisrCQlwdWJsaWMgc3RhdGljIGludCB1bnNpZ25lZF9sb25n X2VxdWFsICh2b2lkKiB2MSwgdm9pZCogdjIpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gIm1ldGEvdXRpbC5oIiwgY25hbWUgPSAibWV0YV91bnNpZ25lZF9sb25nX2hhc2giKV0KKysJ CXB1YmxpYyBzdGF0aWMgdWludCB1bnNpZ25lZF9sb25nX2hhc2ggKHZvaWQqIHYpOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRpbC5oIiwgY25hbWUgPSAibWV0YV94MTFf ZXJyb3JfdHJhcF9wb3AiKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCB4MTFfZXJyb3JfdHJhcF9w b3AgKE1ldGEuWDExRGlzcGxheSB4MTFfZGlzcGxheSk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX3gxMV9lcnJvcl90cmFwX3BvcF93 aXRoX3JldHVybiIpXQorKwkJcHVibGljIHN0YXRpYyBpbnQgeDExX2Vycm9yX3RyYXBfcG9wX3dp dGhfcmV0dXJuIChNZXRhLlgxMURpc3BsYXkgeDExX2Rpc3BsYXkpOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRpbC5oIiwgY25hbWUgPSAibWV0YV94MTFfZXJyb3JfdHJh cF9wdXNoIildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQgeDExX2Vycm9yX3RyYXBfcHVzaCAoTWV0 YS5YMTFEaXNwbGF5IHgxMV9kaXNwbGF5KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAibWV0YS9tZXRhLWJhY2tlbmQuaCIsIHR5cGVfaWQgPSAibWV0YV9iYWNrZW5kX2dldF90 eXBlICgpIildCisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBCYWNrZW5kIDogR0xpYi5PYmplY3Qs IEdMaWIuSW5pdGFibGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFs c2UpXQorKwkJcHJvdGVjdGVkIEJhY2tlbmQgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAibWV0YS9tZXRhLWJhY2tlbmQuaCIsIGNuYW1lID0gIm1ldGFfZ2V0X2JhY2tlbmQiKV0K KysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBNZXRhLkJhY2tlbmQgZ2V0X2JhY2tlbmQgKCk7Cisr CQlwdWJsaWMgdW5vd25lZCBNZXRhLkRuZCBnZXRfZG5kICgpOworKwkJcHVibGljIHVub3duZWQg TWV0YS5SZW1vdGVBY2Nlc3NDb250cm9sbGVyIGdldF9yZW1vdGVfYWNjZXNzX2NvbnRyb2xsZXIg KCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF9zdGFnZSAoKTsKKysJCXB1 YmxpYyB2b2lkIGxvY2tfbGF5b3V0X2dyb3VwICh1aW50IGlkeCk7CisrCQlwdWJsaWMgdm9pZCBz ZXRfa2V5bWFwIChzdHJpbmcgbGF5b3V0cywgc3RyaW5nIHZhcmlhbnRzLCBzdHJpbmcgb3B0aW9u cyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfbnVtbG9jayAoYm9vbCBudW1sb2NrX3N0YXRlKTsKKysJ CXB1YmxpYyBzaWduYWwgdm9pZCBrZXltYXBfY2hhbmdlZCAoKTsKKysJCXB1YmxpYyBzaWduYWwg dm9pZCBrZXltYXBfbGF5b3V0X2dyb3VwX2NoYW5nZWQgKHVpbnQgb2JqZWN0KTsKKysJCXB1Ymxp YyBzaWduYWwgdm9pZCBsYXN0X2RldmljZV9jaGFuZ2VkIChDbHV0dGVyLklucHV0RGV2aWNlIG9i amVjdCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgbGlkX2lzX2Nsb3NlZF9jaGFuZ2VkIChib29s IG9iamVjdCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1i YWNrZ3JvdW5kLmgiLCB0eXBlX2lkID0gIm1ldGFfYmFja2dyb3VuZF9nZXRfdHlwZSAoKSIpXQor KwlwdWJsaWMgY2xhc3MgQmFja2dyb3VuZCA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFz X2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1YmxpYyBCYWNrZ3JvdW5kIChNZXRh LkRpc3BsYXkgZGlzcGxheSk7CisrCQlwdWJsaWMgc3RhdGljIHZvaWQgcmVmcmVzaF9hbGwgKCk7 CisrCQlwdWJsaWMgdm9pZCBzZXRfYmxlbmQgKEdMaWIuRmlsZSBmaWxlMSwgR0xpYi5GaWxlIGZp bGUyLCBkb3VibGUgYmxlbmRfZmFjdG9yLCBHRGVza3RvcC5CYWNrZ3JvdW5kU3R5bGUgc3R5bGUp OworKwkJcHVibGljIHZvaWQgc2V0X2NvbG9yIChDbHV0dGVyLkNvbG9yIGNvbG9yKTsKKysJCXB1 YmxpYyB2b2lkIHNldF9maWxlIChHTGliLkZpbGU/IGZpbGUsIEdEZXNrdG9wLkJhY2tncm91bmRT dHlsZSBzdHlsZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfZ3JhZGllbnQgKEdEZXNrdG9wLkJhY2tn cm91bmRTaGFkaW5nIHNoYWRpbmdfZGlyZWN0aW9uLCBDbHV0dGVyLkNvbG9yIGNvbG9yLCBDbHV0 dGVyLkNvbG9yIHNlY29uZF9jb2xvcik7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1Ymxp YyBNZXRhLkRpc3BsYXkgbWV0YV9kaXNwbGF5IHsgb3duZWQgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJ CXB1YmxpYyBzaWduYWwgdm9pZCBjaGFuZ2VkICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJtZXRhL21ldGEtYmFja2dyb3VuZC1hY3Rvci5oIiwgdHlwZV9pZCA9ICJtZXRh X2JhY2tncm91bmRfYWN0b3JfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIEJhY2tncm91 bmRBY3RvciA6IENsdXR0ZXIuQWN0b3IsIEF0ay5JbXBsZW1lbnRvciwgQ2x1dHRlci5BbmltYXRh YmxlLCBDbHV0dGVyLkNvbnRhaW5lciwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAo aGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3RvcioiKV0K KysJCXB1YmxpYyBCYWNrZ3JvdW5kQWN0b3IgKE1ldGEuRGlzcGxheSBkaXNwbGF5LCBpbnQgbW9u aXRvcik7CisrCQlwdWJsaWMgdm9pZCBzZXRfYmFja2dyb3VuZCAoTWV0YS5CYWNrZ3JvdW5kIGJh Y2tncm91bmQpOworKwkJcHVibGljIHZvaWQgc2V0X2dyYWRpZW50IChib29sIGVuYWJsZWQsIGlu dCBoZWlnaHQsIGRvdWJsZSB0b25lX3N0YXJ0KTsKKysJCXB1YmxpYyB2b2lkIHNldF9tb25pdG9y IChpbnQgbW9uaXRvcik7CisrCQlwdWJsaWMgdm9pZCBzZXRfdmlnbmV0dGUgKGJvb2wgZW5hYmxl ZCwgZG91YmxlIGJyaWdodG5lc3MsIGRvdWJsZSBzaGFycG5lc3MpOworKwkJW05vQWNjZXNzb3JN ZXRob2RdCisrCQlwdWJsaWMgTWV0YS5CYWNrZ3JvdW5kIGJhY2tncm91bmQgeyBvd25lZCBnZXQ7 IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgZG91YmxlIGJyaWdodG5l c3MgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9vbCBn cmFkaWVudCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBp bnQgZ3JhZGllbnRfaGVpZ2h0IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQor KwkJcHVibGljIGRvdWJsZSBncmFkaWVudF9tYXhfZGFya25lc3MgeyBnZXQ7IHNldDsgfQorKwkJ W05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgTWV0YS5EaXNwbGF5IG1ldGFfZGlzcGxheSB7 IG93bmVkIGdldDsgY29uc3RydWN0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1Ymxp YyBpbnQgbW9uaXRvciB7IGdldDsgY29uc3RydWN0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0K KysJCXB1YmxpYyBib29sIHZpZ25ldHRlIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0 aG9kXQorKwkJcHVibGljIGRvdWJsZSB2aWduZXR0ZV9zaGFycG5lc3MgeyBnZXQ7IHNldDsgfQor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtYmFja2dyb3VuZC1n cm91cC5oIiwgdHlwZV9pZCA9ICJtZXRhX2JhY2tncm91bmRfZ3JvdXBfZ2V0X3R5cGUgKCkiKV0K KysJcHVibGljIGNsYXNzIEJhY2tncm91bmRHcm91cCA6IENsdXR0ZXIuQWN0b3IsIEF0ay5JbXBs ZW1lbnRvciwgQ2x1dHRlci5BbmltYXRhYmxlLCBDbHV0dGVyLkNvbnRhaW5lciwgQ2x1dHRlci5T Y3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0 eXBlID0gIkNsdXR0ZXJBY3RvcioiKV0KKysJCXB1YmxpYyBCYWNrZ3JvdW5kR3JvdXAgKCk7Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1iYWNrZ3JvdW5kLWlt YWdlLmgiLCB0eXBlX2lkID0gIm1ldGFfYmFja2dyb3VuZF9pbWFnZV9nZXRfdHlwZSAoKSIpXQor KwlwdWJsaWMgY2xhc3MgQmFja2dyb3VuZEltYWdlIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2Rl IChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIEJhY2tncm91 bmRJbWFnZSAoKTsKKysJCXB1YmxpYyBib29sIGdldF9zdWNjZXNzICgpOworKwkJcHVibGljIHVu b3duZWQgQ29nbC5UZXh0dXJlIGdldF90ZXh0dXJlICgpOworKwkJcHVibGljIGJvb2wgaXNfbG9h ZGVkICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGxvYWRlZCAoKTsKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLWJhY2tncm91bmQtaW1hZ2UuaCIsIHR5cGVf aWQgPSAibWV0YV9iYWNrZ3JvdW5kX2ltYWdlX2NhY2hlX2dldF90eXBlICgpIildCisrCXB1Ymxp YyBjbGFzcyBCYWNrZ3JvdW5kSW1hZ2VDYWNoZSA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAo aGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBCYWNrZ3JvdW5k SW1hZ2VDYWNoZSAoKTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBNZXRhLkJhY2tncm91bmRJ bWFnZUNhY2hlIGdldF9kZWZhdWx0ICgpOworKwkJcHVibGljIE1ldGEuQmFja2dyb3VuZEltYWdl IGxvYWQgKEdMaWIuRmlsZSBmaWxlKTsKKysJCXB1YmxpYyB2b2lkIHB1cmdlIChHTGliLkZpbGUg ZmlsZSk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvYmFycmllci5o IiwgdHlwZV9pZCA9ICJtZXRhX2JhcnJpZXJfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNz IEJhcnJpZXIgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rp b24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgQmFycmllciAoKTsKKysJCXB1YmxpYyB2b2lkIGRl c3Ryb3kgKCk7CisrCQlwdWJsaWMgYm9vbCBpc19hY3RpdmUgKCk7CisrCQlwdWJsaWMgdm9pZCBy ZWxlYXNlIChNZXRhLkJhcnJpZXJFdmVudCBldmVudCk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0K KysJCXB1YmxpYyBNZXRhLkJhcnJpZXJEaXJlY3Rpb24gZGlyZWN0aW9ucyB7IGdldDsgY29uc3Ry dWN0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBNZXRhLkRpc3BsYXkgZGlz cGxheSB7IG93bmVkIGdldDsgY29uc3RydWN0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJ CXB1YmxpYyBpbnQgeDEgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2Rd CisrCQlwdWJsaWMgaW50IHgyIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtOb0FjY2Vzc29yTWV0 aG9kXQorKwkJcHVibGljIGludCB5MSB7IGdldDsgY29uc3RydWN0OyB9CisrCQlbTm9BY2Nlc3Nv ck1ldGhvZF0KKysJCXB1YmxpYyBpbnQgeTIgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVibGlj IHNpZ25hbCB2b2lkIGhpdCAoTWV0YS5CYXJyaWVyRXZlbnQgZXZlbnQpOworKwkJcHVibGljIHNp Z25hbCB2b2lkIGxlZnQgKE1ldGEuQmFycmllckV2ZW50IGV2ZW50KTsKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9iYXJyaWVyLmgiLCBjb3B5X2Z1bmN0aW9uID0gImdf Ym94ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJt ZXRhX2JhcnJpZXJfZXZlbnRfZ2V0X3R5cGUgKCkiKV0KKysJW0NvbXBhY3RdCisrCXB1YmxpYyBj bGFzcyBCYXJyaWVyRXZlbnQgeworKwkJcHVibGljIGludCBkdDsKKysJCXB1YmxpYyBkb3VibGUg ZHg7CisrCQlwdWJsaWMgZG91YmxlIGR5OworKwkJcHVibGljIGludCBldmVudF9pZDsKKysJCXB1 YmxpYyBib29sIGdyYWJiZWQ7CisrCQlwdWJsaWMgYm9vbCByZWxlYXNlZDsKKysJCXB1YmxpYyB1 aW50MzIgdGltZTsKKysJCXB1YmxpYyBkb3VibGUgeDsKKysJCXB1YmxpYyBkb3VibGUgeTsKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLWN1cnNvci10cmFja2Vy LmgiLCB0eXBlX2lkID0gIm1ldGFfY3Vyc29yX3RyYWNrZXJfZ2V0X3R5cGUgKCkiKV0KKysJcHVi bGljIGNsYXNzIEN1cnNvclRyYWNrZXIgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19j b25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgQ3Vyc29yVHJhY2tlciAo KTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBNZXRhLkN1cnNvclRyYWNrZXIgZ2V0X2Zvcl9k aXNwbGF5IChNZXRhLkRpc3BsYXkgZGlzcGxheSk7CisrCQlwdWJsaWMgdm9pZCBnZXRfaG90IChv dXQgaW50IHgsIG91dCBpbnQgeSk7CisrCQlwdWJsaWMgdm9pZCBnZXRfcG9pbnRlciAoaW50IHgs IGludCB5LCBDbHV0dGVyLk1vZGlmaWVyVHlwZSBtb2RzKTsKKysJCXB1YmxpYyBib29sIGdldF9w b2ludGVyX3Zpc2libGUgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDb2dsLlRleHR1cmUgZ2V0X3Nw cml0ZSAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9wb2ludGVyX3Zpc2libGUgKGJvb2wgdmlzaWJs ZSk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgY3Vyc29yX2NoYW5nZWQgKCk7CisrCQlwdWJsaWMg c2lnbmFsIHZvaWQgY3Vyc29yX21vdmVkIChmbG9hdCB4LCBmbG9hdCB5KTsKKysJCXB1YmxpYyBz aWduYWwgdm9pZCB2aXNpYmlsaXR5X2NoYW5nZWQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gIm1ldGEvZGlzcGxheS5oIiwgdHlwZV9pZCA9ICJtZXRhX2Rpc3BsYXlfZ2V0 X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIERpc3BsYXkgOiBHTGliLk9iamVjdCB7CisrCQlb Q0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgRGlz cGxheSAoKTsKKysJCXB1YmxpYyB2b2lkIGFkZF9pZ25vcmVkX2Nyb3NzaW5nX3NlcmlhbCAodWxv bmcgc2VyaWFsKTsKKysJCXB1YmxpYyB1aW50IGFkZF9rZXliaW5kaW5nIChzdHJpbmcgbmFtZSwg R0xpYi5TZXR0aW5ncyBzZXR0aW5ncywgTWV0YS5LZXlCaW5kaW5nRmxhZ3MgZmxhZ3MsIG93bmVk IE1ldGEuS2V5SGFuZGxlckZ1bmMgaGFuZGxlcik7CisrCQlwdWJsaWMgYm9vbCBiZWdpbl9ncmFi X29wIChNZXRhLldpbmRvdyB3aW5kb3csIE1ldGEuR3JhYk9wIG9wLCBib29sIHBvaW50ZXJfYWxy ZWFkeV9ncmFiYmVkLCBib29sIGZyYW1lX2FjdGlvbiwgaW50IGJ1dHRvbiwgdWxvbmcgbW9kbWFz aywgdWludDMyIHRpbWVzdGFtcCwgaW50IHJvb3RfeCwgaW50IHJvb3RfeSk7CisrCQlwdWJsaWMg dm9pZCBjbGVhcl9tb3VzZV9tb2RlICgpOworKwkJcHVibGljIHZvaWQgY2xvc2UgKHVpbnQzMiB0 aW1lc3RhbXApOworKwkJcHVibGljIHZvaWQgZW5kX2dyYWJfb3AgKHVpbnQzMiB0aW1lc3RhbXAp OworKwkJcHVibGljIHZvaWQgZm9jdXNfZGVmYXVsdF93aW5kb3cgKHVpbnQzMiB0aW1lc3RhbXAp OworKwkJcHVibGljIHZvaWQgZnJlZXplX2tleWJvYXJkICh1aW50MzIgdGltZXN0YW1wKTsKKysJ CXB1YmxpYyBpbnQgZ2V0X2N1cnJlbnRfbW9uaXRvciAoKTsKKysJCXB1YmxpYyB1aW50MzIgZ2V0 X2N1cnJlbnRfdGltZSAoKTsKKysJCXB1YmxpYyB1aW50MzIgZ2V0X2N1cnJlbnRfdGltZV9yb3Vu ZHRyaXAgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLldpbmRvdyBnZXRfZm9jdXNfd2luZG93 ICgpOworKwkJcHVibGljIE1ldGEuR3JhYk9wIGdldF9ncmFiX29wICgpOworKwkJcHVibGljIHVp bnQgZ2V0X2tleWJpbmRpbmdfYWN0aW9uICh1aW50IGtleWNvZGUsIHVsb25nIG1hc2spOworKwkJ cHVibGljIHVpbnQzMiBnZXRfbGFzdF91c2VyX3RpbWUgKCk7CisrCQlwdWJsaWMgTWV0YS5SZWN0 YW5nbGUgZ2V0X21vbml0b3JfZ2VvbWV0cnkgKGludCBtb25pdG9yKTsKKysJCXB1YmxpYyBib29s IGdldF9tb25pdG9yX2luX2Z1bGxzY3JlZW4gKGludCBtb25pdG9yKTsKKysJCXB1YmxpYyBpbnQg Z2V0X21vbml0b3JfaW5kZXhfZm9yX3JlY3QgKE1ldGEuUmVjdGFuZ2xlIHJlY3QpOworKwkJcHVi bGljIGludCBnZXRfbW9uaXRvcl9uZWlnaGJvcl9pbmRleCAoaW50IHdoaWNoX21vbml0b3IsIE1l dGEuRGlzcGxheURpcmVjdGlvbiBkaXIpOworKwkJcHVibGljIGZsb2F0IGdldF9tb25pdG9yX3Nj YWxlIChpbnQgbW9uaXRvcik7CisrCQlwdWJsaWMgaW50IGdldF9uX21vbml0b3JzICgpOworKwkJ cHVibGljIHN0cmluZyBnZXRfcGFkX2FjdGlvbl9sYWJlbCAoQ2x1dHRlci5JbnB1dERldmljZSBw YWQsIE1ldGEuUGFkQWN0aW9uVHlwZSBhY3Rpb25fdHlwZSwgdWludCBhY3Rpb25fbnVtYmVyKTsK KysJCXB1YmxpYyBpbnQgZ2V0X3ByaW1hcnlfbW9uaXRvciAoKTsKKysJCXB1YmxpYyB1bm93bmVk IE1ldGEuU2VsZWN0aW9uIGdldF9zZWxlY3Rpb24gKCk7CisrCQlwdWJsaWMgdm9pZCBnZXRfc2l6 ZSAob3V0IGludCB3aWR0aCwgb3V0IGludCBoZWlnaHQpOworKwkJcHVibGljIHVub3duZWQgTWV0 YS5Tb3VuZFBsYXllciBnZXRfc291bmRfcGxheWVyICgpOworKwkJcHVibGljIHVub3duZWQgTWV0 YS5XaW5kb3cgZ2V0X3RhYl9jdXJyZW50IChNZXRhLlRhYkxpc3QgdHlwZSwgTWV0YS5Xb3Jrc3Bh Y2Ugd29ya3NwYWNlKTsKKysJCXB1YmxpYyBHTGliLkxpc3Q8d2VhayBNZXRhLldpbmRvdz4gZ2V0 X3RhYl9saXN0IChNZXRhLlRhYkxpc3QgdHlwZSwgTWV0YS5Xb3Jrc3BhY2U/IHdvcmtzcGFjZSk7 CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLldpbmRvdyBnZXRfdGFiX25leHQgKE1ldGEuVGFiTGlz dCB0eXBlLCBNZXRhLldvcmtzcGFjZSB3b3Jrc3BhY2UsIE1ldGEuV2luZG93PyB3aW5kb3csIGJv b2wgYmFja3dhcmQpOworKwkJcHVibGljIHVub3duZWQgTWV0YS5Xb3Jrc3BhY2VNYW5hZ2VyIGdl dF93b3Jrc3BhY2VfbWFuYWdlciAoKTsKKysJCXB1YmxpYyB1aW50IGdyYWJfYWNjZWxlcmF0b3Ig KHN0cmluZyBhY2NlbGVyYXRvciwgTWV0YS5LZXlCaW5kaW5nRmxhZ3MgZmxhZ3MpOworKwkJcHVi bGljIGJvb2wgaXNfcG9pbnRlcl9lbXVsYXRpbmdfc2VxdWVuY2UgKENsdXR0ZXIuRXZlbnRTZXF1 ZW5jZT8gc2VxdWVuY2UpOworKwkJcHVibGljIGJvb2wgcmVtb3ZlX2tleWJpbmRpbmcgKHN0cmlu ZyBuYW1lKTsKKysJCXB1YmxpYyB2b2lkIHJlcXVlc3RfcGFkX29zZCAoQ2x1dHRlci5JbnB1dERl dmljZSBwYWQsIGJvb2wgZWRpdGlvbl9tb2RlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9jdXJzb3Ig KE1ldGEuQ3Vyc29yIGN1cnNvcik7CisrCQlwdWJsaWMgdm9pZCBzZXRfaW5wdXRfZm9jdXMgKE1l dGEuV2luZG93IHdpbmRvdywgYm9vbCBmb2N1c19mcmFtZSwgdWludDMyIHRpbWVzdGFtcCk7Cisr CQlwdWJsaWMgR0xpYi5TTGlzdDx3ZWFrIE1ldGEuV2luZG93PiBzb3J0X3dpbmRvd3NfYnlfc3Rh Y2tpbmcgKEdMaWIuU0xpc3Q8TWV0YS5XaW5kb3c+IHdpbmRvd3MpOworKwkJcHVibGljIGJvb2wg c3VwcG9ydHNfZXh0ZW5kZWRfYmFycmllcnMgKCk7CisrCQlwdWJsaWMgdm9pZCB1bmZyZWV6ZV9r ZXlib2FyZCAodWludDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMgYm9vbCB1bmdyYWJfYWNjZWxl cmF0b3IgKHVpbnQgYWN0aW9uX2lkKTsKKysJCXB1YmxpYyB2b2lkIHVuZ3JhYl9rZXlib2FyZCAo dWludDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMgdm9pZCB1bnNldF9pbnB1dF9mb2N1cyAodWlu dDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMgYm9vbCB4c2VydmVyX3RpbWVfaXNfYmVmb3JlICh1 aW50MzIgdGltZTEsIHVpbnQzMiB0aW1lMik7CisrCQlwdWJsaWMgTWV0YS5XaW5kb3cgZm9jdXNf d2luZG93IHsgZ2V0OyB9CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgYWNjZWxlcmF0b3JfYWN0aXZh dGVkICh1aW50IG9iamVjdCwgQ2x1dHRlci5JbnB1dERldmljZSBwMCwgdWludCBwMSk7CisrCQlw dWJsaWMgc2lnbmFsIHZvaWQgY2xvc2luZyAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBjdXJz b3JfdXBkYXRlZCAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBnbF92aWRlb19tZW1vcnlfcHVy Z2VkICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGdyYWJfb3BfYmVnaW4gKE1ldGEuRGlzcGxh eSBvYmplY3QsIE1ldGEuV2luZG93IHAwLCBNZXRhLkdyYWJPcCBwMSk7CisrCQlwdWJsaWMgc2ln bmFsIHZvaWQgZ3JhYl9vcF9lbmQgKE1ldGEuRGlzcGxheSBvYmplY3QsIE1ldGEuV2luZG93IHAw LCBNZXRhLkdyYWJPcCBwMSk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgaW5fZnVsbHNjcmVlbl9j aGFuZ2VkICgpOworKwkJcHVibGljIHNpZ25hbCBib29sIG1vZGlmaWVyc19hY2NlbGVyYXRvcl9h Y3RpdmF0ZWQgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgb3ZlcmxheV9rZXkgKCk7CisrCQlw dWJsaWMgc2lnbmFsIHZvaWQgcGFkX21vZGVfc3dpdGNoIChDbHV0dGVyLklucHV0RGV2aWNlIG9i amVjdCwgdWludCBwMCwgdWludCBwMSk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgcmVzdGFja2Vk ICgpOworKwkJcHVibGljIHNpZ25hbCBib29sIHJlc3RhcnQgKCk7CisrCQlwdWJsaWMgc2lnbmFs IHZvaWQgc2hvd19vc2QgKGludCBvYmplY3QsIHN0cmluZyBwMCwgc3RyaW5nIHAxKTsKKysJCXB1 YmxpYyBzaWduYWwgdW5vd25lZCBDbHV0dGVyLkFjdG9yPyBzaG93X3BhZF9vc2QgKENsdXR0ZXIu SW5wdXREZXZpY2UgcGFkLCBHTGliLlNldHRpbmdzIHNldHRpbmdzLCBzdHJpbmcgbGF5b3V0X3Bh dGgsIGJvb2wgZWRpdGlvbl9tb2RlLCBpbnQgbW9uaXRvcl9pZHgpOworKwkJcHVibGljIHNpZ25h bCBib29sIHNob3dfcmVzaXplX3BvcHVwIChib29sIG9iamVjdCwgTWV0YS5SZWN0YW5nbGUgcDAs IGludCBwMSwgaW50IHAyKTsKKysJCXB1YmxpYyBzaWduYWwgYm9vbCBzaG93X3Jlc3RhcnRfbWVz c2FnZSAoc3RyaW5nPyBtZXNzYWdlKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBzaG93aW5nX2Rl c2t0b3BfY2hhbmdlZCAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCB3aW5kb3dfY3JlYXRlZCAo TWV0YS5XaW5kb3cgb2JqZWN0KTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCB3aW5kb3dfZGVtYW5k c19hdHRlbnRpb24gKE1ldGEuV2luZG93IG9iamVjdCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQg d2luZG93X2VudGVyZWRfbW9uaXRvciAoaW50IG9iamVjdCwgTWV0YS5XaW5kb3cgcDApOworKwkJ cHVibGljIHNpZ25hbCB2b2lkIHdpbmRvd19sZWZ0X21vbml0b3IgKGludCBvYmplY3QsIE1ldGEu V2luZG93IHAwKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCB3aW5kb3dfbWFya2VkX3VyZ2VudCAo TWV0YS5XaW5kb3cgb2JqZWN0KTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCB3b3JrYXJlYXNfY2hh bmdlZCAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCB4MTFfZGlzcGxheV9jbG9zaW5nICgpOwor KwkJcHVibGljIHNpZ25hbCB2b2lkIHgxMV9kaXNwbGF5X29wZW5lZCAoKTsKKysJCXB1YmxpYyBz aWduYWwgdm9pZCB4MTFfZGlzcGxheV9zZXR1cCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAibWV0YS9tZXRhLWRuZC5oIiwgdHlwZV9pZCA9ICJtZXRhX2RuZF9nZXRfdHlw ZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgRG5kIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlICho YXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIERuZCAoKTsKKysJ CXB1YmxpYyBzaWduYWwgdm9pZCBkbmRfZW50ZXIgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQg ZG5kX2xlYXZlICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGRuZF9wb3NpdGlvbl9jaGFuZ2Ug KGludCBvYmplY3QsIGludCBwMCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g Im1ldGEvbWFpbi5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtDb21wYWN0XQorKwlwdWJs aWMgY2xhc3MgRnJhbWUgeworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRh L21ldGEtaWRsZS1tb25pdG9yLmgiLCB0eXBlX2lkID0gIm1ldGFfaWRsZV9tb25pdG9yX2dldF90 eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBJZGxlTW9uaXRvciA6IEdMaWIuT2JqZWN0IHsKKysJ CVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBJ ZGxlTW9uaXRvciAoKTsKKysJCXB1YmxpYyB1aW50IGFkZF9pZGxlX3dhdGNoICh1aW50NjQgaW50 ZXJ2YWxfbXNlYywgb3duZWQgTWV0YS5JZGxlTW9uaXRvcldhdGNoRnVuYz8gY2FsbGJhY2spOwor KwkJcHVibGljIHVpbnQgYWRkX3VzZXJfYWN0aXZlX3dhdGNoIChvd25lZCBNZXRhLklkbGVNb25p dG9yV2F0Y2hGdW5jPyBjYWxsYmFjayk7CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgTWV0YS5J ZGxlTW9uaXRvciBnZXRfY29yZSAoKTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBNZXRhLklk bGVNb25pdG9yIGdldF9mb3JfZGV2aWNlIChDbHV0dGVyLklucHV0RGV2aWNlIGRldmljZSk7Cisr CQlwdWJsaWMgaW50NjQgZ2V0X2lkbGV0aW1lICgpOworKwkJcHVibGljIHZvaWQgcmVtb3ZlX3dh dGNoICh1aW50IGlkKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIENsdXR0ZXIu SW5wdXREZXZpY2UgZGV2aWNlIHsgb3duZWQgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjb3B5X2Z1bmN0aW9uID0gImdf Ym94ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJt ZXRhX2tleV9iaW5kaW5nX2dldF90eXBlICgpIildCisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xh c3MgS2V5QmluZGluZyB7CisrCQlwdWJsaWMgdWludCBnZXRfbWFzayAoKTsKKysJCXB1YmxpYyBN ZXRhLlZpcnR1YWxNb2RpZmllciBnZXRfbW9kaWZpZXJzICgpOworKwkJcHVibGljIHVub3duZWQg c3RyaW5nIGdldF9uYW1lICgpOworKwkJcHVibGljIGJvb2wgaXNfYnVpbHRpbiAoKTsKKysJCXB1 YmxpYyBib29sIGlzX3JldmVyc2VkICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJtZXRhX2tleWJp bmRpbmdzX3NldF9jdXN0b21faGFuZGxlciIpXQorKwkJcHVibGljIHN0YXRpYyBib29sIHNldF9j dXN0b21faGFuZGxlciAoc3RyaW5nIG5hbWUsIG93bmVkIE1ldGEuS2V5SGFuZGxlckZ1bmM/IGhh bmRsZXIpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtbGF1 bmNoLWNvbnRleHQuaCIsIHR5cGVfaWQgPSAibWV0YV9sYXVuY2hfY29udGV4dF9nZXRfdHlwZSAo KSIpXQorKwlwdWJsaWMgY2xhc3MgTGF1bmNoQ29udGV4dCA6IEdMaWIuQXBwTGF1bmNoQ29udGV4 dCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90 ZWN0ZWQgTGF1bmNoQ29udGV4dCAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF90aW1lc3RhbXAgKHVp bnQzMiB0aW1lc3RhbXApOworKwkJcHVibGljIHZvaWQgc2V0X3dvcmtzcGFjZSAoTWV0YS5Xb3Jr c3BhY2Ugd29ya3NwYWNlKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIE1ldGEu RGlzcGxheSBkaXNwbGF5IHsgb3duZWQgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtOb0FjY2Vzc29y TWV0aG9kXQorKwkJcHVibGljIHVpbnQgdGltZXN0YW1wIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0Fj Y2Vzc29yTWV0aG9kXQorKwkJcHVibGljIE1ldGEuV29ya3NwYWNlIHdvcmtzcGFjZSB7IG93bmVk IGdldDsgc2V0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0 YS1tb25pdG9yLW1hbmFnZXIuaCIsIHR5cGVfaWQgPSAibWV0YV9tb25pdG9yX21hbmFnZXJfZ2V0 X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIE1vbml0b3JNYW5hZ2VyIDogR0xpYi5PYmplY3Qg eworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVj dGVkIE1vbml0b3JNYW5hZ2VyICgpOworKwkJcHVibGljIGJvb2wgY2FuX3N3aXRjaF9jb25maWcg KCk7CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgTWV0YS5Nb25pdG9yTWFuYWdlciBAZ2V0ICgp OworKwkJcHVibGljIHN0YXRpYyBpbnQgZ2V0X2Rpc3BsYXlfY29uZmlndXJhdGlvbl90aW1lb3V0 ICgpOworKwkJcHVibGljIGJvb2wgZ2V0X2lzX2J1aWx0aW5fZGlzcGxheV9vbiAoKTsKKysJCXB1 YmxpYyBpbnQgZ2V0X21vbml0b3JfZm9yX2Nvbm5lY3RvciAoc3RyaW5nIGNvbm5lY3Rvcik7Cisr CQlwdWJsaWMgTWV0YS5Nb25pdG9yU3dpdGNoQ29uZmlnVHlwZSBnZXRfc3dpdGNoX2NvbmZpZyAo KTsKKysJCXB1YmxpYyB2b2lkIHN3aXRjaF9jb25maWcgKE1ldGEuTW9uaXRvclN3aXRjaENvbmZp Z1R5cGUgY29uZmlnX3R5cGUpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgTWV0 YS5CYWNrZW5kIGJhY2tlbmQgeyBvd25lZCBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIHNp Z25hbCB2b2lkIGNvbmZpcm1fZGlzcGxheV9jaGFuZ2UgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZv aWQgbW9uaXRvcnNfY2hhbmdlZCAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBtb25pdG9yc19j aGFuZ2VkX2ludGVybmFsICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHBvd2VyX3NhdmVfbW9k ZV9jaGFuZ2VkICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21l dGEtcGx1Z2luLmgiLCB0eXBlX2lkID0gIm1ldGFfcGx1Z2luX2dldF90eXBlICgpIildCisrCXB1 YmxpYyBhYnN0cmFjdCBjbGFzcyBQbHVnaW4gOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhh c19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgUGx1Z2luICgpOwor KwkJcHVibGljIGJvb2wgYmVnaW5fbW9kYWwgKE1ldGEuTW9kYWxPcHRpb25zIG9wdGlvbnMsIHVp bnQzMiB0aW1lc3RhbXApOworKwkJcHVibGljIHZvaWQgY29tcGxldGVfZGlzcGxheV9jaGFuZ2Ug KGJvb2wgb2spOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgY29uZmly bV9kaXNwbGF5X2NoYW5nZSAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2 b2lkIGRlc3Ryb3kgKE1ldGEuV2luZG93QWN0b3IgYWN0b3IpOworKwkJcHVibGljIHZvaWQgZGVz dHJveV9jb21wbGV0ZWQgKE1ldGEuV2luZG93QWN0b3IgYWN0b3IpOworKwkJcHVibGljIHZvaWQg ZW5kX21vZGFsICh1aW50MzIgdGltZXN0YW1wKTsKKysJCXB1YmxpYyB1bm93bmVkIE1ldGEuRGlz cGxheSBnZXRfZGlzcGxheSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIE1ldGEuUGx1Z2luSW5mbz8g Z2V0X2luZm8gKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBoaWRl X3RpbGVfcHJldmlldyAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCBib29s IGtleWJpbmRpbmdfZmlsdGVyIChNZXRhLktleUJpbmRpbmcgYmluZGluZyk7CisrCQlbTm9XcmFw cGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBraWxsX3N3aXRjaF93b3Jrc3BhY2UgKCk7Cisr CQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBraWxsX3dpbmRvd19lZmZlY3Rz IChNZXRhLldpbmRvd0FjdG9yIGFjdG9yKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmly dHVhbCB2b2lkIGxvY2F0ZV9wb2ludGVyICgpOworKwkJcHVibGljIHN0YXRpYyB2b2lkIG1hbmFn ZXJfc2V0X3BsdWdpbl90eXBlIChHTGliLlR5cGUgZ3R5cGUpOworKwkJW05vV3JhcHBlcl0KKysJ CXB1YmxpYyB2aXJ0dWFsIHZvaWQgbWFwIChNZXRhLldpbmRvd0FjdG9yIGFjdG9yKTsKKysJCXB1 YmxpYyB2b2lkIG1hcF9jb21wbGV0ZWQgKE1ldGEuV2luZG93QWN0b3IgYWN0b3IpOworKwkJW05v V3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgbWluaW1pemUgKE1ldGEuV2luZG93QWN0 b3IgYWN0b3IpOworKwkJcHVibGljIHZvaWQgbWluaW1pemVfY29tcGxldGVkIChNZXRhLldpbmRv d0FjdG9yIGFjdG9yKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB1bm93bmVk IE1ldGEuUGx1Z2luSW5mbz8gcGx1Z2luX2luZm8gKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVi bGljIHZpcnR1YWwgdm9pZCBzaG93X3RpbGVfcHJldmlldyAoTWV0YS5XaW5kb3cgd2luZG93LCBN ZXRhLlJlY3RhbmdsZSB0aWxlX3JlY3QsIGludCB0aWxlX21vbml0b3JfbnVtYmVyKTsKKysJCVtO b1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHNob3dfd2luZG93X21lbnUgKE1ldGEu V2luZG93IHdpbmRvdywgTWV0YS5XaW5kb3dNZW51VHlwZSBtZW51LCBpbnQgeCwgaW50IHkpOwor KwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgc2hvd193aW5kb3dfbWVudV9m b3JfcmVjdCAoTWV0YS5XaW5kb3cgd2luZG93LCBNZXRhLldpbmRvd01lbnVUeXBlIG1lbnUsIE1l dGEuUmVjdGFuZ2xlIHJlY3QpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZv aWQgc2l6ZV9jaGFuZ2UgKE1ldGEuV2luZG93QWN0b3IgYWN0b3IsIE1ldGEuU2l6ZUNoYW5nZSB3 aGljaF9jaGFuZ2UsIE1ldGEuUmVjdGFuZ2xlIG9sZF9mcmFtZV9yZWN0LCBNZXRhLlJlY3Rhbmds ZSBvbGRfYnVmZmVyX3JlY3QpOworKwkJcHVibGljIHZvaWQgc2l6ZV9jaGFuZ2VfY29tcGxldGVk IChNZXRhLldpbmRvd0FjdG9yIGFjdG9yKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmly dHVhbCB2b2lkIHNpemVfY2hhbmdlZCAoTWV0YS5XaW5kb3dBY3RvciBhY3Rvcik7CisrCQlbTm9X cmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBzdGFydCAoKTsKKysJCVtOb1dyYXBwZXJd CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHN3aXRjaF93b3Jrc3BhY2UgKGludCBmcm9tLCBpbnQg dG8sIE1ldGEuTW90aW9uRGlyZWN0aW9uIGRpcmVjdGlvbik7CisrCQlwdWJsaWMgdm9pZCBzd2l0 Y2hfd29ya3NwYWNlX2NvbXBsZXRlZCAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmly dHVhbCB2b2lkIHVubWluaW1pemUgKE1ldGEuV2luZG93QWN0b3IgYWN0b3IpOworKwkJcHVibGlj IHZvaWQgdW5taW5pbWl6ZV9jb21wbGV0ZWQgKE1ldGEuV2luZG93QWN0b3IgYWN0b3IpOworKwkJ W05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIGJvb2wgeGV2ZW50X2ZpbHRlciAoWC5FdmVu dCBldmVudCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1y ZW1vdGUtYWNjZXNzLWNvbnRyb2xsZXIuaCIsIHR5cGVfaWQgPSAibWV0YV9yZW1vdGVfYWNjZXNz X2NvbnRyb2xsZXJfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFJlbW90ZUFjY2Vzc0Nv bnRyb2xsZXIgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rp b24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgUmVtb3RlQWNjZXNzQ29udHJvbGxlciAoKTsKKysJ CXB1YmxpYyBzaWduYWwgdm9pZCBuZXdfaGFuZGxlIChNZXRhLlJlbW90ZUFjY2Vzc0hhbmRsZSBv YmplY3QpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtcmVt b3RlLWFjY2Vzcy1jb250cm9sbGVyLmgiLCB0eXBlX2lkID0gIm1ldGFfcmVtb3RlX2FjY2Vzc19o YW5kbGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFJlbW90ZUFjY2Vzc0hhbmRsZSA6 IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNl KV0KKysJCXByb3RlY3RlZCBSZW1vdGVBY2Nlc3NIYW5kbGUgKCk7CisrCQlwdWJsaWMgdmlydHVh bCB2b2lkIHN0b3AgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgc3RvcHBlZCAoKTsKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCB0eXBlX2lkID0gIm1l dGFfc2VsZWN0aW9uX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBTZWxlY3Rpb24gOiBH TGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSld CisrCQlwdWJsaWMgU2VsZWN0aW9uIChNZXRhLkRpc3BsYXkgZGlzcGxheSk7CisrCQlwdWJsaWMg R0xpYi5MaXN0PHN0cmluZz4gZ2V0X21pbWV0eXBlcyAoTWV0YS5TZWxlY3Rpb25UeXBlIHNlbGVj dGlvbl90eXBlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9vd25lciAoTWV0YS5TZWxlY3Rpb25UeXBl IHNlbGVjdGlvbl90eXBlLCBNZXRhLlNlbGVjdGlvblNvdXJjZSBvd25lcik7CisrCQlwdWJsaWMg YXN5bmMgYm9vbCB0cmFuc2Zlcl9hc3luYyAoTWV0YS5TZWxlY3Rpb25UeXBlIHNlbGVjdGlvbl90 eXBlLCBzdHJpbmcgbWltZXR5cGUsIHNzaXplX3Qgc2l6ZSwgR0xpYi5PdXRwdXRTdHJlYW0gb3V0 cHV0LCBHTGliLkNhbmNlbGxhYmxlPyBjYW5jZWxsYWJsZSkgdGhyb3dzIEdMaWIuRXJyb3I7Cisr CQlwdWJsaWMgdm9pZCB1bnNldF9vd25lciAoTWV0YS5TZWxlY3Rpb25UeXBlIHNlbGVjdGlvbl90 eXBlLCBNZXRhLlNlbGVjdGlvblNvdXJjZSBvd25lcik7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQg b3duZXJfY2hhbmdlZCAodWludCBvYmplY3QsIE1ldGEuU2VsZWN0aW9uU291cmNlIHAwKTsKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCB0eXBlX2lkID0g Im1ldGFfc2VsZWN0aW9uX3NvdXJjZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgU2Vs ZWN0aW9uU291cmNlIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1 bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFNlbGVjdGlvblNvdXJjZSAoKTsKKysJCXB1 YmxpYyB2aXJ0dWFsIEdMaWIuTGlzdDxzdHJpbmc+IGdldF9taW1ldHlwZXMgKCk7CisrCQlwdWJs aWMgYm9vbCBpc19hY3RpdmUgKCk7CisrCQlwdWJsaWMgdmlydHVhbCBhc3luYyBHTGliLklucHV0 U3RyZWFtIHJlYWRfYXN5bmMgKHN0cmluZyBtaW1ldHlwZSwgR0xpYi5DYW5jZWxsYWJsZT8gY2Fu Y2VsbGFibGUpIHRocm93cyBHTGliLkVycm9yOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZv aWQgYWN0aXZhdGVkICgpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgZGVhY3RpdmF0 ZWQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwg dHlwZV9pZCA9ICJtZXRhX3NlbGVjdGlvbl9zb3VyY2VfbWVtb3J5X2dldF90eXBlICgpIildCisr CXB1YmxpYyBjbGFzcyBTZWxlY3Rpb25Tb3VyY2VNZW1vcnkgOiBNZXRhLlNlbGVjdGlvblNvdXJj ZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJN ZXRhU2VsZWN0aW9uU291cmNlKiIpXQorKwkJcHVibGljIFNlbGVjdGlvblNvdXJjZU1lbW9yeSAo c3RyaW5nIG1pbWV0eXBlLCBHTGliLkJ5dGVzIGNvbnRlbnQpOworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtc2V0dGluZ3MuaCIsIGhhc190eXBlX2lkID0gZmFs c2UpXQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIFNldHRpbmdzIHsKKysJCXB1YmxpYyBp bnQgZ2V0X2ZvbnRfZHBpICgpOworKwkJcHVibGljIGludCBnZXRfdWlfc2NhbGluZ19mYWN0b3Ig KCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgcmVm X2Z1bmN0aW9uID0gIm1ldGFfc2hhZG93X3JlZiIsIHR5cGVfaWQgPSAibWV0YV9zaGFkb3dfZ2V0 X3R5cGUgKCkiLCB1bnJlZl9mdW5jdGlvbiA9ICJtZXRhX3NoYWRvd191bnJlZiIpXQorKwlbQ29t cGFjdF0KKysJcHVibGljIGNsYXNzIFNoYWRvdyB7CisrCQlwdWJsaWMgdm9pZCBnZXRfYm91bmRz IChpbnQgd2luZG93X3gsIGludCB3aW5kb3dfeSwgaW50IHdpbmRvd193aWR0aCwgaW50IHdpbmRv d19oZWlnaHQsIENhaXJvLlJlY3RhbmdsZUludCBib3VuZHMpOworKwkJcHVibGljIHZvaWQgcGFp bnQgKENvZ2wuRnJhbWVidWZmZXIgZnJhbWVidWZmZXIsIGludCB3aW5kb3dfeCwgaW50IHdpbmRv d195LCBpbnQgd2luZG93X3dpZHRoLCBpbnQgd2luZG93X2hlaWdodCwgdWludDggb3BhY2l0eSwg Q2Fpcm8uUmVnaW9uPyBjbGlwLCBib29sIGNsaXBfc3RyaWN0bHkpOworKwkJcHVibGljIE1ldGEu U2hhZG93IEByZWYgKCk7CisrCQlwdWJsaWMgdm9pZCB1bnJlZiAoKTsKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLXNoYWRvdy1mYWN0b3J5LmgiLCB0eXBlX2lk ID0gIm1ldGFfc2hhZG93X2ZhY3RvcnlfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFNo YWRvd0ZhY3RvcnkgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVu Y3Rpb24gPSBmYWxzZSldCisrCQlwdWJsaWMgU2hhZG93RmFjdG9yeSAoKTsKKysJCXB1YmxpYyBz dGF0aWMgdW5vd25lZCBNZXRhLlNoYWRvd0ZhY3RvcnkgZ2V0X2RlZmF1bHQgKCk7CisrCQlwdWJs aWMgTWV0YS5TaGFkb3dQYXJhbXMgZ2V0X3BhcmFtcyAoc3RyaW5nIGNsYXNzX25hbWUsIGJvb2wg Zm9jdXNlZCk7CisrCQlwdWJsaWMgTWV0YS5TaGFkb3cgZ2V0X3NoYWRvdyAoTWV0YS5XaW5kb3dT aGFwZSBzaGFwZSwgaW50IHdpZHRoLCBpbnQgaGVpZ2h0LCBzdHJpbmcgY2xhc3NfbmFtZSwgYm9v bCBmb2N1c2VkKTsKKysJCXB1YmxpYyB2b2lkIHNldF9wYXJhbXMgKHN0cmluZyBjbGFzc19uYW1l LCBib29sIGZvY3VzZWQsIE1ldGEuU2hhZG93UGFyYW1zIEBwYXJhbXMpOworKwkJcHVibGljIHNp Z25hbCB2b2lkIGNoYW5nZWQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g Im1ldGEvbWV0YS1zaGFwZWQtdGV4dHVyZS5oIiwgdHlwZV9pZCA9ICJtZXRhX3NoYXBlZF90ZXh0 dXJlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBTaGFwZWRUZXh0dXJlIDogR0xpYi5P YmplY3QsIENsdXR0ZXIuQ29udGVudCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rp b24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgU2hhcGVkVGV4dHVyZSAoKTsKKysJCXB1YmxpYyBD YWlyby5TdXJmYWNlPyBnZXRfaW1hZ2UgKENhaXJvLlJlY3RhbmdsZUludD8gY2xpcCk7CisrCQlw dWJsaWMgdW5vd25lZCBDb2dsLlRleHR1cmUgZ2V0X3RleHR1cmUgKCk7CisrCQlwdWJsaWMgdm9p ZCBzZXRfY3JlYXRlX21pcG1hcHMgKGJvb2wgY3JlYXRlX21pcG1hcHMpOworKwkJcHVibGljIHZv aWQgc2V0X21hc2tfdGV4dHVyZSAoQ29nbC5UZXh0dXJlIG1hc2tfdGV4dHVyZSk7CisrCQlwdWJs aWMgdm9pZCBzZXRfb3BhcXVlX3JlZ2lvbiAob3duZWQgQ2Fpcm8uUmVnaW9uIG9wYXF1ZV9yZWdp b24pOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHNpemVfY2hhbmdlZCAoKTsKKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLXNvdW5kLXBsYXllci5oIiwgdHlwZV9p ZCA9ICJtZXRhX3NvdW5kX3BsYXllcl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgU291 bmRQbGF5ZXIgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rp b24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgU291bmRQbGF5ZXIgKCk7CisrCQlwdWJsaWMgdm9p ZCBwbGF5X2Zyb21fZmlsZSAoR0xpYi5GaWxlIGZpbGUsIHN0cmluZyBkZXNjcmlwdGlvbiwgR0xp Yi5DYW5jZWxsYWJsZT8gY2FuY2VsbGFibGUgPSBudWxsKTsKKysJCXB1YmxpYyB2b2lkIHBsYXlf ZnJvbV90aGVtZSAoc3RyaW5nIG5hbWUsIHN0cmluZyBkZXNjcmlwdGlvbiwgR0xpYi5DYW5jZWxs YWJsZT8gY2FuY2VsbGFibGUgPSBudWxsKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAibWV0YS9tZXRhLXN0YWdlLmgiLCB0eXBlX2lkID0gIm1ldGFfc3RhZ2VfZ2V0X3R5cGUg KCkiKV0KKysJcHVibGljIGNsYXNzIFN0YWdlIDogQ2x1dHRlci5TdGFnZSwgQXRrLkltcGxlbWVu dG9yLCBDbHV0dGVyLkFuaW1hdGFibGUsIENsdXR0ZXIuQ29udGFpbmVyLCBDbHV0dGVyLlNjcmlw dGFibGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJ cHJvdGVjdGVkIFN0YWdlICgpOworKwkJcHVibGljIHN0YXRpYyBib29sIGlzX2ZvY3VzZWQgKE1l dGEuRGlzcGxheSBkaXNwbGF5KTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBhY3RvcnNfcGFpbnRl ZCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLXN0YXJ0 dXAtbm90aWZpY2F0aW9uLmgiLCB0eXBlX2lkID0gIm1ldGFfc3RhcnR1cF9ub3RpZmljYXRpb25f Z2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFN0YXJ0dXBOb3RpZmljYXRpb24gOiBHTGli Lk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisr CQlwcm90ZWN0ZWQgU3RhcnR1cE5vdGlmaWNhdGlvbiAoKTsKKysJCXB1YmxpYyBNZXRhLkxhdW5j aENvbnRleHQgY3JlYXRlX2xhdW5jaGVyICgpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlw dWJsaWMgTWV0YS5EaXNwbGF5IGRpc3BsYXkgeyBvd25lZCBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJ cHVibGljIHNpZ25hbCB2b2lkIGNoYW5nZWQgKHZvaWQqIG9iamVjdCk7CisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgdHlwZV9pZCA9ICJtZXRhX3N0YXJ0 dXBfc2VxdWVuY2VfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFN0YXJ0dXBTZXF1ZW5j ZSA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZh bHNlKV0KKysJCXByb3RlY3RlZCBTdGFydHVwU2VxdWVuY2UgKCk7CisrCQlwdWJsaWMgdW5vd25l ZCBzdHJpbmcgZ2V0X2FwcGxpY2F0aW9uX2lkICgpOworKwkJcHVibGljIGJvb2wgZ2V0X2NvbXBs ZXRlZCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfaWNvbl9uYW1lICgpOworKwkJ cHVibGljIHVub3duZWQgc3RyaW5nIGdldF9pZCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmlu ZyBnZXRfbmFtZSAoKTsKKysJCXB1YmxpYyB1aW50NjQgZ2V0X3RpbWVzdGFtcCAoKTsKKysJCXB1 YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfd21jbGFzcyAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0X3dv cmtzcGFjZSAoKTsKKysJCXB1YmxpYyBzdHJpbmcgYXBwbGljYXRpb25faWQgeyBnZXQ7IGNvbnN0 cnVjdDsgfQorKwkJcHVibGljIHN0cmluZyBpY29uX25hbWUgeyBnZXQ7IGNvbnN0cnVjdDsgfQor KwkJcHVibGljIHN0cmluZyBpZCB7IGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgc3RyaW5n IG5hbWUgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIHVpbnQ2NCB0aW1lc3RhbXAgeyBn ZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIHN0cmluZyB3bWNsYXNzIHsgZ2V0OyBjb25zdHJ1 Y3Q7IH0KKysJCXB1YmxpYyBpbnQgd29ya3NwYWNlIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtI YXNFbWl0dGVyXQorKwkJcHVibGljIHNpZ25hbCB2b2lkIGNvbXBsZXRlICgpOworKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3RoZW1lLmgiLCBoYXNfdHlwZV9pZCA9IGZh bHNlKV0KKysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFzcyBUaGVtZSB7CisrCQlwdWJsaWMgdm9p ZCBmcmVlICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3dpbmRv dy5oIiwgdHlwZV9pZCA9ICJtZXRhX3dpbmRvd19nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgYWJz dHJhY3QgY2xhc3MgV2luZG93IDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3Ry dWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFdpbmRvdyAoKTsKKysJCXB1Ymxp YyB2b2lkIGFjdGl2YXRlICh1aW50MzIgY3VycmVudF90aW1lKTsKKysJCXB1YmxpYyB2b2lkIGFj dGl2YXRlX3dpdGhfd29ya3NwYWNlICh1aW50MzIgY3VycmVudF90aW1lLCBNZXRhLldvcmtzcGFj ZSB3b3Jrc3BhY2UpOworKwkJcHVibGljIGJvb2wgYWxsb3dzX21vdmUgKCk7CisrCQlwdWJsaWMg Ym9vbCBhbGxvd3NfcmVzaXplICgpOworKwkJcHVibGljIHZvaWQgYmVnaW5fZ3JhYl9vcCAoTWV0 YS5HcmFiT3Agb3AsIGJvb2wgZnJhbWVfYWN0aW9uLCB1aW50MzIgdGltZXN0YW1wKTsKKysJCXB1 YmxpYyBib29sIGNhbl9jbG9zZSAoKTsKKysJCXB1YmxpYyBib29sIGNhbl9tYXhpbWl6ZSAoKTsK KysJCXB1YmxpYyBib29sIGNhbl9taW5pbWl6ZSAoKTsKKysJCXB1YmxpYyBib29sIGNhbl9zaGFk ZSAoKTsKKysJCXB1YmxpYyB2b2lkIGNoYW5nZV93b3Jrc3BhY2UgKE1ldGEuV29ya3NwYWNlIHdv cmtzcGFjZSk7CisrCQlwdWJsaWMgdm9pZCBjaGFuZ2Vfd29ya3NwYWNlX2J5X2luZGV4IChpbnQg c3BhY2VfaW5kZXgsIGJvb2wgYXBwZW5kKTsKKysJCXB1YmxpYyB2b2lkIGNoZWNrX2FsaXZlICh1 aW50MzIgdGltZXN0YW1wKTsKKysJCXB1YmxpYyBNZXRhLlJlY3RhbmdsZSBjbGllbnRfcmVjdF90 b19mcmFtZV9yZWN0IChNZXRhLlJlY3RhbmdsZSBjbGllbnRfcmVjdCk7CisrCQlwdWJsaWMgdm9p ZCBjb21wdXRlX2dyb3VwICgpOworKwkJcHVibGljIHZvaWQgQGRlbGV0ZSAodWludDMyIHRpbWVz dGFtcCk7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLldpbmRvdyBmaW5kX3Jvb3RfYW5jZXN0b3Ig KCk7CisrCQlwdWJsaWMgdm9pZCBmb2N1cyAodWludDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMg dm9pZCBmb3JlYWNoX2FuY2VzdG9yIChNZXRhLldpbmRvd0ZvcmVhY2hGdW5jIGZ1bmMpOworKwkJ cHVibGljIHZvaWQgZm9yZWFjaF90cmFuc2llbnQgKE1ldGEuV2luZG93Rm9yZWFjaEZ1bmMgZnVu Yyk7CisrCQlwdWJsaWMgTWV0YS5SZWN0YW5nbGUgZnJhbWVfcmVjdF90b19jbGllbnRfcmVjdCAo TWV0YS5SZWN0YW5nbGUgZnJhbWVfcmVjdCk7CisrCQlwdWJsaWMgTWV0YS5SZWN0YW5nbGUgZ2V0 X2J1ZmZlcl9yZWN0ICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9jbGllbnRfbWFj aGluZSAoKTsKKysJCXB1YmxpYyBNZXRhLldpbmRvd0NsaWVudFR5cGUgZ2V0X2NsaWVudF90eXBl ICgpOworKwkJcHVibGljIHVub3duZWQgR0xpYi5PYmplY3QgZ2V0X2NvbXBvc2l0b3JfcHJpdmF0 ZSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfZGVzY3JpcHRpb24gKCk7CisrCQlw dWJsaWMgdW5vd25lZCBNZXRhLkRpc3BsYXkgZ2V0X2Rpc3BsYXkgKCk7CisrCQlwdWJsaWMgdW5v d25lZCBDYWlyby5SZWdpb24/IGdldF9mcmFtZV9ib3VuZHMgKCk7CisrCQlwdWJsaWMgTWV0YS5S ZWN0YW5nbGUgZ2V0X2ZyYW1lX3JlY3QgKCk7CisrCQlwdWJsaWMgTWV0YS5GcmFtZVR5cGUgZ2V0 X2ZyYW1lX3R5cGUgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X2d0a19hcHBfbWVu dV9vYmplY3RfcGF0aCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfZ3RrX2FwcGxp Y2F0aW9uX2lkICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9ndGtfYXBwbGljYXRp b25fb2JqZWN0X3BhdGggKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X2d0a19tZW51 YmFyX29iamVjdF9wYXRoICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9ndGtfdGhl bWVfdmFyaWFudCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfZ3RrX3VuaXF1ZV9i dXNfbmFtZSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfZ3RrX3dpbmRvd19vYmpl Y3RfcGF0aCAoKTsKKysJCXB1YmxpYyBib29sIGdldF9pY29uX2dlb21ldHJ5IChvdXQgTWV0YS5S ZWN0YW5nbGUgcmVjdCk7CisrCQlwdWJsaWMgdWludDY0IGdldF9pZCAoKTsKKysJCXB1YmxpYyBN ZXRhLlN0YWNrTGF5ZXIgZ2V0X2xheWVyICgpOworKwkJcHVibGljIE1ldGEuTWF4aW1pemVGbGFn cyBnZXRfbWF4aW1pemVkICgpOworKwkJcHVibGljIGludCBnZXRfbW9uaXRvciAoKTsKKysJCXB1 YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfbXV0dGVyX2hpbnRzICgpOworKwkJcHVibGljIGludCBn ZXRfcGlkICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9yb2xlICgpOworKwkJcHVi bGljIHVub3duZWQgc3RyaW5nIGdldF9zYW5kYm94ZWRfYXBwX2lkICgpOworKwkJcHVibGljIHVp bnQgZ2V0X3N0YWJsZV9zZXF1ZW5jZSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRf c3RhcnR1cF9pZCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIE1ldGEuV2luZG93PyBnZXRfdGlsZV9t YXRjaCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfdGl0bGUgKCk7CisrCQlwdWJs aWMgdW5vd25lZCBNZXRhLldpbmRvdyBnZXRfdHJhbnNpZW50X2ZvciAoKTsKKysJCXB1YmxpYyB1 aW50MzIgZ2V0X3VzZXJfdGltZSAoKTsKKysJCXB1YmxpYyBNZXRhLldpbmRvd1R5cGUgZ2V0X3dp bmRvd190eXBlICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF93bV9jbGFzcyAoKTsK KysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfd21fY2xhc3NfaW5zdGFuY2UgKCk7CisrCQlw dWJsaWMgTWV0YS5SZWN0YW5nbGUgZ2V0X3dvcmtfYXJlYV9hbGxfbW9uaXRvcnMgKCk7CisrCQlw dWJsaWMgTWV0YS5SZWN0YW5nbGUgZ2V0X3dvcmtfYXJlYV9jdXJyZW50X21vbml0b3IgKCk7Cisr CQlwdWJsaWMgTWV0YS5SZWN0YW5nbGUgZ2V0X3dvcmtfYXJlYV9mb3JfbW9uaXRvciAoaW50IHdo aWNoX21vbml0b3IpOworKwkJcHVibGljIHVub3duZWQgTWV0YS5Xb3Jrc3BhY2UgZ2V0X3dvcmtz cGFjZSAoKTsKKysJCXB1YmxpYyBYLldpbmRvdyBnZXRfeHdpbmRvdyAoKTsKKysJCXB1YmxpYyB2 b2lkIGdyb3VwX2xlYWRlcl9jaGFuZ2VkICgpOworKwkJcHVibGljIGJvb2wgaGFzX2ZvY3VzICgp OworKwkJcHVibGljIGJvb2wgaXNfYWJvdmUgKCk7CisrCQlwdWJsaWMgYm9vbCBpc19hbHdheXNf b25fYWxsX3dvcmtzcGFjZXMgKCk7CisrCQlwdWJsaWMgYm9vbCBpc19hbmNlc3Rvcl9vZl90cmFu c2llbnQgKE1ldGEuV2luZG93IHRyYW5zaWVudCk7CisrCQlwdWJsaWMgYm9vbCBpc19hdHRhY2hl ZF9kaWFsb2cgKCk7CisrCQlwdWJsaWMgYm9vbCBpc19jbGllbnRfZGVjb3JhdGVkICgpOworKwkJ cHVibGljIGJvb2wgaXNfZnVsbHNjcmVlbiAoKTsKKysJCXB1YmxpYyBib29sIGlzX2hpZGRlbiAo KTsKKysJCXB1YmxpYyBib29sIGlzX21vbml0b3Jfc2l6ZWQgKCk7CisrCQlwdWJsaWMgYm9vbCBp c19vbl9hbGxfd29ya3NwYWNlcyAoKTsKKysJCXB1YmxpYyBib29sIGlzX29uX3ByaW1hcnlfbW9u aXRvciAoKTsKKysJCXB1YmxpYyBib29sIGlzX292ZXJyaWRlX3JlZGlyZWN0ICgpOworKwkJcHVi bGljIGJvb2wgaXNfcmVtb3RlICgpOworKwkJcHVibGljIGJvb2wgaXNfc2NyZWVuX3NpemVkICgp OworKwkJcHVibGljIGJvb2wgaXNfc2hhZGVkICgpOworKwkJcHVibGljIGJvb2wgaXNfc2tpcF90 YXNrYmFyICgpOworKwkJcHVibGljIHZvaWQga2lsbCAoKTsKKysJCXB1YmxpYyBib29sIGxvY2F0 ZWRfb25fd29ya3NwYWNlIChNZXRhLldvcmtzcGFjZSB3b3Jrc3BhY2UpOworKwkJcHVibGljIHZv aWQgbG93ZXIgKCk7CisrCQlwdWJsaWMgdm9pZCBtYWtlX2Fib3ZlICgpOworKwkJcHVibGljIHZv aWQgbWFrZV9mdWxsc2NyZWVuICgpOworKwkJcHVibGljIHZvaWQgbWF4aW1pemUgKE1ldGEuTWF4 aW1pemVGbGFncyBkaXJlY3Rpb25zKTsKKysJCXB1YmxpYyB2b2lkIG1pbmltaXplICgpOworKwkJ cHVibGljIHZvaWQgbW92ZV9mcmFtZSAoYm9vbCB1c2VyX29wLCBpbnQgcm9vdF94X253LCBpbnQg cm9vdF95X253KTsKKysJCXB1YmxpYyB2b2lkIG1vdmVfcmVzaXplX2ZyYW1lIChib29sIHVzZXJf b3AsIGludCByb290X3hfbncsIGludCByb290X3lfbncsIGludCB3LCBpbnQgaCk7CisrCQlwdWJs aWMgdm9pZCBtb3ZlX3RvX21vbml0b3IgKGludCBtb25pdG9yKTsKKysJCXB1YmxpYyB2b2lkIHJh aXNlICgpOworKwkJcHVibGljIGJvb2wgcmVxdWVzdGVkX2J5cGFzc19jb21wb3NpdG9yICgpOwor KwkJcHVibGljIGJvb2wgcmVxdWVzdGVkX2RvbnRfYnlwYXNzX2NvbXBvc2l0b3IgKCk7CisrCQlw dWJsaWMgdm9pZCBzZXRfY29tcG9zaXRvcl9wcml2YXRlIChHTGliLk9iamVjdCBwcml2KTsKKysJ CXB1YmxpYyB2b2lkIHNldF9kZW1hbmRzX2F0dGVudGlvbiAoKTsKKysJCXB1YmxpYyB2b2lkIHNl dF9pY29uX2dlb21ldHJ5IChNZXRhLlJlY3RhbmdsZT8gcmVjdCk7CisrCQlwdWJsaWMgdm9pZCBz aGFkZSAodWludDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMgdm9pZCBzaG92ZV90aXRsZWJhcl9v bnNjcmVlbiAoKTsKKysJCXB1YmxpYyBib29sIHNob3dpbmdfb25faXRzX3dvcmtzcGFjZSAoKTsK KysJCXB1YmxpYyB2b2lkIHNodXRkb3duX2dyb3VwICgpOworKwkJcHVibGljIHZvaWQgc3RpY2sg KCk7CisrCQlwdWJsaWMgYm9vbCB0aXRsZWJhcl9pc19vbnNjcmVlbiAoKTsKKysJCXB1YmxpYyB2 b2lkIHVubWFrZV9hYm92ZSAoKTsKKysJCXB1YmxpYyB2b2lkIHVubWFrZV9mdWxsc2NyZWVuICgp OworKwkJcHVibGljIHZvaWQgdW5tYXhpbWl6ZSAoTWV0YS5NYXhpbWl6ZUZsYWdzIGRpcmVjdGlv bnMpOworKwkJcHVibGljIHZvaWQgdW5taW5pbWl6ZSAoKTsKKysJCXB1YmxpYyB2b2lkIHVuc2V0 X2RlbWFuZHNfYXR0ZW50aW9uICgpOworKwkJcHVibGljIHZvaWQgdW5zaGFkZSAodWludDMyIHRp bWVzdGFtcCk7CisrCQlwdWJsaWMgdm9pZCB1bnN0aWNrICgpOworKwkJW05vQWNjZXNzb3JNZXRo b2RdCisrCQlwdWJsaWMgYm9vbCBhYm92ZSB7IGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2Rd CisrCQlwdWJsaWMgYm9vbCBhcHBlYXJzX2ZvY3VzZWQgeyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29y TWV0aG9kXQorKwkJcHVibGljIGJvb2wgZGVjb3JhdGVkIHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nv ck1ldGhvZF0KKysJCXB1YmxpYyBib29sIGRlbWFuZHNfYXR0ZW50aW9uIHsgZ2V0OyB9CisrCQlb Tm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIGZ1bGxzY3JlZW4geyBnZXQ7IH0KKysJ CXB1YmxpYyBzdHJpbmcgZ3RrX2FwcF9tZW51X29iamVjdF9wYXRoIHsgZ2V0OyB9CisrCQlwdWJs aWMgc3RyaW5nIGd0a19hcHBsaWNhdGlvbl9pZCB7IGdldDsgfQorKwkJcHVibGljIHN0cmluZyBn dGtfYXBwbGljYXRpb25fb2JqZWN0X3BhdGggeyBnZXQ7IH0KKysJCXB1YmxpYyBzdHJpbmcgZ3Rr X21lbnViYXJfb2JqZWN0X3BhdGggeyBnZXQ7IH0KKysJCXB1YmxpYyBzdHJpbmcgZ3RrX3VuaXF1 ZV9idXNfbmFtZSB7IGdldDsgfQorKwkJcHVibGljIHN0cmluZyBndGtfd2luZG93X29iamVjdF9w YXRoIHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyB2b2lkKiBpY29u IHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIG1heGltaXpl ZF9ob3Jpem9udGFsbHkgeyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGlj IGJvb2wgbWF4aW1pemVkX3ZlcnRpY2FsbHkgeyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9k XQorKwkJcHVibGljIHZvaWQqIG1pbmlfaWNvbiB7IGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRo b2RdCisrCQlwdWJsaWMgYm9vbCBtaW5pbWl6ZWQgeyBnZXQ7IH0KKysJCXB1YmxpYyBzdHJpbmcg bXV0dGVyX2hpbnRzIHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBi b29sIG9uX2FsbF93b3Jrc3BhY2VzIHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJ CXB1YmxpYyBib29sIHJlc2l6ZWFibGUgeyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQor KwkJcHVibGljIGJvb2wgc2tpcF90YXNrYmFyIHsgZ2V0OyB9CisrCQlwdWJsaWMgc3RyaW5nIHRp dGxlIHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIHVyZ2Vu dCB7IGdldDsgfQorKwkJcHVibGljIHVpbnQgdXNlcl90aW1lIHsgZ2V0OyB9CisrCQlwdWJsaWMg TWV0YS5XaW5kb3dUeXBlIHdpbmRvd190eXBlIHsgZ2V0OyB9CisrCQlwdWJsaWMgc3RyaW5nIHdt X2NsYXNzIHsgZ2V0OyB9CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgcG9zaXRpb25fY2hhbmdlZCAo KTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCByYWlzZWQgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZv aWQgc2hvd24gKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgc2l6ZV9jaGFuZ2VkICgpOworKwkJ cHVibGljIHNpZ25hbCB2b2lkIHVubWFuYWdlZCAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCB3 b3Jrc3BhY2VfY2hhbmdlZCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi bWV0YS9tZXRhLXdpbmRvdy1hY3Rvci5oIiwgdHlwZV9pZCA9ICJtZXRhX3dpbmRvd19hY3Rvcl9n ZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgYWJzdHJhY3QgY2xhc3MgV2luZG93QWN0b3IgOiBDbHV0 dGVyLkFjdG9yLCBBdGsuSW1wbGVtZW50b3IsIENsdXR0ZXIuQW5pbWF0YWJsZSwgQ2x1dHRlci5D b250YWluZXIsIENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3Rf ZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgV2luZG93QWN0b3IgKCk7CisrCQlwdWJs aWMgQ2Fpcm8uU3VyZmFjZT8gZ2V0X2ltYWdlIChDYWlyby5SZWN0YW5nbGVJbnQ/IGNsaXApOwor KwkJcHVibGljIHVub3duZWQgTWV0YS5XaW5kb3cgZ2V0X21ldGFfd2luZG93ICgpOworKwkJcHVi bGljIHVub3duZWQgTWV0YS5TaGFwZWRUZXh0dXJlIGdldF90ZXh0dXJlICgpOworKwkJcHVibGlj IGJvb2wgaXNfZGVzdHJveWVkICgpOworKwkJcHVibGljIHZvaWQgc3luY192aXNpYmlsaXR5ICgp OworKwkJcHVibGljIE1ldGEuV2luZG93IG1ldGFfd2luZG93IHsgZ2V0OyBjb25zdHJ1Y3Q7IH0K KysJCXB1YmxpYyBzaWduYWwgdm9pZCBkYW1hZ2VkICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lk IGVmZmVjdHNfY29tcGxldGVkICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGZpcnN0X2ZyYW1l ICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHRoYXdlZCAoKTsKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLXdpbmRvdy1ncm91cC5oIiwgdHlwZV9pZCA9ICJt ZXRhX3dpbmRvd19ncm91cF9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgV2luZG93R3Jv dXAgOiBDbHV0dGVyLkFjdG9yLCBBdGsuSW1wbGVtZW50b3IsIENsdXR0ZXIuQW5pbWF0YWJsZSwg Q2x1dHRlci5Db250YWluZXIsIENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19j b25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgV2luZG93R3JvdXAgKCk7 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS13aW5kb3ctc2hh cGUuaCIsIHJlZl9mdW5jdGlvbiA9ICJtZXRhX3dpbmRvd19zaGFwZV9yZWYiLCB0eXBlX2lkID0g Im1ldGFfd2luZG93X3NoYXBlX2dldF90eXBlICgpIiwgdW5yZWZfZnVuY3Rpb24gPSAibWV0YV93 aW5kb3dfc2hhcGVfdW5yZWYiKV0KKysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFzcyBXaW5kb3dT aGFwZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlw dWJsaWMgV2luZG93U2hhcGUgKENhaXJvLlJlZ2lvbiByZWdpb24pOworKwkJcHVibGljIGJvb2wg ZXF1YWwgKE1ldGEuV2luZG93U2hhcGUgc2hhcGVfYik7CisrCQlwdWJsaWMgdm9pZCBnZXRfYm9y ZGVycyAoaW50IGJvcmRlcl90b3AsIGludCBib3JkZXJfcmlnaHQsIGludCBib3JkZXJfYm90dG9t LCBpbnQgYm9yZGVyX2xlZnQpOworKwkJcHVibGljIHVpbnQgaGFzaCAoKTsKKysJCXB1YmxpYyBN ZXRhLldpbmRvd1NoYXBlIEByZWYgKCk7CisrCQlwdWJsaWMgQ2Fpcm8uUmVnaW9uIHRvX3JlZ2lv biAoaW50IGNlbnRlcl93aWR0aCwgaW50IGNlbnRlcl9oZWlnaHQpOworKwkJcHVibGljIHZvaWQg dW5yZWYgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvd29ya3Nw YWNlLmgiLCB0eXBlX2lkID0gIm1ldGFfd29ya3NwYWNlX2dldF90eXBlICgpIildCisrCXB1Ymxp YyBjbGFzcyBXb3Jrc3BhY2UgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1 Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgV29ya3NwYWNlICgpOworKwkJcHVi bGljIHZvaWQgYWN0aXZhdGUgKHVpbnQzMiB0aW1lc3RhbXApOworKwkJcHVibGljIHZvaWQgYWN0 aXZhdGVfd2l0aF9mb2N1cyAoTWV0YS5XaW5kb3cgZm9jdXNfdGhpcywgdWludDMyIHRpbWVzdGFt cCk7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLkRpc3BsYXkgZ2V0X2Rpc3BsYXkgKCk7CisrCQlw dWJsaWMgdW5vd25lZCBNZXRhLldvcmtzcGFjZSBnZXRfbmVpZ2hib3IgKE1ldGEuTW90aW9uRGly ZWN0aW9uIGRpcmVjdGlvbik7CisrCQlwdWJsaWMgTWV0YS5SZWN0YW5nbGUgZ2V0X3dvcmtfYXJl YV9hbGxfbW9uaXRvcnMgKCk7CisrCQlwdWJsaWMgTWV0YS5SZWN0YW5nbGUgZ2V0X3dvcmtfYXJl YV9mb3JfbW9uaXRvciAoaW50IHdoaWNoX21vbml0b3IpOworKwkJcHVibGljIGludCBpbmRleCAo KTsKKysJCXB1YmxpYyBHTGliLkxpc3Q8d2VhayBNZXRhLldpbmRvdz4gbGlzdF93aW5kb3dzICgp OworKwkJcHVibGljIHZvaWQgc2V0X2J1aWx0aW5fc3RydXRzIChHTGliLlNMaXN0PE1ldGEuU3Ry dXQ/PiBzdHJ1dHMpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgdWludCBuX3dp bmRvd3MgeyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIHVpbnQgd29y a3NwYWNlX2luZGV4IHsgZ2V0OyB9CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgd2luZG93X2FkZGVk IChNZXRhLldpbmRvdyBvYmplY3QpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHdpbmRvd19yZW1v dmVkIChNZXRhLldpbmRvdyBvYmplY3QpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJtZXRhL21ldGEtd29ya3NwYWNlLW1hbmFnZXIuaCIsIHR5cGVfaWQgPSAibWV0YV93b3Jr c3BhY2VfbWFuYWdlcl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgV29ya3NwYWNlTWFu YWdlciA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9 IGZhbHNlKV0KKysJCXByb3RlY3RlZCBXb3Jrc3BhY2VNYW5hZ2VyICgpOworKwkJcHVibGljIHVu b3duZWQgTWV0YS5Xb3Jrc3BhY2UgYXBwZW5kX25ld193b3Jrc3BhY2UgKGJvb2wgYWN0aXZhdGUs IHVpbnQzMiB0aW1lc3RhbXApOworKwkJcHVibGljIHVub3duZWQgTWV0YS5Xb3Jrc3BhY2UgZ2V0 X2FjdGl2ZV93b3Jrc3BhY2UgKCk7CisrCQlwdWJsaWMgaW50IGdldF9hY3RpdmVfd29ya3NwYWNl X2luZGV4ICgpOworKwkJcHVibGljIGludCBnZXRfbl93b3Jrc3BhY2VzICgpOworKwkJcHVibGlj IHVub3duZWQgTWV0YS5Xb3Jrc3BhY2U/IGdldF93b3Jrc3BhY2VfYnlfaW5kZXggKGludCBpbmRl eCk7CisrCQlwdWJsaWMgdm9pZCBvdmVycmlkZV93b3Jrc3BhY2VfbGF5b3V0IChNZXRhLkRpc3Bs YXlDb3JuZXIgc3RhcnRpbmdfY29ybmVyLCBib29sIHZlcnRpY2FsX2xheW91dCwgaW50IG5fcm93 cywgaW50IG5fY29sdW1ucyk7CisrCQlwdWJsaWMgdm9pZCByZW1vdmVfd29ya3NwYWNlIChNZXRh LldvcmtzcGFjZSB3b3Jrc3BhY2UsIHVpbnQzMiB0aW1lc3RhbXApOworKwkJcHVibGljIHZvaWQg cmVvcmRlcl93b3Jrc3BhY2UgKE1ldGEuV29ya3NwYWNlIHdvcmtzcGFjZSwgaW50IG5ld19pbmRl eCk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBpbnQgbGF5b3V0X2NvbHVtbnMg eyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGludCBsYXlvdXRfcm93 cyB7IGdldDsgfQorKwkJcHVibGljIGludCBuX3dvcmtzcGFjZXMgeyBnZXQ7IH0KKysJCXB1Ymxp YyBzaWduYWwgdm9pZCBhY3RpdmVfd29ya3NwYWNlX2NoYW5nZWQgKCk7CisrCQlwdWJsaWMgc2ln bmFsIHZvaWQgc2hvd2luZ19kZXNrdG9wX2NoYW5nZWQgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZv aWQgd29ya3NwYWNlX2FkZGVkIChpbnQgb2JqZWN0KTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCB3 b3Jrc3BhY2VfcmVtb3ZlZCAoaW50IG9iamVjdCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgd29y a3NwYWNlX3N3aXRjaGVkIChpbnQgb2JqZWN0LCBpbnQgcDAsIE1ldGEuTW90aW9uRGlyZWN0aW9u IHAxKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCB3b3Jrc3BhY2VzX3Jlb3JkZXJlZCAoKTsKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLXgxMS1kaXNwbGF5Lmgi LCB0eXBlX2lkID0gIm1ldGFfeDExX2Rpc3BsYXlfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNs YXNzIFgxMURpc3BsYXkgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3Rf ZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgWDExRGlzcGxheSAoKTsKKysJCXB1Ymxp YyB2b2lkIGNsZWFyX3N0YWdlX2lucHV0X3JlZ2lvbiAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0X2Rh bWFnZV9ldmVudF9iYXNlICgpOworKwkJcHVibGljIGludCBnZXRfc2NyZWVuX251bWJlciAoKTsK KysJCXB1YmxpYyBpbnQgZ2V0X3NoYXBlX2V2ZW50X2Jhc2UgKCk7CisrCQlwdWJsaWMgYm9vbCBo YXNfc2hhcGUgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfY21fc2VsZWN0aW9uICgpOworKwkJcHVi bGljIHZvaWQgc2V0X3N0YWdlX2lucHV0X3JlZ2lvbiAoWC5Yc2VydmVyUmVnaW9uIHJlZ2lvbik7 CisrCQlwdWJsaWMgYm9vbCB4d2luZG93X2lzX2Ffbm9fZm9jdXNfd2luZG93IChYLldpbmRvdyB4 d2luZG93KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLWNs b3NlLWRpYWxvZy5oIiwgdHlwZV9jbmFtZSA9ICJNZXRhQ2xvc2VEaWFsb2dJbnRlcmZhY2UiLCB0 eXBlX2lkID0gIm1ldGFfY2xvc2VfZGlhbG9nX2dldF90eXBlICgpIildCisrCXB1YmxpYyBpbnRl cmZhY2UgQ2xvc2VEaWFsb2cgOiBHTGliLk9iamVjdCB7CisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9p ZCBmb2N1cyAoKTsKKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lkIGhpZGUgKCk7CisrCQlwdWJsaWMg Ym9vbCBpc192aXNpYmxlICgpOworKwkJcHVibGljIGFic3RyYWN0IHZvaWQgc2hvdyAoKTsKKysJ CVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGFic3RyYWN0IE1ldGEuV2luZG93IHdpbmRv dyB7IG93bmVkIGdldDsgY29uc3RydWN0OyB9CisrCQlbSGFzRW1pdHRlcl0KKysJCXB1YmxpYyBz aWduYWwgdm9pZCByZXNwb25zZSAoTWV0YS5DbG9zZURpYWxvZ1Jlc3BvbnNlIHJlc3BvbnNlKTsK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLWluaGliaXQtc2hv cnRjdXRzLWRpYWxvZy5oIiwgdHlwZV9jbmFtZSA9ICJNZXRhSW5oaWJpdFNob3J0Y3V0c0RpYWxv Z0ludGVyZmFjZSIsIHR5cGVfaWQgPSAibWV0YV9pbmhpYml0X3Nob3J0Y3V0c19kaWFsb2dfZ2V0 X3R5cGUgKCkiKV0KKysJcHVibGljIGludGVyZmFjZSBJbmhpYml0U2hvcnRjdXRzRGlhbG9nIDog R0xpYi5PYmplY3QgeworKwkJcHVibGljIGFic3RyYWN0IHZvaWQgaGlkZSAoKTsKKysJCXB1Ymxp YyBhYnN0cmFjdCB2b2lkIHNob3cgKCk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1Ymxp YyBhYnN0cmFjdCBNZXRhLldpbmRvdyB3aW5kb3cgeyBvd25lZCBnZXQ7IGNvbnN0cnVjdDsgfQor KwkJW0hhc0VtaXR0ZXJdCisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgcmVzcG9uc2UgKE1ldGEuSW5o aWJpdFNob3J0Y3V0c0RpYWxvZ1Jlc3BvbnNlIHJlc3BvbnNlKTsKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJ cHVibGljIHN0cnVjdCBCdXR0b25MYXlvdXQgeworKwkJW0NDb2RlIChhcnJheV9sZW5ndGggPSBm YWxzZSldCisrCQlwdWJsaWMgd2VhayBNZXRhLkJ1dHRvbkZ1bmN0aW9uIGxlZnRfYnV0dG9uc1s0 XTsKKysJCVtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXQorKwkJcHVibGljIHdlYWsgYm9v bCBsZWZ0X2J1dHRvbnNfaGFzX3NwYWNlcls0XTsKKysJCVtDQ29kZSAoYXJyYXlfbGVuZ3RoID0g ZmFsc2UpXQorKwkJcHVibGljIHdlYWsgTWV0YS5CdXR0b25GdW5jdGlvbiByaWdodF9idXR0b25z WzRdOworKwkJW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldCisrCQlwdWJsaWMgd2VhayBi b29sIHJpZ2h0X2J1dHRvbnNfaGFzX3NwYWNlcls0XTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGlj IHN0cnVjdCBFZGdlIHsKKysJCXB1YmxpYyBNZXRhLlJlY3RhbmdsZSByZWN0OworKwkJcHVibGlj IE1ldGEuU2lkZSBzaWRlX3R5cGU7CisrCQlwdWJsaWMgTWV0YS5FZGdlVHlwZSBlZGdlX3R5cGU7 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgaGFzX3R5 cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgRnJhbWVCb3JkZXJzIHsKKysJCXB1Ymxp YyBHdGsuQm9yZGVyIHZpc2libGU7CisrCQlwdWJsaWMgR3RrLkJvcmRlciBpbnZpc2libGU7Cisr CQlwdWJsaWMgR3RrLkJvcmRlciB0b3RhbDsKKysJCXB1YmxpYyB2b2lkIGNsZWFyICgpOworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtcGx1Z2luLmgiLCBoYXNf dHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBQbHVnaW5JbmZvIHsKKysJCXB1Ymxp YyB3ZWFrIHN0cmluZyBuYW1lOworKwkJcHVibGljIHdlYWsgc3RyaW5nIHZlcnNpb247CisrCQlw dWJsaWMgd2VhayBzdHJpbmcgYXV0aG9yOworKwkJcHVibGljIHdlYWsgc3RyaW5nIGxpY2Vuc2U7 CisrCQlwdWJsaWMgd2VhayBzdHJpbmcgZGVzY3JpcHRpb247CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1 YmxpYyBzdHJ1Y3QgUGx1Z2luVmVyc2lvbiB7CisrCQlwdWJsaWMgdWludCB2ZXJzaW9uX21ham9y OworKwkJcHVibGljIHVpbnQgdmVyc2lvbl9taW5vcjsKKysJCXB1YmxpYyB1aW50IHZlcnNpb25f bWljcm87CisrCQlwdWJsaWMgdWludCB2ZXJzaW9uX2FwaTsKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29w eSIsIGZyZWVfZnVuY3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJtZXRhX3JlY3Rh bmdsZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgc3RydWN0IFJlY3RhbmdsZSB7CisrCQlwdWJs aWMgaW50IHg7CisrCQlwdWJsaWMgaW50IHk7CisrCQlwdWJsaWMgaW50IHdpZHRoOworKwkJcHVi bGljIGludCBoZWlnaHQ7CisrCQlwdWJsaWMgaW50IGFyZWEgKCk7CisrCQlwdWJsaWMgYm9vbCBj b250YWluc19yZWN0IChNZXRhLlJlY3RhbmdsZSBpbm5lcl9yZWN0KTsKKysJCXB1YmxpYyBNZXRh LlJlY3RhbmdsZT8gY29weSAoKTsKKysJCXB1YmxpYyBib29sIGNvdWxkX2ZpdF9yZWN0IChNZXRh LlJlY3RhbmdsZSBpbm5lcl9yZWN0KTsKKysJCXB1YmxpYyBib29sIGVxdWFsIChNZXRhLlJlY3Rh bmdsZSBzcmMyKTsKKysJCXB1YmxpYyB2b2lkIGZyZWUgKCk7CisrCQlwdWJsaWMgYm9vbCBob3Jp el9vdmVybGFwIChNZXRhLlJlY3RhbmdsZSByZWN0Mik7CisrCQlwdWJsaWMgYm9vbCBpbnRlcnNl Y3QgKE1ldGEuUmVjdGFuZ2xlIHNyYzIsIG91dCBNZXRhLlJlY3RhbmdsZSBkZXN0KTsKKysJCXB1 YmxpYyBib29sIG92ZXJsYXAgKE1ldGEuUmVjdGFuZ2xlIHJlY3QyKTsKKysJCXB1YmxpYyBNZXRh LlJlY3RhbmdsZSB1bmlvbiAoTWV0YS5SZWN0YW5nbGUgcmVjdDIpOworKwkJcHVibGljIGJvb2wg dmVydF9vdmVybGFwIChNZXRhLlJlY3RhbmdsZSByZWN0Mik7CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1 YmxpYyBzdHJ1Y3QgU2hhZG93UGFyYW1zIHsKKysJCXB1YmxpYyBpbnQgcmFkaXVzOworKwkJcHVi bGljIGludCB0b3BfZmFkZTsKKysJCXB1YmxpYyBpbnQgeF9vZmZzZXQ7CisrCQlwdWJsaWMgaW50 IHlfb2Zmc2V0OworKwkJcHVibGljIHVpbnQ4IG9wYWNpdHk7CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1 YmxpYyBzdHJ1Y3QgU3RydXQgeworKwkJcHVibGljIE1ldGEuUmVjdGFuZ2xlIHJlY3Q7CisrCQlw dWJsaWMgTWV0YS5TaWRlIHNpZGU7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g Im1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX0JBUlJJRVJfRElSRUNUSU9OXyIsIHR5cGVf aWQgPSAibWV0YV9iYXJyaWVyX2RpcmVjdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisr CXB1YmxpYyBlbnVtIEJhcnJpZXJEaXJlY3Rpb24geworKwkJUE9TSVRJVkVfWCwKKysJCVBPU0lU SVZFX1ksCisrCQlORUdBVElWRV9YLAorKwkJTkVHQVRJVkVfWQorKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9CVVRUT05fRlVO Q1RJT05fIiwgdHlwZV9pZCA9ICJtZXRhX2J1dHRvbl9mdW5jdGlvbl9nZXRfdHlwZSAoKSIpXQor KwlwdWJsaWMgZW51bSBCdXR0b25GdW5jdGlvbiB7CisrCQlNRU5VLAorKwkJTUlOSU1JWkUsCisr CQlNQVhJTUlaRSwKKysJCUNMT1NFLAorKwkJTEFTVAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9DTE9TRV9ESUFMT0dfUkVT UE9OU0VfIiwgdHlwZV9pZCA9ICJtZXRhX2Nsb3NlX2RpYWxvZ19yZXNwb25zZV9nZXRfdHlwZSAo KSIpXQorKwlwdWJsaWMgZW51bSBDbG9zZURpYWxvZ1Jlc3BvbnNlIHsKKysJCVdBSVQsCisrCQlG T1JDRV9DTE9TRQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4u aCIsIGNwcmVmaXggPSAiTUVUQV9DT01QX0VGRkVDVF8iLCB0eXBlX2lkID0gIm1ldGFfY29tcF9l ZmZlY3RfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gQ29tcEVmZmVjdCB7CisrCQlDUkVB VEUsCisrCQlVTk1JTklNSVpFLAorKwkJREVTVFJPWSwKKysJCU1JTklNSVpFLAorKwkJTk9ORQor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXgg PSAiTUVUQV9DVVJTT1JfIiwgdHlwZV9pZCA9ICJtZXRhX2N1cnNvcl9nZXRfdHlwZSAoKSIpXQor KwlwdWJsaWMgZW51bSBDdXJzb3IgeworKwkJTk9ORSwKKysJCURFRkFVTFQsCisrCQlOT1JUSF9S RVNJWkUsCisrCQlTT1VUSF9SRVNJWkUsCisrCQlXRVNUX1JFU0laRSwKKysJCUVBU1RfUkVTSVpF LAorKwkJU0VfUkVTSVpFLAorKwkJU1dfUkVTSVpFLAorKwkJTkVfUkVTSVpFLAorKwkJTldfUkVT SVpFLAorKwkJTU9WRV9PUl9SRVNJWkVfV0lORE9XLAorKwkJQlVTWSwKKysJCURORF9JTl9EUkFH LAorKwkJRE5EX01PVkUsCisrCQlETkRfQ09QWSwKKysJCURORF9VTlNVUFBPUlRFRF9UQVJHRVQs CisrCQlQT0lOVElOR19IQU5ELAorKwkJQ1JPU1NIQUlSLAorKwkJSUJFQU0sCisrCQlMQVNUCisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9 ICJNRVRBX0RFQlVHXyIsIHR5cGVfaWQgPSAibWV0YV9kZWJ1Z190b3BpY19nZXRfdHlwZSAoKSIp XQorKwlbRmxhZ3NdCisrCXB1YmxpYyBlbnVtIERlYnVnVG9waWMgeworKwkJVkVSQk9TRSwKKysJ CUZPQ1VTLAorKwkJV09SS0FSRUEsCisrCQlTVEFDSywKKysJCVRIRU1FUywKKysJCVNNLAorKwkJ RVZFTlRTLAorKwkJV0lORE9XX1NUQVRFLAorKwkJV0lORE9XX09QUywKKysJCUdFT01FVFJZLAor KwkJUExBQ0VNRU5ULAorKwkJUElORywKKysJCVhJTkVSQU1BLAorKwkJS0VZQklORElOR1MsCisr CQlTWU5DLAorKwkJRVJST1JTLAorKwkJU1RBUlRVUCwKKysJCVBSRUZTLAorKwkJR1JPVVBTLAor KwkJUkVTSVpJTkcsCisrCQlTSEFQRVMsCisrCQlDT01QT1NJVE9SLAorKwkJRURHRV9SRVNJU1RB TkNFLAorKwkJREJVUworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21h aW4uaCIsIGNwcmVmaXggPSAiTUVUQV9ESVJFQ1RJT05fIiwgdHlwZV9pZCA9ICJtZXRhX2RpcmVj dGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCXB1YmxpYyBlbnVtIERpcmVjdGlvbiB7 CisrCQlMRUZULAorKwkJUklHSFQsCisrCQlUT1AsCisrCQlCT1RUT00sCisrCQlVUCwKKysJCURP V04sCisrCQlIT1JJWk9OVEFMLAorKwkJVkVSVElDQUwKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfRElTUExBWV8iLCB0eXBl X2lkID0gIm1ldGFfZGlzcGxheV9jb3JuZXJfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0g RGlzcGxheUNvcm5lciB7CisrCQlUT1BMRUZULAorKwkJVE9QUklHSFQsCisrCQlCT1RUT01MRUZU LAorKwkJQk9UVE9NUklHSFQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0 YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfRElTUExBWV8iLCB0eXBlX2lkID0gIm1ldGFfZGlz cGxheV9kaXJlY3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gRGlzcGxheURpcmVj dGlvbiB7CisrCQlVUCwKKysJCURPV04sCisrCQlMRUZULAorKwkJUklHSFQKKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfRURH RV8iLCB0eXBlX2lkID0gIm1ldGFfZWRnZV90eXBlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBl bnVtIEVkZ2VUeXBlIHsKKysJCVdJTkRPVywKKysJCU1PTklUT1IsCisrCQlTQ1JFRU4KKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1F VEFfRVhJVF8iLCB0eXBlX2lkID0gIm1ldGFfZXhpdF9jb2RlX2dldF90eXBlICgpIildCisrCXB1 YmxpYyBlbnVtIEV4aXRDb2RlIHsKKysJCVNVQ0NFU1MsCisrCQlFUlJPUgorKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9GUkFN RV8iLCB0eXBlX2lkID0gIm1ldGFfZnJhbWVfZmxhZ3NfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdz XQorKwlwdWJsaWMgZW51bSBGcmFtZUZsYWdzIHsKKysJCUFMTE9XU19ERUxFVEUsCisrCQlBTExP V1NfTUVOVSwKKysJCUFMTE9XU19NSU5JTUlaRSwKKysJCUFMTE9XU19NQVhJTUlaRSwKKysJCUFM TE9XU19WRVJUSUNBTF9SRVNJWkUsCisrCQlBTExPV1NfSE9SSVpPTlRBTF9SRVNJWkUsCisrCQlI QVNfRk9DVVMsCisrCQlTSEFERUQsCisrCQlTVFVDSywKKysJCU1BWElNSVpFRCwKKysJCUFMTE9X U19TSEFERSwKKysJCUFMTE9XU19NT1ZFLAorKwkJRlVMTFNDUkVFTiwKKysJCUFCT1ZFLAorKwkJ VElMRURfTEVGVCwKKysJCVRJTEVEX1JJR0hUCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX0ZSQU1FX1RZUEVfIiwgdHlwZV9p ZCA9ICJtZXRhX2ZyYW1lX3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gRnJhbWVU eXBlIHsKKysJCU5PUk1BTCwKKysJCURJQUxPRywKKysJCU1PREFMX0RJQUxPRywKKysJCVVUSUxJ VFksCisrCQlNRU5VLAorKwkJQk9SREVSLAorKwkJQVRUQUNIRUQsCisrCQlMQVNUOworKwkJcHVi bGljIHVub3duZWQgc3RyaW5nIHRvX3N0cmluZyAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfR1JBQl9PUF8iLCB0eXBl X2lkID0gIm1ldGFfZ3JhYl9vcF9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBHcmFiT3Ag eworKwkJTk9ORSwKKysJCVdJTkRPV19CQVNFLAorKwkJQ09NUE9TSVRPUiwKKysJCVdBWUxBTkRf UE9QVVAsCisrCQlGUkFNRV9CVVRUT04sCisrCQlNT1ZJTkcsCisrCQlSRVNJWklOR19OVywKKysJ CVJFU0laSU5HX04sCisrCQlSRVNJWklOR19ORSwKKysJCVJFU0laSU5HX0UsCisrCQlSRVNJWklO R19TVywKKysJCVJFU0laSU5HX1MsCisrCQlSRVNJWklOR19TRSwKKysJCVJFU0laSU5HX1csCisr CQlLRVlCT0FSRF9NT1ZJTkcsCisrCQlLRVlCT0FSRF9SRVNJWklOR19VTktOT1dOLAorKwkJS0VZ Qk9BUkRfUkVTSVpJTkdfTlcsCisrCQlLRVlCT0FSRF9SRVNJWklOR19OLAorKwkJS0VZQk9BUkRf UkVTSVpJTkdfTkUsCisrCQlLRVlCT0FSRF9SRVNJWklOR19FLAorKwkJS0VZQk9BUkRfUkVTSVpJ TkdfU1csCisrCQlLRVlCT0FSRF9SRVNJWklOR19TLAorKwkJS0VZQk9BUkRfUkVTSVpJTkdfU0Us CisrCQlLRVlCT0FSRF9SRVNJWklOR19XCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX0lOSElCSVRfU0hPUlRDVVRTX0RJQUxP R19SRVNQT05TRV8iLCB0eXBlX2lkID0gIm1ldGFfaW5oaWJpdF9zaG9ydGN1dHNfZGlhbG9nX3Jl c3BvbnNlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIEluaGliaXRTaG9ydGN1dHNEaWFs b2dSZXNwb25zZSB7CisrCQlBTExPVywKKysJCURFTlkKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfS0VZQklORElOR19BQ1RJ T05fIiwgdHlwZV9pZCA9ICJtZXRhX2tleV9iaW5kaW5nX2FjdGlvbl9nZXRfdHlwZSAoKSIpXQor KwlwdWJsaWMgZW51bSBLZXlCaW5kaW5nQWN0aW9uIHsKKysJCU5PTkUsCisrCQlXT1JLU1BBQ0Vf MSwKKysJCVdPUktTUEFDRV8yLAorKwkJV09SS1NQQUNFXzMsCisrCQlXT1JLU1BBQ0VfNCwKKysJ CVdPUktTUEFDRV81LAorKwkJV09SS1NQQUNFXzYsCisrCQlXT1JLU1BBQ0VfNywKKysJCVdPUktT UEFDRV84LAorKwkJV09SS1NQQUNFXzksCisrCQlXT1JLU1BBQ0VfMTAsCisrCQlXT1JLU1BBQ0Vf MTEsCisrCQlXT1JLU1BBQ0VfMTIsCisrCQlXT1JLU1BBQ0VfTEVGVCwKKysJCVdPUktTUEFDRV9S SUdIVCwKKysJCVdPUktTUEFDRV9VUCwKKysJCVdPUktTUEFDRV9ET1dOLAorKwkJV09SS1NQQUNF X0xBU1QsCisrCQlTV0lUQ0hfQVBQTElDQVRJT05TLAorKwkJU1dJVENIX0FQUExJQ0FUSU9OU19C QUNLV0FSRCwKKysJCVNXSVRDSF9HUk9VUCwKKysJCVNXSVRDSF9HUk9VUF9CQUNLV0FSRCwKKysJ CVNXSVRDSF9XSU5ET1dTLAorKwkJU1dJVENIX1dJTkRPV1NfQkFDS1dBUkQsCisrCQlTV0lUQ0hf UEFORUxTLAorKwkJU1dJVENIX1BBTkVMU19CQUNLV0FSRCwKKysJCUNZQ0xFX0dST1VQLAorKwkJ Q1lDTEVfR1JPVVBfQkFDS1dBUkQsCisrCQlDWUNMRV9XSU5ET1dTLAorKwkJQ1lDTEVfV0lORE9X U19CQUNLV0FSRCwKKysJCUNZQ0xFX1BBTkVMUywKKysJCUNZQ0xFX1BBTkVMU19CQUNLV0FSRCwK KysJCVNIT1dfREVTS1RPUCwKKysJCVBBTkVMX01BSU5fTUVOVSwKKysJCVBBTkVMX1JVTl9ESUFM T0csCisrCQlUT0dHTEVfUkVDT1JESU5HLAorKwkJU0VUX1NQRVdfTUFSSywKKysJCUFDVElWQVRF X1dJTkRPV19NRU5VLAorKwkJVE9HR0xFX0ZVTExTQ1JFRU4sCisrCQlUT0dHTEVfTUFYSU1JWkVE LAorKwkJVE9HR0xFX1RJTEVEX0xFRlQsCisrCQlUT0dHTEVfVElMRURfUklHSFQsCisrCQlUT0dH TEVfQUJPVkUsCisrCQlNQVhJTUlaRSwKKysJCVVOTUFYSU1JWkUsCisrCQlUT0dHTEVfU0hBREVE LAorKwkJTUlOSU1JWkUsCisrCQlDTE9TRSwKKysJCUJFR0lOX01PVkUsCisrCQlCRUdJTl9SRVNJ WkUsCisrCQlUT0dHTEVfT05fQUxMX1dPUktTUEFDRVMsCisrCQlNT1ZFX1RPX1dPUktTUEFDRV8x LAorKwkJTU9WRV9UT19XT1JLU1BBQ0VfMiwKKysJCU1PVkVfVE9fV09SS1NQQUNFXzMsCisrCQlN T1ZFX1RPX1dPUktTUEFDRV80LAorKwkJTU9WRV9UT19XT1JLU1BBQ0VfNSwKKysJCU1PVkVfVE9f V09SS1NQQUNFXzYsCisrCQlNT1ZFX1RPX1dPUktTUEFDRV83LAorKwkJTU9WRV9UT19XT1JLU1BB Q0VfOCwKKysJCU1PVkVfVE9fV09SS1NQQUNFXzksCisrCQlNT1ZFX1RPX1dPUktTUEFDRV8xMCwK KysJCU1PVkVfVE9fV09SS1NQQUNFXzExLAorKwkJTU9WRV9UT19XT1JLU1BBQ0VfMTIsCisrCQlN T1ZFX1RPX1dPUktTUEFDRV9MRUZULAorKwkJTU9WRV9UT19XT1JLU1BBQ0VfUklHSFQsCisrCQlN T1ZFX1RPX1dPUktTUEFDRV9VUCwKKysJCU1PVkVfVE9fV09SS1NQQUNFX0RPV04sCisrCQlNT1ZF X1RPX1dPUktTUEFDRV9MQVNULAorKwkJTU9WRV9UT19NT05JVE9SX0xFRlQsCisrCQlNT1ZFX1RP X01PTklUT1JfUklHSFQsCisrCQlNT1ZFX1RPX01PTklUT1JfVVAsCisrCQlNT1ZFX1RPX01PTklU T1JfRE9XTiwKKysJCVJBSVNFX09SX0xPV0VSLAorKwkJUkFJU0UsCisrCQlMT1dFUiwKKysJCU1B WElNSVpFX1ZFUlRJQ0FMTFksCisrCQlNQVhJTUlaRV9IT1JJWk9OVEFMTFksCisrCQlNT1ZFX1RP X0NPUk5FUl9OVywKKysJCU1PVkVfVE9fQ09STkVSX05FLAorKwkJTU9WRV9UT19DT1JORVJfU1cs CisrCQlNT1ZFX1RPX0NPUk5FUl9TRSwKKysJCU1PVkVfVE9fU0lERV9OLAorKwkJTU9WRV9UT19T SURFX1MsCisrCQlNT1ZFX1RPX1NJREVfRSwKKysJCU1PVkVfVE9fU0lERV9XLAorKwkJTU9WRV9U T19DRU5URVIsCisrCQlPVkVSTEFZX0tFWSwKKysJCUxPQ0FURV9QT0lOVEVSX0tFWSwKKysJCUlT T19ORVhUX0dST1VQLAorKwkJQUxXQVlTX09OX1RPUCwKKysJCVNXSVRDSF9NT05JVE9SLAorKwkJ Uk9UQVRFX01PTklUT1IsCisrCQlMQVNUCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX0tFWV9CSU5ESU5HXyIsIHR5cGVfaWQg PSAibWV0YV9rZXlfYmluZGluZ19mbGFnc19nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCXB1 YmxpYyBlbnVtIEtleUJpbmRpbmdGbGFncyB7CisrCQlOT05FLAorKwkJUEVSX1dJTkRPVywKKysJ CUJVSUxUSU4sCisrCQlJU19SRVZFUlNFRCwKKysJCU5PTl9NQVNLQUJMRSwKKysJCUlHTk9SRV9B VVRPUkVQRUFULAorKwkJTk9fQVVUT19HUkFCCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX0xBVEVSXyIsIHR5cGVfaWQgPSAi bWV0YV9sYXRlcl90eXBlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIExhdGVyVHlwZSB7 CisrCQlSRVNJWkUsCisrCQlDQUxDX1NIT1dJTkcsCisrCQlDSEVDS19GVUxMU0NSRUVOLAorKwkJ U1lOQ19TVEFDSywKKysJCUJFRk9SRV9SRURSQVcsCisrCQlJRExFCisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX0xPQ0FMRV9E SVJFQ1RJT05fIiwgdHlwZV9pZCA9ICJtZXRhX2xvY2FsZV9kaXJlY3Rpb25fZ2V0X3R5cGUgKCki KV0KKysJcHVibGljIGVudW0gTG9jYWxlRGlyZWN0aW9uIHsKKysJCUxUUiwKKysJCVJUTAorKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAi TUVUQV9NQVhJTUlaRV8iLCB0eXBlX2lkID0gIm1ldGFfbWF4aW1pemVfZmxhZ3NfZ2V0X3R5cGUg KCkiKV0KKysJW0ZsYWdzXQorKwlwdWJsaWMgZW51bSBNYXhpbWl6ZUZsYWdzIHsKKysJCUhPUkla T05UQUwsCisrCQlWRVJUSUNBTCwKKysJCUJPVEgKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfTU9EQUxfIiwgdHlwZV9pZCA9 ICJtZXRhX21vZGFsX29wdGlvbnNfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlwdWJsaWMg ZW51bSBNb2RhbE9wdGlvbnMgeworKwkJUE9JTlRFUl9BTFJFQURZX0dSQUJCRUQsCisrCQlLRVlC T0FSRF9BTFJFQURZX0dSQUJCRUQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi bWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfTU9OSVRPUl9TV0lUQ0hfQ09ORklHXyIsIHR5 cGVfaWQgPSAibWV0YV9tb25pdG9yX3N3aXRjaF9jb25maWdfdHlwZV9nZXRfdHlwZSAoKSIpXQor KwlwdWJsaWMgZW51bSBNb25pdG9yU3dpdGNoQ29uZmlnVHlwZSB7CisrCQlBTExfTUlSUk9SLAor KwkJQUxMX0xJTkVBUiwKKysJCUVYVEVSTkFMLAorKwkJQlVJTFRJTiwKKysJCVVOS05PV04KKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0g Ik1FVEFfTU9USU9OXyIsIHR5cGVfaWQgPSAibWV0YV9tb3Rpb25fZGlyZWN0aW9uX2dldF90eXBl ICgpIildCisrCXB1YmxpYyBlbnVtIE1vdGlvbkRpcmVjdGlvbiB7CisrCQlVUCwKKysJCURPV04s CisrCQlMRUZULAorKwkJUklHSFQsCisrCQlVUF9MRUZULAorKwkJVVBfUklHSFQsCisrCQlET1dO X0xFRlQsCisrCQlET1dOX1JJR0hUCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g Im1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX1BBRF9BQ1RJT05fIiwgdHlwZV9pZCA9ICJt ZXRhX3BhZF9hY3Rpb25fdHlwZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBQYWRBY3Rp b25UeXBlIHsKKysJCUJVVFRPTiwKKysJCVJJTkcsCisrCQlTVFJJUAorKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjcHJlZml4ID0gIk1FVEFfUFJFRl8i LCB0eXBlX2lkID0gIm1ldGFfcHJlZmVyZW5jZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51 bSBQcmVmZXJlbmNlIHsKKysJCU1PVVNFX0JVVFRPTl9NT0RTLAorKwkJRk9DVVNfTU9ERSwKKysJ CUZPQ1VTX05FV19XSU5ET1dTLAorKwkJQVRUQUNIX01PREFMX0RJQUxPR1MsCisrCQlSQUlTRV9P Tl9DTElDSywKKysJCUFDVElPTl9ET1VCTEVfQ0xJQ0tfVElUTEVCQVIsCisrCQlBQ1RJT05fTUlE RExFX0NMSUNLX1RJVExFQkFSLAorKwkJQUNUSU9OX1JJR0hUX0NMSUNLX1RJVExFQkFSLAorKwkJ QVVUT19SQUlTRSwKKysJCUFVVE9fUkFJU0VfREVMQVksCisrCQlGT0NVU19DSEFOR0VfT05fUE9J TlRFUl9SRVNULAorKwkJVElUTEVCQVJfRk9OVCwKKysJCU5VTV9XT1JLU1BBQ0VTLAorKwkJRFlO QU1JQ19XT1JLU1BBQ0VTLAorKwkJS0VZQklORElOR1MsCisrCQlESVNBQkxFX1dPUktBUk9VTkRT LAorKwkJQlVUVE9OX0xBWU9VVCwKKysJCVdPUktTUEFDRV9OQU1FUywKKysJCVZJU1VBTF9CRUxM LAorKwkJQVVESUJMRV9CRUxMLAorKwkJVklTVUFMX0JFTExfVFlQRSwKKysJCUdOT01FX0FDQ0VT U0lCSUxJVFksCisrCQlHTk9NRV9BTklNQVRJT05TLAorKwkJQ1VSU09SX1RIRU1FLAorKwkJQ1VS U09SX1NJWkUsCisrCQlSRVNJWkVfV0lUSF9SSUdIVF9CVVRUT04sCisrCQlFREdFX1RJTElORywK KysJCUZPUkNFX0ZVTExTQ1JFRU4sCisrCQlXT1JLU1BBQ0VTX09OTFlfT05fUFJJTUFSWSwKKysJ CURSQUdHQUJMRV9CT1JERVJfV0lEVEgsCisrCQlBVVRPX01BWElNSVpFLAorKwkJQ0VOVEVSX05F V19XSU5ET1dTLAorKwkJRFJBR19USFJFU0hPTEQsCisrCQlMT0NBVEVfUE9JTlRFUjsKKysJCXB1 YmxpYyB1bm93bmVkIHN0cmluZyB0b19zdHJpbmcgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBXyIsIHR5cGVfaWQgPSAi bWV0YV9zZWxlY3Rpb25fdHlwZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBTZWxlY3Rp b25UeXBlIHsKKysJCVNFTEVDVElPTl9QUklNQVJZLAorKwkJU0VMRUNUSU9OX0NMSVBCT0FSRCwK KysJCVNFTEVDVElPTl9ETkQsCisrCQlOX1NFTEVDVElPTl9UWVBFUworKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9TSEFET1df TU9ERV8iLCB0eXBlX2lkID0gIm1ldGFfc2hhZG93X21vZGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVi bGljIGVudW0gU2hhZG93TW9kZSB7CisrCQlBVVRPLAorKwkJRk9SQ0VEX09GRiwKKysJCUZPUkNF RF9PTgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNw cmVmaXggPSAiTUVUQV9TSURFXyIsIHR5cGVfaWQgPSAibWV0YV9zaWRlX2dldF90eXBlICgpIild CisrCXB1YmxpYyBlbnVtIFNpZGUgeworKwkJTEVGVCwKKysJCVJJR0hULAorKwkJVE9QLAorKwkJ Qk9UVE9NCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwg Y3ByZWZpeCA9ICJNRVRBX1NJWkVfQ0hBTkdFXyIsIHR5cGVfaWQgPSAibWV0YV9zaXplX2NoYW5n ZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBTaXplQ2hhbmdlIHsKKysJCU1BWElNSVpF LAorKwkJVU5NQVhJTUlaRSwKKysJCUZVTExTQ1JFRU4sCisrCQlVTkZVTExTQ1JFRU4KKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1F VEFfTEFZRVJfIiwgdHlwZV9pZCA9ICJtZXRhX3N0YWNrX2xheWVyX2dldF90eXBlICgpIildCisr CXB1YmxpYyBlbnVtIFN0YWNrTGF5ZXIgeworKwkJREVTS1RPUCwKKysJCUJPVFRPTSwKKysJCU5P Uk1BTCwKKysJCVRPUCwKKysJCURPQ0ssCisrCQlPVkVSUklERV9SRURJUkVDVCwKKysJCUxBU1QK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4 ID0gIk1FVEFfVEFCX0xJU1RfIiwgdHlwZV9pZCA9ICJtZXRhX3RhYl9saXN0X2dldF90eXBlICgp IildCisrCXB1YmxpYyBlbnVtIFRhYkxpc3QgeworKwkJTk9STUFMLAorKwkJRE9DS1MsCisrCQlH Uk9VUCwKKysJCU5PUk1BTF9BTEwKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi bWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfVEFCX1NIT1dfIiwgdHlwZV9pZCA9ICJtZXRh X3RhYl9zaG93X3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gVGFiU2hvd1R5cGUg eworKwkJSUNPTiwKKysJCUlOU1RBTlRMWQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9WSVJUVUFMXyIsIHR5cGVfaWQgPSAi bWV0YV92aXJ0dWFsX21vZGlmaWVyX2dldF90eXBlICgpIildCisrCVtGbGFnc10KKysJcHVibGlj IGVudW0gVmlydHVhbE1vZGlmaWVyIHsKKysJCVNISUZUX01BU0ssCisrCQlDT05UUk9MX01BU0ss CisrCQlBTFRfTUFTSywKKysJCU1FVEFfTUFTSywKKysJCVNVUEVSX01BU0ssCisrCQlIWVBFUl9N QVNLLAorKwkJTU9EMl9NQVNLLAorKwkJTU9EM19NQVNLLAorKwkJTU9ENF9NQVNLLAorKwkJTU9E NV9NQVNLCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwg Y3ByZWZpeCA9ICJNRVRBX1dJTkRPV19DTElFTlRfVFlQRV8iLCB0eXBlX2lkID0gIm1ldGFfd2lu ZG93X2NsaWVudF90eXBlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIFdpbmRvd0NsaWVu dFR5cGUgeworKwkJV0FZTEFORCwKKysJCVgxMQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9XSU5ET1dfTUVOVV8iLCB0eXBl X2lkID0gIm1ldGFfd2luZG93X21lbnVfdHlwZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51 bSBXaW5kb3dNZW51VHlwZSB7CisrCQlXTSwKKysJCUFQUAorKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9XSU5ET1dfIiwgdHlw ZV9pZCA9ICJtZXRhX3dpbmRvd190eXBlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIFdp bmRvd1R5cGUgeworKwkJTk9STUFMLAorKwkJREVTS1RPUCwKKysJCURPQ0ssCisrCQlESUFMT0cs CisrCQlNT0RBTF9ESUFMT0csCisrCQlUT09MQkFSLAorKwkJTUVOVSwKKysJCVVUSUxJVFksCisr CQlTUExBU0hTQ1JFRU4sCisrCQlEUk9QRE9XTl9NRU5VLAorKwkJUE9QVVBfTUVOVSwKKysJCVRP T0xUSVAsCisrCQlOT1RJRklDQVRJT04sCisrCQlDT01CTywKKysJCURORCwKKysJCU9WRVJSSURF X09USEVSCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwg aW5zdGFuY2VfcG9zID0gMi45KV0KKysJcHVibGljIGRlbGVnYXRlIHZvaWQgSWRsZU1vbml0b3JX YXRjaEZ1bmMgKE1ldGEuSWRsZU1vbml0b3IgbW9uaXRvciwgdWludCB3YXRjaF9pZCk7CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGluc3RhbmNlX3BvcyA9IDQu OSldCisrCXB1YmxpYyBkZWxlZ2F0ZSB2b2lkIEtleUhhbmRsZXJGdW5jIChNZXRhLkRpc3BsYXkg ZGlzcGxheSwgTWV0YS5XaW5kb3cgd2luZG93LCBbQ0NvZGUgKHR5cGUgPSAiQ2x1dHRlcktleUV2 ZW50KiIpXSBDbHV0dGVyLktleUV2ZW50PyBldmVudCwgTWV0YS5LZXlCaW5kaW5nIGJpbmRpbmcp OworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBpbnN0YW5jZV9w b3MgPSAxLjkpXQorKwlwdWJsaWMgZGVsZWdhdGUgdm9pZCBQcmVmc0NoYW5nZWRGdW5jIChNZXRh LlByZWZlcmVuY2UgcHJlZik7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21h aW4uaCIsIGluc3RhbmNlX3BvcyA9IDEuOSldCisrCXB1YmxpYyBkZWxlZ2F0ZSBib29sIFdpbmRv d0ZvcmVhY2hGdW5jIChNZXRhLldpbmRvdyB3aW5kb3cpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjbmFtZSA9ICJNRVRBX0NVUlJFTlRfVElNRSIpXQorKwlw dWJsaWMgY29uc3QgaW50IENVUlJFTlRfVElNRTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gIm1ldGEvbWFpbi5oIiwgY25hbWUgPSAiTUVUQV9ERUZBVUxUX0lDT05fTkFNRSIpXQorKwlw dWJsaWMgY29uc3Qgc3RyaW5nIERFRkFVTFRfSUNPTl9OQU1FOworKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjbmFtZSA9ICJNRVRBX0lDT05fSEVJR0hUIildCisr CXB1YmxpYyBjb25zdCBpbnQgSUNPTl9IRUlHSFQ7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJtZXRhL21haW4uaCIsIGNuYW1lID0gIk1FVEFfSUNPTl9XSURUSCIpXQorKwlwdWJsaWMg Y29uc3QgaW50IElDT05fV0lEVEg7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRh L21haW4uaCIsIGNuYW1lID0gIk1FVEFfTUFKT1JfVkVSU0lPTiIpXQorKwlwdWJsaWMgY29uc3Qg aW50IE1BSk9SX1ZFUlNJT047CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21h aW4uaCIsIGNuYW1lID0gIk1FVEFfTUlDUk9fVkVSU0lPTiIpXQorKwlwdWJsaWMgY29uc3QgaW50 IE1JQ1JPX1ZFUlNJT047CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4u aCIsIGNuYW1lID0gIk1FVEFfTUlOSV9JQ09OX0hFSUdIVCIpXQorKwlwdWJsaWMgY29uc3QgaW50 IE1JTklfSUNPTl9IRUlHSFQ7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21h aW4uaCIsIGNuYW1lID0gIk1FVEFfTUlOSV9JQ09OX1dJRFRIIildCisrCXB1YmxpYyBjb25zdCBp bnQgTUlOSV9JQ09OX1dJRFRIOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9t YWluLmgiLCBjbmFtZSA9ICJNRVRBX01JTk9SX1ZFUlNJT04iKV0KKysJcHVibGljIGNvbnN0IGlu dCBNSU5PUl9WRVJTSU9OOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWlu LmgiLCBjbmFtZSA9ICJNRVRBX1BMVUdJTl9BUElfVkVSU0lPTiIpXQorKwlwdWJsaWMgY29uc3Qg aW50IFBMVUdJTl9BUElfVkVSU0lPTjsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1l dGEvbWFpbi5oIiwgY25hbWUgPSAiTUVUQV9QUklPUklUWV9CRUZPUkVfUkVEUkFXIildCisrCXB1 YmxpYyBjb25zdCBpbnQgUFJJT1JJVFlfQkVGT1JFX1JFRFJBVzsKKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY25hbWUgPSAiTUVUQV9QUklPUklUWV9QUkVGU19O T1RJRlkiKV0KKysJcHVibGljIGNvbnN0IGludCBQUklPUklUWV9QUkVGU19OT1RJRlk7CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNuYW1lID0gIk1FVEFfUFJJ T1JJVFlfUkVEUkFXIildCisrCXB1YmxpYyBjb25zdCBpbnQgUFJJT1JJVFlfUkVEUkFXOworKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjbmFtZSA9ICJNRVRBX1BS SU9SSVRZX1JFU0laRSIpXQorKwlwdWJsaWMgY29uc3QgaW50IFBSSU9SSVRZX1JFU0laRTsKKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY25hbWUgPSAiTUVUQV9W SVJUVUFMX0NPUkVfS0VZQk9BUkRfSUQiKV0KKysJcHVibGljIGNvbnN0IGludCBWSVJUVUFMX0NP UkVfS0VZQk9BUkRfSUQ7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4u aCIsIGNuYW1lID0gIk1FVEFfVklSVFVBTF9DT1JFX1BPSU5URVJfSUQiKV0KKysJcHVibGljIGNv bnN0IGludCBWSVJUVUFMX0NPUkVfUE9JTlRFUl9JRDsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gIm1ldGEvbWFpbi5oIildCisrCXB1YmxpYyBzdGF0aWMgYm9vbCBhY3RpdmF0ZV9zZXNz aW9uICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiKV0KKysJ cHVibGljIHN0YXRpYyB2b2lkIGFkZF9jbHV0dGVyX2RlYnVnX2ZsYWdzIChDbHV0dGVyLkRlYnVn RmxhZyBkZWJ1Z19mbGFncywgQ2x1dHRlci5EcmF3RGVidWdGbGFnIGRyYXdfZmxhZ3MsIENsdXR0 ZXIuUGlja0RlYnVnRmxhZyBwaWNrX2ZsYWdzKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gIm1ldGEvbWFpbi5oIildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBleGl0IChNZXRhLkV4aXRD b2RlIGNvZGUpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiKV0K KysJcHVibGljIHN0YXRpYyBzdHJpbmcgZ191dGY4X3N0cm5kdXAgKHN0cmluZyBzcmMsIHNpemVf dCBuKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIildCisrCXB1 YmxpYyBzdGF0aWMgdW5vd25lZCBHTGliLk9wdGlvbkNvbnRleHQgZ2V0X29wdGlvbl9jb250ZXh0 ICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiKV0KKysJcHVi bGljIHN0YXRpYyBib29sIGdldF9yZXBsYWNlX2N1cnJlbnRfd20gKCk7CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgaW5p dCAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIildCisrCXB1 YmxpYyBzdGF0aWMgYm9vbCBpc19yZXN0YXJ0ICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAibWV0YS9tYWluLmgiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIHF1aXQgKE1ldGEuRXhp dENvZGUgY29kZSk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIp XQorKwlwdWJsaWMgc3RhdGljIHZvaWQgcmVnaXN0ZXJfd2l0aF9zZXNzaW9uICgpOworKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiKV0KKysJcHVibGljIHN0YXRpYyB2 b2lkIHJlbW92ZV9jbHV0dGVyX2RlYnVnX2ZsYWdzIChDbHV0dGVyLkRlYnVnRmxhZyBkZWJ1Z19m bGFncywgQ2x1dHRlci5EcmF3RGVidWdGbGFnIGRyYXdfZmxhZ3MsIENsdXR0ZXIuUGlja0RlYnVn RmxhZyBwaWNrX2ZsYWdzKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFp bi5oIildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCByZXN0YXJ0IChzdHJpbmc/IG1lc3NhZ2UpOwor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiKV0KKysJcHVibGljIHN0 YXRpYyBpbnQgcnVuICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWlu LmgiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIHNldF9nbm9tZV93bV9rZXliaW5kaW5ncyAoc3Ry aW5nIHdtX2tleWJpbmRpbmdzKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEv bWFpbi5oIildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBzZXRfd21fbmFtZSAoc3RyaW5nIHdtX25h bWUpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiKV0KKysJcHVi bGljIHN0YXRpYyB2b2lkIHRlc3RfaW5pdCAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gIm1ldGEvbWFpbi5oIildCisrCXB1YmxpYyBzdGF0aWMgYm9vbCB4MTFfaW5pdF9nZGtfZGlz cGxheSAoKSB0aHJvd3MgR0xpYi5FcnJvcjsKKyt9CitkaWZmIC0tZ2l0IGEvdmFwaS9tdXR0ZXIt Y2x1dHRlci02LWN1c3RvbS52YWxhIGIvdmFwaS9tdXR0ZXItY2x1dHRlci02LWN1c3RvbS52YWxh CituZXcgZmlsZSBtb2RlIDEwMDY0NAoraW5kZXggMDAwMDAwMDAuLjg5MjI0YmU2CistLS0gL2Rl di9udWxsCisrKysgYi92YXBpL211dHRlci1jbHV0dGVyLTYtY3VzdG9tLnZhbGEKK0BAIC0wLDAg KzEsMTQ3IEBACisrbmFtZXNwYWNlIENsdXR0ZXIgeworKworKyAgcHVibGljIHN0cnVjdCBNYXRy aXggOiBDb2dsLk1hdHJpeCB7CisrICB9CisrCisrICBwdWJsaWMgY2xhc3MgQmFja2VuZCA6IEdM aWIuT2JqZWN0IHsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVibGljIHZpcnR1YWwgdm9pZCBh ZGRfb3B0aW9ucyAoR0xpYi5PcHRpb25Hcm91cCBncm91cCk7CisrICAgIFtOb1dyYXBwZXJdCisr ICAgIHB1YmxpYyB2aXJ0dWFsIGJvb2wgY3JlYXRlX2NvbnRleHQgKCkgdGhyb3dzIEdMaWIuRXJy b3I7CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1YmxpYyB2aXJ0dWFsIHVub3duZWQgQ2x1dHRl ci5TdGFnZVdpbmRvdyBjcmVhdGVfc3RhZ2UgKENsdXR0ZXIuU3RhZ2Ugd3JhcHBlcikgdGhyb3dz IEdMaWIuRXJyb3I7CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1YmxpYyB2aXJ0dWFsIHZvaWQg ZW5zdXJlX2NvbnRleHQgKENsdXR0ZXIuU3RhZ2Ugc3RhZ2UpOworKyAgICBbTm9XcmFwcGVyXQor KyAgICBwdWJsaWMgdmlydHVhbCBDbHV0dGVyLkZlYXR1cmVGbGFncyBnZXRfZmVhdHVyZXMgKCk7 CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1YmxpYyB2aXJ0dWFsIHZvaWQgaW5pdF9ldmVudHMg KCk7CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1YmxpYyB2aXJ0dWFsIHZvaWQgaW5pdF9mZWF0 dXJlcyAoKTsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVibGljIHZpcnR1YWwgYm9vbCBwb3N0 X3BhcnNlICgpIHRocm93cyBHTGliLkVycm9yOworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJs aWMgdmlydHVhbCBib29sIHByZV9wYXJzZSAoKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysgICAgW05v V3JhcHBlcl0KKysgICAgcHVibGljIHZpcnR1YWwgdm9pZCByZWRyYXcgKENsdXR0ZXIuU3RhZ2Ug c3RhZ2UpOworKyAgfQorKworKyAgW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2JveF9nZXRfdHlwZSAoKSIpXQorKyAgcHVi bGljIGNsYXNzIEJveCA6IENsdXR0ZXIuQWN0b3IgeworKyAgICBwdWJsaWMgQ2x1dHRlci5MYXlv dXRNYW5hZ2VyIGxheW91dF9tYW5hZ2VyIHsgZ2V0OyBzZXQ7IH0KKysgIH0KKysKKysgIFtDQ29k ZSAodHlwZV9pZCA9ICJDTFVUVEVSX1RZUEVfQ09MT1IiLCBjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIildCisrICBwdWJsaWMgc3RydWN0IENvbG9yIHsKKysgICAgW0NDb2Rl IChjbmFtZSA9ICJjbHV0dGVyX2NvbG9yX2Zyb21faGxzIildCisrICAgIHB1YmxpYyBDb2xvci5m cm9tX2hscyAoZmxvYXQgaHVlLCBmbG9hdCBsdW1pbmFuY2UsIGZsb2F0IHNhdHVyYXRpb24pOwor KyAgICBbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfY29sb3JfZnJvbV9waXhlbCIpXQorKyAgICBw dWJsaWMgQ29sb3IuZnJvbV9waXhlbCAodWludDMyIHBpeGVsKTsKKysgICAgW0NDb2RlIChjbmFt ZSA9ICJjbHV0dGVyX2NvbG9yX2Zyb21fc3RyaW5nIildCisrICAgIHB1YmxpYyBDb2xvci5mcm9t X3N0cmluZyAoc3RyaW5nIHN0cik7CisrICAgIFtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl9jb2xv cl9mcm9tX3N0cmluZyIpXQorKyAgICBwdWJsaWMgYm9vbCBwYXJzZV9zdHJpbmcgKHN0cmluZyBz dHIpOworKyAgICBwdWJsaWMgc3RhdGljIHVub3duZWQgQ2x1dHRlci5Db2xvcj8gZ2V0X3N0YXRp YyAoQ2x1dHRlci5TdGF0aWNDb2xvciBjb2xvcik7CisrICB9CisrCisrICBbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfY29u dGFpbmVyX2dldF90eXBlICgpIildCisrICBwdWJsaWMgaW50ZXJmYWNlIENvbnRhaW5lciA6IEdM aWIuT2JqZWN0IHsKKysgICAgcHVibGljIHZvaWQgYWRkIChwYXJhbXMgQ2x1dHRlci5BY3Rvcltd IGFjdG9ycyk7CisrICAgIFtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl9jb250YWluZXJfY2xhc3Nf ZmluZF9jaGlsZF9wcm9wZXJ0eSIpXQorKyAgICBwdWJsaWMgY2xhc3MgdW5vd25lZCBHTGliLlBh cmFtU3BlYyBmaW5kX2NoaWxkX3Byb3BlcnR5IChzdHJpbmcgcHJvcGVydHlfbmFtZSk7CisrICAg IFtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl9jb250YWluZXJfY2xhc3NfbGlzdF9jaGlsZF9wcm9w ZXJ0aWVzIildCisrICAgIHB1YmxpYyBjbGFzcyB1bm93bmVkIEdMaWIuUGFyYW1TcGVjW10gbGlz dF9jaGlsZF9wcm9wZXJ0aWVzICgpOworKyAgfQorKworKyAgW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY29weV9mdW5jdGlvbiA9ICJnX2JveGVkX2NvcHki LCBmcmVlX2Z1bmN0aW9uID0gImdfYm94ZWRfZnJlZSIsIHR5cGVfaWQgPSAiY2x1dHRlcl9ldmVu dF9nZXRfdHlwZSAoKSIpXQorKyAgW0NvbXBhY3RdCisrICBwdWJsaWMgY2xhc3MgRXZlbnQgewor KyAgICBwdWJsaWMgQ2x1dHRlci5BbnlFdmVudCBhbnkgeyBbQ0NvZGUgKGNuYW1lID0gIihDbHV0 dGVyQW55RXZlbnQgKikiKV0gZ2V0OyB9CisrICAgIHB1YmxpYyBDbHV0dGVyLkJ1dHRvbkV2ZW50 IGJ1dHRvbiB7IFtDQ29kZSAoY25hbWUgPSAiKENsdXR0ZXJCdXR0b25FdmVudCAqKSIpXSBnZXQ7 IH0KKysgICAgcHVibGljIENsdXR0ZXIuQ3Jvc3NpbmdFdmVudCBjcm9zc2luZyB7IFtDQ29kZSAo Y25hbWUgPSAiKENsdXR0ZXJDcm9zc2luZ0V2ZW50ICopIildIGdldDsgfQorKyAgICBwdWJsaWMg Q2x1dHRlci5LZXlFdmVudCBrZXkgeyBbQ0NvZGUgKGNuYW1lID0gIihDbHV0dGVyS2V5RXZlbnQg KikiKV0gZ2V0OyB9CisrICAgIHB1YmxpYyBDbHV0dGVyLk1vdGlvbkV2ZW50IG1vdGlvbiB7IFtD Q29kZSAoY25hbWUgPSAiKENsdXR0ZXJNb3Rpb25FdmVudCAqKSIpXSBnZXQ7IH0KKysgICAgcHVi bGljIENsdXR0ZXIuU2Nyb2xsRXZlbnQgc2Nyb2xsIHsgW0NDb2RlIChjbmFtZSA9ICIoQ2x1dHRl clNjcm9sbEV2ZW50ICopIildIGdldDsgfQorKyAgICBwdWJsaWMgQ2x1dHRlci5TdGFnZVN0YXRl RXZlbnQgc3RhZ2Vfc3RhdGUgeyBbQ0NvZGUgKGNuYW1lID0gIihDbHV0dGVyU3RhZ2VTdGF0ZUV2 ZW50ICopIildIGdldDsgfQorKyAgICBwdWJsaWMgQ2x1dHRlci5Ub3VjaEV2ZW50IHRvdWNoIHsg W0NDb2RlIChjbmFtZSA9ICIoQ2x1dHRlclRvdWNoRXZlbnQgKikiKV0gZ2V0OyB9CisrICAgIHB1 YmxpYyBDbHV0dGVyLlRvdWNocGFkUGluY2hFdmVudCB0b3VjaHBhZF9waW5jaCB7IFtDQ29kZSAo Y25hbWUgPSAiKENsdXR0ZXJUb3VjaHBhZFBpbmNoRXZlbnQgKikiKV0gZ2V0OyB9CisrICAgIHB1 YmxpYyBDbHV0dGVyLlRvdWNocGFkU3dpcGVFdmVudCB0b3VjaHBhZF9zd2lwZSB7IFtDQ29kZSAo Y25hbWUgPSAiKENsdXR0ZXJUb3VjaHBhZFN3aXBlRXZlbnQgKikiKV0gZ2V0OyB9CisrICB9Cisr CisrICBbQ0NvZGUgKHR5cGVfaWQgPSAiY2x1dHRlcl9zdGFnZV9nZXRfdHlwZSAoKSIsIGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysgIHB1YmxpYyBjbGFzcyBTdGFn ZSA6IENsdXR0ZXIuR3JvdXAgeworKyAgICBbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfcmVkcmF3 IildCisrICAgIHB1YmxpYyB2b2lkIHJlZHJhdyAoKTsKKysgIH0KKysKKysgIFtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKyAgcHVibGljIGludGVyZmFj ZSBTdGFnZVdpbmRvdyA6IEdMaWIuT2JqZWN0IHsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVi bGljIGFic3RyYWN0IGludCBnZXRfcGVuZGluZ19zd2FwcyAoKTsKKysgICAgW05vV3JhcHBlcl0K KysgICAgcHVibGljIGFic3RyYWN0IHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfd3JhcHBlciAo KTsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVibGljIGFic3RyYWN0IGJvb2wgaGFzX3JlZHJh d19jbGlwcyAoKTsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVibGljIGFic3RyYWN0IHZvaWQg aGlkZSAoKTsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVibGljIGFic3RyYWN0IGJvb2wgaWdu b3JpbmdfcmVkcmF3X2NsaXBzICgpOworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMgYWJz dHJhY3QgYm9vbCByZWFsaXplICgpOworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMgYWJz dHJhY3Qgdm9pZCByZXNpemUgKGludCB3aWR0aCwgaW50IGhlaWdodCk7CisrICAgIFtOb1dyYXBw ZXJdCisrICAgIHB1YmxpYyBhYnN0cmFjdCB2b2lkIHNldF9jdXJzb3JfdmlzaWJsZSAoYm9vbCBj dXJzb3JfdmlzaWJsZSk7CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1YmxpYyBhYnN0cmFjdCB2 b2lkIHNldF9mdWxsc2NyZWVuIChib29sIGlzX2Z1bGxzY3JlZW4pOworKyAgICBbTm9XcmFwcGVy XQorKyAgICBwdWJsaWMgYWJzdHJhY3Qgdm9pZCBzZXRfdGl0bGUgKHN0cmluZyB0aXRsZSk7Cisr ICAgIFtOb1dyYXBwZXJdCisrICAgIHB1YmxpYyBhYnN0cmFjdCB2b2lkIHNldF91c2VyX3Jlc2l6 YWJsZSAoYm9vbCBpc19yZXNpemFibGUpOworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMg YWJzdHJhY3Qgdm9pZCBzaG93IChib29sIGRvX3JhaXNlKTsKKysgICAgW05vV3JhcHBlcl0KKysg ICAgcHVibGljIGFic3RyYWN0IHZvaWQgdW5yZWFsaXplICgpOworKyAgfQorKworKyAgW0NDb2Rl ICh0eXBlX2lkID0gImNsdXR0ZXJfdGV4dHVyZV9nZXRfdHlwZSAoKSIsIGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysgIHB1YmxpYyBjbGFzcyBUZXh0dXJlIDogQ2x1 dHRlci5BY3RvciB7CisrICAgIHB1YmxpYyBDb2dsLk1hdGVyaWFsIGNvZ2xfbWF0ZXJpYWwgeyBn ZXQ7IHNldDsgfQorKyAgICBwdWJsaWMgQ29nbC5UZXh0dXJlIGNvZ2xfdGV4dHVyZSB7IGdldDsg c2V0OyB9CisrICB9CisrCisrICBbQ29tcGFjdF0KKysgIFtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKyAgcHVibGljIGNsYXNzIFRpbWVvdXRQb29sIHsK KysgICAgW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKyAgICBwdWJs aWMgVGltZW91dFBvb2wgKGludCBwcmlvcml0eSk7CisrICB9CisrCisrICBbQ0NvZGUgKGNwcmVm aXggPSAiQ0xVVFRFUl9GRUFUVVJFXyIsIGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiKV0KKysgIFtGbGFnc10KKysgIHB1YmxpYyBlbnVtIEZlYXR1cmVGbGFncyB7CisrICAg IFRFWFRVUkVfTlBPVDsKKysgICAgW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX2ZlYXR1cmVfYXZh aWxhYmxlIildCisrICAgIHB1YmxpYyBib29sIGlzX2F2YWlsYWJsZSAoKTsKKysgICAgW0NDb2Rl IChjbmFtZSA9ICJjbHV0dGVyX2ZlYXR1cmVfZ2V0X2FsbCIpXQorKyAgICBwdWJsaWMgc3RhdGlj IENsdXR0ZXIuRmVhdHVyZUZsYWdzIEBnZXQgKCk7CisrICB9CisrCisrICBbQ0NvZGUgKHR5cGVf aWQgPSAiQ0xVVFRFUl9UWVBFX1VOSVRTIiwgY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIpXQorKyAgcHVibGljIHN0cnVjdCBVbml0cyB7CisrICAgIFtDQ29kZSAoY25hbWUg PSAiY2x1dHRlcl91bml0c19mcm9tX2NtIildCisrICAgIHB1YmxpYyBVbml0cy5mcm9tX2NtIChm bG9hdCBjbSk7CisrICAgIFtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl91bml0c19mcm9tX2VtIild CisrICAgIHB1YmxpYyBVbml0cy5mcm9tX2VtIChmbG9hdCBlbSk7CisrICAgIFtDQ29kZSAoY25h bWUgPSAiY2x1dHRlcl91bml0c19mcm9tX2VtX2Zvcl9mb250IildCisrICAgIHB1YmxpYyBVbml0 cy5mcm9tX2VtX2Zvcl9mb250IChzdHJpbmcgZm9udF9uYW1lLCBmbG9hdCBlbSk7CisrICAgIFtD Q29kZSAoY25hbWUgPSAiY2x1dHRlcl91bml0c19mcm9tX21tIildCisrICAgIHB1YmxpYyBVbml0 cy5mcm9tX21tIChmbG9hdCBtbSk7CisrICAgIFtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl91bml0 c19mcm9tX3BpeGVscyIpXQorKyAgICBwdWJsaWMgVW5pdHMuZnJvbV9waXhlbHMgKGludCBweCk7 CisrICAgIFtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl91bml0c19mcm9tX3B0IildCisrICAgIHB1 YmxpYyBVbml0cy5mcm9tX3B0IChmbG9hdCBwdCk7CisrICAgIFtDQ29kZSAoY25hbWUgPSAiY2x1 dHRlcl91bml0c19mcm9tX3N0cmluZyIpXQorKyAgICBwdWJsaWMgVW5pdHMuZnJvbV9zdHJpbmcg KHN0cmluZyBzdHIpOworKyAgfQorK30KK2RpZmYgLS1naXQgYS92YXBpL211dHRlci1jbHV0dGVy LTYuZGVwcyBiL3ZhcGkvbXV0dGVyLWNsdXR0ZXItNi5kZXBzCituZXcgZmlsZSBtb2RlIDEwMDY0 NAoraW5kZXggMDAwMDAwMDAuLjdhNzBkNmRmCistLS0gL2Rldi9udWxsCisrKysgYi92YXBpL211 dHRlci1jbHV0dGVyLTYuZGVwcworQEAgLTAsMCArMSw0IEBACisrYXRrCisrY2Fpcm8KKytqc29u LWdsaWItMS4wCisrbXV0dGVyLWNvZ2wtNgorZGlmZiAtLWdpdCBhL3ZhcGkvbXV0dGVyLWNsdXR0 ZXItNi52YXBpIGIvdmFwaS9tdXR0ZXItY2x1dHRlci02LnZhcGkKK25ldyBmaWxlIG1vZGUgMTAw NjQ0CitpbmRleCAwMDAwMDAwMC4uZDY2ZjlhYzgKKy0tLSAvZGV2L251bGwKKysrKyBiL3ZhcGkv bXV0dGVyLWNsdXR0ZXItNi52YXBpCitAQCAtMCwwICsxLDg2ODcgQEAKKysvKiBtdXR0ZXItY2x1 dHRlci02LnZhcGkgZ2VuZXJhdGVkIGJ5IHZhcGlnZW4sIGRvIG5vdCBtb2RpZnkuICovCisrCisr W0NDb2RlIChjcHJlZml4ID0gIkNsdXR0ZXIiLCBnaXJfbmFtZXNwYWNlID0gIkNsdXR0ZXIiLCBn aXJfdmVyc2lvbiA9ICI2IiwgbG93ZXJfY2FzZV9jcHJlZml4ID0gImNsdXR0ZXJfIildCisrbmFt ZXNwYWNlIENsdXR0ZXIgeworKwluYW1lc3BhY2UgS2V5IHsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzAiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEAwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQDE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8yIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBAMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZXzMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfMzI3MF9BbHRDdXJzb3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcw X0FsdEN1cnNvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfQXR0biIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQDMyNzBfQXR0bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfQmFja1RhYiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQDMyNzBfQmFja1RhYjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfQ2hhbmdl U2NyZWVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9DaGFuZ2VTY3JlZW47CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV8zMjcwX0NvcHkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX0NvcHk7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV8zMjcwX0N1cnNvckJsaW5rIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBAMzI3MF9DdXJzb3JCbGluazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfQ3Vyc29yU2VsZWN0Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9DdXJzb3JTZWxlY3Q7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV8zMjcwX0RlbGV0ZVdvcmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX0RlbGV0ZVdv cmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX0R1cGxpY2F0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQDMyNzBfRHVwbGljYXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9FbnRlciIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQDMyNzBfRW50ZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX0VyYXNlRU9G IildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9FcmFzZUVPRjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ XzMyNzBfRXJhc2VJbnB1dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfRXJhc2VJbnB1 dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZXzMyNzBfRXhTZWxlY3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEAzMjcwX0V4U2VsZWN0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9GaWVsZE1hcmsiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEAzMjcwX0ZpZWxkTWFyazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfSWRl bnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX0lkZW50OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf MzI3MF9KdW1wIildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9KdW1wOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfMzI3MF9LZXlDbGljayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfS2V5Q2xp Y2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX0xlZnQyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBA MzI3MF9MZWZ0MjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfUEExIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBAMzI3MF9QQTE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX1BBMiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQDMyNzBfUEEyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9QQTMiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEAzMjcwX1BBMzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfUGxheSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQDMyNzBfUGxheTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfUHJpbnRT Y3JlZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX1ByaW50U2NyZWVuOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfMzI3MF9RdWl0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9RdWl0Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfMzI3MF9SZWNvcmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcw X1JlY29yZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfUmVzZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEAzMjcwX1Jlc2V0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9SaWdodDIiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEAzMjcwX1JpZ2h0MjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfUnVsZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfUnVsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfU2V0 dXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX1NldHVwOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf MzI3MF9UZXN0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9UZXN0OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV81Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBANTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzYiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEA2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfNyIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQDc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV84IildCisrCQlwdWJsaWMgY29uc3QgdWludCBAODsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZXzkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEA5OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FFIildCisr CQlwdWJsaWMgY29uc3QgdWludCBBRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FhY3V0ZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQWFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQWJlbG93ZG90IildCisrCQlw dWJsaWMgY29uc3QgdWludCBBYmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BYnJldmUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEFicmV2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FicmV2ZWFjdXRlIild CisrCQlwdWJsaWMgY29uc3QgdWludCBBYnJldmVhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FicmV2 ZWJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBYnJldmViZWxvd2RvdDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0FicmV2ZWdyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBYnJldmVncmF2 ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FicmV2ZWhvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFi cmV2ZWhvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BYnJldmV0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQWJyZXZldGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BY2Nlc3NYX0VuYWJsZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQWNjZXNzWF9FbmFibGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BY2Nlc3NY X0ZlZWRiYWNrX0VuYWJsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQWNjZXNzWF9GZWVkYmFj a19FbmFibGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQWNpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BY2lyY3VtZmxleGFjdXRlIildCisr CQlwdWJsaWMgY29uc3QgdWludCBBY2lyY3VtZmxleGFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQWNp cmN1bWZsZXhiZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQWNpcmN1bWZsZXhiZWxv d2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0FjaXJjdW1mbGV4Z3JhdmUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEFjaXJjdW1mbGV4Z3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BY2lyY3VtZmxleGhvb2si KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFjaXJjdW1mbGV4aG9vazsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0FjaXJjdW1mbGV4dGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFjaXJjdW1mbGV4dGls ZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9BZGRGYXZvcml0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg QWRkRmF2b3JpdGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BZGlhZXJlc2lzIildCisrCQlwdWJsaWMgY29u c3QgdWludCBBZGlhZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQWdyYXZlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBBZ3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BaG9vayIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQWhvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BbHRfTCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQWx0X0w7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BbHRfUiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQWx0X1I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BbWFjcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBBbWFjcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQW9nb25layIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQW9nb25lazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FwcGxpY2F0aW9uTGVmdCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQXBwbGljYXRpb25MZWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXBwbGljYXRpb25S aWdodCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXBwbGljYXRpb25SaWdodDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0FyYWJpY18wIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfMDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0FyYWJpY18xIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfMTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0FyYWJpY18yIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfMjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0FyYWJpY18zIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNf MzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY180IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFi aWNfNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY181IildCisrCQlwdWJsaWMgY29uc3QgdWludCBB cmFiaWNfNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY182IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBBcmFiaWNfNjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY183IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBBcmFiaWNfNzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY184IildCisrCQlwdWJsaWMgY29u c3QgdWludCBBcmFiaWNfODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY185IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBBcmFiaWNfOTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19haW4iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEFyYWJpY19haW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfYWxlZiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2FsZWY7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFi aWNfYWxlZm1ha3N1cmEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19hbGVmbWFrc3Vy YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19iZWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFy YWJpY19iZWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfY29tbWEiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEFyYWJpY19jb21tYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19kYWQiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEFyYWJpY19kYWQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfZGFsIild CisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfZGFsOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmlj X2RhbW1hIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfZGFtbWE7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9BcmFiaWNfZGFtbWF0YW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19kYW1t YXRhbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19kZGFsIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBBcmFiaWNfZGRhbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19mYXJzaV95ZWgiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEFyYWJpY19mYXJzaV95ZWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNf ZmF0aGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19mYXRoYTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0FyYWJpY19mYXRoYXRhbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2ZhdGhh dGFuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2ZlaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg QXJhYmljX2ZlaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19mdWxsc3RvcCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQXJhYmljX2Z1bGxzdG9wOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2dhZiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2dhZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJp Y19naGFpbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2doYWluOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQXJhYmljX2hhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfaGE7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9BcmFiaWNfaGFoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfaGFo OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2hhbXphIildCisrCQlwdWJsaWMgY29uc3QgdWludCBB cmFiaWNfaGFtemE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfaGFtemFfYWJvdmUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEFyYWJpY19oYW16YV9hYm92ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJp Y19oYW16YV9iZWxvdyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2hhbXphX2JlbG93 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2hhbXphb25hbGVmIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBBcmFiaWNfaGFtemFvbmFsZWY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfaGFtemFvbndh dyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2hhbXphb253YXc7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9BcmFiaWNfaGFtemFvbnllaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2hh bXphb255ZWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfaGFtemF1bmRlcmFsZWYiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEFyYWJpY19oYW16YXVuZGVyYWxlZjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Fy YWJpY19oZWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19oZWg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9BcmFiaWNfaGVoX2RvYWNoYXNobWVlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFi aWNfaGVoX2RvYWNoYXNobWVlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2hlaF9nb2FsIildCisr CQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfaGVoX2dvYWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFi aWNfamVlbSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2plZW07CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9BcmFiaWNfamVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfamVoOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQXJhYmljX2thZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2th ZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19rYXNyYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg QXJhYmljX2thc3JhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2thc3JhdGFuIildCisrCQlwdWJs aWMgY29uc3QgdWludCBBcmFiaWNfa2FzcmF0YW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfa2Vo ZWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19rZWhlaDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0FyYWJpY19raGFoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfa2hhaDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0FyYWJpY19sYW0iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19sYW07 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfbWFkZGFfYWJvdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEFyYWJpY19tYWRkYV9hYm92ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19tYWRkYW9uYWxl ZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX21hZGRhb25hbGVmOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQXJhYmljX21lZW0iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19tZWVtOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQXJhYmljX25vb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJp Y19ub29uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX25vb25fZ2h1bm5hIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBBcmFiaWNfbm9vbl9naHVubmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfcGVo IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfcGVoOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJh YmljX3BlcmNlbnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19wZXJjZW50OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQXJhYmljX3FhZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3Fh ZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19xdWVzdGlvbl9tYXJrIildCisrCQlwdWJsaWMgY29u c3QgdWludCBBcmFiaWNfcXVlc3Rpb25fbWFyazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19yYSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3JhOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmlj X3JyZWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19ycmVoOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQXJhYmljX3NhZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3NhZDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0FyYWJpY19zZWVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfc2Vl bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19zZW1pY29sb24iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEFyYWJpY19zZW1pY29sb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfc2hhZGRhIildCisr CQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfc2hhZGRhOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmlj X3NoZWVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfc2hlZW47CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9BcmFiaWNfc3VrdW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19zdWt1bjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0FyYWJpY19zdXBlcnNjcmlwdF9hbGVmIildCisrCQlwdWJsaWMgY29u c3QgdWludCBBcmFiaWNfc3VwZXJzY3JpcHRfYWxlZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19z d2l0Y2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19zd2l0Y2g7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9BcmFiaWNfdGFoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfdGFoOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQXJhYmljX3RhdHdlZWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJp Y190YXR3ZWVsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3RjaGVoIildCisrCQlwdWJsaWMgY29u c3QgdWludCBBcmFiaWNfdGNoZWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfdGVoIildCisrCQlw dWJsaWMgY29uc3QgdWludCBBcmFiaWNfdGVoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3RlaG1h cmJ1dGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY190ZWhtYXJidXRhOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQXJhYmljX3RoYWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY190aGFs OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3RoZWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFy YWJpY190aGVoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3R0ZWgiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEFyYWJpY190dGVoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3ZlaCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQXJhYmljX3ZlaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY193YXciKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY193YXc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNf eWVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfeWVoOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QXJhYmljX3llaF9iYXJlZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3llaF9iYXJl ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY196YWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFy YWJpY196YWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfemFpbiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQXJhYmljX3phaW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmluZyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQXJpbmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9BVCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQXJtZW5pYW5fQVQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9BWUIiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX0FZQjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVu aWFuX0JFTiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fQkVOOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQXJtZW5pYW5fQ0hBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9DSEE7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9EQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJt ZW5pYW5fREE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9EWkEiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEFybWVuaWFuX0RaQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0UiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX0U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9GRSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fRkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1l bmlhbl9HSEFUIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9HSEFUOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQXJtZW5pYW5fR0lNIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9H SU07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9ISSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg QXJtZW5pYW5fSEk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9ITyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQXJtZW5pYW5fSE87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9JTkkiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX0lOSTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFu X0pFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9KRTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0FybWVuaWFuX0tFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9LRTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0FybWVuaWFuX0tFTiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5f S0VOOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fS0hFIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBBcm1lbmlhbl9LSEU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9MWVVOIildCisrCQlwdWJs aWMgY29uc3QgdWludCBBcm1lbmlhbl9MWVVOOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fTUVO IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9NRU47CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9B cm1lbmlhbl9OVSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fTlU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9Bcm1lbmlhbl9PIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9POwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fUEUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVu aWFuX1BFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fUFlVUiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQXJtZW5pYW5fUFlVUjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX1JBIildCisrCQlw dWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9SQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX1JF IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9SRTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Fy bWVuaWFuX1NFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9TRTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0FybWVuaWFuX1NIQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fU0hB OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fVENIRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg QXJtZW5pYW5fVENIRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX1RPIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBBcm1lbmlhbl9UTzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX1RTQSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fVFNBOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5p YW5fVFNPIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9UU087CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9Bcm1lbmlhbl9UWVVOIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9UWVVO OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fVkVWIildCisrCQlwdWJsaWMgY29uc3QgdWludCBB cm1lbmlhbl9WRVY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9WTyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQXJtZW5pYW5fVk87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9WWVVOIildCisr CQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9WWVVOOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5p YW5fWUVDSCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fWUVDSDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0FybWVuaWFuX1pBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9aQTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX1pIRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJt ZW5pYW5fWkhFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fYWNjZW50IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBBcm1lbmlhbl9hY2NlbnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9hbWFu YWsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2FtYW5hazsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0FybWVuaWFuX2Fwb3N0cm9waGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFu X2Fwb3N0cm9waGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9hdCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQXJtZW5pYW5fYXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9heWIiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2F5YjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFu X2JlbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fYmVuOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQXJtZW5pYW5fYnV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9idXQ7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9jaGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVu aWFuX2NoYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2RhIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBBcm1lbmlhbl9kYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2R6YSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fZHphOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVu aWFuX2V4Y2xhbSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fZXhjbGFtOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQXJtZW5pYW5fZmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFu X2ZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fZnVsbF9zdG9wIildCisrCQlwdWJsaWMgY29u c3QgdWludCBBcm1lbmlhbl9mdWxsX3N0b3A7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9naGF0 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9naGF0OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QXJtZW5pYW5fZ2ltIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9naW07CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9Bcm1lbmlhbl9oaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5f aGk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9obyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg QXJtZW5pYW5faG87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9oeXBoZW4iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEFybWVuaWFuX2h5cGhlbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2lu aSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5faW5pOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QXJtZW5pYW5famUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2plOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQXJtZW5pYW5fa2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2tl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fa2VuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBB cm1lbmlhbl9rZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9raGUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEFybWVuaWFuX2toZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2xpZ2F0dXJl X2V3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9saWdhdHVyZV9ldzsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0FybWVuaWFuX2x5dW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFu X2x5dW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9tZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEFybWVuaWFuX21lbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX251IildCisrCQlwdWJs aWMgY29uc3QgdWludCBBcm1lbmlhbl9udTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX28iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX287CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlh bl9wYXJ1eWsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX3BhcnV5azsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0FybWVuaWFuX3BlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9w ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3B5dXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEFybWVuaWFuX3B5dXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9xdWVzdGlvbiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fcXVlc3Rpb247CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1l bmlhbl9yYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fcmE7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9Bcm1lbmlhbl9yZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fcmU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9zZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5p YW5fc2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9zZXBhcmF0aW9uX21hcmsiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX3NlcGFyYXRpb25fbWFyazsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0FybWVuaWFuX3NoYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fc2hhOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQXJtZW5pYW5fc2hlc2h0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1l bmlhbl9zaGVzaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl90Y2hlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBBcm1lbmlhbl90Y2hlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fdG8iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX3RvOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5p YW5fdHNhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl90c2E7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9Bcm1lbmlhbl90c28iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX3RzbzsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3R5dW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFy bWVuaWFuX3R5dW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl92ZXJqYWtldCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fdmVyamFrZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlh bl92ZXYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX3ZldjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0FybWVuaWFuX3ZvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl92bzsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0FybWVuaWFuX3Z5dW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVu aWFuX3Z5dW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl95ZWNoIildCisrCQlwdWJsaWMgY29u c3QgdWludCBBcm1lbmlhbl95ZWNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5feWVudGFtbmEi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX3llbnRhbW5hOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQXJtZW5pYW5femEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX3phOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQXJtZW5pYW5femhlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlh bl96aGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BdGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEF0 aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0F1ZGlibGVCZWxsX0VuYWJsZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQXVkaWJsZUJlbGxfRW5hYmxlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXVkaW9DeWNsZVRy YWNrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBdWRpb0N5Y2xlVHJhY2s7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9BdWRpb0ZvcndhcmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEF1ZGlvRm9yd2FyZDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0F1ZGlvTG93ZXJWb2x1bWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEF1ZGlvTG93ZXJWb2x1bWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BdWRpb01lZGlhIildCisrCQlwdWJs aWMgY29uc3QgdWludCBBdWRpb01lZGlhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXVkaW9NaWNNdXRlIild CisrCQlwdWJsaWMgY29uc3QgdWludCBBdWRpb01pY011dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BdWRp b011dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEF1ZGlvTXV0ZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0F1ZGlvTmV4dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXVkaW9OZXh0OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQXVkaW9QYXVzZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXVkaW9QYXVzZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0F1ZGlvUGxheSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXVkaW9QbGF5 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQXVkaW9QcmV2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBdWRp b1ByZXY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BdWRpb1JhaXNlVm9sdW1lIildCisrCQlwdWJsaWMgY29u c3QgdWludCBBdWRpb1JhaXNlVm9sdW1lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXVkaW9SYW5kb21QbGF5 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBdWRpb1JhbmRvbVBsYXk7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9BdWRpb1JlY29yZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXVkaW9SZWNvcmQ7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9BdWRpb1JlcGVhdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXVkaW9SZXBl YXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9BdWRpb1Jld2luZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg QXVkaW9SZXdpbmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BdWRpb1N0b3AiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEF1ZGlvU3RvcDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0F3YXkiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEF3YXk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9CIildCisrCQlwdWJsaWMgY29uc3QgdWludCBC OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQmFib3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBCYWJv dmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9CYWNrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBCYWNr OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQmFja0ZvcndhcmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEJh Y2tGb3J3YXJkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQmFja1NwYWNlIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBCYWNrU3BhY2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9CYXR0ZXJ5IildCisrCQlwdWJsaWMgY29u c3QgdWludCBCYXR0ZXJ5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQmVnaW4iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEJlZ2luOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQmx1ZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQmx1ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0JsdWV0b290aCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQmx1ZXRvb3RoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQm9vayIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQm9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0JvdW5jZUtleXNfRW5hYmxlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBCb3VuY2VLZXlzX0VuYWJsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0JyZWFrIildCisr CQlwdWJsaWMgY29uc3QgdWludCBCcmVhazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0JyaWdodG5lc3NBZGp1 c3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEJyaWdodG5lc3NBZGp1c3Q7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9CeWVsb3J1c3NpYW5fU0hPUlRVIildCisrCQlwdWJsaWMgY29uc3QgdWludCBCeWVsb3J1 c3NpYW5fU0hPUlRVOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQnllbG9ydXNzaWFuX3Nob3J0dSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQnllbG9ydXNzaWFuX3Nob3J0dTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Mi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DRCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQ0Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DSCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQ0g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DX0giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENf SDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0NfaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ19oOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQ2Fib3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBDYWJvdmVkb3Q7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9DYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENhY3V0ZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0NhbGN1bGF0b3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENhbGN1 bGF0b3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DYWxlbmRhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg Q2FsZW5kYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DYW5jZWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IENhbmNlbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NhcHNfTG9jayIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQ2Fwc19Mb2NrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ2Nhcm9uIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBDY2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DY2VkaWxsYSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQ2NlZGlsbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DY2lyY3VtZmxleCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQ2NpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DaCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQ2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DbGVhciIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQ2xlYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DbGVhckdyYWIiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IENsZWFyR3JhYjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Nsb3NlIildCisrCQlwdWJsaWMgY29u c3QgdWludCBDbG9zZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NvZGVpbnB1dCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQ29kZWlucHV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ29sb25TaWduIildCisrCQlwdWJs aWMgY29uc3QgdWludCBDb2xvblNpZ247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Db21tdW5pdHkiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IENvbW11bml0eTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NvbnRyYXN0QWRq dXN0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBDb250cmFzdEFkanVzdDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0NvbnRyb2xfTCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ29udHJvbF9MOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQ29udHJvbF9SIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDb250cm9sX1I7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9Db3B5IildCisrCQlwdWJsaWMgY29uc3QgdWludCBDb3B5OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQ3J1emVpcm9TaWduIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDcnV6ZWlyb1Np Z247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9DdXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN1dDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0N5Y2xlQW5nbGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5Y2xlQW5n bGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19BIildCisrCQlwdWJsaWMgY29uc3QgdWludCBD eXJpbGxpY19BOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfQkUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEN5cmlsbGljX0JFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfQ0hFIildCisrCQlw dWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19DSEU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19D SEVfZGVzY2VuZGVyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19DSEVfZGVzY2Vu ZGVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfQ0hFX3ZlcnRzdHJva2UiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEN5cmlsbGljX0NIRV92ZXJ0c3Ryb2tlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3ly aWxsaWNfREUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0RFOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQ3lyaWxsaWNfRFpIRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfRFpI RTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5 cmlsbGljX0U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19FRiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQ3lyaWxsaWNfRUY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19FTCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfRUw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19FTSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfRU07CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJp bGxpY19FTiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfRU47CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9DeXJpbGxpY19FTl9kZXNjZW5kZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmls bGljX0VOX2Rlc2NlbmRlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0VSIildCisrCQlwdWJs aWMgY29uc3QgdWludCBDeXJpbGxpY19FUjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0VTIild CisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19FUzsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmls bGljX0dIRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfR0hFOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQ3lyaWxsaWNfR0hFX2JhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNf R0hFX2JhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0hBIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBDeXJpbGxpY19IQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0hBUkRTSUdOIildCisr CQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19IQVJEU0lHTjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5 cmlsbGljX0hBX2Rlc2NlbmRlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfSEFf ZGVzY2VuZGVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfSSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQ3lyaWxsaWNfSTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0lFIildCisrCQlwdWJs aWMgY29uc3QgdWludCBDeXJpbGxpY19JRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0lPIild CisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19JTzsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmls bGljX0lfbWFjcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19JX21hY3JvbjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0pFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJp bGxpY19KRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0tBIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBDeXJpbGxpY19LQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0tBX2Rlc2NlbmRlciIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfS0FfZGVzY2VuZGVyOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQ3lyaWxsaWNfS0FfdmVydHN0cm9rZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3ly aWxsaWNfS0FfdmVydHN0cm9rZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0xKRSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfTEpFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNf TkpFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19OSkU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9DeXJpbGxpY19PIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19POworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQ3lyaWxsaWNfT19iYXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGlj X09fYmFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfUEUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEN5cmlsbGljX1BFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfU0NIV0EiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX1NDSFdBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNf U0hBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19TSEE7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9DeXJpbGxpY19TSENIQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfU0hDSEE7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19TSEhBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBD eXJpbGxpY19TSEhBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfU0hPUlRJIildCisrCQlwdWJs aWMgY29uc3QgdWludCBDeXJpbGxpY19TSE9SVEk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19T T0ZUU0lHTiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfU09GVFNJR047CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9DeXJpbGxpY19URSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNf VEU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19UU0UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEN5cmlsbGljX1RTRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX1UiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEN5cmlsbGljX1U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19VX21hY3JvbiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfVV9tYWNyb247CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9DeXJpbGxpY19VX3N0cmFpZ2h0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19V X3N0cmFpZ2h0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfVV9zdHJhaWdodF9iYXIiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX1Vfc3RyYWlnaHRfYmFyOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQ3lyaWxsaWNfVkUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX1ZFOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQ3lyaWxsaWNfWUEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGlj X1lBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfWUVSVSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQ3lyaWxsaWNfWUVSVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX1lVIildCisrCQlwdWJs aWMgY29uc3QgdWludCBDeXJpbGxpY19ZVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX1pFIild CisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19aRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmls bGljX1pIRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfWkhFOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQ3lyaWxsaWNfWkhFX2Rlc2NlbmRlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3ly aWxsaWNfWkhFX2Rlc2NlbmRlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2EiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19iZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfYmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJp bGxpY19jaGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2NoZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0N5cmlsbGljX2NoZV9kZXNjZW5kZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5 cmlsbGljX2NoZV9kZXNjZW5kZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19jaGVfdmVydHN0 cm9rZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfY2hlX3ZlcnRzdHJva2U7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19kZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxs aWNfZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19kemhlIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBDeXJpbGxpY19kemhlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2VmIild CisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19lZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmls bGljX2VsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19lbDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0N5cmlsbGljX2VtIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19lbTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0N5cmlsbGljX2VuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxp Y19lbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2VuX2Rlc2NlbmRlciIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQ3lyaWxsaWNfZW5fZGVzY2VuZGVyOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxs aWNfZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2VyOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQ3lyaWxsaWNfZXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2VzOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQ3lyaWxsaWNfZ2hlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxp Y19naGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19naGVfYmFyIildCisrCQlwdWJsaWMgY29u c3QgdWludCBDeXJpbGxpY19naGVfYmFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfaGEiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2hhOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxs aWNfaGFfZGVzY2VuZGVyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19oYV9kZXNj ZW5kZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19oYXJkc2lnbiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQ3lyaWxsaWNfaGFyZHNpZ247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19pIild CisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19pOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxs aWNfaV9tYWNyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2lfbWFjcm9uOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfaWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmls bGljX2llOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfaW8iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEN5cmlsbGljX2lvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfamUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEN5cmlsbGljX2plOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfa2EiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2thOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxs aWNfa2FfZGVzY2VuZGVyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19rYV9kZXNj ZW5kZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19rYV92ZXJ0c3Ryb2tlIildCisrCQlwdWJs aWMgY29uc3QgdWludCBDeXJpbGxpY19rYV92ZXJ0c3Ryb2tlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3ly aWxsaWNfbGplIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19samU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9DeXJpbGxpY19uamUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX25q ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX28iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5 cmlsbGljX287CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19vX2JhciIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQ3lyaWxsaWNfb19iYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19wZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfcGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxp Y19zY2h3YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfc2Nod2E7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9DeXJpbGxpY19zaGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX3No YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3NoY2hhIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBDeXJpbGxpY19zaGNoYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3NoaGEiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX3NoaGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19z aG9ydGkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX3Nob3J0aTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0N5cmlsbGljX3NvZnRzaWduIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxp Y19zb2Z0c2lnbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3RlIildCisrCQlwdWJsaWMgY29u c3QgdWludCBDeXJpbGxpY190ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3RzZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfdHNlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNf dSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfdTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5 cmlsbGljX3VfbWFjcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY191X21hY3Jv bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3Vfc3RyYWlnaHQiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEN5cmlsbGljX3Vfc3RyYWlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY191X3N0 cmFpZ2h0X2JhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfdV9zdHJhaWdodF9i YXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY192ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg Q3lyaWxsaWNfdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY195YSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQ3lyaWxsaWNfeWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY195ZXJ1IildCisr CQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY195ZXJ1OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxs aWNfeXUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX3l1OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQ3lyaWxsaWNfemUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX3plOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQ3lyaWxsaWNfemhlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxp Y196aGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY196aGVfZGVzY2VuZGVyIildCisrCQlwdWJs aWMgY29uc3QgdWludCBDeXJpbGxpY196aGVfZGVzY2VuZGVyOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgRDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0RPUyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgRE9TOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRGFib3ZlZG90IildCisrCQlwdWJs aWMgY29uc3QgdWludCBEYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9EY2Fyb24iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IERjYXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0RlbGV0ZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgRGVsZXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRGlzcGxheSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgRGlzcGxheTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0RvY3VtZW50cyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgRG9jdW1lbnRzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRG9uZ1NpZ24iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IERvbmdTaWduOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRG93biIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgRG93bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0RzdHJva2UiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IERzdHJva2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FIildCisrCQlwdWJs aWMgY29uc3QgdWludCBFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRU5HIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBFTkc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FVEgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEVU SDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0VaSCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRVpIOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfRWFib3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBFYWJvdmVkb3Q7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9FYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEVhY3V0ZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0ViZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRWJlbG93 ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfRWNhcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBFY2Fy b247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9FY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg RWNpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FY2lyY3VtZmxleGFjdXRlIildCisrCQlwdWJs aWMgY29uc3QgdWludCBFY2lyY3VtZmxleGFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRWNpcmN1bWZs ZXhiZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRWNpcmN1bWZsZXhiZWxvd2RvdDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0VjaXJjdW1mbGV4Z3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEVjaXJjdW1mbGV4Z3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FY2lyY3VtZmxleGhvb2siKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEVjaXJjdW1mbGV4aG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0VjaXJj dW1mbGV4dGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEVjaXJjdW1mbGV4dGlsZGU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9FY3VTaWduIildCisrCQlwdWJsaWMgY29uc3QgdWludCBFY3VTaWduOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfRWRpYWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRWRpYWVy ZXNpczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0VncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRWdy YXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfRWhvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEVob29r OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfRWlzdV9TaGlmdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRWlz dV9TaGlmdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Vpc3VfdG9nZ2xlIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBFaXN1X3RvZ2dsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0VqZWN0IildCisrCQlwdWJsaWMgY29u c3QgdWludCBFamVjdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0VtYWNyb24iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEVtYWNyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FbmQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEVuZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0VvZ29uZWsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEVvZ29uZWs7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Fc2NhcGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEVzY2FwZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0V0aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRXRo OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfRXRpbGRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBFdGlsZGU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9FdXJvU2lnbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRXVyb1Np Z247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9FeGNlbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRXhjZWw7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9FeGVjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBFeGVjdXRl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfRXhwbG9yZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEV4cGxv cmVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfRiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0YxIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0YxMCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjEwOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjExIild CisrCQlwdWJsaWMgY29uc3QgdWludCBGMTE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMTIiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEYxMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YxMyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgRjEzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjE0IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBGMTQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMTUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYxNTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0YxNiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjE2OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfRjE3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMTc7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9GMTgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYxODsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YxOSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjE5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjIiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEYyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjIwIildCisrCQlwdWJsaWMgY29u c3QgdWludCBGMjA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMjEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEYyMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0YyMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjIyOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfRjIzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMjM7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9GMjQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYyNDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0YyNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjI1OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjI2Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBGMjY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMjciKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEYyNzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YyOCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgRjI4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjI5IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBGMjk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjM7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9GMzAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYzMDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0YzMSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjMxOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf RjMyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMzI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMzMiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEYzMzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YzNCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgRjM0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjM1IildCisrCQlwdWJsaWMgY29u c3QgdWludCBGMzU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg RjQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9GNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9GNiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjY7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9GNyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GOCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgRjg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GOSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgRjk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GRnJhbmNTaWduIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBGRnJhbmNTaWduOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRmFib3ZlZG90IildCisrCQlw dWJsaWMgY29uc3QgdWludCBGYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GYXJzaV8wIildCisr CQlwdWJsaWMgY29uc3QgdWludCBGYXJzaV8wOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRmFyc2lfMSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgRmFyc2lfMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0ZhcnNpXzIiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEZhcnNpXzI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GYXJzaV8zIild CisrCQlwdWJsaWMgY29uc3QgdWludCBGYXJzaV8zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRmFyc2lfNCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgRmFyc2lfNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0ZhcnNpXzUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEZhcnNpXzU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GYXJzaV82 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGYXJzaV82OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRmFyc2lf NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRmFyc2lfNzsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0ZhcnNp XzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEZhcnNpXzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GYXJz aV85IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGYXJzaV85OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRmFy c2lfeWVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGYXJzaV95ZWg7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9GYXZvcml0ZXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEZhdm9yaXRlczsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0ZpbmFuY2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEZpbmFuY2U7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9GaW5kIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGaW5kOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfRmlyc3RfVmlydHVhbF9TY3JlZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEZpcnN0X1Zp cnR1YWxfU2NyZWVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRm9yd2FyZCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgRm9yd2FyZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0ZyYW1lQmFjayIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgRnJhbWVCYWNrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRnJhbWVGb3J3YXJkIildCisrCQlw dWJsaWMgY29uc3QgdWludCBGcmFtZUZvcndhcmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HIildCisrCQlw dWJsaWMgY29uc3QgdWludCBHOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2Fib3ZlZG90IildCisrCQlwdWJs aWMgY29uc3QgdWludCBHYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HYW1lIildCisrCQlwdWJs aWMgY29uc3QgdWludCBHYW1lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2JyZXZlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBHYnJldmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HY2Fyb24iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEdjYXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0djZWRpbGxhIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBHY2VkaWxsYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0djaXJjdW1mbGV4IildCisrCQlw dWJsaWMgY29uc3QgdWludCBHY2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX2Fu IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9hbjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dl b3JnaWFuX2JhbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fYmFuOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfR2VvcmdpYW5fY2FuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9j YW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9jaGFyIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBHZW9yZ2lhbl9jaGFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fY2hpbiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fY2hpbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX2Np bCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fY2lsOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf R2VvcmdpYW5fZG9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9kb247CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9HZW9yZ2lhbl9lbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5f ZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9maSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg R2VvcmdpYW5fZmk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9nYW4iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEdlb3JnaWFuX2dhbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX2doYW4iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2doYW47CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9y Z2lhbl9oYWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2hhZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0dlb3JnaWFuX2hhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5faGFy OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5faGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdl b3JnaWFuX2hlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5faGllIildCisrCQlwdWJsaWMgY29u c3QgdWludCBHZW9yZ2lhbl9oaWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9ob2UiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2hvZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFu X2luIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9pbjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0dlb3JnaWFuX2poYW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2poYW47Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9qaWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3Jn aWFuX2ppbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX2thbiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgR2VvcmdpYW5fa2FuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fa2hhciIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fa2hhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFu X2xhcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fbGFzOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfR2VvcmdpYW5fbWFuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9tYW47Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9uYXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3Jn aWFuX25hcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX29uIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBHZW9yZ2lhbl9vbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX3BhciIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fcGFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fcGhh ciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fcGhhcjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0dlb3JnaWFuX3FhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fcWFyOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfR2VvcmdpYW5fcmFlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lh bl9yYWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9zYW4iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEdlb3JnaWFuX3NhbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX3NoaW4iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX3NoaW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl90 YW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX3RhbjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0dlb3JnaWFuX3RhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fdGFyOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfR2VvcmdpYW5fdW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFu X3VuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fdmluIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBHZW9yZ2lhbl92aW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl93ZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgR2VvcmdpYW5fd2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl94YW4iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX3hhbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3Jn aWFuX3plbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5femVuOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfR2VvcmdpYW5femhhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5femhh cjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0dvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHbzsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0dyZWVrX0FMUEhBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19BTFBI QTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX0FMUEhBYWNjZW50IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBHcmVla19BTFBIQWFjY2VudDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX0JFVEEiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX0JFVEE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19DSEki KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX0NISTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVr X0RFTFRBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19ERUxUQTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0dyZWVrX0VQU0lMT04iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX0VQU0lMT047 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9HcmVla19FUFNJTE9OYWNjZW50IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBHcmVla19FUFNJTE9OYWNjZW50OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfRVRBIildCisr CQlwdWJsaWMgY29uc3QgdWludCBHcmVla19FVEE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19FVEFh Y2NlbnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX0VUQWFjY2VudDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0dyZWVrX0dBTU1BIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19HQU1NQTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0dyZWVrX0lPVEEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVr X0lPVEE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19JT1RBYWNjZW50IildCisrCQlwdWJsaWMgY29u c3QgdWludCBHcmVla19JT1RBYWNjZW50OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfSU9UQWRpYWVy ZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfSU9UQWRpYWVyZXNpczsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0dyZWVrX0lPVEFkaWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3Jl ZWtfSU9UQWRpZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfS0FQUEEiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEdyZWVrX0tBUFBBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfTEFNQkRBIild CisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19MQU1CREE7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVl a19MQU1EQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfTEFNREE7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9HcmVla19NVSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfTVU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9HcmVla19OVSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfTlU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9HcmVla19PTUVHQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfT01F R0E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19PTUVHQWFjY2VudCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgR3JlZWtfT01FR0FhY2NlbnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19PTUlDUk9OIild CisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19PTUlDUk9OOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3Jl ZWtfT01JQ1JPTmFjY2VudCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfT01JQ1JPTmFj Y2VudDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX1BISSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg R3JlZWtfUEhJOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfUEkiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEdyZWVrX1BJOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfUFNJIildCisrCQlwdWJsaWMgY29u c3QgdWludCBHcmVla19QU0k7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19SSE8iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEdyZWVrX1JITzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX1NJR01BIildCisr CQlwdWJsaWMgY29uc3QgdWludCBHcmVla19TSUdNQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX1RB VSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfVEFVOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3Jl ZWtfVEhFVEEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX1RIRVRBOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfR3JlZWtfVVBTSUxPTiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfVVBTSUxP TjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX1VQU0lMT05hY2NlbnQiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEdyZWVrX1VQU0lMT05hY2NlbnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19VUFNJTE9O ZGllcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX1VQU0lMT05kaWVyZXNpczsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0dyZWVrX1hJIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19Y STsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX1pFVEEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdy ZWVrX1pFVEE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19hY2NlbnRkaWVyZXNpcyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgR3JlZWtfYWNjZW50ZGllcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVl a19hbHBoYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfYWxwaGE7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9HcmVla19hbHBoYWFjY2VudCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfYWxw aGFhY2NlbnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19iZXRhIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBHcmVla19iZXRhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfY2hpIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBHcmVla19jaGk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19kZWx0YSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgR3JlZWtfZGVsdGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19lcHNp bG9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19lcHNpbG9uOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfR3JlZWtfZXBzaWxvbmFjY2VudCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfZXBz aWxvbmFjY2VudDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX2V0YSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgR3JlZWtfZXRhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfZXRhYWNjZW50IildCisrCQlw dWJsaWMgY29uc3QgdWludCBHcmVla19ldGFhY2NlbnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19m aW5hbHNtYWxsc2lnbWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX2ZpbmFsc21hbGxz aWdtYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX2dhbW1hIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBHcmVla19nYW1tYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX2hvcml6YmFyIildCisrCQlwdWJs aWMgY29uc3QgdWludCBHcmVla19ob3JpemJhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX2lvdGEi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX2lvdGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVl a19pb3RhYWNjZW50IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19pb3RhYWNjZW50Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfR3JlZWtfaW90YWFjY2VudGRpZXJlc2lzIildCisrCQlwdWJsaWMgY29u c3QgdWludCBHcmVla19pb3RhYWNjZW50ZGllcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19p b3RhZGllcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX2lvdGFkaWVyZXNpczsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0dyZWVrX2thcHBhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVl a19rYXBwYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX2xhbWJkYSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgR3JlZWtfbGFtYmRhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfbGFtZGEiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEdyZWVrX2xhbWRhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfbXUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX211OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfbnUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX251OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtf b21lZ2EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX29tZWdhOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfR3JlZWtfb21lZ2FhY2NlbnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX29tZWdh YWNjZW50OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfb21pY3JvbiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgR3JlZWtfb21pY3JvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX29taWNyb25hY2NlbnQi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX29taWNyb25hY2NlbnQ7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9HcmVla19waGkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX3BoaTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0dyZWVrX3BpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19waTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0dyZWVrX3BzaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfcHNp OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfcmhvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVl a19yaG87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19zaWdtYSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgR3JlZWtfc2lnbWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19zd2l0Y2giKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEdyZWVrX3N3aXRjaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX3RhdSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfdGF1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfdGhl dGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX3RoZXRhOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf R3JlZWtfdXBzaWxvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfdXBzaWxvbjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0dyZWVrX3Vwc2lsb25hY2NlbnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEdyZWVrX3Vwc2lsb25hY2NlbnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla191cHNpbG9uYWNjZW50 ZGllcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX3Vwc2lsb25hY2NlbnRkaWVy ZXNpczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX3Vwc2lsb25kaWVyZXNpcyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgR3JlZWtfdXBzaWxvbmRpZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtf eGkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX3hpOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3Jl ZWtfemV0YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfemV0YTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0dyZWVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVlbjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWwiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9BIild CisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9B RSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0FFOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFu Z3VsX0FyYWVBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfQXJhZUE7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9IYW5ndWxfQXJhZUFFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfQXJh ZUFFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0JhbmphIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBIYW5ndWxfQmFuamE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfQ2lldWMiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEhhbmd1bF9DaWV1YzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9Db2RlaW5w dXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9Db2RlaW5wdXQ7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9IYW5ndWxfRGlrZXVkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfRGlrZXVk OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1 bF9FOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0VPIildCisrCQlwdWJsaWMgY29uc3QgdWludCBI YW5ndWxfRU87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfRVUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEhhbmd1bF9FVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9FbmQiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEhhbmd1bF9FbmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSGFuamEiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9IYW5qYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9I aWV1aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0hpZXVoOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfSGFuZ3VsX0kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9JOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfSGFuZ3VsX0lldW5nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSWV1bmc7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9DaWV1YyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg SGFuZ3VsX0pfQ2lldWM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9EaWtldWQiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX0Rpa2V1ZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9K X0hpZXVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9IaWV1aDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0hhbmd1bF9KX0lldW5nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9J ZXVuZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX0ppZXVqIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBIYW5ndWxfSl9KaWV1ajsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX0toaWV1cSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfS2hpZXVxOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFu Z3VsX0pfS2l5ZW9nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9LaXllb2c7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9LaXllb2dTaW9zIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBIYW5ndWxfSl9LaXllb2dTaW9zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfS2tvZ2ppRGFs cmluSWV1bmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX0trb2dqaURhbHJpbkll dW5nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfTWlldW0iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEhhbmd1bF9KX01pZXVtOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfTmlldW4iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX05pZXVuOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3Vs X0pfTmlldW5IaWV1aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfTmlldW5IaWV1 aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX05pZXVuSmlldWoiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEhhbmd1bF9KX05pZXVuSmlldWo7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9QYW5T aW9zIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9QYW5TaW9zOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfSGFuZ3VsX0pfUGhpZXVmIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9Q aGlldWY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9QaWV1YiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgSGFuZ3VsX0pfUGlldWI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9QaWV1YlNpb3Mi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX1BpZXViU2lvczsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0hhbmd1bF9KX1JpZXVsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9SaWV1 bDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX1JpZXVsSGlldWgiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEhhbmd1bF9KX1JpZXVsSGlldWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9SaWV1 bEtpeWVvZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfUmlldWxLaXllb2c7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9SaWV1bE1pZXVtIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBIYW5ndWxfSl9SaWV1bE1pZXVtOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfUmlldWxQaGll dWYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX1JpZXVsUGhpZXVmOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfSGFuZ3VsX0pfUmlldWxQaWV1YiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFu Z3VsX0pfUmlldWxQaWV1YjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX1JpZXVsU2lvcyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfUmlldWxTaW9zOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf SGFuZ3VsX0pfUmlldWxUaWV1dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfUmll dWxUaWV1dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX1Npb3MiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEhhbmd1bF9KX1Npb3M7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9Tc2FuZ0tpeWVv ZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfU3NhbmdLaXllb2c7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9IYW5ndWxfSl9Tc2FuZ1Npb3MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1 bF9KX1NzYW5nU2lvczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX1RpZXV0IildCisrCQlwdWJs aWMgY29uc3QgdWludCBIYW5ndWxfSl9UaWV1dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX1ll b3JpbkhpZXVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9ZZW9yaW5IaWV1aDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KYW1vIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5n dWxfSmFtbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KZW9uamEiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEhhbmd1bF9KZW9uamE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSmlldWoiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KaWV1ajsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9L aGlldXEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9LaGlldXE7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9IYW5ndWxfS2l5ZW9nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfS2l5ZW9n OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0tpeWVvZ1Npb3MiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEhhbmd1bF9LaXllb2dTaW9zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0trb2dqaURhbHJp bklldW5nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfS2tvZ2ppRGFscmluSWV1bmc7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfTWlldW0iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhh bmd1bF9NaWV1bTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9NdWx0aXBsZUNhbmRpZGF0ZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX011bHRpcGxlQ2FuZGlkYXRlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfSGFuZ3VsX05pZXVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfTmlldW47 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfTmlldW5IaWV1aCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgSGFuZ3VsX05pZXVuSGlldWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfTmlldW5KaWV1aiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX05pZXVuSmlldWo7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9IYW5ndWxfTyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX087CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9IYW5ndWxfT0UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9PRTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0hhbmd1bF9QYW5TaW9zIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxf UGFuU2lvczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9QaGlldWYiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEhhbmd1bF9QaGlldWY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfUGlldWIiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9QaWV1YjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9Q aWV1YlNpb3MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9QaWV1YlNpb3M7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9IYW5ndWxfUG9zdEhhbmphIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5n dWxfUG9zdEhhbmphOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1ByZUhhbmphIildCisrCQlwdWJs aWMgY29uc3QgdWludCBIYW5ndWxfUHJlSGFuamE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfUHJl dmlvdXNDYW5kaWRhdGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9QcmV2aW91c0Nh bmRpZGF0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9SaWV1bCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgSGFuZ3VsX1JpZXVsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1JpZXVsSGlldWgiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9SaWV1bEhpZXVoOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf SGFuZ3VsX1JpZXVsS2l5ZW9nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfUmlldWxL aXllb2c7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfUmlldWxNaWV1bSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgSGFuZ3VsX1JpZXVsTWlldW07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfUmlldWxQ aGlldWYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9SaWV1bFBoaWV1ZjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0hhbmd1bF9SaWV1bFBpZXViIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5n dWxfUmlldWxQaWV1YjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9SaWV1bFNpb3MiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEhhbmd1bF9SaWV1bFNpb3M7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxf UmlldWxUaWV1dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1JpZXVsVGlldXQ7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9IYW5ndWxfUmlldWxZZW9yaW5IaWV1aCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgSGFuZ3VsX1JpZXVsWWVvcmluSGlldWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfUm9t YWphIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfUm9tYWphOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfSGFuZ3VsX1NpbmdsZUNhbmRpZGF0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3Vs X1NpbmdsZUNhbmRpZGF0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9TaW9zIildCisrCQlwdWJs aWMgY29uc3QgdWludCBIYW5ndWxfU2lvczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9TcGVjaWFs IildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfU3BlY2lhbDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0hhbmd1bF9Tc2FuZ0Rpa2V1ZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1NzYW5n RGlrZXVkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1NzYW5nSmlldWoiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEhhbmd1bF9Tc2FuZ0ppZXVqOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1NzYW5n S2l5ZW9nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfU3NhbmdLaXllb2c7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9IYW5ndWxfU3NhbmdQaWV1YiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFu Z3VsX1NzYW5nUGlldWI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfU3NhbmdTaW9zIildCisrCQlw dWJsaWMgY29uc3QgdWludCBIYW5ndWxfU3NhbmdTaW9zOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3Vs X1N0YXJ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfU3RhcnQ7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9IYW5ndWxfU3Vua3llb25nZXVtTWlldW0iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhh bmd1bF9TdW5reWVvbmdldW1NaWV1bTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9TdW5reWVvbmdl dW1QaGlldWYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9TdW5reWVvbmdldW1QaGll dWY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfU3Vua3llb25nZXVtUGlldWIiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEhhbmd1bF9TdW5reWVvbmdldW1QaWV1YjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hh bmd1bF9UaWV1dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1RpZXV0OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfSGFuZ3VsX1UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9VOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfSGFuZ3VsX1dBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfV0E7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfV0FFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5n dWxfV0FFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1dFIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBIYW5ndWxfV0U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfV0VPIildCisrCQlwdWJsaWMgY29u c3QgdWludCBIYW5ndWxfV0VPOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1dJIildCisrCQlwdWJs aWMgY29uc3QgdWludCBIYW5ndWxfV0k7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfWUEiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9ZQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9ZQUUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9ZQUU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5n dWxfWUUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9ZRTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0hhbmd1bF9ZRU8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9ZRU87CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9IYW5ndWxfWUkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9ZSTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0hhbmd1bF9ZTyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1lP OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1lVIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5n dWxfWVU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfWWVvcmluSGlldWgiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEhhbmd1bF9ZZW9yaW5IaWV1aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9zd2l0 Y2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9zd2l0Y2g7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9IYW5rYWt1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5rYWt1OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfSGNpcmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhjaXJjdW1mbGV4OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfSGVicmV3X3N3aXRjaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGVicmV3 X3N3aXRjaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hlbHAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhl bHA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9IZW5rYW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhlbmth bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0hlbmthbl9Nb2RlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBI ZW5rYW5fTW9kZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hpYmVybmF0ZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgSGliZXJuYXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGlyYWdhbmEiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEhpcmFnYW5hOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGlyYWdhbmFfS2F0YWthbmEiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEhpcmFnYW5hX0thdGFrYW5hOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf SGlzdG9yeSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGlzdG9yeTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0hvbWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhvbWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Ib21l UGFnZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSG9tZVBhZ2U7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9I b3RMaW5rcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSG90TGlua3M7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9Ic3Ryb2tlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIc3Ryb2tlOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfSHlwZXJfTCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSHlwZXJfTDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0h5cGVyX1IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEh5cGVyX1I7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9JIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0Nl bnRlcl9PYmplY3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19DZW50ZXJfT2JqZWN0Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfSVNPX0NvbnRpbnVvdXNfVW5kZXJsaW5lIildCisrCQlwdWJsaWMgY29u c3QgdWludCBJU09fQ29udGludW91c19VbmRlcmxpbmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fRGlz Y29udGludW91c19VbmRlcmxpbmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19EaXNjb250 aW51b3VzX1VuZGVybGluZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19FbXBoYXNpemUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IElTT19FbXBoYXNpemU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fRW50ZXIi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19FbnRlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19G YXN0X0N1cnNvcl9Eb3duIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fRmFzdF9DdXJzb3Jf RG93bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19GYXN0X0N1cnNvcl9MZWZ0IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBJU09fRmFzdF9DdXJzb3JfTGVmdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19GYXN0 X0N1cnNvcl9SaWdodCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0Zhc3RfQ3Vyc29yX1Jp Z2h0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0Zhc3RfQ3Vyc29yX1VwIildCisrCQlwdWJsaWMgY29u c3QgdWludCBJU09fRmFzdF9DdXJzb3JfVXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fRmlyc3RfR3Jv dXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19GaXJzdF9Hcm91cDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0lTT19GaXJzdF9Hcm91cF9Mb2NrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fRmly c3RfR3JvdXBfTG9jazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19Hcm91cF9MYXRjaCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgSVNPX0dyb3VwX0xhdGNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0dyb3Vw X0xvY2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19Hcm91cF9Mb2NrOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfSVNPX0dyb3VwX1NoaWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fR3JvdXBf U2hpZnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fTGFzdF9Hcm91cCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgSVNPX0xhc3RfR3JvdXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fTGFzdF9Hcm91cF9Mb2Nr IildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fTGFzdF9Hcm91cF9Mb2NrOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfSVNPX0xlZnRfVGFiIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fTGVmdF9UYWI7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9JU09fTGV2ZWwyX0xhdGNoIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBJU09fTGV2ZWwyX0xhdGNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0xldmVsM19MYXRjaCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0xldmVsM19MYXRjaDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lT T19MZXZlbDNfTG9jayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0xldmVsM19Mb2NrOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfSVNPX0xldmVsM19TaGlmdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg SVNPX0xldmVsM19TaGlmdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19MZXZlbDVfTGF0Y2giKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IElTT19MZXZlbDVfTGF0Y2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09f TGV2ZWw1X0xvY2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19MZXZlbDVfTG9jazsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0lTT19MZXZlbDVfU2hpZnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElT T19MZXZlbDVfU2hpZnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fTG9jayIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgSVNPX0xvY2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fTW92ZV9MaW5lX0Rvd24iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IElTT19Nb3ZlX0xpbmVfRG93bjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0lTT19Nb3ZlX0xpbmVfVXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19Nb3ZlX0xpbmVf VXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fTmV4dF9Hcm91cCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgSVNPX05leHRfR3JvdXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fTmV4dF9Hcm91cF9Mb2NrIild CisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fTmV4dF9Hcm91cF9Mb2NrOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfSVNPX1BhcnRpYWxfTGluZV9Eb3duIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fUGFy dGlhbF9MaW5lX0Rvd247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fUGFydGlhbF9MaW5lX1VwIildCisr CQlwdWJsaWMgY29uc3QgdWludCBJU09fUGFydGlhbF9MaW5lX1VwOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf SVNPX1BhcnRpYWxfU3BhY2VfTGVmdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX1BhcnRp YWxfU3BhY2VfTGVmdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19QYXJ0aWFsX1NwYWNlX1JpZ2h0Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fUGFydGlhbF9TcGFjZV9SaWdodDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0lTT19QcmV2X0dyb3VwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fUHJldl9H cm91cDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19QcmV2X0dyb3VwX0xvY2siKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IElTT19QcmV2X0dyb3VwX0xvY2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fUmVsZWFz ZV9Cb3RoX01hcmdpbnMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19SZWxlYXNlX0JvdGhf TWFyZ2luczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19SZWxlYXNlX01hcmdpbl9MZWZ0IildCisrCQlw dWJsaWMgY29uc3QgdWludCBJU09fUmVsZWFzZV9NYXJnaW5fTGVmdDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0lTT19SZWxlYXNlX01hcmdpbl9SaWdodCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX1Jl bGVhc2VfTWFyZ2luX1JpZ2h0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX1NldF9NYXJnaW5fTGVmdCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX1NldF9NYXJnaW5fTGVmdDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0lTT19TZXRfTWFyZ2luX1JpZ2h0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fU2V0 X01hcmdpbl9SaWdodDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lhYm92ZWRvdCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgSWFib3ZlZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSWFjdXRlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBJYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JYmVsb3dkb3QiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEliZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0licmV2ZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgSWJyZXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSWNpcmN1bWZsZXgiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEljaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSWRpYWVyZXNp cyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSWRpYWVyZXNpczsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0ln cmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSWdyYXZlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSWhv b2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElob29rOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSW1hY3Jv biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSW1hY3JvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0luc2Vy dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSW5zZXJ0OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSW9nb25l ayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSW9nb25lazsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0l0aWxk ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSXRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgSjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0pjaXJjdW1mbGV4IildCisr CQlwdWJsaWMgY29uc3QgdWludCBKY2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0siKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEs7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF8wIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBLUF8wOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfMSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgS1BfMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQXzIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEtQXzI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF8zIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF8z OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfS1BfNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfNDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0tQXzUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQXzU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9LUF82IildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF82OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfS1BfNyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfNzsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQ XzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQXzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF85Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBLUF85OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfQWRkIildCisr CQlwdWJsaWMgY29uc3QgdWludCBLUF9BZGQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9CZWdpbiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgS1BfQmVnaW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9EZWNpbWFs IildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9EZWNpbWFsOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1Bf RGVsZXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9EZWxldGU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9LUF9EaXZpZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX0RpdmlkZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0tQX0Rvd24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX0Rvd247CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9LUF9FbmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX0VuZDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0tQX0VudGVyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9FbnRlcjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0tQX0VxdWFsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9FcXVhbDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0tQX0YxIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9GMTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0tQX0YyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9GMjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0tQX0YzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9GMzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0tQX0Y0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9GNDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0tQX0hvbWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX0hvbWU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9LUF9JbnNlcnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX0luc2VydDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0tQX0xlZnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX0xlZnQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9LUF9NdWx0aXBseSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfTXVsdGlwbHk7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9LUF9OZXh0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9OZXh0 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfS1BfUGFnZV9Eb3duIildCisrCQlwdWJsaWMgY29uc3QgdWludCBL UF9QYWdlX0Rvd247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9QYWdlX1VwIildCisrCQlwdWJsaWMgY29u c3QgdWludCBLUF9QYWdlX1VwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfUHJpb3IiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEtQX1ByaW9yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfUmlnaHQiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEtQX1JpZ2h0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfU2VwYXJhdG9yIild CisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9TZXBhcmF0b3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9T cGFjZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfU3BhY2U7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9L UF9TdWJ0cmFjdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfU3VidHJhY3Q7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9LUF9UYWIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX1RhYjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0tQX1VwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9VcDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0thbmFfTG9jayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS2FuYV9Mb2NrOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfS2FuYV9TaGlmdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS2FuYV9TaGlmdDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0thbmppIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLYW5qaTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0thbmppX0JhbmdvdSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS2Fuamlf QmFuZ291OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS2F0YWthbmEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEthdGFrYW5hOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS2JkQnJpZ2h0bmVzc0Rvd24iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEtiZEJyaWdodG5lc3NEb3duOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS2JkQnJpZ2h0 bmVzc1VwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLYmRCcmlnaHRuZXNzVXA7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9LYmRMaWdodE9uT2ZmIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLYmRMaWdodE9u T2ZmOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfS2NlZGlsbGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtj ZWRpbGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS29yZWFuX1dvbiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgS29yZWFuX1dvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0wiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9MMSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTDE7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9MMTAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEwxMDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0wyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBMMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0wzIild CisrCQlwdWJsaWMgY29uc3QgdWludCBMMzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0w0IildCisrCQlwdWJs aWMgY29uc3QgdWludCBMNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0w1IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBMNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0w2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBMNjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0w3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBMNzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0w4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBMODsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0w5 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBMOTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xhY3V0ZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgTGFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGFzdF9WaXJ0dWFs X1NjcmVlbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGFzdF9WaXJ0dWFsX1NjcmVlbjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0xhdW5jaDAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExhdW5jaDA7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9MYXVuY2gxIildCisrCQlwdWJsaWMgY29uc3QgdWludCBMYXVuY2gxOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfTGF1bmNoMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGF1bmNoMjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0xhdW5jaDMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExhdW5jaDM7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9MYXVuY2g0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBMYXVuY2g0 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfTGF1bmNoNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGF1bmNo NTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0xhdW5jaDYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExhdW5j aDY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9MYXVuY2g3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBMYXVu Y2g3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfTGF1bmNoOCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGF1 bmNoODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0xhdW5jaDkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExh dW5jaDk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MYXVuY2hBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBM YXVuY2hBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGF1bmNoQiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg TGF1bmNoQjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xhdW5jaEMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IExhdW5jaEM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MYXVuY2hEIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBMYXVuY2hEOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGF1bmNoRSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgTGF1bmNoRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xhdW5jaEYiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IExhdW5jaEY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MYmVsb3dkb3QiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IExiZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xjYXJvbiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgTGNhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGNlZGlsbGEiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IExjZWRpbGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGVmdCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgTGVmdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xpZ2h0QnVsYiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgTGlnaHRCdWxiOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGluZWZlZWQiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IExpbmVmZWVkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGlyYVNpZ24iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IExpcmFTaWduOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTG9nR3JhYkluZm8iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IExvZ0dyYWJJbmZvOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTG9nT2Zm IildCisrCQlwdWJsaWMgY29uc3QgdWludCBMb2dPZmY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Mb2dXaW5k b3dUcmVlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBMb2dXaW5kb3dUcmVlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfTHN0cm9rZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTHN0cm9rZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX00iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE07CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NYWJv dmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1hYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X01hY2Vkb25pYV9EU0UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1hY2Vkb25pYV9EU0U7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9NYWNlZG9uaWFfR0pFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNYWNl ZG9uaWFfR0pFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWFjZWRvbmlhX0tKRSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgTWFjZWRvbmlhX0tKRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01hY2Vkb25pYV9kc2UiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IE1hY2Vkb25pYV9kc2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NYWNl ZG9uaWFfZ2plIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNYWNlZG9uaWFfZ2plOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfTWFjZWRvbmlhX2tqZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTWFjZWRvbmlh X2tqZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX01hZV9Lb2hvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBN YWVfS29obzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01haWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1h aWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9NYWlsRm9yd2FyZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg TWFpbEZvcndhcmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NYXJrZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IE1hcmtldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01hc3N5byIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgTWFzc3lvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWVldGluZyIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgTWVldGluZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01lbW8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IE1lbW87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NZW51IildCisrCQlwdWJsaWMgY29uc3QgdWludCBNZW51 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfTWVudUtCIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNZW51S0I7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9NZW51UEIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1lbnVQQjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX01lc3NlbmdlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTWVzc2Vu Z2VyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfTWV0YV9MIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNZXRh X0w7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9NZXRhX1IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1ldGFf UjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX01pbGxTaWduIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNaWxs U2lnbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX01vZGVMb2NrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBN b2RlTG9jazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01vZGVfc3dpdGNoIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBNb2RlX3N3aXRjaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01vbkJyaWdodG5lc3NEb3duIildCisr CQlwdWJsaWMgY29uc3QgdWludCBNb25CcmlnaHRuZXNzRG93bjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01v bkJyaWdodG5lc3NVcCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTW9uQnJpZ2h0bmVzc1VwOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfTW91c2VLZXlzX0FjY2VsX0VuYWJsZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgTW91c2VLZXlzX0FjY2VsX0VuYWJsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01vdXNlS2V5c19F bmFibGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1vdXNlS2V5c19FbmFibGU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9NdWhlbmthbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTXVoZW5rYW47CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9NdWx0aV9rZXkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE11bHRpX2tleTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX011bHRpcGxlQ2FuZGlkYXRlIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBNdWx0aXBsZUNhbmRpZGF0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX011c2ljIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBNdXNpYzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX015Q29tcHV0ZXIiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IE15Q29tcHV0ZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NeVNpdGVzIildCisrCQlw dWJsaWMgY29uc3QgdWludCBNeVNpdGVzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgTjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX05hY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgTmFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTmFpcmFTaWduIildCisrCQlwdWJsaWMgY29u c3QgdWludCBOYWlyYVNpZ247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9OY2Fyb24iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IE5jYXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX05jZWRpbGxhIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBOY2VkaWxsYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX05ldyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgTmV3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTmV3U2hlcWVsU2lnbiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgTmV3U2hlcWVsU2lnbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX05ld3MiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IE5ld3M7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9OZXh0IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBOZXh0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTmV4dF9WTW9kZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgTmV4dF9WTW9kZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX05leHRfVmlydHVhbF9TY3Jl ZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE5leHRfVmlydHVhbF9TY3JlZW47CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9OdGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE50aWxkZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX051bV9Mb2NrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBOdW1fTG9jazsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX08iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE87CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9P RSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT0U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PYWN1dGUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IE9hY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09iYXJyZWQiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IE9iYXJyZWQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PYmVsb3dkb3Qi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9iZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09jYXJv biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2Nhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT2NpcmN1 bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9jaXJjdW1mbGV4OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfT2NpcmN1bWZsZXhhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2NpcmN1bWZsZXhh Y3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX09jaXJjdW1mbGV4YmVsb3dkb3QiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IE9jaXJjdW1mbGV4YmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PY2lyY3VtZmxl eGdyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPY2lyY3VtZmxleGdyYXZlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfT2NpcmN1bWZsZXhob29rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPY2lyY3Vt ZmxleGhvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PY2lyY3VtZmxleHRpbGRlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBPY2lyY3VtZmxleHRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT2RpYWVyZXNpcyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2RpYWVyZXNpczsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09kb3Vi bGVhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2RvdWJsZWFjdXRlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfT2ZmaWNlSG9tZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2ZmaWNlSG9tZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX09ncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2dyYXZlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfT2hvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9ob29rOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfT2hvcm4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9ob3JuOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfT2hvcm5hY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2hvcm5hY3V0ZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX09ob3JuYmVsb3dkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9ob3Ju YmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PaG9ybmdyYXZlIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBPaG9ybmdyYXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT2hvcm5ob29rIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBPaG9ybmhvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PaG9ybnRpbGRlIildCisrCQlw dWJsaWMgY29uc3QgdWludCBPaG9ybnRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT21hY3JvbiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgT21hY3JvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09vYmxpcXVlIild CisrCQlwdWJsaWMgY29uc3QgdWludCBPb2JsaXF1ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09wZW4iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IE9wZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PcGVuVVJMIildCisr CQlwdWJsaWMgY29uc3QgdWludCBPcGVuVVJMOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT3B0aW9uIildCisr CQlwdWJsaWMgY29uc3QgdWludCBPcHRpb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Pc2xhc2giKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IE9zbGFzaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX090aWxkZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgT3RpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT3ZlcmxheTFfRW5hYmxl IildCisrCQlwdWJsaWMgY29uc3QgdWludCBPdmVybGF5MV9FbmFibGU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9PdmVybGF5Ml9FbmFibGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE92ZXJsYXkyX0VuYWJs ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1AiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFA7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9QYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBhYm92ZWRvdDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1BhZ2VfRG93biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUGFnZV9Eb3du OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfUGFnZV9VcCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUGFnZV9V cDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1Bhc3RlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQYXN0ZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1BhdXNlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQYXVzZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1Blc2V0YVNpZ24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBlc2V0YVNp Z247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9QaG9uZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUGhvbmU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9QaWN0dXJlcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUGljdHVy ZXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0FjY2VsZXJhdGUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFBvaW50ZXJfQWNjZWxlcmF0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfQnV0dG9u MSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9CdXR0b24xOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfUG9pbnRlcl9CdXR0b24yIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0J1dHRv bjI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0J1dHRvbjMiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFBvaW50ZXJfQnV0dG9uMzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfQnV0dG9uNCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9CdXR0b240OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9p bnRlcl9CdXR0b241IildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0J1dHRvbjU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0J1dHRvbl9EZmx0IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBQb2ludGVyX0J1dHRvbl9EZmx0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9EYmxDbGljazEi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfRGJsQ2xpY2sxOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfUG9pbnRlcl9EYmxDbGljazIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfRGJs Q2xpY2syOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9EYmxDbGljazMiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFBvaW50ZXJfRGJsQ2xpY2szOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9EYmxD bGljazQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfRGJsQ2xpY2s0OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfUG9pbnRlcl9EYmxDbGljazUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50 ZXJfRGJsQ2xpY2s1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9EYmxDbGlja19EZmx0IildCisr CQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0RibENsaWNrX0RmbHQ7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9Qb2ludGVyX0RmbHRCdG5OZXh0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0Rm bHRCdG5OZXh0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9EZmx0QnRuUHJldiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgUG9pbnRlcl9EZmx0QnRuUHJldjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50 ZXJfRG93biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9Eb3duOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfUG9pbnRlcl9Eb3duTGVmdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9E b3duTGVmdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfRG93blJpZ2h0IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBQb2ludGVyX0Rvd25SaWdodDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfRHJh ZzEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfRHJhZzE7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9Qb2ludGVyX0RyYWcyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0RyYWcyOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9EcmFnMyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9p bnRlcl9EcmFnMzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfRHJhZzQiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFBvaW50ZXJfRHJhZzQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0RyYWc1Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0RyYWc1OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9p bnRlcl9EcmFnX0RmbHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfRHJhZ19EZmx0 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9FbmFibGVLZXlzIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBQb2ludGVyX0VuYWJsZUtleXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0xlZnQiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfTGVmdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50 ZXJfUmlnaHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfUmlnaHQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9Qb2ludGVyX1VwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX1VwOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9VcExlZnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBv aW50ZXJfVXBMZWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9VcFJpZ2h0IildCisrCQlwdWJs aWMgY29uc3QgdWludCBQb2ludGVyX1VwUmlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb3dlckRvd24i KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvd2VyRG93bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Bvd2Vy T2ZmIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb3dlck9mZjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1By ZXZfVk1vZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFByZXZfVk1vZGU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9QcmV2X1ZpcnR1YWxfU2NyZWVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQcmV2X1Zp cnR1YWxfU2NyZWVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUHJldmlvdXNDYW5kaWRhdGUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFByZXZpb3VzQ2FuZGlkYXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUHJpbnQi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFByaW50OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUHJpb3IiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFByaW9yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgUTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1IiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SMSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUjE7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9SMTAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFIxMDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1IxMSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUjExOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf UjEyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSMTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SMTMiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFIxMzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1IxNCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgUjE0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUjE1IildCisrCQlwdWJsaWMgY29u c3QgdWludCBSMTU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg UjI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9SMyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUjM7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9SNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUjQ7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9SNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUjU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SNiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgUjY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SNyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgUjc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SOCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgUjg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SOSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUjk7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9SYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFJhY3V0ZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1JjYXJvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUmNhcm9uOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfUmNlZGlsbGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFJjZWRpbGxhOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfUmVkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSZWQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9SZWRvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSZWRvOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfUmVmcmVzaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUmVmcmVzaDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1JlbG9hZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUmVsb2FkOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfUmVwZWF0S2V5c19FbmFibGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFJlcGVhdEtleXNf RW5hYmxlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUmVwbHkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFJl cGx5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfUmV0dXJuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSZXR1 cm47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9SaWdodCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUmlnaHQ7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9Sb2NrZXJEb3duIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSb2Nr ZXJEb3duOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUm9ja2VyRW50ZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFJvY2tlckVudGVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUm9ja2VyVXAiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFJvY2tlclVwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUm9tYWppIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBSb21hamk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Sb3RhdGVXaW5kb3dzIildCisrCQlw dWJsaWMgY29uc3QgdWludCBSb3RhdGVXaW5kb3dzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUm90YXRpb25L QiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUm90YXRpb25LQjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Jv dGF0aW9uUEIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFJvdGF0aW9uUEI7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9SdXBlZVNpZ24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFJ1cGVlU2lnbjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFM7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9T Q0hXQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU0NIV0E7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TYWJv dmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1NhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2FjdXRlOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf U2F2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2F2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NjYXJv biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2Nhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2NlZGls bGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNjZWRpbGxhOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2Np cmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNjaXJjdW1mbGV4OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfU2NyZWVuU2F2ZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNjcmVlblNhdmVyOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfU2Nyb2xsQ2xpY2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNjcm9s bENsaWNrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2Nyb2xsRG93biIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgU2Nyb2xsRG93bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Njcm9sbFVwIildCisrCQlwdWJsaWMgY29u c3QgdWludCBTY3JvbGxVcDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Njcm9sbF9Mb2NrIildCisrCQlwdWJs aWMgY29uc3QgdWludCBTY3JvbGxfTG9jazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NlYXJjaCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgU2VhcmNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2VsZWN0IildCisrCQlw dWJsaWMgY29uc3QgdWludCBTZWxlY3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TZWxlY3RCdXR0b24iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFNlbGVjdEJ1dHRvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NlbmQi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNlbmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TZXJiaWFuX0RK RSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2VyYmlhbl9ESkU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9T ZXJiaWFuX0RaRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2VyYmlhbl9EWkU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9TZXJiaWFuX0pFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTZXJiaWFuX0pFOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfU2VyYmlhbl9MSkUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNlcmJp YW5fTEpFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2VyYmlhbl9OSkUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFNlcmJpYW5fTkpFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2VyYmlhbl9UU0hFIildCisrCQlwdWJs aWMgY29uc3QgdWludCBTZXJiaWFuX1RTSEU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TZXJiaWFuX2RqZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2VyYmlhbl9kamU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TZXJi aWFuX2R6ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2VyYmlhbl9kemU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9TZXJiaWFuX2plIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTZXJiaWFuX2plOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfU2VyYmlhbl9samUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNlcmJpYW5f bGplOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfU2VyYmlhbl9uamUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFNlcmJpYW5fbmplOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2VyYmlhbl90c2hlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBTZXJiaWFuX3RzaGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaGlmdF9MIildCisrCQlw dWJsaWMgY29uc3QgdWludCBTaGlmdF9MOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2hpZnRfTG9jayIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgU2hpZnRfTG9jazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NoaWZ0X1Ii KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNoaWZ0X1I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaG9wIild CisrCQlwdWJsaWMgY29uc3QgdWludCBTaG9wOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luZ2xlQ2FuZGlk YXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5nbGVDYW5kaWRhdGU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9TaW5oX2EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfYTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1NpbmhfYWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfYWE7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9TaW5oX2FhMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9hYTI7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9TaW5oX2FlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2FlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfU2luaF9hZTIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfYWUyOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfU2luaF9hZWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfYWVlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfU2luaF9hZWUyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2Fl ZTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2FpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5o X2FpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9haTIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNp bmhfYWkyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9hbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg U2luaF9hbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfYXUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFNpbmhfYXU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2F1MiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgU2luaF9hdTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2JhIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBTaW5oX2JhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9iaGEiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFNpbmhfYmhhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9jYSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgU2luaF9jYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfY2hhIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBTaW5oX2NoYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfZGRhIildCisrCQlwdWJs aWMgY29uc3QgdWludCBTaW5oX2RkYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfZGRoYSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgU2luaF9kZGhhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9kaGEiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfZGhhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9kaGhh IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2RoaGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5o X2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Npbmhf ZTIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfZTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5o X2VlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2VlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2lu aF9lZTIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfZWUyOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf U2luaF9mYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9mYTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1NpbmhfZ2EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfZ2E7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9TaW5oX2doYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9naGE7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9TaW5oX2gyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2gyOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfU2luaF9oYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9oYTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1NpbmhfaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9pOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfU2luaF9pMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9pMjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1NpbmhfaWkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfaWk7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9TaW5oX2lpMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9paTI7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9TaW5oX2phIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2phOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfU2luaF9qaGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfamhhOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfU2luaF9qbnlhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2pu eWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2thIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5o X2thOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9raGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNp bmhfa2hhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9rdW5kZGFsaXlhIildCisrCQlwdWJsaWMgY29u c3QgdWludCBTaW5oX2t1bmRkYWxpeWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2xhIildCisrCQlw dWJsaWMgY29uc3QgdWludCBTaW5oX2xhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9sbGEiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFNpbmhfbGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9sdSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9sdTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfbHUyIild CisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2x1MjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfbHV1 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2x1dTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Npbmhf bHV1MiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9sdXUyOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf U2luaF9tYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9tYTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1NpbmhfbWJhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX21iYTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1NpbmhfbmEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfbmE7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9TaW5oX25kZGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfbmRkYTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1NpbmhfbmRoYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9uZGhhOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfU2luaF9uZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9uZzsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1NpbmhfbmcyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX25n MjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1NpbmhfbmdhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5o X25nYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfbmphIildCisrCQlwdWJsaWMgY29uc3QgdWludCBT aW5oX25qYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Npbmhfbm5hIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBTaW5oX25uYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfbnlhIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBTaW5oX255YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfbyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgU2luaF9vOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9vMiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgU2luaF9vMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Npbmhfb28iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFNpbmhfb287CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX29vMiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgU2luaF9vbzI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX3BhIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBTaW5oX3BhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9waGEiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFNpbmhfcGhhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9yYSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgU2luaF9yYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfcmkiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFNpbmhfcmk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX3JpaSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgU2luaF9yaWk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX3J1MiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9ydTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX3J1dTIi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfcnV1MjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Npbmhf c2EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfc2E7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5o X3NoYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9zaGE7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9T aW5oX3NzaGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfc3NoYTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1NpbmhfdGhhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX3RoYTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1NpbmhfdGhoYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF90aGhhOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfU2luaF90dGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfdHRhOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfU2luaF90dGhhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX3R0 aGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX3UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhf dTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1NpbmhfdTIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhf dTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX3V1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5o X3V1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF91dTIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNp bmhfdXUyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF92YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg U2luaF92YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfeWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFNpbmhfeWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TbGVlcCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg U2xlZXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TbG93S2V5c19FbmFibGUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFNsb3dLZXlzX0VuYWJsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NwZWxsIildCisrCQlwdWJs aWMgY29uc3QgdWludCBTcGVsbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NwbGl0U2NyZWVuIildCisrCQlw dWJsaWMgY29uc3QgdWludCBTcGxpdFNjcmVlbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N0YW5kYnkiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFN0YW5kYnk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TdGFydCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgU3RhcnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TdGlja3lLZXlzX0Vu YWJsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU3RpY2t5S2V5c19FbmFibGU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9TdG9wIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTdG9wOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfU3VidGl0bGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN1YnRpdGxlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfU3VwZXJfTCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU3VwZXJfTDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1N1cGVyX1IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN1cGVyX1I7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9TdXBwb3J0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTdXBwb3J0OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfU3VzcGVuZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU3VzcGVuZDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1N3aXRjaF9WVF8xIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTd2l0Y2hfVlRf MTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1N3aXRjaF9WVF8xMCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg U3dpdGNoX1ZUXzEwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3dpdGNoX1ZUXzExIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBTd2l0Y2hfVlRfMTE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Td2l0Y2hfVlRfMTIiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFN3aXRjaF9WVF8xMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N3aXRj aF9WVF8yIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTd2l0Y2hfVlRfMjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1N3aXRjaF9WVF8zIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTd2l0Y2hfVlRfMzsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1N3aXRjaF9WVF80IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTd2l0Y2hf VlRfNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1N3aXRjaF9WVF81IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBTd2l0Y2hfVlRfNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N3aXRjaF9WVF82IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBTd2l0Y2hfVlRfNjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N3aXRjaF9WVF83IildCisr CQlwdWJsaWMgY29uc3QgdWludCBTd2l0Y2hfVlRfNzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N3aXRjaF9W VF84IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTd2l0Y2hfVlRfODsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1N3aXRjaF9WVF85IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTd2l0Y2hfVlRfOTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1N5c19SZXEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN5c19SZXE7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9UIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf VEhPUk4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRIT1JOOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGFi IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUYWI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UYWJvdmVkb3Qi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Rhc2tQ YW5lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUYXNrUGFuZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Rj YXJvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGNhcm9uOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGNl ZGlsbGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRjZWRpbGxhOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf VGVybWluYWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRlcm1pbmFsOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfVGVybWluYXRlX1NlcnZlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGVybWluYXRlX1Nl cnZlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfYmFodCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg VGhhaV9iYWh0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9ib2JhaW1haSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgVGhhaV9ib2JhaW1haTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfY2hvY2hhbiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9jaG9jaGFuOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9j aG9jaGFuZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9jaG9jaGFuZzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1RoYWlfY2hvY2hpbmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfY2hvY2hp bmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2Nob2Nob2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFRoYWlfY2hvY2hvZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfZG9jaGFkYSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgVGhhaV9kb2NoYWRhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9kb2RlayIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9kb2RlazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfZm9m YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9mb2ZhOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhh aV9mb2ZhbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9mb2ZhbjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1RoYWlfaG9oaXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfaG9oaXA7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9UaGFpX2hvbm9raHVrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2hv bm9raHVrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9raG9raGFpIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBUaGFpX2tob2toYWk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2tob2tob24iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFRoYWlfa2hva2hvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfa2hva2h1 YXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfa2hva2h1YXQ7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9UaGFpX2tob2tod2FpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2tob2tod2FpOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfVGhhaV9raG9yYWtoYW5nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBU aGFpX2tob3Jha2hhbmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2tva2FpIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBUaGFpX2tva2FpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9sYWtraGFuZ3lhbyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9sYWtraGFuZ3lhbzsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1RoYWlfbGVrY2hldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9sZWtjaGV0OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfVGhhaV9sZWtoYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9sZWto YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbGVraG9rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBU aGFpX2xla2hvazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbGVra2FvIildCisrCQlwdWJsaWMgY29u c3QgdWludCBUaGFpX2xla2thbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbGVrbnVuZyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgVGhhaV9sZWtudW5nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9sZWtw YWV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2xla3BhZXQ7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9UaGFpX2xla3NhbSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9sZWtzYW07CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9UaGFpX2xla3NpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2xla3Np OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9sZWtzb25nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBU aGFpX2xla3Nvbmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2xla3N1biIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgVGhhaV9sZWtzdW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2xvY2h1bGEiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbG9jaHVsYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbG9s aW5nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2xvbGluZzsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1RoYWlfbHUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbHU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9UaGFpX21haWNoYXR0YXdhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX21haWNoYXR0 YXdhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9tYWllayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg VGhhaV9tYWllazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbWFpaGFuYWthdCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgVGhhaV9tYWloYW5ha2F0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9tYWloYW5h a2F0X21haXRobyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9tYWloYW5ha2F0X21haXRo bzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbWFpdGFpa2h1IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBUaGFpX21haXRhaWtodTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbWFpdGhvIildCisrCQlwdWJs aWMgY29uc3QgdWludCBUaGFpX21haXRobzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbWFpdHJpIild CisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX21haXRyaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlf bWFpeWFtb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbWFpeWFtb2s7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9UaGFpX21vbWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbW9tYTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1RoYWlfbmdvbmd1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX25n b25ndTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbmlraGFoaXQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFRoYWlfbmlraGFoaXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX25vbmVuIildCisrCQlwdWJs aWMgY29uc3QgdWludCBUaGFpX25vbmVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9ub251IildCisr CQlwdWJsaWMgY29uc3QgdWludCBUaGFpX25vbnU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX29hbmci KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfb2FuZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlf cGFpeWFubm9pIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3BhaXlhbm5vaTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1RoYWlfcGhpbnRodSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9waGlu dGh1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9waG9waGFuIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBUaGFpX3Bob3BoYW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3Bob3BodW5nIildCisrCQlwdWJs aWMgY29uc3QgdWludCBUaGFpX3Bob3BodW5nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9waG9zYW1w aGFvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3Bob3NhbXBoYW87CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9UaGFpX3BvcGxhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3BvcGxhOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfVGhhaV9yb3J1YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9yb3J1 YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1RoYWlfcnUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlf cnU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3NhcmFhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBU aGFpX3NhcmFhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9zYXJhYWEiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFRoYWlfc2FyYWFhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9zYXJhYWUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFRoYWlfc2FyYWFlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9zYXJhYWlt YWltYWxhaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9zYXJhYWltYWltYWxhaTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1RoYWlfc2FyYWFpbWFpbXVhbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg VGhhaV9zYXJhYWltYWltdWFuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9zYXJhYW0iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFRoYWlfc2FyYWFtOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9zYXJhZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9zYXJhZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlf c2FyYWkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfc2FyYWk7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9UaGFpX3NhcmFpaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9zYXJhaWk7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9UaGFpX3NhcmFvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3NhcmFv OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9zYXJhdSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhh aV9zYXJhdTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfc2FyYXVlIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBUaGFpX3NhcmF1ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfc2FyYXVlZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgVGhhaV9zYXJhdWVlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9zYXJhdXUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfc2FyYXV1OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhh aV9zb3J1c2kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfc29ydXNpOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfVGhhaV9zb3NhbGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfc29zYWxhOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfVGhhaV9zb3NvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3Nv c287CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3Nvc3VhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBU aGFpX3Nvc3VhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV90aGFudGhha2hhdCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgVGhhaV90aGFudGhha2hhdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfdGhvbmFu Z21vbnRobyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV90aG9uYW5nbW9udGhvOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfVGhhaV90aG9waHV0aGFvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFp X3Rob3BodXRoYW87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3Rob3RoYWhhbiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgVGhhaV90aG90aGFoYW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3Rob3RoYW4i KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfdGhvdGhhbjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Ro YWlfdGhvdGhvbmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfdGhvdGhvbmc7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9UaGFpX3Rob3RodW5nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3Ro b3RodW5nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV90b3BhdGFrIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBUaGFpX3RvcGF0YWs7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3RvdGFvIildCisrCQlwdWJs aWMgY29uc3QgdWludCBUaGFpX3RvdGFvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV93b3dhZW4iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfd293YWVuOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV95 b3lhayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV95b3lhazsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1RoYWlfeW95aW5nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3lveWluZzsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1Rob3JuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaG9ybjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1RpbWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRpbWU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9Ub0RvTGlzdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVG9Eb0xpc3Q7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9Ub29scyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVG9vbHM7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9Ub3BNZW51IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUb3BNZW51OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfVG91Y2hwYWRPZmYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRvdWNocGFkT2ZmOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfVG91Y2hwYWRPbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVG91Y2hwYWRP bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1RvdWNocGFkVG9nZ2xlIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBUb3VjaHBhZFRvZ2dsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RvdXJva3UiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFRvdXJva3U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UcmF2ZWwiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFRyYXZlbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RzbGFzaCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgVHNsYXNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1VXQiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVVdCOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfVWFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVYWN1dGU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9VYmVsb3dkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFViZWxvd2Rv dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1VicmV2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWJyZXZl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfVWNpcmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVj aXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWRpYWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgVWRpYWVyZXNpczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Vkb3VibGVhY3V0ZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgVWRvdWJsZWFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWdyYXZlIildCisr CQlwdWJsaWMgY29uc3QgdWludCBVZ3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VaG9vayIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgVWhvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VaG9ybiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgVWhvcm47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VaG9ybmFjdXRlIildCisrCQlw dWJsaWMgY29uc3QgdWludCBVaG9ybmFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWhvcm5iZWxvd2Rv dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWhvcm5iZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1Vob3JuZ3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVob3JuZ3JhdmU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9VaG9ybmhvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVob3JuaG9vazsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1Vob3JudGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVob3JudGls ZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Va3JhaW5pYW5fR0hFX1dJVEhfVVBUVVJOIildCisrCQlwdWJs aWMgY29uc3QgdWludCBVa3JhaW5pYW5fR0hFX1dJVEhfVVBUVVJOOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf VWtyYWluaWFuX0kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVrcmFpbmlhbl9JOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfVWtyYWluaWFuX0lFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVa3JhaW5pYW5f SUU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Va3JhaW5pYW5fWUkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFVrcmFpbmlhbl9ZSTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VrcmFpbmlhbl9naGVfd2l0aF91cHR1cm4i KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVrcmFpbmlhbl9naGVfd2l0aF91cHR1cm47CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9Va3JhaW5pYW5faSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWtyYWluaWFu X2k7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Va3JhaW5pYW5faWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFVrcmFpbmlhbl9pZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VrcmFpbmlhbl95aSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgVWtyYWluaWFuX3lpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWtyYW5pYW5fSSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgVWtyYW5pYW5fSTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VrcmFuaWFu X0pFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVa3Jhbmlhbl9KRTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1VrcmFuaWFuX1lJIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVa3Jhbmlhbl9ZSTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1VrcmFuaWFuX2kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVrcmFuaWFuX2k7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9Va3Jhbmlhbl9qZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWty YW5pYW5famU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Va3Jhbmlhbl95aSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgVWtyYW5pYW5feWk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VbWFjcm9uIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBVbWFjcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVW5kbyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgVW5kbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VuZ3JhYiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgVW5ncmFiOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVW9nb25layIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgVW9nb25lazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VwIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBVcDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1VyaW5nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVcmlu ZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1VzZXIxS0IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVzZXIx S0I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Vc2VyMktCIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVc2Vy MktCOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfVXNlclBCIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVc2Vy UEI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9VdGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFV0aWxk ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1YiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFY7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9WZW5kb3JIb21lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBWZW5kb3JIb21lOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfVmlkZW8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFZpZGVvOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfVmlldyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVmlldzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1ZvaWRTeW1ib2wiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFZvaWRTeW1ib2w7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9XIildCisrCQlwdWJsaWMgY29uc3QgdWludCBXOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfV0xBTiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgV0xBTjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1dX VyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgV1dXOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfV2FjdXRlIild CisrCQlwdWJsaWMgY29uc3QgdWludCBXYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9XYWtlVXAiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFdha2VVcDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1djaXJjdW1mbGV4 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBXY2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1dk aWFlcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFdkaWFlcmVzaXM7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9XZWJDYW0iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFdlYkNhbTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1dncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgV2dyYXZlOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfV2hlZWxCdXR0b24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFdoZWVsQnV0dG9uOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfV2luZG93Q2xlYXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFdpbmRvd0Ns ZWFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfV29uU2lnbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgV29u U2lnbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1dvcmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFdvcmQ7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9YIildCisrCQlwdWJsaWMgY29uc3QgdWludCBYOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfWGFib3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBYYWJvdmVkb3Q7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9YZmVyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBYZmVyOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfWSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgWTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1lhY3V0 ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgWWFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWWJlbG93 ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBZYmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Z Y2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgWWNpcmN1bWZsZXg7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9ZZGlhZXJlc2lzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBZZGlhZXJlc2lzOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfWWVsbG93IildCisrCQlwdWJsaWMgY29uc3QgdWludCBZZWxsb3c7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9ZZ3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFlncmF2ZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1lob29rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBZaG9vazsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1l0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgWXRpbGRlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfWiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgWjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1ph Ym92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgWmFib3ZlZG90OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfWmFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBaYWN1dGU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9aY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFpjYXJvbjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1plbl9Lb2hvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBaZW5fS29obzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1plbmtha3UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFplbmtha3U7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9aZW5rYWt1X0hhbmtha3UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFplbmtha3VfSGFu a2FrdTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1pvb21JbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgWm9v bUluOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfWm9vbU91dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgWm9v bU91dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1pzdHJva2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFpz dHJva2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hIildCisrCQlwdWJsaWMgY29uc3QgdWludCBhOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYWFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBhYWN1dGU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9hYmVsb3dkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFiZWxvd2RvdDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2Fib3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBhYm92ZWRv dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2FicmV2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYWJyZXZl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYWJyZXZlYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFi cmV2ZWFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYWJyZXZlYmVsb3dkb3QiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGFicmV2ZWJlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYWJyZXZlZ3JhdmUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGFicmV2ZWdyYXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYWJyZXZl aG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYWJyZXZlaG9vazsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2FicmV2ZXRpbGRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBhYnJldmV0aWxkZTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2FjaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBhY2lyY3VtZmxl eDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2FjaXJjdW1mbGV4YWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGFjaXJjdW1mbGV4YWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hY2lyY3VtZmxleGJlbG93ZG90 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBhY2lyY3VtZmxleGJlbG93ZG90OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYWNpcmN1bWZsZXhncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYWNpcmN1bWZs ZXhncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FjaXJjdW1mbGV4aG9vayIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYWNpcmN1bWZsZXhob29rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYWNpcmN1bWZsZXh0aWxk ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYWNpcmN1bWZsZXh0aWxkZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2FjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBhY3V0ZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2FkaWFlcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFkaWFlcmVzaXM7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9hZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYWU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9h Z3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Fo b29rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBhaG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FtYWNy b24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFtYWNyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hbXBl cnNhbmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFtcGVyc2FuZDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2FvZ29uZWsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFvZ29uZWs7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9hcG9zdHJvcGhlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBhcG9zdHJvcGhlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYXBwcm94ZXEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFwcHJveGVxOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYXBwcm94aW1hdGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFwcHJveGlt YXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYXJpbmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFyaW5n OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYXNjaWljaXJjdW0iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFz Y2lpY2lyY3VtOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYXNjaWl0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYXNjaWl0aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FzdGVyaXNrIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBhc3RlcmlzazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2F0IildCisrCQlwdWJsaWMgY29u c3QgdWludCBhdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2F0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYXRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JhYm92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYmFib3Zl ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYmFja3NsYXNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBi YWNrc2xhc2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9iYWxsb3Rjcm9zcyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYmFsbG90Y3Jvc3M7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9iYXIiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JlY2F1c2UiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJlY2F1c2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ibGFuayIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYmxhbms7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ib3RpbnRlZ3JhbCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYm90aW50ZWdyYWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ib3RsZWZ0cGFyZW5zIildCisrCQlw dWJsaWMgY29uc3QgdWludCBib3RsZWZ0cGFyZW5zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYm90bGVmdHNx YnJhY2tldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYm90bGVmdHNxYnJhY2tldDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JvdGxlZnRzdW1tYXRpb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJvdGxl ZnRzdW1tYXRpb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ib3RyaWdodHBhcmVucyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYm90cmlnaHRwYXJlbnM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ib3RyaWdodHNxYnJh Y2tldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYm90cmlnaHRzcWJyYWNrZXQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9ib3RyaWdodHN1bW1hdGlvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYm90cmln aHRzdW1tYXRpb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ib3R0IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBib3R0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYm90dmVydHN1bW1hdGlvbmNvbm5lY3RvciIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYm90dmVydHN1bW1hdGlvbmNvbm5lY3RvcjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWNlbGVmdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhY2VsZWZ0OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhY2VyaWdodCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhY2VyaWdodDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWNrZXRsZWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFj a2V0bGVmdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWNrZXRyaWdodCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhY2tldHJpZ2h0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9ibGFuayIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9ibGFuazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90XzEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90XzE7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdF8xMCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rf MTA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdF8yIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdF8yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RfMyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RfMzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 XzQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90XzQ7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9icmFpbGxlX2RvdF81IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdF81Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RfNiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJh aWxsZV9kb3RfNjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90XzciKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90Xzc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdF84Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdF84OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RfOSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RfOTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JyYWlsbGVfZG90c18xIildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxl X2RvdHNfMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEy MyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c18xMjM0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfMTIzNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM0NSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzQ1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9k b3RzXzEyMzQ1NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzQ1NjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM0NTY3IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBicmFpbGxlX2RvdHNfMTIzNDU2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18x MjM0NTY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzQ1Njc4Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzQ1NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyYWlsbGVfZG90c18xMjM0NTY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEy MzQ1NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzQ1NzsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM0NTc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMTIzNDU3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM0NTgi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM0NTg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMTIzNDYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18xMjM0NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM0NjciKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM0Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMTIzNDY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEy MzQ2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNDY4IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNDY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9k b3RzXzEyMzQ3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNDc7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNDc4IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfMTIzNDc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzQ4 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNDg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMTIzNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzEyMzU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNTYiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM1NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90c18xMjM1NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM1Njc7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNTY3OCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzU2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf MTIzNTY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNTY4OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzU3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMTIzNTc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNTc4Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNTc4OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzEyMzU4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfMTIzNTg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfMTIzNjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM2NzsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90c18xMjM2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNjgi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM2ODsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c18xMjM3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfMTIzNzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM3OCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9k b3RzXzEyMzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM4OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJh aWxsZV9kb3RzXzEyNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjQ1IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI0NTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18xMjQ1NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNDU2 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNDU2NyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzEyNDU2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18x MjQ1Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI0NTY3ODsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjQ1NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90c18xMjQ1Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI0NTci KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjQ1NzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c18xMjQ1NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18xMjQ1Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI0NTgiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjQ1ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18xMjQ2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI0NjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjQ2NyIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzEyNDY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNDY3 OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNDY3ODsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c18xMjQ2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RzXzEyNDY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNDciKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjQ3OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzEyNDc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI0Nzg7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI0OCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzEyNDg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI1Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI1OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzEyNTYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18x MjU2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNTY3IildCisrCQlwdWJsaWMgY29u c3QgdWludCBicmFpbGxlX2RvdHNfMTI1Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf MTI1Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI1Njc4OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNTY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMTI1Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI1NyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNTc7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfMTI1NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18x MjU3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjU4IildCisrCQlwdWJsaWMgY29u c3QgdWludCBicmFpbGxlX2RvdHNfMTI1ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18x MjYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjY7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMTI2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzEyNjc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI2NzgiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90c18xMjY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI2ODsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c18xMjc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI3OCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMTI4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI4Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMTM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM0IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM0OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzEzNDUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzQ1Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNDU2IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfMTM0NTY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM0NTY3 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM0NTY3OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzEzNDU2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18xMzQ1Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNDU2OCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNDU2ODsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2JyYWlsbGVfZG90c18xMzQ1NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rz XzEzNDU3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNDU3OCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNDU3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90c18xMzQ1OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNDU4Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNDYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90c18xMzQ2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNDY3Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM0Njc7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9icmFpbGxlX2RvdHNfMTM0Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfMTM0Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNDY4IildCisrCQlwdWJs aWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM0Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxl X2RvdHNfMTM0NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNDc7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM0NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90c18xMzQ3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzQ4Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM0ODsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2JyYWlsbGVfZG90c18xMzUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18x MzU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM1NiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzEzNTY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM1 NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzU2NzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c18xMzU2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18xMzU2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM1NjgiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzU2ODsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90c18xMzU3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM1 NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzU3OCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzEzNTc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEz NTgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzU4OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzEzNiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzEzNjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzY3IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c18xMzY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNjc4OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c18xMzY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNzsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18xMzc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM3ODsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90c18xMzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTQiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18xNDUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNDU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTQ1NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzE0NTY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTQ1NjciKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNDU2NzsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2JyYWlsbGVfZG90c18xNDU2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18xNDU2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTQ1NjgiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNDU2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90c18xNDU3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTQ1NzsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNDU3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzE0NTc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE0NTgiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNDU4OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzE0NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE0 NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNDY3IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBicmFpbGxlX2RvdHNfMTQ2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNDY3 OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE0Njc4OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzE0NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18xNDY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE0NyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE0NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c18xNDc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTQ3ODsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JyYWlsbGVfZG90c18xNDgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18xNDg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c18xNTYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNTY7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfMTU2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RzXzE1Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTU2NzgiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNTY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18xNTY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTU2ODsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNTciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90c18xNTc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTU3OCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE1Nzg7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfMTU4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTU4 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE2IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfMTY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTY3IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTY3OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzE2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNjc4 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE2OCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzE2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE3OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzE3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE3ODsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xOCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzE4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9k b3RzXzIzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfMjM0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxl X2RvdHNfMjM0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNDUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzQ1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9k b3RzXzIzNDU2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM0NTY7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM0NTY3IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfMjM0NTY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNDU2 NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzQ1Njc4OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNDU2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJh aWxsZV9kb3RzXzIzNDU2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzQ1NyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNDU3OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzIzNDU3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rz XzIzNDU3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzQ1OCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNDU4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9k b3RzXzIzNDYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzQ2OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNDY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMjM0Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM0Njc4Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM0Njc4OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzIzNDY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfMjM0Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM0NyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNDc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfMjM0NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzQ3ODsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzQ4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMjM0ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMjM1NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNTY7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM1NjciKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyYWlsbGVfZG90c18yMzU2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzU2 NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzU2Nzg7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfMjM1NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18yMzU2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzU3IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM1NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18yMzU3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNTc4 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNTgiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyYWlsbGVfZG90c18yMzU4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2JyYWlsbGVfZG90c18yMzY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNf MjM2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzY3OCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNjc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzIzNjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzY4OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RzXzIzNzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzc4IildCisrCQlwdWJs aWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90c18yMzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzg7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18yNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNDUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNDU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfMjQ1NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI0NTY7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjQ1NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c18yNDU2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNDU2NzgiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNDU2Nzg7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9icmFpbGxlX2RvdHNfMjQ1NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18yNDU2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNDU3IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMjQ1NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c18yNDU3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI0NTc4OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI0NTgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c18yNDU4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI0NiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI0NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18yNDY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjQ2NzsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNDY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzI0Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI0Njgi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNDY4OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzI0NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rz XzI0NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNDc4IildCisrCQlwdWJsaWMgY29u c3QgdWludCBicmFpbGxlX2RvdHNfMjQ3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18y NDgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNDg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMjUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18yNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNTYiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c18yNTY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjU2 NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI1Njc7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMjU2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18yNTY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNTY4IildCisrCQlwdWJs aWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjU2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90c18yNTciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNTc7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjU3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJh aWxsZV9kb3RzXzI1Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjU4IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjU4OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzI2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjY7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfMjY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI2NzgiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNjc4OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzI2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI2ODsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJh aWxsZV9kb3RzXzI3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI3OCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90c18yOCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI4OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM0IildCisrCQlwdWJsaWMgY29u c3QgdWludCBicmFpbGxlX2RvdHNfMzQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzQ1 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzQ1OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzM0NTYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18zNDU2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM0NTY3IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMzQ1Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfMzQ1Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzQ1Njc4Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM0NTY4IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfMzQ1Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzQ1NyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM0NTc7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9icmFpbGxlX2RvdHNfMzQ1NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18zNDU3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNDU4IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMzQ1ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c18zNDYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNDY7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfMzQ2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RzXzM0Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzQ2NzgiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNDY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18zNDY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzQ2ODsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNDciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90c18zNDc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzQ3OCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM0Nzg7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfMzQ4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzQ4 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM1IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfMzU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzU2IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzU2OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzM1NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNTY3 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM1Njc4IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBicmFpbGxlX2RvdHNfMzU2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzU2 OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM1Njg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMzU3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfMzU3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM1NzgiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c18zNTc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzM1OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM1ODsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c18zNiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzM2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM2NyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18z Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzY3ODsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c18zNjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18zNjg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzciKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c18zNzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18z NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNzg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18zODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c180IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBicmFpbGxlX2RvdHNfNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c180NSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzQ1OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzQ1NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzQ1NjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c180NTY3IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfNDU2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c180NTY3OCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzQ1Njc4OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzQ1NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c180NTY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzQ1NyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzQ1NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c180 NTc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNDU3ODsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c180NTgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c180NTg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNDYiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c180NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c180 NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c180Njc7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfNDY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzQ2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNDY4IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfNDY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzQ3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNDc7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfNDc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfNDc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzQ4IildCisrCQlwdWJsaWMgY29u c3QgdWludCBicmFpbGxlX2RvdHNfNDg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfNTYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c181NjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c181NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90c181Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNTY3OCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzU2Nzg7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfNTY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNTY4 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzU3IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfNTc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNTc4IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNTc4OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzU4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNTg7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJh aWxsZV9kb3RzXzY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNjciKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c182NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c182NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c182Nzg7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfNjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c182ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c183IildCisrCQlwdWJsaWMgY29u c3QgdWludCBicmFpbGxlX2RvdHNfNzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c183OCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzc4OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c184Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJldmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyZXZlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJva2VuYmFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBicm9rZW5iYXI7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9jIildCisrCQlwdWJsaWMgY29uc3QgdWludCBjOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfY19oIildCisrCQlwdWJsaWMgY29uc3QgdWludCBjX2g7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9j YWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNhYm92ZWRvdDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2NhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY2FjdXRlOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfY2FyZW9mIildCisrCQlwdWJsaWMgY29uc3QgdWludCBjYXJlb2Y7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9jYXJldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY2FyZXQ7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9j YXJvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jY2Fy b24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNjYXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2NjZWRp bGxhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBjY2VkaWxsYTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Nj aXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBjY2lyY3VtZmxleDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2NlZGlsbGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNlZGlsbGE7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9jZW50IildCisrCQlwdWJsaWMgY29uc3QgdWludCBjZW50OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfY2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNoOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY2hlY2tl cmJvYXJkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBjaGVja2VyYm9hcmQ7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9jaGVja21hcmsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNoZWNrbWFyazsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2NpcmNsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY2lyY2xlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfY2x1YiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY2x1YjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2NvbG9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBjb2xvbjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2NvbW1hIildCisrCQlwdWJsaWMgY29uc3QgdWludCBjb21tYTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Nv bnRhaW5zYXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNvbnRhaW5zYXM7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9jb3B5cmlnaHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNvcHlyaWdodDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2NyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBjcjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2Nyb3NzaW5nbGluZXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNyb3NzaW5nbGluZXM7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9jdWJlcm9vdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY3ViZXJvb3Q7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9jdXJyZW5jeSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY3VycmVu Y3k7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9jdXJzb3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGN1cnNv cjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9kYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRhYm92ZWRvdDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2RhZ2dlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGFnZ2VyOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfZGNhcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkY2Fyb247CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9kZWFkX0EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfQTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2RlYWRfRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9FOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfZGVhZF9JIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX0k7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9kZWFkX08iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfTzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2RlYWRfVSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9VOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfZGVhZF9hIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2E7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9kZWFkX2Fib3ZlY29tbWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfYWJvdmVj b21tYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGRlYWRfYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2Fib3ZlcmV2ZXJzZWRjb21t YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9hYm92ZXJldmVyc2VkY29tbWE7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9kZWFkX2Fib3ZlcmluZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9h Ym92ZXJpbmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2Fib3ZldmVydGljYWxsaW5lIildCisrCQlw dWJsaWMgY29uc3QgdWludCBkZWFkX2Fib3ZldmVydGljYWxsaW5lOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf ZGVhZF9hY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9hY3V0ZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2RlYWRfYmVsb3dicmV2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9iZWxv d2JyZXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9iZWxvd2NpcmN1bWZsZXgiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGRlYWRfYmVsb3djaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9i ZWxvd2NvbW1hIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2JlbG93Y29tbWE7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9kZWFkX2JlbG93ZGlhZXJlc2lzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBk ZWFkX2JlbG93ZGlhZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9iZWxvd2RvdCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgZGVhZF9iZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfYmVs b3dtYWNyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfYmVsb3dtYWNyb247CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9kZWFkX2JlbG93cmluZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9i ZWxvd3Jpbmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2JlbG93dGlsZGUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGRlYWRfYmVsb3d0aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfYmVsb3d2ZXJ0 aWNhbGxpbmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfYmVsb3d2ZXJ0aWNhbGxpbmU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2JyZXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFk X2JyZXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9jYXBpdGFsX3NjaHdhIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBkZWFkX2NhcGl0YWxfc2Nod2E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2Nhcm9u IildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2Nhcm9uOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVh ZF9jZWRpbGxhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2NlZGlsbGE7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9kZWFkX2NpcmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfY2ly Y3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfY3VycmVuY3kiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGRlYWRfY3VycmVuY3k7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2Rhc2lhIildCisrCQlw dWJsaWMgY29uc3QgdWludCBkZWFkX2Rhc2lhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9kaWFlcmVz aXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfZGlhZXJlc2lzOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfZGVhZF9kb3VibGVhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9kb3VibGVh Y3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfZG91YmxlZ3JhdmUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGRlYWRfZG91YmxlZ3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2UiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGRlYWRfZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfZ3JhdmUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGRlYWRfZ3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2dyZWVr IildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2dyZWVrOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVh ZF9ob29rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2hvb2s7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9kZWFkX2hvcm4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfaG9ybjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2RlYWRfaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9pOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfZGVhZF9pbnZlcnRlZGJyZXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2lu dmVydGVkYnJldmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2lvdGEiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGRlYWRfaW90YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfbG9uZ3NvbGlkdXNvdmVybGF5 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2xvbmdzb2xpZHVzb3ZlcmxheTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2RlYWRfbG93bGluZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9sb3ds aW5lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9tYWNyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGRlYWRfbWFjcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9vIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBkZWFkX287CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX29nb25layIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgZGVhZF9vZ29uZWs7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX3BlcmlzcG9tZW5pIild CisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX3BlcmlzcG9tZW5pOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf ZGVhZF9wc2lsaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9wc2lsaTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2RlYWRfc2VtaXZvaWNlZF9zb3VuZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVh ZF9zZW1pdm9pY2VkX3NvdW5kOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9zbWFsbF9zY2h3YSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9zbWFsbF9zY2h3YTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Rl YWRfc3Ryb2tlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX3N0cm9rZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2RlYWRfdGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfdGlsZGU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9kZWFkX3UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfdTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2RlYWRfdm9pY2VkX3NvdW5kIildCisrCQlwdWJsaWMgY29uc3QgdWludCBk ZWFkX3ZvaWNlZF9zb3VuZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlY2ltYWxwb2ludCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgZGVjaW1hbHBvaW50OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVncmVlIildCisr CQlwdWJsaWMgY29uc3QgdWludCBkZWdyZWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kaWFlcmVzaXMiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGRpYWVyZXNpczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RpYW1vbmQi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRpYW1vbmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kaWdpdHNw YWNlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkaWdpdHNwYWNlOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf ZGludGVncmFsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkaW50ZWdyYWw7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9kaXZpc2lvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGl2aXNpb247CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9kb2xsYXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRvbGxhcjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2RvdWJiYXNlbGluZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZG91YmJhc2Vs aW5lZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZG91YmxlYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGRvdWJsZWFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZG91YmxlZGFnZ2VyIildCisrCQlwdWJs aWMgY29uc3QgdWludCBkb3VibGVkYWdnZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kb3VibGVsb3dxdW90 ZW1hcmsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRvdWJsZWxvd3F1b3RlbWFyazsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2Rvd25hcnJvdyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZG93bmFycm93Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfZG93bmNhcmV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBkb3duY2Fy ZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9kb3duc2hvZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZG93 bnNob2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kb3duc3RpbGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGRvd25zdGlsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Rvd250YWNrIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBkb3dudGFjazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RzdHJva2UiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGRzdHJva2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfZWFib3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBl YWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGVhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ViZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgZWJlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZWNhcm9uIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBlY2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgZWNpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lY2lyY3VtZmxleGFjdXRlIild CisrCQlwdWJsaWMgY29uc3QgdWludCBlY2lyY3VtZmxleGFjdXRlOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf ZWNpcmN1bWZsZXhiZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZWNpcmN1bWZsZXhi ZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VjaXJjdW1mbGV4Z3JhdmUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGVjaXJjdW1mbGV4Z3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lY2lyY3VtZmxleGhv b2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVjaXJjdW1mbGV4aG9vazsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2VjaXJjdW1mbGV4dGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVjaXJjdW1mbGV4 dGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lZGlhZXJlc2lzIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBlZGlhZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZWdyYXZlIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBlZ3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9laG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgZWhvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9laWdodHN1YnNjcmlwdCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgZWlnaHRzdWJzY3JpcHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9laWdodHN1cGVyaW9yIild CisrCQlwdWJsaWMgY29uc3QgdWludCBlaWdodHN1cGVyaW9yOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZWxl bWVudG9mIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlbGVtZW50b2Y7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9lbGxpcHNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZWxsaXBzaXM7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9lbTNzcGFjZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZW0zc3BhY2U7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9lbTRzcGFjZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZW00c3BhY2U7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9lbWFjcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlbWFjcm9uOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfZW1kYXNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlbWRhc2g7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9lbWZpbGxlZGNpcmNsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZW1maWxs ZWRjaXJjbGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lbWZpbGxlZHJlY3QiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGVtZmlsbGVkcmVjdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Vtb3BlbmNpcmNsZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgZW1vcGVuY2lyY2xlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW1vcGVucmVj dGFuZ2xlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlbW9wZW5yZWN0YW5nbGU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9lbXB0eXNldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZW1wdHlzZXQ7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9lbXNwYWNlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlbXNwYWNlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfZW5kYXNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlbmRhc2g7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9lbmZpbGxlZGNpcmNidWxsZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVu ZmlsbGVkY2lyY2J1bGxldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VuZmlsbGVkc3FidWxsZXQiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGVuZmlsbGVkc3FidWxsZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lbmci KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVuZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Vub3BlbmNpcmNi dWxsZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVub3BlbmNpcmNidWxsZXQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9lbm9wZW5zcXVhcmVidWxsZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVub3Bl bnNxdWFyZWJ1bGxldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Vuc3BhY2UiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGVuc3BhY2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lb2dvbmVrIildCisrCQlwdWJsaWMgY29u c3QgdWludCBlb2dvbmVrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZXF1YWwiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGVxdWFsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZXRoIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBldGg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ldGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGV0 aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2V4Y2xhbSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZXhj bGFtOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfZXhjbGFtZG93biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg ZXhjbGFtZG93bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2V6aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg ZXpoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2ZhYm92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZmFib3ZlZG90Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfZmVtYWxlc3ltYm9sIildCisrCQlwdWJsaWMgY29uc3QgdWludCBmZW1h bGVzeW1ib2w7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9mZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZmY7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9maWdkYXNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBmaWdkYXNo OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfZmlsbGVkbGVmdHRyaWJ1bGxldCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgZmlsbGVkbGVmdHRyaWJ1bGxldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ZpbGxlZHJlY3RidWxs ZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGZpbGxlZHJlY3RidWxsZXQ7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9maWxsZWRyaWdodHRyaWJ1bGxldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZmlsbGVk cmlnaHR0cmlidWxsZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9maWxsZWR0cmlidWxsZXRkb3duIildCisr CQlwdWJsaWMgY29uc3QgdWludCBmaWxsZWR0cmlidWxsZXRkb3duOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf ZmlsbGVkdHJpYnVsbGV0dXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGZpbGxlZHRyaWJ1bGxl dHVwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfZml2ZWVpZ2h0aHMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGZpdmVlaWdodGhzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZml2ZXNpeHRocyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgZml2ZXNpeHRoczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ZpdmVzdWJzY3JpcHQiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGZpdmVzdWJzY3JpcHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9maXZlc3Vw ZXJpb3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGZpdmVzdXBlcmlvcjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2ZvdXJmaWZ0aHMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGZvdXJmaWZ0aHM7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9mb3Vyc3Vic2NyaXB0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBmb3Vyc3Vi c2NyaXB0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZm91cnN1cGVyaW9yIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBmb3Vyc3VwZXJpb3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9mb3VydGhyb290IildCisrCQlwdWJs aWMgY29uc3QgdWludCBmb3VydGhyb290OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZnVuY3Rpb24iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGZ1bmN0aW9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2dhYm92ZWRvdCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgZ2Fib3ZlZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZ2JyZXZlIildCisrCQlwdWJs aWMgY29uc3QgdWludCBnYnJldmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9nY2Fyb24iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGdjYXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2djZWRpbGxhIildCisrCQlwdWJs aWMgY29uc3QgdWludCBnY2VkaWxsYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2djaXJjdW1mbGV4IildCisr CQlwdWJsaWMgY29uc3QgdWludCBnY2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2dyYXZlIild CisrCQlwdWJsaWMgY29uc3QgdWludCBncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2dyZWF0ZXIiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGdyZWF0ZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ncmVhdGVydGhh bmVxdWFsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBncmVhdGVydGhhbmVxdWFsOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfZ3VpbGxlbW90bGVmdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZ3VpbGxlbW90 bGVmdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2d1aWxsZW1vdHJpZ2h0IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBndWlsbGVtb3RyaWdodDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2giKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oYWlyc3BhY2UiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGhhaXJzcGFjZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hjaXJjdW1mbGV4IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBoY2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYXJ0IildCisrCQlwdWJs aWMgY29uc3QgdWludCBoZWFydDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19hbGVwaCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgaGVicmV3X2FsZXBoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X2F5 aW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19heWluOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf aGVicmV3X2JldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X2JldDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2hlYnJld19iZXRoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfYmV0aDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2hlYnJld19jaGV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJy ZXdfY2hldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19kYWxldCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgaGVicmV3X2RhbGV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X2RhbGV0aCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgaGVicmV3X2RhbGV0aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19k b3VibGVsb3dsaW5lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfZG91YmxlbG93bGlu ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19maW5hbGthcGgiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGhlYnJld19maW5hbGthcGg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfZmluYWxtZW0iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19maW5hbG1lbTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hl YnJld19maW5hbG51biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X2ZpbmFsbnVuOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfaGVicmV3X2ZpbmFscGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhl YnJld19maW5hbHBlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X2ZpbmFsemFkZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgaGVicmV3X2ZpbmFsemFkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19m aW5hbHphZGkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19maW5hbHphZGk7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9oZWJyZXdfZ2ltZWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19n aW1lbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19naW1tZWwiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGhlYnJld19naW1tZWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfaGUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGhlYnJld19oZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19oZXQiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19oZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfa2Fw aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X2thcGg7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9o ZWJyZXdfa3VmIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfa3VmOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfaGVicmV3X2xhbWVkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfbGFtZWQ7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfbWVtIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJy ZXdfbWVtOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X251biIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgaGVicmV3X251bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19wZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgaGVicmV3X3BlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X3FvcGgiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGhlYnJld19xb3BoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X3Jlc2gi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19yZXNoOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVi cmV3X3NhbWVjaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X3NhbWVjaDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2hlYnJld19zYW1la2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19z YW1la2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfc2hpbiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgaGVicmV3X3NoaW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfdGFmIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBoZWJyZXdfdGFmOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X3RhdyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgaGVicmV3X3RhdzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld190ZXQi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld190ZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJy ZXdfdGV0aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X3RldGg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9oZWJyZXdfd2F3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfd2F3OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfaGVicmV3X3lvZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X3lv ZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2hlYnJld196YWRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBo ZWJyZXdfemFkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld196YWRpIildCisrCQlwdWJsaWMgY29u c3QgdWludCBoZWJyZXdfemFkaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld196YWluIildCisrCQlw dWJsaWMgY29uc3QgdWludCBoZWJyZXdfemFpbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld196YXlp biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X3pheWluOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf aGV4YWdyYW0iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhleGFncmFtOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfaG9yaXpjb25uZWN0b3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhvcml6Y29ubmVjdG9y OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfaG9yaXpsaW5lc2NhbjEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGhvcml6bGluZXNjYW4xOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaG9yaXpsaW5lc2NhbjMiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGhvcml6bGluZXNjYW4zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaG9yaXpsaW5l c2NhbjUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhvcml6bGluZXNjYW41OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfaG9yaXpsaW5lc2NhbjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhvcml6bGluZXNj YW43OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfaG9yaXpsaW5lc2NhbjkiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGhvcml6bGluZXNjYW45OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaHN0cm9rZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgaHN0cm9rZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2h0IildCisrCQlwdWJsaWMgY29u c3QgdWludCBodDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2h5cGhlbiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgaHlwaGVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2lUb3VjaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaVRvdWNoOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfaWFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBpYWN1dGU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9pYmVsb3dkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGliZWxvd2Rv dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2licmV2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaWJyZXZl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfaWNpcmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGlj aXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaWRlbnRpY2FsIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBpZGVudGljYWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pZGlhZXJlc2lzIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBpZGlhZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaWRvdGxlc3MiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGlkb3RsZXNzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaWZvbmx5aWYiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGlmb25seWlmOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaWdyYXZlIildCisr CQlwdWJsaWMgY29uc3QgdWludCBpZ3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9paG9vayIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgaWhvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pbWFjcm9uIildCisrCQlw dWJsaWMgY29uc3QgdWludCBpbWFjcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaW1wbGllcyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgaW1wbGllczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2luY2x1ZGVkaW4iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGluY2x1ZGVkaW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pbmNsdWRl cyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaW5jbHVkZXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pbmZp bml0eSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaW5maW5pdHk7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9p bnRlZ3JhbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaW50ZWdyYWw7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9pbnRlcnNlY3Rpb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGludGVyc2VjdGlvbjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2lvZ29uZWsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGlvZ29uZWs7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9pdGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGl0aWxkZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2oiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGo7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9qY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgamNpcmN1bWZsZXg7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9qb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGpvdDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGs7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX0Ei KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfQ0hJ IildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX0NISTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFf RSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9FOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9G VSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9GVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFf SEEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfSEE7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5h X0hFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX0hFOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2Fu YV9ISSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9ISTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2th bmFfSE8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfSE87CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9r YW5hX0hVIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX0hVOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf a2FuYV9JIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX0k7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9r YW5hX0tBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX0tBOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf a2FuYV9LRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9LRTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2thbmFfS0kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfS0k7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9rYW5hX0tPIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX0tPOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfa2FuYV9LVSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9LVTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2thbmFfTUEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfTUE7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9rYW5hX01FIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX01FOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfa2FuYV9NSSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9NSTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2thbmFfTU8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfTU87CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9rYW5hX01VIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX01VOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfa2FuYV9OIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX047CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9rYW5hX05BIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX05BOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfa2FuYV9ORSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9ORTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2thbmFfTkkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfTkk7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9rYW5hX05PIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX05POworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfa2FuYV9OVSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9OVTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2thbmFfTyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9POworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfa2FuYV9SQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9SQTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2thbmFfUkUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfUkU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9rYW5hX1JJIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1JJOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfa2FuYV9STyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9STzsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2thbmFfUlUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfUlU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9rYW5hX1NBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1NB OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9TRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9T RTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2thbmFfU0hJIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5h X1NISTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfU08iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGth bmFfU087CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX1NVIildCisrCQlwdWJsaWMgY29uc3QgdWludCBr YW5hX1NVOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9UQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg a2FuYV9UQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfVEUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGthbmFfVEU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX1RJIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBrYW5hX1RJOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9UTyIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQga2FuYV9UTzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfVFNVIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBrYW5hX1RTVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfVFUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGthbmFfVFU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX1UiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGthbmFfVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfV0EiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGthbmFfV0E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX1dPIildCisrCQlwdWJsaWMgY29u c3QgdWludCBrYW5hX1dPOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9ZQSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQga2FuYV9ZQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfWU8iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGthbmFfWU87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX1lVIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBrYW5hX1lVOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9hIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBrYW5hX2E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX2Nsb3NpbmdicmFja2V0Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX2Nsb3NpbmdicmFja2V0OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfa2FuYV9jb21tYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9jb21tYTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2thbmFfY29uanVuY3RpdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFf Y29uanVuY3RpdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX2UiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGthbmFfZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfZnVsbHN0b3AiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGthbmFfZnVsbHN0b3A7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX2kiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGthbmFfaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfbWlkZGxlZG90Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX21pZGRsZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2th bmFfbyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9vOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2Fu YV9vcGVuaW5nYnJhY2tldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9vcGVuaW5nYnJh Y2tldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfc3dpdGNoIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBrYW5hX3N3aXRjaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfdHN1IildCisrCQlwdWJsaWMgY29u c3QgdWludCBrYW5hX3RzdTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfdHUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGthbmFfdHU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX3UiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGthbmFfdTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfeWEiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGthbmFfeWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX3lvIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBrYW5hX3lvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV95dSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQga2FuYV95dTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thcHBhIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBrYXBwYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2tjZWRpbGxhIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBrY2VkaWxsYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2tyYSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQga3JhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg bDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2xhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbGFjdXRl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfbGF0aW5jcm9zcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbGF0 aW5jcm9zczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xiZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgbGJlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbGNhcm9uIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBsY2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sY2VkaWxsYSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgbGNlZGlsbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sZWZ0YW5nbGVicmFja2V0IildCisrCQlw dWJsaWMgY29uc3QgdWludCBsZWZ0YW5nbGVicmFja2V0OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbGVmdGFy cm93IildCisrCQlwdWJsaWMgY29uc3QgdWludCBsZWZ0YXJyb3c7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9s ZWZ0Y2FyZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxlZnRjYXJldDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2xlZnRkb3VibGVxdW90ZW1hcmsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxlZnRkb3Vi bGVxdW90ZW1hcms7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sZWZ0bWlkZGxlY3VybHlicmFjZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgbGVmdG1pZGRsZWN1cmx5YnJhY2U7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9s ZWZ0b3BlbnRyaWFuZ2xlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBsZWZ0b3BlbnRyaWFuZ2xl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfbGVmdHBvaW50ZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxl ZnRwb2ludGVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbGVmdHJhZGljYWwiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGxlZnRyYWRpY2FsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbGVmdHNob2UiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGxlZnRzaG9lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbGVmdHNpbmdsZXF1b3RlbWFy ayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbGVmdHNpbmdsZXF1b3RlbWFyazsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2xlZnR0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBsZWZ0dDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2xlZnR0YWNrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBsZWZ0dGFjazsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2xlc3MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxlc3M7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9sZXNzdGhhbmVxdWFsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBsZXNzdGhhbmVxdWFsOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfbGYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxmOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfbG9naWNhbGFuZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbG9naWNhbGFuZDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2xvZ2ljYWxvciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbG9naWNhbG9y OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfbG93bGVmdGNvcm5lciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg bG93bGVmdGNvcm5lcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xvd3JpZ2h0Y29ybmVyIildCisrCQlwdWJs aWMgY29uc3QgdWludCBsb3dyaWdodGNvcm5lcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xzdHJva2UiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGxzdHJva2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9tIildCisrCQlw dWJsaWMgY29uc3QgdWludCBtOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbWFib3ZlZG90IildCisrCQlwdWJs aWMgY29uc3QgdWludCBtYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9tYWNyb24iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IG1hY3JvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX21hbGVzeW1ib2wiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IG1hbGVzeW1ib2w7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9tYWx0ZXNlY3Jv c3MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG1hbHRlc2Vjcm9zczsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X21hcmtlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbWFya2VyOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf bWFzY3VsaW5lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBtYXNjdWxpbmU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9taW51cyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbWludXM7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9taW51dGVzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBtaW51dGVzOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfbXUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG11OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbXVsdGlw bHkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG11bHRpcGx5OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbXVz aWNhbGZsYXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG11c2ljYWxmbGF0OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfbXVzaWNhbHNoYXJwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBtdXNpY2Fsc2hhcnA7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBuOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfbmFibGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG5hYmxhOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfbmFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBuYWN1dGU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9uY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG5jYXJvbjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X25jZWRpbGxhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBuY2VkaWxsYTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX25pbmVzdWJzY3JpcHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG5pbmVzdWJzY3JpcHQ7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9uaW5lc3VwZXJpb3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG5p bmVzdXBlcmlvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX25sIildCisrCQlwdWJsaWMgY29uc3QgdWludCBu bDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX25vYnJlYWtzcGFjZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg bm9icmVha3NwYWNlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbm90YXBwcm94ZXEiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IG5vdGFwcHJveGVxOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbm90ZWxlbWVudG9mIildCisr CQlwdWJsaWMgY29uc3QgdWludCBub3RlbGVtZW50b2Y7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ub3RlcXVh bCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbm90ZXF1YWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ub3Rp ZGVudGljYWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG5vdGlkZW50aWNhbDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX25vdHNpZ24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG5vdHNpZ247CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9udGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG50aWxkZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX251bWJlcnNpZ24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG51bWJlcnNpZ247Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9udW1lcm9zaWduIildCisrCQlwdWJsaWMgY29uc3QgdWludCBudW1lcm9z aWduOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfbyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbzsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX29hY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2FjdXRlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfb2JhcnJlZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2JhcnJlZDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX29iZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2JlbG93ZG90Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfb2Nhcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvY2Fyb247Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9vY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2NpcmN1 bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vY2lyY3VtZmxleGFjdXRlIildCisrCQlwdWJsaWMgY29u c3QgdWludCBvY2lyY3VtZmxleGFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb2NpcmN1bWZsZXhiZWxv d2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2NpcmN1bWZsZXhiZWxvd2RvdDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX29jaXJjdW1mbGV4Z3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9jaXJj dW1mbGV4Z3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vY2lyY3VtZmxleGhvb2siKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IG9jaXJjdW1mbGV4aG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29jaXJjdW1mbGV4 dGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9jaXJjdW1mbGV4dGlsZGU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9vZGlhZXJlc2lzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvZGlhZXJlc2lzOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfb2RvdWJsZWFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvZG91 YmxlYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2U7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9vZ29uZWsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9nb25lazsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX29ncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2dyYXZlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfb2hvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9ob29rOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfb2hvcm4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9ob3JuOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfb2hvcm5hY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2hvcm5hY3V0ZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX29ob3JuYmVsb3dkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9o b3JuYmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vaG9ybmdyYXZlIildCisrCQlwdWJsaWMgY29u c3QgdWludCBvaG9ybmdyYXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb2hvcm5ob29rIildCisrCQlwdWJs aWMgY29uc3QgdWludCBvaG9ybmhvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vaG9ybnRpbGRlIildCisr CQlwdWJsaWMgY29uc3QgdWludCBvaG9ybnRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb21hY3JvbiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgb21hY3JvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29uZWVpZ2h0 aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb25lZWlnaHRoOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb25l ZmlmdGgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9uZWZpZnRoOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf b25laGFsZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb25laGFsZjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X29uZXF1YXJ0ZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9uZXF1YXJ0ZXI7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9vbmVzaXh0aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb25lc2l4dGg7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9vbmVzdWJzY3JpcHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9uZXN1YnNj cmlwdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX29uZXN1cGVyaW9yIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBvbmVzdXBlcmlvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29uZXRoaXJkIildCisrCQlwdWJsaWMgY29u c3QgdWludCBvbmV0aGlyZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29vYmxpcXVlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBvb2JsaXF1ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29wZW5yZWN0YnVsbGV0IildCisr CQlwdWJsaWMgY29uc3QgdWludCBvcGVucmVjdGJ1bGxldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29wZW5z dGFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvcGVuc3RhcjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29w ZW50cmlidWxsZXRkb3duIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvcGVudHJpYnVsbGV0ZG93 bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX29wZW50cmlidWxsZXR1cCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgb3BlbnRyaWJ1bGxldHVwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb3JkZmVtaW5pbmUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IG9yZGZlbWluaW5lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb3NsYXNoIildCisr CQlwdWJsaWMgY29uc3QgdWludCBvc2xhc2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vdGlsZGUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IG90aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX292ZXJiYXIiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IG92ZXJiYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vdmVybGluZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgb3ZlcmxpbmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9wIildCisrCQlw dWJsaWMgY29uc3QgdWludCBwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcGFib3ZlZG90IildCisrCQlwdWJs aWMgY29uc3QgdWludCBwYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9wYXJhZ3JhcGgiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IHBhcmFncmFwaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3BhcmVubGVmdCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgcGFyZW5sZWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcGFyZW5y aWdodCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcGFyZW5yaWdodDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X3BhcnRkaWZmZXJlbnRpYWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHBhcnRkaWZmZXJlbnRp YWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9wYXJ0aWFsZGVyaXZhdGl2ZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgcGFydGlhbGRlcml2YXRpdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9wZXJjZW50IildCisrCQlw dWJsaWMgY29uc3QgdWludCBwZXJjZW50OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcGVyaW9kIildCisrCQlw dWJsaWMgY29uc3QgdWludCBwZXJpb2Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9wZXJpb2RjZW50ZXJlZCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgcGVyaW9kY2VudGVyZWQ7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9w ZXJtaWxsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcGVybWlsbGU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9waG9ub2dyYXBoY29weXJpZ2h0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBwaG9ub2dyYXBo Y29weXJpZ2h0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcGx1cyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg cGx1czsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX3BsdXNtaW51cyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg cGx1c21pbnVzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcHJlc2NyaXB0aW9uIildCisrCQlwdWJsaWMgY29u c3QgdWludCBwcmVzY3JpcHRpb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9wcm9sb25nZWRzb3VuZCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgcHJvbG9uZ2Vkc291bmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9wdW5j dHNwYWNlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBwdW5jdHNwYWNlOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfcSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3F1YWQiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IHF1YWQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9xdWVzdGlvbiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgcXVlc3Rpb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9xdWVzdGlvbmRv d24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHF1ZXN0aW9uZG93bjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X3F1b3RlZGJsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBxdW90ZWRibDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX3F1b3RlbGVmdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcXVvdGVsZWZ0OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfcXVvdGVyaWdodCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcXVvdGVyaWdodDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHI7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9yYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHJhY3V0ZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX3JhZGljYWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHJhZGljYWw7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9yY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHJjYXJvbjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX3JjZWRpbGxhIildCisrCQlwdWJsaWMgY29uc3QgdWludCByY2VkaWxsYTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX3JlZ2lzdGVyZWQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHJlZ2lzdGVyZWQ7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9yaWdodGFuZ2xlYnJhY2tldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg cmlnaHRhbmdsZWJyYWNrZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9yaWdodGFycm93IildCisrCQlwdWJs aWMgY29uc3QgdWludCByaWdodGFycm93OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcmlnaHRjYXJldCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgcmlnaHRjYXJldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3JpZ2h0ZG91 YmxlcXVvdGVtYXJrIildCisrCQlwdWJsaWMgY29uc3QgdWludCByaWdodGRvdWJsZXF1b3RlbWFy azsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX3JpZ2h0bWlkZGxlY3VybHlicmFjZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgcmlnaHRtaWRkbGVjdXJseWJyYWNlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcmlnaHRtaWRk bGVzdW1tYXRpb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHJpZ2h0bWlkZGxlc3VtbWF0aW9u OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfcmlnaHRvcGVudHJpYW5nbGUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IHJpZ2h0b3BlbnRyaWFuZ2xlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcmlnaHRwb2ludGVyIildCisr CQlwdWJsaWMgY29uc3QgdWludCByaWdodHBvaW50ZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9yaWdodHNo b2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHJpZ2h0c2hvZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Jp Z2h0c2luZ2xlcXVvdGVtYXJrIildCisrCQlwdWJsaWMgY29uc3QgdWludCByaWdodHNpbmdsZXF1 b3RlbWFyazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3JpZ2h0dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg cmlnaHR0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcmlnaHR0YWNrIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCByaWdodHRhY2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zIildCisrCQlwdWJsaWMgY29uc3QgdWludCBz OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfc2Fib3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBzYWJv dmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNh Y3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX3NjYXJvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc2Nh cm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfc2NlZGlsbGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNj ZWRpbGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc2Nod2EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNj aHdhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfc2NpcmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IHNjaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc2NyaXB0X3N3aXRjaCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgc2NyaXB0X3N3aXRjaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3NlY29uZHMiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IHNlY29uZHM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zZWN0aW9uIildCisr CQlwdWJsaWMgY29uc3QgdWludCBzZWN0aW9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc2VtaWNvbG9uIild CisrCQlwdWJsaWMgY29uc3QgdWludCBzZW1pY29sb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zZW1pdm9p Y2Vkc291bmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNlbWl2b2ljZWRzb3VuZDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX3NldmVuZWlnaHRocyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc2V2ZW5laWdo dGhzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfc2V2ZW5zdWJzY3JpcHQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IHNldmVuc3Vic2NyaXB0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc2V2ZW5zdXBlcmlvciIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgc2V2ZW5zdXBlcmlvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3NpZ25hdHVy ZW1hcmsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNpZ25hdHVyZW1hcms7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9zaWduaWZibGFuayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc2lnbmlmYmxhbms7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9zaW1pbGFyZXF1YWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNpbWls YXJlcXVhbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3NpbmdsZWxvd3F1b3RlbWFyayIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgc2luZ2xlbG93cXVvdGVtYXJrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc2l4c3Vic2Ny aXB0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBzaXhzdWJzY3JpcHQ7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9zaXhzdXBlcmlvciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc2l4c3VwZXJpb3I7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9zbGFzaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc2xhc2g7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9zb2xpZGRpYW1vbmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNvbGlkZGlhbW9u ZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX3NwYWNlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBzcGFjZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX3NxdWFyZXJvb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNxdWFy ZXJvb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zc2hhcnAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNz aGFycDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX3N0ZXJsaW5nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBz dGVybGluZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3N0cmljdGVxIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBzdHJpY3RlcTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHQ7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV90YWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRhYm92 ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX3RjYXJvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdGNh cm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfdGNlZGlsbGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRj ZWRpbGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdGVsZXBob25lIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCB0ZWxlcGhvbmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90ZWxlcGhvbmVyZWNvcmRlciIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgdGVsZXBob25lcmVjb3JkZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90aGVyZWZv cmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRoZXJlZm9yZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Ro aW5zcGFjZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdGhpbnNwYWNlOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfdGhvcm4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRob3JuOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf dGhyZWVlaWdodGhzIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0aHJlZWVpZ2h0aHM7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV90aHJlZWZpZnRocyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdGhyZWVmaWZ0 aHM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV90aHJlZXF1YXJ0ZXJzIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCB0aHJlZXF1YXJ0ZXJzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdGhyZWVzdWJzY3JpcHQiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IHRocmVlc3Vic2NyaXB0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdGhyZWVzdXBl cmlvciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdGhyZWVzdXBlcmlvcjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX3RpbnRlZ3JhbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdGludGVncmFsOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfdG9waW50ZWdyYWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRvcGludGVncmFs OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfdG9wbGVmdHBhcmVucyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg dG9wbGVmdHBhcmVuczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3RvcGxlZnRyYWRpY2FsIildCisrCQlwdWJs aWMgY29uc3QgdWludCB0b3BsZWZ0cmFkaWNhbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3RvcGxlZnRzcWJy YWNrZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRvcGxlZnRzcWJyYWNrZXQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV90b3BsZWZ0c3VtbWF0aW9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0b3BsZWZ0 c3VtbWF0aW9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdG9wcmlnaHRwYXJlbnMiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IHRvcHJpZ2h0cGFyZW5zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdG9wcmlnaHRzcWJyYWNr ZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRvcHJpZ2h0c3FicmFja2V0OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfdG9wcmlnaHRzdW1tYXRpb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRvcHJpZ2h0 c3VtbWF0aW9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdG9wdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg dG9wdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX3RvcHZlcnRzdW1tYXRpb25jb25uZWN0b3IiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IHRvcHZlcnRzdW1tYXRpb25jb25uZWN0b3I7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV90cmFkZW1hcmsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRyYWRlbWFyazsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX3RyYWRlbWFya2luY2lyY2xlIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0cmFkZW1h cmtpbmNpcmNsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3RzbGFzaCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgdHNsYXNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdHdvZmlmdGhzIildCisrCQlwdWJsaWMgY29uc3Qg dWludCB0d29maWZ0aHM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90d29zdWJzY3JpcHQiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IHR3b3N1YnNjcmlwdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3R3b3N1cGVyaW9yIild CisrCQlwdWJsaWMgY29uc3QgdWludCB0d29zdXBlcmlvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3R3b3Ro aXJkcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdHdvdGhpcmRzOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf dSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3VhY3V0ZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgdWFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdWJlbG93ZG90Iild CisrCQlwdWJsaWMgY29uc3QgdWludCB1YmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91YnJldmUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVicmV2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3VjaXJjdW1m bGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCB1Y2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X3VkaWFlcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVkaWFlcmVzaXM7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV91ZG91YmxlYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVkb3VibGVhY3V0 ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX3VncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdWdyYXZl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfdWhvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVob29rOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfdWhvcm4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVob3JuOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfdWhvcm5hY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdWhvcm5hY3V0 ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX3Vob3JuYmVsb3dkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IHVob3JuYmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91aG9ybmdyYXZlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCB1aG9ybmdyYXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdWhvcm5ob29rIildCisrCQlw dWJsaWMgY29uc3QgdWludCB1aG9ybmhvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91aG9ybnRpbGRlIild CisrCQlwdWJsaWMgY29uc3QgdWludCB1aG9ybnRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdW1hY3Jv biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdW1hY3JvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3VuZGVy YmFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCB1bmRlcmJhcjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Vu ZGVyc2NvcmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVuZGVyc2NvcmU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV91bmlvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdW5pb247CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV91b2dvbmVrIildCisrCQlwdWJsaWMgY29uc3QgdWludCB1b2dvbmVrOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfdXBhcnJvdyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdXBhcnJvdzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX3VwY2FyZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVwY2FyZXQ7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV91cGxlZnRjb3JuZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVwbGVmdGNvcm5lcjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX3VwcmlnaHRjb3JuZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVw cmlnaHRjb3JuZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91cHNob2UiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IHVwc2hvZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Vwc3RpbGUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IHVwc3RpbGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91cHRhY2siKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IHVwdGFjazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3VyaW5nIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCB1cmluZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3V0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg dXRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX3ZhcmlhdGlvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdmFyaWF0aW9u OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfdmVydGJhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdmVydGJh cjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX3ZlcnRjb25uZWN0b3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IHZlcnRjb25uZWN0b3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV92b2ljZWRzb3VuZCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgdm9pY2Vkc291bmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV92dCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgdnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV93IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCB3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfd2FjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCB3YWN1 dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV93Y2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg d2NpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV93ZGlhZXJlc2lzIildCisrCQlwdWJsaWMgY29u c3QgdWludCB3ZGlhZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfd2dyYXZlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCB3Z3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV94IildCisrCQlwdWJsaWMgY29uc3Qg dWludCB4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfeGFib3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCB4YWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV95IildCisrCQlwdWJsaWMgY29uc3QgdWludCB5 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfeWFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCB5YWN1dGU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV95YmVsb3dkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHliZWxv d2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX3ljaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCB5Y2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3lkaWFlcmVzaXMiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IHlkaWFlcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV95ZW4iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IHllbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3lncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgeWdyYXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfeWhvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IHlob29rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfeXRpbGRlIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCB5dGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV96IildCisrCQlwdWJsaWMgY29uc3QgdWludCB6Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfemFib3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCB6YWJvdmVk b3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV96YWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHphY3V0 ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX3pjYXJvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgemNhcm9u OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfemVyb3N1YnNjcmlwdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg emVyb3N1YnNjcmlwdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3plcm9zdXBlcmlvciIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgemVyb3N1cGVyaW9yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfenN0cm9rZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgenN0cm9rZTsKKysJfQorKwluYW1lc3BhY2UgVGhyZWFkcyB7Cisr CQluYW1lc3BhY2UgSWRsZSB7CisrCQkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiY2x1dHRlcl90aHJlYWRzX2FkZF9pZGxlIildCisrCQkJ W1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwkJCXB1YmxpYyBzdGF0aWMgdWludCBhZGQgKEdM aWIuU291cmNlRnVuYyBmdW5jKTsKKysJCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJjbHV0dGVyX3RocmVhZHNfYWRkX2lkbGVfZnVsbCIp XQorKwkJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJCQlwdWJsaWMgc3RhdGljIHVpbnQg YWRkX2Z1bGwgKGludCBwcmlvcml0eSwgb3duZWQgR0xpYi5Tb3VyY2VGdW5jIGZ1bmMpOworKwkJ fQorKwkJbmFtZXNwYWNlIFRpbWVvdXQgeworKwkJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gImNsdXR0ZXJfdGhyZWFkc19hZGRfdGltZW91 dCIpXQorKwkJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJCQlwdWJsaWMgc3RhdGljIHVp bnQgYWRkICh1aW50IGludGVydmFsLCBHTGliLlNvdXJjZUZ1bmMgZnVuYyk7CisrCQkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiY2x1dHRl cl90aHJlYWRzX2FkZF90aW1lb3V0X2Z1bGwiKV0KKysJCQlbVmVyc2lvbiAoc2luY2UgPSAiMC40 IildCisrCQkJcHVibGljIHN0YXRpYyB1aW50IGFkZF9mdWxsIChpbnQgcHJpb3JpdHksIHVpbnQg aW50ZXJ2YWwsIG93bmVkIEdMaWIuU291cmNlRnVuYyBmdW5jKTsKKysJCX0KKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyB1aW50IGFkZF9yZXBhaW50X2Z1bmMgKG93 bmVkIEdMaWIuU291cmNlRnVuYyBmdW5jKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyBzdGF0aWMgdWludCBhZGRfcmVwYWludF9mdW5jX2Z1bGwgKENsdXR0ZXIuUmVwYWlu dEZsYWdzIGZsYWdzLCBvd25lZCBHTGliLlNvdXJjZUZ1bmMgZnVuYyk7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCByZW1vdmVfcmVwYWludF9mdW5jICh1 aW50IGhhbmRsZV9pZCk7CisrCX0KKysJbmFtZXNwYWNlIFZhbHVlIHsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTAiKV0KKysJCXB1YmxpYyBzdGF0aWMgQ2x1dHRlci5QYWludE5vZGUgZHVwX3BhaW50 X25vZGUgKEdMaWIuVmFsdWUgdmFsdWUpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlw dWJsaWMgc3RhdGljIHVub3duZWQgQ2x1dHRlci5Db2xvcj8gZ2V0X2NvbG9yIChHTGliLlZhbHVl IHZhbHVlKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5v d25lZCBDbHV0dGVyLlBhaW50Tm9kZSBnZXRfcGFpbnRfbm9kZSAoR0xpYi5WYWx1ZSB2YWx1ZSk7 CisrCQlbQ0NvZGUgKGFycmF5X2xlbmd0aF9wb3MgPSAxLjEsIGFycmF5X2xlbmd0aF90eXBlID0g ImdzaXplIiwgY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwkJW1Zl cnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIGZsb2F0W10g Z2V0X3NoYWRlcl9mbG9hdCAoR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlbQ0NvZGUgKGFycmF5X2xl bmd0aF9wb3MgPSAxLjEsIGFycmF5X2xlbmd0aF90eXBlID0gImdzaXplIiwgY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIp XQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIGludFtdIGdldF9zaGFkZXJfaW50IChHTGliLlZh bHVlIHZhbHVlKTsKKysJCVtDQ29kZSAoYXJyYXlfbGVuZ3RoX3BvcyA9IDEuMSwgYXJyYXlfbGVu Z3RoX3R5cGUgPSAiZ3NpemUiLCBjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgc3RhdGljIHVub3du ZWQgZmxvYXRbXSBnZXRfc2hhZGVyX21hdHJpeCAoR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJCVtWZXJzaW9u IChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLlVuaXRz PyBnZXRfdW5pdHMgKEdMaWIuVmFsdWUgdmFsdWUpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44Iild CisrCQlwdWJsaWMgc3RhdGljIHZvaWQgc2V0X2NvbG9yIChHTGliLlZhbHVlIHZhbHVlLCBDbHV0 dGVyLkNvbG9yIGNvbG9yKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBz dGF0aWMgdm9pZCBzZXRfcGFpbnRfbm9kZSAoR0xpYi5WYWx1ZSB2YWx1ZSwgQ2x1dHRlci5QYWlu dE5vZGU/IG5vZGUpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgc3RhdGlj IHZvaWQgc2V0X3NoYWRlcl9mbG9hdCAoR0xpYi5WYWx1ZSB2YWx1ZSwgW0NDb2RlIChhcnJheV9s ZW5ndGhfY25hbWUgPSAic2l6ZSIsIGFycmF5X2xlbmd0aF9wb3MgPSAxLjUpXSBmbG9hdFtdIGZs b2F0cyk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi KV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBz ZXRfc2hhZGVyX2ludCAoR0xpYi5WYWx1ZSB2YWx1ZSwgW0NDb2RlIChhcnJheV9sZW5ndGhfY25h bWUgPSAic2l6ZSIsIGFycmF5X2xlbmd0aF9wb3MgPSAxLjUpXSBpbnRbXSBpbnRzKTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwkJW1ZlcnNp b24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHN0YXRpYyB2b2lkIHNldF9zaGFkZXJfbWF0 cml4IChHTGliLlZhbHVlIHZhbHVlLCBbQ0NvZGUgKGFycmF5X2xlbmd0aF9jbmFtZSA9ICJzaXpl IiwgYXJyYXlfbGVuZ3RoX3BvcyA9IDEuNSldIGZsb2F0W10gbWF0cml4KTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwkJW1ZlcnNpb24gKHNp bmNlID0gIjAuOCIpXQorKwkJcHVibGljIHN0YXRpYyB2b2lkIHNldF91bml0cyAoR0xpYi5WYWx1 ZSB2YWx1ZSwgQ2x1dHRlci5Vbml0cyB1bml0cyk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIild CisrCQlwdWJsaWMgc3RhdGljIHZvaWQgdGFrZV9wYWludF9ub2RlIChHTGliLlZhbHVlIHZhbHVl LCBDbHV0dGVyLlBhaW50Tm9kZT8gbm9kZSk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2FjdGlvbl9nZXRf dHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBhYnN0cmFj dCBjbGFzcyBBY3Rpb24gOiBDbHV0dGVyLkFjdG9yTWV0YSB7CisrCQlbQ0NvZGUgKGhhc19jb25z dHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgQWN0aW9uICgpOworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQg PSAiY2x1dHRlcl9hY3Rvcl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgQWN0b3IgOiBH TGliLkluaXRpYWxseVVub3duZWQsIEF0ay5JbXBsZW1lbnRvciwgQ2x1dHRlci5BbmltYXRhYmxl LCBDbHV0dGVyLkNvbnRhaW5lciwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCXB1YmxpYyB1aW50 MzIgZmxhZ3M7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIEFjdG9yICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgYWRkX2FjdGlvbiAoQ2x1dHRl ci5BY3Rpb24gYWN0aW9uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1Ymxp YyB2b2lkIGFkZF9hY3Rpb25fd2l0aF9uYW1lIChzdHJpbmcgbmFtZSwgQ2x1dHRlci5BY3Rpb24g YWN0aW9uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBh ZGRfY2hpbGQgKENsdXR0ZXIuQWN0b3IgY2hpbGQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu NCIpXQorKwkJcHVibGljIHZvaWQgYWRkX2NvbnN0cmFpbnQgKENsdXR0ZXIuQ29uc3RyYWludCBj b25zdHJhaW50KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lk IGFkZF9jb25zdHJhaW50X3dpdGhfbmFtZSAoc3RyaW5nIG5hbWUsIENsdXR0ZXIuQ29uc3RyYWlu dCBjb25zdHJhaW50KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2 b2lkIGFkZF9lZmZlY3QgKENsdXR0ZXIuRWZmZWN0IGVmZmVjdCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBhZGRfZWZmZWN0X3dpdGhfbmFtZSAoc3RyaW5n IG5hbWUsIENsdXR0ZXIuRWZmZWN0IGVmZmVjdCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MCIpXQorKwkJcHVibGljIHZvaWQgYWRkX3RyYW5zaXRpb24gKHN0cmluZyBuYW1lLCBDbHV0dGVy LlRyYW5zaXRpb24gdHJhbnNpdGlvbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisr CQlwdWJsaWMgdmlydHVhbCB2b2lkIGFsbG9jYXRlIChDbHV0dGVyLkFjdG9yQm94IGJveCwgQ2x1 dHRlci5BbGxvY2F0aW9uRmxhZ3MgZmxhZ3MpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIp XQorKwkJcHVibGljIHZvaWQgYWxsb2NhdGVfYWxpZ25fZmlsbCAoQ2x1dHRlci5BY3RvckJveCBi b3gsIGRvdWJsZSB4X2FsaWduLCBkb3VibGUgeV9hbGlnbiwgYm9vbCB4X2ZpbGwsIGJvb2wgeV9m aWxsLCBDbHV0dGVyLkFsbG9jYXRpb25GbGFncyBmbGFncyk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCBhbGxvY2F0ZV9hdmFpbGFibGVfc2l6ZSAoZmxvYXQg eCwgZmxvYXQgeSwgZmxvYXQgYXZhaWxhYmxlX3dpZHRoLCBmbG9hdCBhdmFpbGFibGVfaGVpZ2h0 LCBDbHV0dGVyLkFsbG9jYXRpb25GbGFncyBmbGFncyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MC44IildCisrCQlwdWJsaWMgdm9pZCBhbGxvY2F0ZV9wcmVmZXJyZWRfc2l6ZSAoQ2x1dHRlci5B bGxvY2F0aW9uRmxhZ3MgZmxhZ3MpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBk ZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93 bmVkIENsdXR0ZXIuQW5pbWF0aW9uIGFuaW1hdGUgKHVsb25nIG1vZGUsIHVpbnQgZHVyYXRpb24s IC4uLik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2Ug PSAiMS4xMiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5Bbmlt YXRpb24gYW5pbWF0ZV93aXRoX3RpbWVsaW5lICh1bG9uZyBtb2RlLCBDbHV0dGVyLlRpbWVsaW5l IHRpbWVsaW5lLCAuLi4pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGlj IHZvaWQgYXBwbHlfcmVsYXRpdmVfdHJhbnNmb3JtX3RvX3BvaW50IChDbHV0dGVyLkFjdG9yPyBh bmNlc3RvciwgR3JhcGhlbmUuUG9pbnQzRCBwb2ludCwgb3V0IHVub3duZWQgR3JhcGhlbmUuUG9p bnQzRCB2ZXJ0ZXgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgYXBw bHlfdHJhbnNmb3JtIChyZWYgQ2x1dHRlci5NYXRyaXggbWF0cml4KTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIwLjQiKV0KKysJCXB1YmxpYyB2b2lkIGFwcGx5X3RyYW5zZm9ybV90b19wb2ludCAo R3JhcGhlbmUuUG9pbnQzRCBwb2ludCwgb3V0IHVub3duZWQgR3JhcGhlbmUuUG9pbnQzRCB2ZXJ0 ZXgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjQiKV0KKysJCXB1YmxpYyB2b2lkIGJpbmRf bW9kZWwgKEdMaWIuTGlzdE1vZGVsPyBtb2RlbCwgb3duZWQgQ2x1dHRlci5BY3RvckNyZWF0ZUNo aWxkRnVuYyBjcmVhdGVfY2hpbGRfZnVuYyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40Iild CisrCQlwdWJsaWMgdm9pZCBjbGVhcl9hY3Rpb25zICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuNCIpXQorKwkJcHVibGljIHZvaWQgY2xlYXJfY29uc3RyYWludHMgKCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBjbGVhcl9lZmZlY3RzICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIGJvb2wgY29udGFpbnMgKENsdXR0 ZXIuQWN0b3IgZGVzY2VuZGFudCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlw dWJsaWMgdm9pZCBjb250aW51ZV9wYWludCAoQ2x1dHRlci5QYWludENvbnRleHQgcGFpbnRfY29u dGV4dCk7CisrCQlwdWJsaWMgdm9pZCBjb250aW51ZV9waWNrIChDbHV0dGVyLlBpY2tDb250ZXh0 IHBpY2tfY29udGV4dCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg UGFuZ28uQ29udGV4dCBjcmVhdGVfcGFuZ29fY29udGV4dCAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBQYW5nby5MYXlvdXQgY3JlYXRlX3BhbmdvX2xheW91dCAo c3RyaW5nPyB0ZXh0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMg dm9pZCBkZXN0cm95X2FsbF9jaGlsZHJlbiAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRl cl9hY3Rvcl9ldmVudCIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGlj IGJvb2wgZW1pdF9ldmVudCAoQ2x1dHRlci5FdmVudCBldmVudCwgYm9vbCBjYXB0dXJlKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9hYnNfYWxsb2Nh dGlvbl92ZXJ0aWNlcyAoW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIEdyYXBoZW5lLlBv aW50M0QgdmVydHNbNF0pOworKwkJcHVibGljIHZpcnR1YWwgdW5vd25lZCBBdGsuT2JqZWN0IGdl dF9hY2Nlc3NpYmxlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGlj IHVub3duZWQgQ2x1dHRlci5BY3Rpb24gZ2V0X2FjdGlvbiAoc3RyaW5nIG5hbWUpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIEdMaWIuTGlzdDx3ZWFrIENsdXR0ZXIu QWN0aW9uPiBnZXRfYWN0aW9ucyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJ CXB1YmxpYyBDbHV0dGVyLkFjdG9yQm94IGdldF9hbGxvY2F0aW9uX2JveCAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9hbGxvY2F0aW9uX3ZlcnRp Y2VzIChDbHV0dGVyLkFjdG9yPyBhbmNlc3RvciwgW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxz ZSldIEdyYXBoZW5lLlBvaW50M0QgdmVydHNbNF0pOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQg PSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyBDbHV0dGVyLkdyYXZpdHkgZ2V0X2FuY2hvcl9wb2ludF9ncmF2aXR5ICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIGdldF9iYWNr Z3JvdW5kX2NvbG9yICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX2dldF9hY3Rvcl9i eV9naWQiKV0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5j ZSA9ICIxLjgiLCBzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0 dGVyLkFjdG9yIGdldF9ieV9naWQgKHVpbnQzMiBpZF8pOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X2NoaWxkX2F0X2lu ZGV4IChpbnQgaW5kZXhfKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJs aWMgQ2x1dHRlci5NYXRyaXggZ2V0X2NoaWxkX3RyYW5zZm9ybSAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgR0xpYi5MaXN0PHdlYWsgQ2x1dHRlci5BY3Rvcj4g Z2V0X2NoaWxkcmVuICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGlj IHZvaWQgZ2V0X2NsaXAgKG91dCBmbG9hdCB4b2ZmLCBvdXQgZmxvYXQgeW9mZiwgb3V0IGZsb2F0 IHdpZHRoLCBvdXQgZmxvYXQgaGVpZ2h0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0K KysJCXB1YmxpYyBib29sIGdldF9jbGlwX3RvX2FsbG9jYXRpb24gKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkNvbnN0cmFpbnQgZ2V0 X2NvbnN0cmFpbnQgKHN0cmluZyBuYW1lKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0K KysJCXB1YmxpYyBHTGliLkxpc3Q8d2VhayBDbHV0dGVyLkNvbnN0cmFpbnQ+IGdldF9jb25zdHJh aW50cyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdW5vd25l ZCBDbHV0dGVyLkNvbnRlbnQgZ2V0X2NvbnRlbnQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMCIpXQorKwkJcHVibGljIENsdXR0ZXIuQWN0b3JCb3ggZ2V0X2NvbnRlbnRfYm94ICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbnRlbnRH cmF2aXR5IGdldF9jb250ZW50X2dyYXZpdHkgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MiIpXQorKwkJcHVibGljIENsdXR0ZXIuQ29udGVudFJlcGVhdCBnZXRfY29udGVudF9yZXBlYXQg KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgZ2V0X2Nv bnRlbnRfc2NhbGluZ19maWx0ZXJzIChvdXQgQ2x1dHRlci5TY2FsaW5nRmlsdGVyIG1pbl9maWx0 ZXIsIG91dCBDbHV0dGVyLlNjYWxpbmdGaWx0ZXIgbWFnX2ZpbHRlcik7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5QYWludFZvbHVtZSBn ZXRfZGVmYXVsdF9wYWludF92b2x1bWUgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRy dWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGZsb2F0IGdldF9kZXB0 aCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdWludCBnZXRf ZWFzaW5nX2RlbGF5ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1Ymxp YyB1aW50IGdldF9lYXNpbmdfZHVyYXRpb24gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MCIpXQorKwkJcHVibGljIENsdXR0ZXIuQW5pbWF0aW9uTW9kZSBnZXRfZWFzaW5nX21vZGUgKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVy LkVmZmVjdCBnZXRfZWZmZWN0IChzdHJpbmcgbmFtZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS40IildCisrCQlwdWJsaWMgR0xpYi5MaXN0PHdlYWsgQ2x1dHRlci5FZmZlY3Q+IGdldF9lZmZl Y3RzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1bm93bmVk IENsdXR0ZXIuQWN0b3IgZ2V0X2ZpcnN0X2NoaWxkICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjAuOCIpXQorKwkJcHVibGljIGJvb2wgZ2V0X2ZpeGVkX3Bvc2l0aW9uX3NldCAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFjdG9yRmxhZ3MgZ2V0 X2ZsYWdzICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX2FjdG9yX2hhc19wb2ludGVy IildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgYm9vbCBnZXRfaGFz X3BvaW50ZXIgKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X2hlaWdodCAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF9s YXN0X2NoaWxkICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1 bm93bmVkIENsdXR0ZXIuTGF5b3V0TWFuYWdlciBnZXRfbGF5b3V0X21hbmFnZXIgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgZ2V0X21hcmdpbiAoQ2x1 dHRlci5NYXJnaW4gbWFyZ2luKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlw dWJsaWMgZmxvYXQgZ2V0X21hcmdpbl9ib3R0b20gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF9tYXJnaW5fbGVmdCAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X21hcmdpbl9yaWdodCAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X21hcmdp bl90b3AgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGludCBn ZXRfbl9jaGlsZHJlbiAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfbmFtZSAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVy LkFjdG9yIGdldF9uZXh0X3NpYmxpbmcgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44Iild CisrCQlwdWJsaWMgQ2x1dHRlci5PZmZzY3JlZW5SZWRpcmVjdCBnZXRfb2Zmc2NyZWVuX3JlZGly ZWN0ICgpOworKwkJcHVibGljIHVpbnQ4IGdldF9vcGFjaXR5ICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMjIiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X29wYWNpdHlfb3ZlcnJpZGUgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgYm9vbCBnZXRfcGFpbnRfYm94 IChvdXQgQ2x1dHRlci5BY3RvckJveCBib3gpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIp XQorKwkJcHVibGljIHVpbnQ4IGdldF9wYWludF9vcGFjaXR5ICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjAuOCIpXQorKwkJcHVibGljIGJvb2wgZ2V0X3BhaW50X3Zpc2liaWxpdHkgKCk7Cisr CQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgYm9vbCBnZXRfcGFpbnRfdm9sdW1lIChD bHV0dGVyLlBhaW50Vm9sdW1lIHZvbHVtZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIild CisrCQlwdWJsaWMgdW5vd25lZCBQYW5nby5Db250ZXh0IGdldF9wYW5nb19jb250ZXh0ICgpOwor KwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3Rvcj8gZ2V0X3BhcmVudCAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBnZXRfcGl2b3RfcG9pbnQgKG91 dCBmbG9hdCBwaXZvdF94LCBvdXQgZmxvYXQgcGl2b3RfeSk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMiIpXQorKwkJcHVibGljIGZsb2F0IGdldF9waXZvdF9wb2ludF96ICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZvaWQgZ2V0X3Bvc2l0aW9uIChvdXQg ZmxvYXQgeCwgb3V0IGZsb2F0IHkpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJ cHVibGljIHZpcnR1YWwgdm9pZCBnZXRfcHJlZmVycmVkX2hlaWdodCAoZmxvYXQgZm9yX3dpZHRo LCBvdXQgZmxvYXQgbWluX2hlaWdodF9wLCBvdXQgZmxvYXQgbmF0dXJhbF9oZWlnaHRfcCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdm9pZCBnZXRfcHJlZmVycmVk X3NpemUgKG91dCBmbG9hdCBtaW5fd2lkdGhfcCwgb3V0IGZsb2F0IG1pbl9oZWlnaHRfcCwgb3V0 IGZsb2F0IG5hdHVyYWxfd2lkdGhfcCwgb3V0IGZsb2F0IG5hdHVyYWxfaGVpZ2h0X3ApOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBnZXRfcHJl ZmVycmVkX3dpZHRoIChmbG9hdCBmb3JfaGVpZ2h0LCBvdXQgZmxvYXQgbWluX3dpZHRoX3AsIG91 dCBmbG9hdCBuYXR1cmFsX3dpZHRoX3ApOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0K KysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X3ByZXZpb3VzX3NpYmxpbmcgKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgYm9vbCBnZXRfcmVhY3Rp dmUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgQ2x1dHRlci5S ZXF1ZXN0TW9kZSBnZXRfcmVxdWVzdF9tb2RlICgpOworKwkJcHVibGljIGJvb2wgZ2V0X3Jlc291 cmNlX3NjYWxlIChvdXQgZmxvYXQgcmVzb3VyY2Vfc2NhbGUpOworKwkJW1ZlcnNpb24gKGRlcHJl Y2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIwLjgiKV0K KysJCXB1YmxpYyBkb3VibGUgZ2V0X3JvdGF0aW9uIChDbHV0dGVyLlJvdGF0ZUF4aXMgYXhpcywg b3V0IGZsb2F0IHgsIG91dCBmbG9hdCB5LCBvdXQgZmxvYXQgeik7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGRvdWJsZSBnZXRfcm90YXRpb25fYW5nbGUgKENsdXR0 ZXIuUm90YXRlQXhpcyBheGlzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJCXB1 YmxpYyB2b2lkIGdldF9zY2FsZSAob3V0IGRvdWJsZSBzY2FsZV94LCBvdXQgZG91YmxlIHNjYWxl X3kpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0g IjEuMTIiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9zY2FsZV9jZW50ZXIg KG91dCBmbG9hdCBjZW50ZXJfeCwgb3V0IGZsb2F0IGNlbnRlcl95KTsKKysJCVtWZXJzaW9uIChk ZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgQ2x1dHRlci5HcmF2aXR5IGdldF9zY2FsZV9ncmF2aXR5ICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBkb3VibGUgZ2V0X3NjYWxlX3og KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCQlwdWJsaWMgdm9pZCBnZXRfc2l6 ZSAob3V0IGZsb2F0IHdpZHRoLCBvdXQgZmxvYXQgaGVpZ2h0KTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuU3RhZ2UgZ2V0X3N0YWdlICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIENsdXR0ZXIuVGV4dERp cmVjdGlvbiBnZXRfdGV4dF9kaXJlY3Rpb24gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MiIpXQorKwkJcHVibGljIENsdXR0ZXIuTWF0cml4IGdldF90cmFuc2Zvcm0gKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLlBhaW50Vm9s dW1lIGdldF90cmFuc2Zvcm1lZF9wYWludF92b2x1bWUgKENsdXR0ZXIuQWN0b3IgcmVsYXRpdmVf dG9fYW5jZXN0b3IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZv aWQgZ2V0X3RyYW5zZm9ybWVkX3Bvc2l0aW9uIChvdXQgZmxvYXQgeCwgb3V0IGZsb2F0IHkpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZvaWQgZ2V0X3RyYW5zZm9y bWVkX3NpemUgKG91dCBmbG9hdCB3aWR0aCwgb3V0IGZsb2F0IGhlaWdodCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5UcmFuc2l0aW9u IGdldF90cmFuc2l0aW9uIChzdHJpbmcgbmFtZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MiIpXQorKwkJcHVibGljIHZvaWQgZ2V0X3RyYW5zbGF0aW9uIChvdXQgZmxvYXQgdHJhbnNsYXRl X3gsIG91dCBmbG9hdCB0cmFuc2xhdGVfeSwgb3V0IGZsb2F0IHRyYW5zbGF0ZV96KTsKKysJCXB1 YmxpYyBmbG9hdCBnZXRfd2lkdGggKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X3ggKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENsdXR0ZXIuQWN0b3JBbGlnbiBn ZXRfeF9hbGlnbiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMg Ym9vbCBnZXRfeF9leHBhbmQgKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X3kgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENsdXR0ZXIuQWN0b3JBbGlnbiBnZXRf eV9hbGlnbiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgYm9v bCBnZXRfeV9leHBhbmQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVi bGljIGZsb2F0IGdldF96X3Bvc2l0aW9uICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0 cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1Ymxp YyBDbHV0dGVyLkdyYXZpdHkgZ2V0X3pfcm90YXRpb25fZ3Jhdml0eSAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIGdyYWJfa2V5X2ZvY3VzICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBib29sIGhhc19hY3Rpb25zICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIGJvb2wgaGFzX2FsbG9j YXRpb24gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGJvb2wg aGFzX2NvbnN0cmFpbnRzICgpOworKwkJcHVibGljIGJvb2wgaGFzX2RhbWFnZSAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgYm9vbCBoYXNfZWZmZWN0cyAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBib29sIGhhc19rZXlfZm9j dXMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNiIpXQorKwkJcHVibGljIGJvb2wgaGFz X21hcHBlZF9jbG9uZXMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJs aWMgdmlydHVhbCBib29sIGhhc19vdmVybGFwcyAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJs aWMgdmlydHVhbCB2b2lkIGhpZGVfYWxsICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAi KV0KKysJCXB1YmxpYyB2b2lkIGluc2VydF9jaGlsZF9hYm92ZSAoQ2x1dHRlci5BY3RvciBjaGls ZCwgQ2x1dHRlci5BY3Rvcj8gc2libGluZyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIp XQorKwkJcHVibGljIHZvaWQgaW5zZXJ0X2NoaWxkX2F0X2luZGV4IChDbHV0dGVyLkFjdG9yIGNo aWxkLCBpbnQgaW5kZXhfKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJs aWMgdm9pZCBpbnNlcnRfY2hpbGRfYmVsb3cgKENsdXR0ZXIuQWN0b3IgY2hpbGQsIENsdXR0ZXIu QWN0b3I/IHNpYmxpbmcpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGlj IGJvb2wgaXNfaW5fY2xvbmVfcGFpbnQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yNCIp XQorKwkJcHVibGljIGJvb2wgaXNfbWFwcGVkICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MjQiKV0KKysJCXB1YmxpYyBib29sIGlzX3JlYWxpemVkICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjAuNiIpXQorKwkJcHVibGljIGJvb2wgaXNfcm90YXRlZCAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBib29sIGlzX3NjYWxlZCAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjI0IildCisrCQlwdWJsaWMgYm9vbCBpc192aXNpYmxlICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBtYXAgKCk7Cisr CQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIs IHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZvaWQgbW92ZV9hbmNob3JfcG9pbnQgKGZsb2F0 IGFuY2hvcl94LCBmbG9hdCBhbmNob3JfeSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRy dWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGlj IHZvaWQgbW92ZV9hbmNob3JfcG9pbnRfZnJvbV9ncmF2aXR5IChDbHV0dGVyLkdyYXZpdHkgZ3Jh dml0eSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCQlwdWJsaWMgdm9pZCBtb3Zl X2J5IChmbG9hdCBkeCwgZmxvYXQgZHkpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0K KysJCXB1YmxpYyBib29sIG5lZWRzX2V4cGFuZCAoQ2x1dHRlci5PcmllbnRhdGlvbiBvcmllbnRh dGlvbik7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBwYWludF9ub2Rl IChDbHV0dGVyLlBhaW50Tm9kZSByb290KTsKKysJCXB1YmxpYyB2b2lkIHBpY2tfYm94IChDbHV0 dGVyLlBpY2tDb250ZXh0IHBpY2tfY29udGV4dCwgQ2x1dHRlci5BY3RvckJveCBib3gpOworKwkJ cHVibGljIHZvaWQgcG9wX2ludGVybmFsICgpOworKwkJcHVibGljIHZvaWQgcHVzaF9pbnRlcm5h bCAoKTsKKysJCXB1YmxpYyB2b2lkIHF1ZXVlX3JlZHJhdyAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBxdWV1ZV9yZWRyYXdfd2l0aF9jbGlwIChDYWly by5SZWN0YW5nbGVJbnQ/IGNsaXApOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJ cHVibGljIHZvaWQgcmVtb3ZlX2FjdGlvbiAoQ2x1dHRlci5BY3Rpb24gYWN0aW9uKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHJlbW92ZV9hY3Rpb25fYnlf bmFtZSAoc3RyaW5nIG5hbWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1 YmxpYyB2b2lkIHJlbW92ZV9hbGxfY2hpbGRyZW4gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMCIpXQorKwkJcHVibGljIHZvaWQgcmVtb3ZlX2FsbF90cmFuc2l0aW9ucyAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCByZW1vdmVfY2hpbGQgKENs dXR0ZXIuQWN0b3IgY2hpbGQpOworKwkJcHVibGljIHZvaWQgcmVtb3ZlX2NsaXAgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCByZW1vdmVfY29uc3RyYWlu dCAoQ2x1dHRlci5Db25zdHJhaW50IGNvbnN0cmFpbnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuNCIpXQorKwkJcHVibGljIHZvaWQgcmVtb3ZlX2NvbnN0cmFpbnRfYnlfbmFtZSAoc3RyaW5n IG5hbWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgcmVt b3ZlX2VmZmVjdCAoQ2x1dHRlci5FZmZlY3QgZWZmZWN0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHJlbW92ZV9lZmZlY3RfYnlfbmFtZSAoc3RyaW5nIG5h bWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHJlbW92 ZV90cmFuc2l0aW9uIChzdHJpbmcgbmFtZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIp XQorKwkJcHVibGljIHZvaWQgcmVwbGFjZV9jaGlsZCAoQ2x1dHRlci5BY3RvciBvbGRfY2hpbGQs IENsdXR0ZXIuQWN0b3IgbmV3X2NoaWxkKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIild CisrCQlwdWJsaWMgdm9pZCByZXN0b3JlX2Vhc2luZ19zdGF0ZSAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzYXZlX2Vhc2luZ19zdGF0ZSAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfYWxsb2NhdGlv biAoQ2x1dHRlci5BY3RvckJveCBib3gsIENsdXR0ZXIuQWxsb2NhdGlvbkZsYWdzIGZsYWdzKTsK KysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEy Iiwgc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdm9pZCBzZXRfYW5jaG9yX3BvaW50IChmbG9h dCBhbmNob3JfeCwgZmxvYXQgYW5jaG9yX3kpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0 cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIwLjYiKV0KKysJCXB1Ymxp YyB2b2lkIHNldF9hbmNob3JfcG9pbnRfZnJvbV9ncmF2aXR5IChDbHV0dGVyLkdyYXZpdHkgZ3Jh dml0eSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0 X2JhY2tncm91bmRfY29sb3IgKENsdXR0ZXIuQ29sb3I/IGNvbG9yKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfY2hpbGRfYWJvdmVfc2libGluZyAo Q2x1dHRlci5BY3RvciBjaGlsZCwgQ2x1dHRlci5BY3Rvcj8gc2libGluZyk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2NoaWxkX2F0X2luZGV4IChD bHV0dGVyLkFjdG9yIGNoaWxkLCBpbnQgaW5kZXhfKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfY2hpbGRfYmVsb3dfc2libGluZyAoQ2x1dHRlci5B Y3RvciBjaGlsZCwgQ2x1dHRlci5BY3Rvcj8gc2libGluZyk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2NoaWxkX3RyYW5zZm9ybSAoQ2x1dHRlci5N YXRyaXg/IHRyYW5zZm9ybSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJs aWMgdm9pZCBzZXRfY2xpcCAoZmxvYXQgeG9mZiwgZmxvYXQgeW9mZiwgZmxvYXQgd2lkdGgsIGZs b2F0IGhlaWdodCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9p ZCBzZXRfY2xpcF90b19hbGxvY2F0aW9uIChib29sIGNsaXBfc2V0KTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfY29udGVudCAoQ2x1dHRlci5Db250 ZW50PyBjb250ZW50KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMg dm9pZCBzZXRfY29udGVudF9ncmF2aXR5IChDbHV0dGVyLkNvbnRlbnRHcmF2aXR5IGdyYXZpdHkp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9jb250 ZW50X3JlcGVhdCAoQ2x1dHRlci5Db250ZW50UmVwZWF0IHJlcGVhdCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2NvbnRlbnRfc2NhbGluZ19maWx0 ZXJzIChDbHV0dGVyLlNjYWxpbmdGaWx0ZXIgbWluX2ZpbHRlciwgQ2x1dHRlci5TY2FsaW5nRmls dGVyIG1hZ19maWx0ZXIpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNh dGVkX3NpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9kZXB0aCAoZmxvYXQgZGVw dGgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9l YXNpbmdfZGVsYXkgKHVpbnQgbXNlY3MpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0K KysJCXB1YmxpYyB2b2lkIHNldF9lYXNpbmdfZHVyYXRpb24gKHVpbnQgbXNlY3MpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9lYXNpbmdfbW9kZSAo Q2x1dHRlci5BbmltYXRpb25Nb2RlIG1vZGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIp XQorKwkJcHVibGljIHZvaWQgc2V0X2ZpeGVkX3Bvc2l0aW9uX3NldCAoYm9vbCBpc19zZXQpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2ZsYWdzIChD bHV0dGVyLkFjdG9yRmxhZ3MgZmxhZ3MpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQor KwkJcHVibGljIHZvaWQgc2V0X2hlaWdodCAoZmxvYXQgaGVpZ2h0KTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbGF5b3V0X21hbmFnZXIgKENsdXR0 ZXIuTGF5b3V0TWFuYWdlcj8gbWFuYWdlcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIp XQorKwkJcHVibGljIHZvaWQgc2V0X21hcmdpbiAoQ2x1dHRlci5NYXJnaW4gbWFyZ2luKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbWFyZ2luX2Jv dHRvbSAoZmxvYXQgbWFyZ2luKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlw dWJsaWMgdm9pZCBzZXRfbWFyZ2luX2xlZnQgKGZsb2F0IG1hcmdpbik7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X21hcmdpbl9yaWdodCAoZmxvYXQg bWFyZ2luKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBz ZXRfbWFyZ2luX3RvcCAoZmxvYXQgbWFyZ2luKTsKKysJCXB1YmxpYyB2b2lkIHNldF9uYW1lIChz dHJpbmcgbmFtZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9p ZCBzZXRfb2Zmc2NyZWVuX3JlZGlyZWN0IChDbHV0dGVyLk9mZnNjcmVlblJlZGlyZWN0IHJlZGly ZWN0KTsKKysJCXB1YmxpYyB2b2lkIHNldF9vcGFjaXR5ICh1aW50OCBvcGFjaXR5KTsKKysJCXB1 YmxpYyB2b2lkIHNldF9vcGFjaXR5X292ZXJyaWRlIChpbnQgb3BhY2l0eSk7CisrCQlbVmVyc2lv biAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIpXQorKwkJcHVi bGljIHZvaWQgc2V0X3BhcmVudCAoQ2x1dHRlci5BY3RvciBwYXJlbnQpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9waXZvdF9wb2ludCAoZmxvYXQg cGl2b3RfeCwgZmxvYXQgcGl2b3RfeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQor KwkJcHVibGljIHZvaWQgc2V0X3Bpdm90X3BvaW50X3ogKGZsb2F0IHBpdm90X3opOworKwkJcHVi bGljIHZvaWQgc2V0X3Bvc2l0aW9uIChmbG9hdCB4LCBmbG9hdCB5KTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9yZWFjdGl2ZSAoYm9vbCByZWFjdGl2 ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBzZXRfcmVx dWVzdF9tb2RlIChDbHV0dGVyLlJlcXVlc3RNb2RlIG1vZGUpOworKwkJW1ZlcnNpb24gKGRlcHJl Y2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIwLjgiKV0K KysJCXB1YmxpYyB2b2lkIHNldF9yb3RhdGlvbiAoQ2x1dHRlci5Sb3RhdGVBeGlzIGF4aXMsIGRv dWJsZSBhbmdsZSwgZmxvYXQgeCwgZmxvYXQgeSwgZmxvYXQgeik7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3JvdGF0aW9uX2FuZ2xlIChDbHV0dGVy LlJvdGF0ZUF4aXMgYXhpcywgZG91YmxlIGFuZ2xlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIw LjIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9zY2FsZSAoZG91YmxlIHNjYWxlX3gsIGRvdWJsZSBz Y2FsZV95KTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5j ZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfc2NhbGVfZnVs bCAoZG91YmxlIHNjYWxlX3gsIGRvdWJsZSBzY2FsZV95LCBmbG9hdCBjZW50ZXJfeCwgZmxvYXQg Y2VudGVyX3kpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lk IHNldF9zY2FsZV96IChkb3VibGUgc2NhbGVfeik7CisrCQlwdWJsaWMgdm9pZCBzZXRfc2l6ZSAo ZmxvYXQgd2lkdGgsIGZsb2F0IGhlaWdodCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIild CisrCQlwdWJsaWMgdm9pZCBzZXRfdGV4dF9kaXJlY3Rpb24gKENsdXR0ZXIuVGV4dERpcmVjdGlv biB0ZXh0X2Rpcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZv aWQgc2V0X3RyYW5zZm9ybSAoQ2x1dHRlci5NYXRyaXg/IHRyYW5zZm9ybSk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3RyYW5zbGF0aW9uIChmbG9h dCB0cmFuc2xhdGVfeCwgZmxvYXQgdHJhbnNsYXRlX3ksIGZsb2F0IHRyYW5zbGF0ZV96KTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF93aWR0aCAoZmxv YXQgd2lkdGgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZvaWQg c2V0X3ggKGZsb2F0IHgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1Ymxp YyB2b2lkIHNldF94X2FsaWduIChDbHV0dGVyLkFjdG9yQWxpZ24geF9hbGlnbik7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3hfZXhwYW5kIChib29s IGV4cGFuZCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdm9pZCBz ZXRfeSAoZmxvYXQgeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IHZvaWQgc2V0X3lfYWxpZ24gKENsdXR0ZXIuQWN0b3JBbGlnbiB5X2FsaWduKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBzZXRfeV9leHBhbmQgKGJvb2wg ZXhwYW5kKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBz ZXRfel9wb3NpdGlvbiAoZmxvYXQgel9wb3NpdGlvbik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRl ZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMCIpXQorKwkJ cHVibGljIHZvaWQgc2V0X3pfcm90YXRpb25fZnJvbV9ncmF2aXR5IChkb3VibGUgYW5nbGUsIENs dXR0ZXIuR3Jhdml0eSBncmF2aXR5KTsKKysJCXB1YmxpYyBib29sIHNob3VsZF9waWNrX3BhaW50 ICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0g IjEuMTAiLCBzaW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgc2hvd19hbGwg KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgYm9vbCB0cmFuc2Zv cm1fc3RhZ2VfcG9pbnQgKGZsb2F0IHgsIGZsb2F0IHksIG91dCBmbG9hdCB4X291dCwgb3V0IGZs b2F0IHlfb3V0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2aXJ0 dWFsIHZvaWQgdW5tYXAgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJl Y2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIHZvaWQgdW5w YXJlbnQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCB1 bnNldF9mbGFncyAoQ2x1dHRlci5BY3RvckZsYWdzIGZsYWdzKTsKKysJCVtOb0FjY2Vzc29yTWV0 aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIENsdXR0ZXIuQWN0 aW9uIGFjdGlvbnMgeyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24g KHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIENsdXR0ZXIuQWN0b3JCb3ggYWxsb2NhdGlvbiB7 IG93bmVkIGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoZGVwcmVj YXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMCIpXQor KwkJcHVibGljIENsdXR0ZXIuR3Jhdml0eSBhbmNob3JfZ3Jhdml0eSB7IGdldDsgc2V0OyB9Cisr CQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVw cmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgZmxvYXQg YW5jaG9yX3ggeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lv biAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0g IjAuOCIpXQorKwkJcHVibGljIGZsb2F0IGFuY2hvcl95IHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBiYWNrZ3JvdW5k X2NvbG9yIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBib29sIGJhY2tncm91bmRfY29sb3Jfc2V0IHsg Z2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEy IildCisrCQlwdWJsaWMgYm9vbCBjaGlsZF90cmFuc2Zvcm1fc2V0IHsgZ2V0OyB9CisrCQlbTm9B Y2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMg R3JhcGhlbmUuUmVjdCBjbGlwX3JlY3QgeyBvd25lZCBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGJvb2wgY2xpcF90b19hbGxvY2F0aW9uIHsgZ2V0 OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu NCIpXQorKwkJcHVibGljIENsdXR0ZXIuQ29uc3RyYWludCBjb25zdHJhaW50cyB7IHNldDsgfQor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbnRlbnQg Y29udGVudCB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJ cHVibGljIENsdXR0ZXIuQWN0b3JCb3ggY29udGVudF9ib3ggeyBnZXQ7IH0KKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ2x1dHRlci5Db250ZW50R3Jhdml0eSBjb250 ZW50X2dyYXZpdHkgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0K KysJCXB1YmxpYyBDbHV0dGVyLkNvbnRlbnRSZXBlYXQgY29udGVudF9yZXBlYXQgeyBnZXQ7IHNl dDsgfQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0g IjEuMTIiLCBzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBmbG9hdCBkZXB0aCB7IGdldDsgc2V0 OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0K KysJCXB1YmxpYyBDbHV0dGVyLkVmZmVjdCBlZmZlY3QgeyBzZXQ7IH0KKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvciBmaXJzdF9jaGlsZCB7IGdl dDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIGJvb2wgZml4ZWRf cG9zaXRpb25fc2V0IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1Zl cnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIGZsb2F0IGZpeGVkX3ggeyBnZXQ7IHNl dDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44Iild CisrCQlwdWJsaWMgZmxvYXQgZml4ZWRfeSB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1l dGhvZF0KKysJCXB1YmxpYyBib29sIGhhc19jbGlwIHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1l dGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBib29sIGhhc19w b2ludGVyIHsgZ2V0OyB9CisrCQlwdWJsaWMgZmxvYXQgaGVpZ2h0IHsgZ2V0OyBzZXQ7IH0KKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvciBsYXN0 X2NoaWxkIHsgZ2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IENsdXR0ZXIuTGF5b3V0TWFuYWdlciBsYXlvdXRfbWFuYWdlciB7IGdldDsgc2V0OyB9CisrCQlb Tm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBDbHV0dGVyLlNjYWxpbmdGaWx0ZXIgbWFnbmlm aWNhdGlvbl9maWx0ZXIgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgYm9vbCBtYXBwZWQgeyBnZXQ7IH0K KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgZmxvYXQgbWFyZ2luX2Jv dHRvbSB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVi bGljIGZsb2F0IG1hcmdpbl9sZWZ0IHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEwIildCisrCQlwdWJsaWMgZmxvYXQgbWFyZ2luX3JpZ2h0IHsgZ2V0OyBzZXQ7IH0KKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgZmxvYXQgbWFyZ2luX3RvcCB7 IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIwLjgiKV0KKysJCXB1YmxpYyBmbG9hdCBtaW5faGVpZ2h0IHsgZ2V0OyBzZXQ7IH0KKysJCVtO b0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGlj IGJvb2wgbWluX2hlaWdodF9zZXQgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2Rd CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgZmxvYXQgbWluX3dpZHRo IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjAuOCIpXQorKwkJcHVibGljIGJvb2wgbWluX3dpZHRoX3NldCB7IGdldDsgc2V0OyB9Cisr CQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBDbHV0dGVyLlNjYWxpbmdGaWx0ZXIgbWlu aWZpY2F0aW9uX2ZpbHRlciB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC4y IildCisrCQlwdWJsaWMgc3RyaW5nIG5hbWUgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JN ZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgZmxvYXQgbmF0 dXJhbF9oZWlnaHQgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgYm9vbCBuYXR1cmFsX2hlaWdodF9zZXQg eyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMC44IildCisrCQlwdWJsaWMgZmxvYXQgbmF0dXJhbF93aWR0aCB7IGdldDsgc2V0OyB9Cisr CQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1 YmxpYyBib29sIG5hdHVyYWxfd2lkdGhfc2V0IHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBDbHV0dGVyLk9mZnNjcmVlblJlZGlyZWN0IG9mZnNj cmVlbl9yZWRpcmVjdCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgdWludCBvcGFjaXR5IHsgZ2V0 OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTIiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludCBwaXZvdF9wb2ludCB7IG93bmVkIGdldDsg c2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGZsb2F0IHBp dm90X3BvaW50X3ogeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIEdyYXBoZW5lLlBvaW50IHBvc2l0aW9u IHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1 YmxpYyBib29sIHJlYWN0aXZlIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGJvb2wgcmVhbGl6ZWQgeyBn ZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBDbHV0dGVyLlJl cXVlc3RNb2RlIHJlcXVlc3RfbW9kZSB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhv ZF0KKysJCXB1YmxpYyBmbG9hdCByZXNvdXJjZV9zY2FsZSB7IGdldDsgfQorKwkJW05vQWNjZXNz b3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgZG91Ymxl IHJvdGF0aW9uX2FuZ2xlX3ggeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgZG91YmxlIHJvdGF0aW9uX2Fu Z2xlX3kgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgZG91YmxlIHJvdGF0aW9uX2FuZ2xlX3ogeyBnZXQ7 IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9 IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjAuNiIpXQorKwkJcHVi bGljIEdyYXBoZW5lLlBvaW50M0Qgcm90YXRpb25fY2VudGVyX3ggeyBvd25lZCBnZXQ7IHNldDsg fQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUs IGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIEdy YXBoZW5lLlBvaW50M0Qgcm90YXRpb25fY2VudGVyX3kgeyBvd25lZCBnZXQ7IHNldDsgfQorKwkJ W05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJl Y2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIEdyYXBoZW5l LlBvaW50M0Qgcm90YXRpb25fY2VudGVyX3ogeyBvd25lZCBnZXQ7IHNldDsgfQorKwkJW05vQWNj ZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRf c2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIENsdXR0ZXIuR3Jhdml0 eSByb3RhdGlvbl9jZW50ZXJfel9ncmF2aXR5IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29y TWV0aG9kXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNl ID0gIjEuMTIiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBzY2FsZV9jZW50ZXJf eCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChkZXBy ZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4wIild CisrCQlwdWJsaWMgZmxvYXQgc2NhbGVfY2VudGVyX3kgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNj ZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRf c2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIENsdXR0ZXIuR3Jhdml0 eSBzY2FsZV9ncmF2aXR5IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIGRvdWJsZSBzY2FsZV94IHsgZ2V0 OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAu NiIpXQorKwkJcHVibGljIGRvdWJsZSBzY2FsZV95IHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgZG91YmxlIHNjYWxlX3ogeyBnZXQ7IHNldDsg fQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisr CQlwdWJsaWMgYm9vbCBzaG93X29uX3NldF9wYXJlbnQgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNj ZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIEdy YXBoZW5lLlNpemUgc2l6ZSB7IG93bmVkIGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgQ2x1dHRlci5UZXh0RGlyZWN0aW9uIHRleHRfZGlyZWN0aW9u IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTIiKV0KKysJCXB1YmxpYyBib29sIHRyYW5zZm9ybV9zZXQgeyBnZXQ7IH0KKysJCVtO b0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1Ymxp YyBmbG9hdCB0cmFuc2xhdGlvbl94IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9k XQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBmbG9hdCB0cmFuc2xh dGlvbl95IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBmbG9hdCB0cmFuc2xhdGlvbl96IHsgZ2V0OyBz ZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wgdmlzaWJsZSB7IGdl dDsgc2V0OyB9CisrCQlwdWJsaWMgZmxvYXQgd2lkdGggeyBnZXQ7IHNldDsgfQorKwkJcHVibGlj IGZsb2F0IHggeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyBDbHV0dGVyLkFjdG9yQWxpZ24geF9hbGlnbiB7IGdldDsgc2V0OyB9CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGJvb2wgeF9leHBhbmQgeyBnZXQ7IHNl dDsgfQorKwkJcHVibGljIGZsb2F0IHkgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFjdG9yQWxpZ24geV9hbGlnbiB7IGdldDsg c2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGJvb2wgeV9l eHBhbmQgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1 YmxpYyBmbG9hdCB6X3Bvc2l0aW9uIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjAiKV0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCBhbGxvY2F0aW9uX2NoYW5nZWQgKENsdXR0 ZXIuQWN0b3JCb3ggYm94LCBDbHV0dGVyLkFsbG9jYXRpb25GbGFncyBmbGFncyk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCBidXR0 b25fcHJlc3NfZXZlbnQgKENsdXR0ZXIuQnV0dG9uRXZlbnQgZXZlbnQpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIGJvb2wgYnV0dG9uX3Jl bGVhc2VfZXZlbnQgKENsdXR0ZXIuQnV0dG9uRXZlbnQgZXZlbnQpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIGJvb2wgY2FwdHVyZWRfZXZl bnQgKENsdXR0ZXIuRXZlbnQgZXZlbnQpOworKwkJW0hhc0VtaXR0ZXJdCisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMC4yIildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBkZXN0cm95ICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFs IGJvb2wgZW50ZXJfZXZlbnQgKENsdXR0ZXIuQ3Jvc3NpbmdFdmVudCBldmVudCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCBldmVu dCAoQ2x1dHRlci5FdmVudCBldmVudCk7CisrCQlbSGFzRW1pdHRlcl0KKysJCVtWZXJzaW9uIChz aW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGhpZGUgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9p ZCBrZXlfZm9jdXNfaW4gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJs aWMgdmlydHVhbCBzaWduYWwgdm9pZCBrZXlfZm9jdXNfb3V0ICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIGJvb2wga2V5X3ByZXNzX2V2 ZW50IChDbHV0dGVyLktleUV2ZW50IGV2ZW50KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYi KV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCBib29sIGtleV9yZWxlYXNlX2V2ZW50IChDbHV0 dGVyLktleUV2ZW50IGV2ZW50KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1 YmxpYyB2aXJ0dWFsIHNpZ25hbCBib29sIGxlYXZlX2V2ZW50IChDbHV0dGVyLkNyb3NzaW5nRXZl bnQgZXZlbnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZpcnR1 YWwgc2lnbmFsIGJvb2wgbW90aW9uX2V2ZW50IChDbHV0dGVyLk1vdGlvbkV2ZW50IGV2ZW50KTsK KysJCVtIYXNFbWl0dGVyXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNh dGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNp Z25hbCB2b2lkIHBhaW50IChDbHV0dGVyLlBhaW50Q29udGV4dCBwYWludF9jb250ZXh0KTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lk IHBhcmVudF9zZXQgKENsdXR0ZXIuQWN0b3I/IG9sZF9wYXJlbnQpOworKwkJW0hhc0VtaXR0ZXJd CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwg dm9pZCBwaWNrIChDbHV0dGVyLlBpY2tDb250ZXh0IHBpY2tfY29udGV4dCk7CisrCQlbSGFzRW1p dHRlcl0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNp Z25hbCB2b2lkIHF1ZXVlX3JlbGF5b3V0ICgpOworKwkJW0hhc0VtaXR0ZXJdCisrCQlbVmVyc2lv biAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIsIHNpbmNlID0g IjAuOCIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgcmVhbGl6ZSAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCBib29sIHNj cm9sbF9ldmVudCAoQ2x1dHRlci5TY3JvbGxFdmVudCBldmVudCk7CisrCQlbSGFzRW1pdHRlcl0K KysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2 b2lkIHNob3cgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZp cnR1YWwgc2lnbmFsIGJvb2wgdG91Y2hfZXZlbnQgKENsdXR0ZXIuRXZlbnQgZXZlbnQpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCB0cmFuc2l0 aW9uX3N0b3BwZWQgKHN0cmluZyBuYW1lLCBib29sIGlzX2ZpbmlzaGVkKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgdHJhbnNpdGlvbnNfY29t cGxldGVkICgpOworKwkJW0hhc0VtaXR0ZXJdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRy dWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIsIHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGlj IHZpcnR1YWwgc2lnbmFsIHZvaWQgdW5yZWFsaXplICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9hY3Rv cl9tZXRhX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVi bGljIGFic3RyYWN0IGNsYXNzIEFjdG9yTWV0YSA6IEdMaWIuSW5pdGlhbGx5VW5vd25lZCB7Cisr CQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQg QWN0b3JNZXRhICgpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfYWN0b3Ig KCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfZW5hYmxlZCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0 cmluZyBnZXRfbmFtZSAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lk IHNldF9hY3RvciAoQ2x1dHRlci5BY3Rvcj8gYWN0b3IpOworKwkJcHVibGljIHZvaWQgc2V0X2Vu YWJsZWQgKGJvb2wgaXNfZW5hYmxlZCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfbmFtZSAoc3RyaW5n IG5hbWUpOworKwkJcHVibGljIENsdXR0ZXIuQWN0b3IgYWN0b3IgeyBnZXQ7IH0KKysJCXB1Ymxp YyBib29sIGVuYWJsZWQgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIHN0cmluZyBuYW1lIHsgZ2V0 OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfYWN0b3Jfbm9kZV9nZXRfdHlwZSAoKSIpXQorKwlw dWJsaWMgY2xhc3MgQWN0b3JOb2RlIDogQ2x1dHRlci5QYWludE5vZGUgeworKwkJW0NDb2RlICho YXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlclBhaW50Tm9kZSoi KV0KKysJCXB1YmxpYyBBY3Rvck5vZGUgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAi Y2x1dHRlcl9hbGlnbl9jb25zdHJhaW50X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjQiKV0KKysJcHVibGljIGNsYXNzIEFsaWduQ29uc3RyYWludCA6IENsdXR0ZXIuQ29u c3RyYWludCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlw ZSA9ICJDbHV0dGVyQ29uc3RyYWludCoiKV0KKysJCXB1YmxpYyBBbGlnbkNvbnN0cmFpbnQgKENs dXR0ZXIuQWN0b3I/IHNvdXJjZSwgQ2x1dHRlci5BbGlnbkF4aXMgYXhpcywgZmxvYXQgZmFjdG9y KTsKKysJCXB1YmxpYyBDbHV0dGVyLkFsaWduQXhpcyBnZXRfYWxpZ25fYXhpcyAoKTsKKysJCXB1 YmxpYyBmbG9hdCBnZXRfZmFjdG9yICgpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3Rv ciBnZXRfc291cmNlICgpOworKwkJcHVibGljIHZvaWQgc2V0X2FsaWduX2F4aXMgKENsdXR0ZXIu QWxpZ25BeGlzIGF4aXMpOworKwkJcHVibGljIHZvaWQgc2V0X2ZhY3RvciAoZmxvYXQgZmFjdG9y KTsKKysJCXB1YmxpYyB2b2lkIHNldF9zb3VyY2UgKENsdXR0ZXIuQWN0b3I/IHNvdXJjZSk7Cisr CQlwdWJsaWMgQ2x1dHRlci5BbGlnbkF4aXMgYWxpZ25fYXhpcyB7IGdldDsgc2V0IGNvbnN0cnVj dDsgfQorKwkJcHVibGljIGZsb2F0IGZhY3RvciB7IGdldDsgc2V0IGNvbnN0cnVjdDsgfQorKwkJ cHVibGljIENsdXR0ZXIuQWN0b3Igc291cmNlIHsgZ2V0OyBzZXQgY29uc3RydWN0OyB9CisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9p ZCA9ICJjbHV0dGVyX2FscGhhX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVk ID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMC4yIildCisrCXB1 YmxpYyBjbGFzcyBBbHBoYSA6IEdMaWIuSW5pdGlhbGx5VW5vd25lZCwgQ2x1dHRlci5TY3JpcHRh YmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1 YmxpYyBBbHBoYSAoKTsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNl KV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBBbHBoYS5mdWxsIChD bHV0dGVyLlRpbWVsaW5lIHRpbWVsaW5lLCB1bG9uZyBtb2RlKTsKKysJCXB1YmxpYyBkb3VibGUg Z2V0X2FscGhhICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVs b25nIGdldF9tb2RlICgpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5UaW1lbGluZSBnZXRf dGltZWxpbmUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdm9p ZCBzZXRfY2xvc3VyZSAoR0xpYi5DbG9zdXJlIGNsb3N1cmUpOworKwkJcHVibGljIHZvaWQgc2V0 X2Z1bmMgKG93bmVkIENsdXR0ZXIuQWxwaGFGdW5jIGZ1bmMpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X21vZGUgKHVsb25nIG1vZGUpOworKwkJcHVi bGljIHZvaWQgc2V0X3RpbWVsaW5lIChDbHV0dGVyLlRpbWVsaW5lIHRpbWVsaW5lKTsKKysJCXB1 YmxpYyBkb3VibGUgYWxwaGEgeyBnZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0K KysJCXB1YmxpYyB1bG9uZyBtb2RlIHsgZ2V0OyBzZXQgY29uc3RydWN0OyB9CisrCQlwdWJsaWMg Q2x1dHRlci5UaW1lbGluZSB0aW1lbGluZSB7IGdldDsgc2V0OyB9CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVy X2FuaW1hdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUs IGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgY2xh c3MgQW5pbWF0aW9uIDogR0xpYi5PYmplY3QsIENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlbQ0Nv ZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwdWJsaWMgQW5pbWF0aW9u ICgpOworKwkJcHVibGljIHVpbnQgZ2V0X2R1cmF0aW9uICgpOworKwkJcHVibGljIHVub3duZWQg Q2x1dHRlci5JbnRlcnZhbCBnZXRfaW50ZXJ2YWwgKHN0cmluZyBwcm9wZXJ0eV9uYW1lKTsKKysJ CXB1YmxpYyBib29sIGdldF9sb29wICgpOworKwkJcHVibGljIHVsb25nIGdldF9tb2RlICgpOwor KwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5UaW1lbGluZSBnZXRfdGltZWxpbmUgKCk7CisrCQlw dWJsaWMgYm9vbCBoYXNfcHJvcGVydHkgKHN0cmluZyBwcm9wZXJ0eV9uYW1lKTsKKysJCXB1Ymxp YyB2b2lkIHNldF9kdXJhdGlvbiAodWludCBtc2Vjcyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfbG9v cCAoYm9vbCBsb29wKTsKKysJCXB1YmxpYyB2b2lkIHNldF9tb2RlICh1bG9uZyBtb2RlKTsKKysJ CXB1YmxpYyB2b2lkIHNldF9vYmplY3QgKEdMaWIuT2JqZWN0IG9iamVjdCk7CisrCQlwdWJsaWMg dm9pZCBzZXRfdGltZWxpbmUgKENsdXR0ZXIuVGltZWxpbmU/IHRpbWVsaW5lKTsKKysJCVtOb0Fj Y2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVk X3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFscGhh IGFscGhhIHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyB1aW50IGR1cmF0aW9uIHsgZ2V0 OyBzZXQ7IH0KKysJCXB1YmxpYyBib29sIGxvb3AgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIHVs b25nIG1vZGUgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMg R0xpYi5PYmplY3Qgb2JqZWN0IHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVy LlRpbWVsaW5lIHRpbWVsaW5lIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25h bCB2b2lkIGNvbXBsZXRlZCAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIHN0YXJ0 ZWQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtDb21wYWN0XQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMC4yIildCisrCXB1YmxpYyBjbGFzcyBBbnlFdmVudCA6IENsdXR0ZXIuRXZlbnQgewor KwkJcHVibGljIENsdXR0ZXIuRXZlbnRGbGFncyBmbGFnczsKKysJCXB1YmxpYyB3ZWFrIENsdXR0 ZXIuQWN0b3Igc291cmNlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5TdGFnZSBzdGFnZTsKKysJ CXB1YmxpYyB1aW50MzIgdGltZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50VHlwZSB0eXBlOwor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5 cGVfaWQgPSAiY2x1dHRlcl9iYWNrZW5kX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIwLjQiKV0KKysJcHVibGljIGNsYXNzIEJhY2tlbmQgOiBHTGliLk9iamVjdCB7CisrCQlb Q0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgQmFj a2VuZCAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGFkZF9vcHRp b25zIChHTGliLk9wdGlvbkdyb3VwIGdyb3VwKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMg dmlydHVhbCBib29sIGNyZWF0ZV9jb250ZXh0ICgpIHRocm93cyBHTGliLkVycm9yOworKwkJW05v V3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHVub3duZWQgQ2x1dHRlci5TdGFnZVdpbmRvdyBj cmVhdGVfc3RhZ2UgKENsdXR0ZXIuU3RhZ2Ugd3JhcHBlcikgdGhyb3dzIEdMaWIuRXJyb3I7Cisr CQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBlbnN1cmVfY29udGV4dCAoQ2x1 dHRlci5TdGFnZSBzdGFnZSk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLlNlYXQgZ2V0X2Rl ZmF1bHRfc2VhdCAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCBDbHV0dGVy LkZlYXR1cmVGbGFncyBnZXRfZmVhdHVyZXMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44 IildCisrCQlwdWJsaWMgdW5vd25lZCBDYWlyby5Gb250T3B0aW9ucyBnZXRfZm9udF9vcHRpb25z ICgpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5JbnB1dE1ldGhvZCBnZXRfaW5wdXRfbWV0 aG9kICgpOworKwkJcHVibGljIGRvdWJsZSBnZXRfcmVzb2x1dGlvbiAoKTsKKysJCVtOb1dyYXBw ZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGluaXRfZXZlbnRzICgpOworKwkJW05vV3JhcHBl cl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgaW5pdF9mZWF0dXJlcyAoKTsKKysJCVtOb1dyYXBw ZXJdCisrCQlwdWJsaWMgdmlydHVhbCBib29sIHBvc3RfcGFyc2UgKCkgdGhyb3dzIEdMaWIuRXJy b3I7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgYm9vbCBwcmVfcGFyc2UgKCkg dGhyb3dzIEdMaWIuRXJyb3I7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9p ZCByZWRyYXcgKENsdXR0ZXIuU3RhZ2Ugc3RhZ2UpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAu OCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2ZvbnRfb3B0aW9ucyAoQ2Fpcm8uRm9udE9wdGlvbnMg b3B0aW9ucyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfaW5wdXRfbWV0aG9kIChDbHV0dGVyLklucHV0 TWV0aG9kIG1ldGhvZCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg c2lnbmFsIHZvaWQgZm9udF9jaGFuZ2VkICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIp XQorKwkJcHVibGljIHNpZ25hbCB2b2lkIHJlc29sdXRpb25fY2hhbmdlZCAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCBzZXR0aW5nc19jaGFu Z2VkICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9iaW5fbGF5b3V0X2dldF90eXBlICgpIildCisrCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJcHVibGljIGNsYXNzIEJpbkxheW91dCA6IENsdXR0 ZXIuTGF5b3V0TWFuYWdlciB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBm YWxzZSwgdHlwZSA9ICJDbHV0dGVyTGF5b3V0TWFuYWdlcioiKV0KKysJCXB1YmxpYyBCaW5MYXlv dXQgKENsdXR0ZXIuQmluQWxpZ25tZW50IHhfYWxpZ24gPSBDbHV0dGVyLkJpbkFsaWdubWVudC5T VEFSVCwgQ2x1dHRlci5CaW5BbGlnbm1lbnQgeV9hbGlnbiA9IENsdXR0ZXIuQmluQWxpZ25tZW50 LlNUQVJUKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQg PSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1 YmxpYyBDbHV0dGVyLkJpbkFsaWdubWVudCB4X2FsaWduIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0Fj Y2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVk X3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkJpbkFs aWdubWVudCB5X2FsaWduIHsgZ2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfYmluZF9jb25z dHJhaW50X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVi bGljIGNsYXNzIEJpbmRDb25zdHJhaW50IDogQ2x1dHRlci5Db25zdHJhaW50IHsKKysJCVtDQ29k ZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJDb25zdHJh aW50KiIpXQorKwkJcHVibGljIEJpbmRDb25zdHJhaW50IChDbHV0dGVyLkFjdG9yPyBzb3VyY2Us IENsdXR0ZXIuQmluZENvb3JkaW5hdGUgY29vcmRpbmF0ZSwgZmxvYXQgb2Zmc2V0KTsKKysJCXB1 YmxpYyBDbHV0dGVyLkJpbmRDb29yZGluYXRlIGdldF9jb29yZGluYXRlICgpOworKwkJcHVibGlj IGZsb2F0IGdldF9vZmZzZXQgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdl dF9zb3VyY2UgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfY29vcmRpbmF0ZSAoQ2x1dHRlci5CaW5k Q29vcmRpbmF0ZSBjb29yZGluYXRlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9vZmZzZXQgKGZsb2F0 IG9mZnNldCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfc291cmNlIChDbHV0dGVyLkFjdG9yPyBzb3Vy Y2UpOworKwkJcHVibGljIENsdXR0ZXIuQmluZENvb3JkaW5hdGUgY29vcmRpbmF0ZSB7IGdldDsg c2V0IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIGZsb2F0IG9mZnNldCB7IGdldDsgc2V0IGNvbnN0 cnVjdDsgfQorKwkJcHVibGljIENsdXR0ZXIuQWN0b3Igc291cmNlIHsgZ2V0OyBzZXQgY29uc3Ry dWN0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2JpbmRpbmdfcG9vbF9nZXRfdHlwZSAoKSIpXQorKwlb VmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBjbGFzcyBCaW5kaW5nUG9vbCA6IEdM aWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0K KysJCXB1YmxpYyBCaW5kaW5nUG9vbCAoc3RyaW5nIG5hbWUpOworKwkJcHVibGljIGJvb2wgYWN0 aXZhdGUgKHVpbnQga2V5X3ZhbCwgQ2x1dHRlci5Nb2RpZmllclR5cGUgbW9kaWZpZXJzLCBHTGli Lk9iamVjdCBnb2JqZWN0KTsKKysJCXB1YmxpYyB2b2lkIGJsb2NrX2FjdGlvbiAoc3RyaW5nIGFj dGlvbl9uYW1lKTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLkJpbmRpbmdQb29s IGZpbmQgKHN0cmluZyBuYW1lKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBmaW5kX2FjdGlv biAodWludCBrZXlfdmFsLCBDbHV0dGVyLk1vZGlmaWVyVHlwZSBtb2RpZmllcnMpOworKwkJcHVi bGljIHN0YXRpYyB1bm93bmVkIENsdXR0ZXIuQmluZGluZ1Bvb2wgZ2V0X2Zvcl9jbGFzcyAodm9p ZCoga2xhc3MpOworKwkJcHVibGljIHZvaWQgaW5zdGFsbF9hY3Rpb24gKHN0cmluZyBhY3Rpb25f bmFtZSwgdWludCBrZXlfdmFsLCBDbHV0dGVyLk1vZGlmaWVyVHlwZSBtb2RpZmllcnMsIG93bmVk IENsdXR0ZXIuQmluZGluZ0FjdGlvbkZ1bmMgY2FsbGJhY2spOworKwkJcHVibGljIHZvaWQgaW5z dGFsbF9jbG9zdXJlIChzdHJpbmcgYWN0aW9uX25hbWUsIHVpbnQga2V5X3ZhbCwgQ2x1dHRlci5N b2RpZmllclR5cGUgbW9kaWZpZXJzLCBHTGliLkNsb3N1cmUgY2xvc3VyZSk7CisrCQlwdWJsaWMg dm9pZCBvdmVycmlkZV9hY3Rpb24gKHVpbnQga2V5X3ZhbCwgQ2x1dHRlci5Nb2RpZmllclR5cGUg bW9kaWZpZXJzLCBvd25lZCBHTGliLkNhbGxiYWNrIGNhbGxiYWNrKTsKKysJCXB1YmxpYyB2b2lk IG92ZXJyaWRlX2Nsb3N1cmUgKHVpbnQga2V5X3ZhbCwgQ2x1dHRlci5Nb2RpZmllclR5cGUgbW9k aWZpZXJzLCBHTGliLkNsb3N1cmUgY2xvc3VyZSk7CisrCQlwdWJsaWMgdm9pZCByZW1vdmVfYWN0 aW9uICh1aW50IGtleV92YWwsIENsdXR0ZXIuTW9kaWZpZXJUeXBlIG1vZGlmaWVycyk7CisrCQlw dWJsaWMgdm9pZCB1bmJsb2NrX2FjdGlvbiAoc3RyaW5nIGFjdGlvbl9uYW1lKTsKKysJCVtOb0Fj Y2Vzc29yTWV0aG9kXQorKwkJcHVibGljIHN0cmluZyBuYW1lIHsgb3duZWQgZ2V0OyBjb25zdHJ1 Y3Q7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfYmx1cl9lZmZlY3RfZ2V0X3R5cGUgKCkiKV0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgY2xhc3MgQmx1ckVmZmVjdCA6IENsdXR0 ZXIuT2Zmc2NyZWVuRWZmZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9 IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJFZmZlY3QqIildCisrCQlwdWJsaWMgQmx1ckVmZmVjdCAo KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCB0eXBlX2lkID0gImNsdXR0ZXJfYm94X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjIiKV0KKysJcHVibGljIGNsYXNzIEJveCA6IENsdXR0ZXIuQWN0b3IsIEF0ay5JbXBs ZW1lbnRvciwgQ2x1dHRlci5BbmltYXRhYmxlLCBDbHV0dGVyLkNvbnRhaW5lciwgQ2x1dHRlci5T Y3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0 eXBlID0gIkNsdXR0ZXJBY3RvcioiKV0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwg ZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgQm94 IChDbHV0dGVyLkxheW91dE1hbmFnZXIgbWFuYWdlcik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRl ZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjEuMiIpXQorKwkJ cHVibGljIENsdXR0ZXIuQ29sb3IgZ2V0X2NvbG9yICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0 ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIxLjIiKV0KKysJ CXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuTGF5b3V0TWFuYWdlciBnZXRfbGF5b3V0X21hbmFnZXIg KCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAi MS4xMCIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgcGFjayAoQ2x1dHRlci5BY3Rv ciBhY3RvciwgLi4uKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRl ZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBwYWNrX2Fm dGVyIChDbHV0dGVyLkFjdG9yIGFjdG9yLCBDbHV0dGVyLkFjdG9yPyBzaWJsaW5nLCAuLi4pOwor KwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAi LCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHBhY2tfYXQgKENsdXR0ZXIuQWN0b3Ig YWN0b3IsIGludCBwb3NpdGlvbiwgLi4uKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1 ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMg dm9pZCBwYWNrX2JlZm9yZSAoQ2x1dHRlci5BY3RvciBhY3RvciwgQ2x1dHRlci5BY3Rvcj8gc2li bGluZywgLi4uKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9z aW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBwYWNrdiAoQ2x1 dHRlci5BY3RvciBhY3RvciwgW0NDb2RlIChhcnJheV9sZW5ndGhfY25hbWUgPSAibl9wcm9wZXJ0 aWVzIiwgYXJyYXlfbGVuZ3RoX3BvcyA9IDEuNSwgYXJyYXlfbGVuZ3RoX3R5cGUgPSAiZ3VpbnQi KV0gc3RyaW5nW10gcHJvcGVydGllcywgW0NDb2RlIChhcnJheV9sZW5ndGhfY25hbWUgPSAibl9w cm9wZXJ0aWVzIiwgYXJyYXlfbGVuZ3RoX3BvcyA9IDEuNSwgYXJyYXlfbGVuZ3RoX3R5cGUgPSAi Z3VpbnQiKV0gR0xpYi5WYWx1ZVtdIHZhbHVlcyk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9 IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVi bGljIHZvaWQgc2V0X2NvbG9yIChDbHV0dGVyLkNvbG9yPyBjb2xvcik7CisrCQlbVmVyc2lvbiAo ZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjEu MiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2xheW91dF9tYW5hZ2VyIChDbHV0dGVyLkxheW91dE1h bmFnZXIgbWFuYWdlcik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0 ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIENsdXR0ZXIuQ29s b3IgY29sb3IgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lv biAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0g IjEuMiIpXQorKwkJcHVibGljIGJvb2wgY29sb3Jfc2V0IHsgZ2V0OyBzZXQ7IH0KKysJCXB1Ymxp YyBDbHV0dGVyLkxheW91dE1hbmFnZXIgbGF5b3V0X21hbmFnZXIgeyBnZXQ7IHNldDsgfQorKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVf aWQgPSAiY2x1dHRlcl9ib3hfbGF5b3V0X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjIiKV0KKysJcHVibGljIGNsYXNzIEJveExheW91dCA6IENsdXR0ZXIuTGF5b3V0TWFu YWdlciB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9 ICJDbHV0dGVyTGF5b3V0TWFuYWdlcioiKV0KKysJCXB1YmxpYyBCb3hMYXlvdXQgKCk7CisrCQlb VmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNp bmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgZ2V0X2FsaWdubWVudCAoQ2x1dHRlci5BY3Rv ciBhY3Rvciwgb3V0IENsdXR0ZXIuQm94QWxpZ25tZW50IHhfYWxpZ24sIG91dCBDbHV0dGVyLkJv eEFsaWdubWVudCB5X2FsaWduKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVw cmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdWludCBn ZXRfZWFzaW5nX2R1cmF0aW9uICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBk ZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB1bG9u ZyBnZXRfZWFzaW5nX21vZGUgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRl cHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIGJvb2wg Z2V0X2V4cGFuZCAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRl ZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJ cHVibGljIHZvaWQgZ2V0X2ZpbGwgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIG91dCBib29sIHhfZmls bCwgb3V0IGJvb2wgeV9maWxsKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1 YmxpYyBib29sIGdldF9ob21vZ2VuZW91cyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEy IildCisrCQlwdWJsaWMgQ2x1dHRlci5PcmllbnRhdGlvbiBnZXRfb3JpZW50YXRpb24gKCk7Cisr CQlwdWJsaWMgYm9vbCBnZXRfcGFja19zdGFydCAoKTsKKysJCXB1YmxpYyB1aW50IGdldF9zcGFj aW5nICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNl ID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBib29sIGdldF91c2VfYW5pbWF0 aW9ucyAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5j ZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgYm9vbCBnZXRfdmVydGljYWwg KCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAi MS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgcGFjayAoQ2x1dHRlci5BY3Rv ciBhY3RvciwgYm9vbCBleHBhbmQsIGJvb2wgeF9maWxsLCBib29sIHlfZmlsbCwgQ2x1dHRlci5C b3hBbGlnbm1lbnQgeF9hbGlnbiwgQ2x1dHRlci5Cb3hBbGlnbm1lbnQgeV9hbGlnbik7CisrCQlb VmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNp bmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2FsaWdubWVudCAoQ2x1dHRlci5BY3Rv ciBhY3RvciwgQ2x1dHRlci5Cb3hBbGlnbm1lbnQgeF9hbGlnbiwgQ2x1dHRlci5Cb3hBbGlnbm1l bnQgeV9hbGlnbik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRf c2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2Vhc2lu Z19kdXJhdGlvbiAodWludCBtc2Vjcyk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUs IGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZv aWQgc2V0X2Vhc2luZ19tb2RlICh1bG9uZyBtb2RlKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVk ID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4yIildCisrCQlw dWJsaWMgdm9pZCBzZXRfZXhwYW5kIChDbHV0dGVyLkFjdG9yIGFjdG9yLCBib29sIGV4cGFuZCk7 CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4x MiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2ZpbGwgKENsdXR0ZXIuQWN0 b3IgYWN0b3IsIGJvb2wgeF9maWxsLCBib29sIHlfZmlsbCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBzZXRfaG9tb2dlbmVvdXMgKGJvb2wgaG9tb2dlbmVv dXMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9v cmllbnRhdGlvbiAoQ2x1dHRlci5PcmllbnRhdGlvbiBvcmllbnRhdGlvbik7CisrCQlwdWJsaWMg dm9pZCBzZXRfcGFja19zdGFydCAoYm9vbCBwYWNrX3N0YXJ0KTsKKysJCXB1YmxpYyB2b2lkIHNl dF9zcGFjaW5nICh1aW50IHNwYWNpbmcpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVl LCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2 b2lkIHNldF91c2VfYW5pbWF0aW9ucyAoYm9vbCBhbmltYXRlKTsKKysJCVtWZXJzaW9uIChkZXBy ZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4yIild CisrCQlwdWJsaWMgdm9pZCBzZXRfdmVydGljYWwgKGJvb2wgdmVydGljYWwpOworKwkJW1ZlcnNp b24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9 ICIxLjIiKV0KKysJCXB1YmxpYyB1aW50IGVhc2luZ19kdXJhdGlvbiB7IGdldDsgc2V0OyB9Cisr CQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIs IHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHVsb25nIGVhc2luZ19tb2RlIHsgZ2V0OyBzZXQ7 IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBib29sIGhvbW9nZW5l b3VzIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJs aWMgQ2x1dHRlci5PcmllbnRhdGlvbiBvcmllbnRhdGlvbiB7IGdldDsgc2V0OyB9CisrCQlwdWJs aWMgYm9vbCBwYWNrX3N0YXJ0IHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyB1aW50IHNwYWNpbmcg eyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVk X3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBib29sIHVzZV9hbmlt YXRpb25zIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVw cmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgYm9vbCB2 ZXJ0aWNhbCB7IGdldDsgc2V0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2JyaWdodG5lc3NfY29udHJh c3RfZWZmZWN0X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisr CXB1YmxpYyBjbGFzcyBCcmlnaHRuZXNzQ29udHJhc3RFZmZlY3QgOiBDbHV0dGVyLk9mZnNjcmVl bkVmZmVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlw ZSA9ICJDbHV0dGVyRWZmZWN0KiIpXQorKwkJcHVibGljIEJyaWdodG5lc3NDb250cmFzdEVmZmVj dCAoKTsKKysJCXB1YmxpYyB2b2lkIGdldF9icmlnaHRuZXNzIChvdXQgZmxvYXQgcmVkLCBvdXQg ZmxvYXQgZ3JlZW4sIG91dCBmbG9hdCBibHVlKTsKKysJCXB1YmxpYyB2b2lkIGdldF9jb250cmFz dCAob3V0IGZsb2F0IHJlZCwgb3V0IGZsb2F0IGdyZWVuLCBvdXQgZmxvYXQgYmx1ZSk7CisrCQlw dWJsaWMgdm9pZCBzZXRfYnJpZ2h0bmVzcyAoZmxvYXQgYnJpZ2h0bmVzcyk7CisrCQlwdWJsaWMg dm9pZCBzZXRfYnJpZ2h0bmVzc19mdWxsIChmbG9hdCByZWQsIGZsb2F0IGdyZWVuLCBmbG9hdCBi bHVlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9jb250cmFzdCAoZmxvYXQgY29udHJhc3QpOworKwkJ cHVibGljIHZvaWQgc2V0X2NvbnRyYXN0X2Z1bGwgKGZsb2F0IHJlZCwgZmxvYXQgZ3JlZW4sIGZs b2F0IGJsdWUpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgQ2x1dHRlci5Db2xv ciBicmlnaHRuZXNzIHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQor KwkJcHVibGljIENsdXR0ZXIuQ29sb3IgY29udHJhc3QgeyBvd25lZCBnZXQ7IHNldDsgfQorKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGhhc190 eXBlX2lkID0gZmFsc2UpXQorKwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIp XQorKwlwdWJsaWMgY2xhc3MgQnV0dG9uRXZlbnQgOiBDbHV0dGVyLkV2ZW50IHsKKysJCXB1Ymxp YyBkb3VibGUgYXhlczsKKysJCXB1YmxpYyB1aW50MzIgYnV0dG9uOworKwkJcHVibGljIHVpbnQg Y2xpY2tfY291bnQ7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLklucHV0RGV2aWNlIGRldmljZTsK KysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50RmxhZ3MgZmxhZ3M7CisrCQlwdWJsaWMgQ2x1dHRlci5N b2RpZmllclR5cGUgbW9kaWZpZXJfc3RhdGU7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLkFjdG9y IHNvdXJjZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuU3RhZ2Ugc3RhZ2U7CisrCQlwdWJsaWMg dWludDMyIHRpbWU7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudFR5cGUgdHlwZTsKKysJCXB1Ymxp YyBmbG9hdCB4OworKwkJcHVibGljIGZsb2F0IHk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2NhbnZhc19n ZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgY2xh c3MgQ2FudmFzIDogR0xpYi5PYmplY3QsIENsdXR0ZXIuQ29udGVudCB7CisrCQlbQ0NvZGUgKGhh c19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQ29udGVudCoiKV0K KysJCXB1YmxpYyBDYW52YXMgKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X3NjYWxlX2ZhY3RvciAo KTsKKysJCXB1YmxpYyB2b2lkIHNldF9zY2FsZV9mYWN0b3IgKGZsb2F0IHNjYWxlKTsKKysJCXB1 YmxpYyBib29sIHNldF9zaXplIChpbnQgd2lkdGgsIGludCBoZWlnaHQpOworKwkJW05vQWNjZXNz b3JNZXRob2RdCisrCQlwdWJsaWMgaW50IGhlaWdodCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMg ZmxvYXQgc2NhbGVfZmFjdG9yIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQor KwkJcHVibGljIGludCB3aWR0aCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgdmlydHVhbCBzaWdu YWwgYm9vbCBkcmF3IChDYWlyby5Db250ZXh0IGNyLCBpbnQgd2lkdGgsIGludCBoZWlnaHQpOwor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5 cGVfaWQgPSAiY2x1dHRlcl9jaGlsZF9tZXRhX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChz aW5jZSA9ICIwLjgiKV0KKysJcHVibGljIGFic3RyYWN0IGNsYXNzIENoaWxkTWV0YSA6IEdMaWIu T2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJ CXByb3RlY3RlZCBDaGlsZE1ldGEgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9y IGdldF9hY3RvciAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQ29udGFpbmVyIGdldF9j b250YWluZXIgKCk7CisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvciBhY3RvciB7IGdldDsgY29uc3Ry dWN0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5Db250YWluZXIgY29udGFpbmVyIHsgZ2V0OyBjb25z dHJ1Y3Q7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfY2xpY2tfYWN0aW9uX2dldF90eXBlICgpIildCisr CVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGNsYXNzIENsaWNrQWN0aW9uIDog Q2x1dHRlci5BY3Rpb24geworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFs c2UsIHR5cGUgPSAiQ2x1dHRlckFjdGlvbioiKV0KKysJCXB1YmxpYyBDbGlja0FjdGlvbiAoKTsK KysJCXB1YmxpYyB1aW50IGdldF9idXR0b24gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44 IildCisrCQlwdWJsaWMgdm9pZCBnZXRfY29vcmRzIChvdXQgZmxvYXQgcHJlc3NfeCwgb3V0IGZs b2F0IHByZXNzX3kpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIENs dXR0ZXIuTW9kaWZpZXJUeXBlIGdldF9zdGF0ZSAoKTsKKysJCXB1YmxpYyB2b2lkIHJlbGVhc2Ug KCk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIGhlbGQgeyBnZXQ7IH0K KysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJ cHVibGljIGludCBsb25nX3ByZXNzX2R1cmF0aW9uIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vz c29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIGludCBs b25nX3ByZXNzX3RocmVzaG9sZCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0K KysJCXB1YmxpYyBib29sIHByZXNzZWQgeyBnZXQ7IH0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25h bCB2b2lkIGNsaWNrZWQgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuOCIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIGJvb2wgbG9uZ19wcmVzcyAoQ2x1 dHRlci5BY3RvciBhY3RvciwgQ2x1dHRlci5Mb25nUHJlc3NTdGF0ZSBzdGF0ZSk7CisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9 ICJjbHV0dGVyX2NsaXBfbm9kZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMCIpXQorKwlwdWJsaWMgY2xhc3MgQ2xpcE5vZGUgOiBDbHV0dGVyLlBhaW50Tm9kZSB7Cisr CQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVy UGFpbnROb2RlKiIpXQorKwkJcHVibGljIENsaXBOb2RlICgpOworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9j bG9uZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1Ymxp YyBjbGFzcyBDbG9uZSA6IENsdXR0ZXIuQWN0b3IsIEF0ay5JbXBsZW1lbnRvciwgQ2x1dHRlci5B bmltYXRhYmxlLCBDbHV0dGVyLkNvbnRhaW5lciwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtD Q29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3Rv cioiKV0KKysJCXB1YmxpYyBDbG9uZSAoQ2x1dHRlci5BY3RvciBzb3VyY2UpOworKwkJcHVibGlj IHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfc291cmNlICgpOworKwkJcHVibGljIHZvaWQgc2V0 X3NvdXJjZSAoQ2x1dHRlci5BY3Rvcj8gc291cmNlKTsKKysJCXB1YmxpYyBDbHV0dGVyLkFjdG9y IHNvdXJjZSB7IGdldDsgc2V0IGNvbnN0cnVjdDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9jb2xvcl9u b2RlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1Ymxp YyBjbGFzcyBDb2xvck5vZGUgOiBDbHV0dGVyLlBpcGVsaW5lTm9kZSB7CisrCQlbQ0NvZGUgKGhh c19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyUGFpbnROb2RlKiIp XQorKwkJcHVibGljIENvbG9yTm9kZSAoQ2x1dHRlci5Db2xvcj8gY29sb3IpOworKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAi Y2x1dHRlcl9jb2xvcml6ZV9lZmZlY3RfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNl ID0gIjEuNCIpXQorKwlwdWJsaWMgY2xhc3MgQ29sb3JpemVFZmZlY3QgOiBDbHV0dGVyLk9mZnNj cmVlbkVmZmVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwg dHlwZSA9ICJDbHV0dGVyRWZmZWN0KiIpXQorKwkJcHVibGljIENvbG9yaXplRWZmZWN0IChDbHV0 dGVyLkNvbG9yIHRpbnQpOworKwkJcHVibGljIENsdXR0ZXIuQ29sb3IgZ2V0X3RpbnQgKCk7Cisr CQlwdWJsaWMgdm9pZCBzZXRfdGludCAoQ2x1dHRlci5Db2xvciB0aW50KTsKKysJCXB1YmxpYyBD bHV0dGVyLkNvbG9yIHRpbnQgeyBnZXQ7IHNldDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9jb25zdHJh aW50X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGlj IGFic3RyYWN0IGNsYXNzIENvbnN0cmFpbnQgOiBDbHV0dGVyLkFjdG9yTWV0YSB7CisrCQlbQ0Nv ZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgQ29uc3Ry YWludCAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHVwZGF0ZV9h bGxvY2F0aW9uIChDbHV0dGVyLkFjdG9yIGFjdG9yLCBDbHV0dGVyLkFjdG9yQm94IGFsbG9jYXRp b24pOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgdXBkYXRlX3ByZWZl cnJlZF9zaXplIChDbHV0dGVyLkFjdG9yIGFjdG9yLCBDbHV0dGVyLk9yaWVudGF0aW9uIGRpcmVj dGlvbiwgZmxvYXQgZm9yX3NpemUsIGZsb2F0IG1pbmltdW1fc2l6ZSwgZmxvYXQgbmF0dXJhbF9z aXplKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0NvbXBhY3RdCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIwLjIiKV0KKysJcHVibGljIGNsYXNzIENyb3NzaW5nRXZlbnQgOiBDbHV0dGVyLkV2ZW50 IHsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuSW5wdXREZXZpY2UgZGV2aWNlOworKwkJcHVibGlj IENsdXR0ZXIuRXZlbnRGbGFncyBmbGFnczsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuQWN0b3Ig cmVsYXRlZDsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuRXZlbnRTZXF1ZW5jZSBzZXF1ZW5jZTsK KysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuQWN0b3Igc291cmNlOworKwkJcHVibGljIHdlYWsgQ2x1 dHRlci5TdGFnZSBzdGFnZTsKKysJCXB1YmxpYyB1aW50MzIgdGltZTsKKysJCXB1YmxpYyBDbHV0 dGVyLkV2ZW50VHlwZSB0eXBlOworKwkJcHVibGljIGZsb2F0IHg7CisrCQlwdWJsaWMgZmxvYXQg eTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCB0eXBlX2lkID0gImNsdXR0ZXJfZGVmb3JtX2VmZmVjdF9nZXRfdHlwZSAoKSIpXQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBEZWZvcm1FZmZl Y3QgOiBDbHV0dGVyLk9mZnNjcmVlbkVmZmVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3Rf ZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgRGVmb3JtRWZmZWN0ICgpOworKwkJW05v V3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgZGVmb3JtX3ZlcnRleCAoZmxvYXQgd2lk dGgsIGZsb2F0IGhlaWdodCwgQ29nbC5UZXh0dXJlVmVydGV4IHZlcnRleCk7CisrCQlwdWJsaWMg dW5vd25lZCBDb2dsLkhhbmRsZSBnZXRfYmFja19tYXRlcmlhbCAoKTsKKysJCXB1YmxpYyB2b2lk IGdldF9uX3RpbGVzIChvdXQgdWludCB4X3RpbGVzLCBvdXQgdWludCB5X3RpbGVzKTsKKysJCXB1 YmxpYyB2b2lkIGludmFsaWRhdGUgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfYmFja19tYXRlcmlh bCAoQ29nbC5IYW5kbGU/IG1hdGVyaWFsKTsKKysJCXB1YmxpYyB2b2lkIHNldF9uX3RpbGVzICh1 aW50IHhfdGlsZXMsIHVpbnQgeV90aWxlcyk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1 YmxpYyB1aW50IHhfdGlsZXMgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisr CQlwdWJsaWMgdWludCB5X3RpbGVzIHsgZ2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfZGVz YXR1cmF0ZV9lZmZlY3RfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIp XQorKwlwdWJsaWMgY2xhc3MgRGVzYXR1cmF0ZUVmZmVjdCA6IENsdXR0ZXIuT2Zmc2NyZWVuRWZm ZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0g IkNsdXR0ZXJFZmZlY3QqIildCisrCQlwdWJsaWMgRGVzYXR1cmF0ZUVmZmVjdCAoZG91YmxlIGZh Y3Rvcik7CisrCQlwdWJsaWMgZG91YmxlIGdldF9mYWN0b3IgKCk7CisrCQlwdWJsaWMgdm9pZCBz ZXRfZmFjdG9yIChkb3VibGUgZmFjdG9yKTsKKysJCXB1YmxpYyBkb3VibGUgZmFjdG9yIHsgZ2V0 OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfZHJhZ19hY3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgY2xhc3MgRHJhZ0FjdGlvbiA6IENs dXR0ZXIuQWN0aW9uIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNl LCB0eXBlID0gIkNsdXR0ZXJBY3Rpb24qIildCisrCQlwdWJsaWMgRHJhZ0FjdGlvbiAoKTsKKysJ CXB1YmxpYyBib29sIGdldF9kcmFnX2FyZWEgKEdyYXBoZW5lLlJlY3QgZHJhZ19hcmVhKTsKKysJ CXB1YmxpYyBDbHV0dGVyLkRyYWdBeGlzIGdldF9kcmFnX2F4aXMgKCk7CisrCQlwdWJsaWMgdW5v d25lZCBDbHV0dGVyLkFjdG9yIGdldF9kcmFnX2hhbmRsZSAoKTsKKysJCXB1YmxpYyB2b2lkIGdl dF9kcmFnX3RocmVzaG9sZCAob3V0IHVpbnQgeF90aHJlc2hvbGQsIG91dCB1aW50IHlfdGhyZXNo b2xkKTsKKysJCXB1YmxpYyB2b2lkIGdldF9tb3Rpb25fY29vcmRzIChvdXQgZmxvYXQgbW90aW9u X3gsIG91dCBmbG9hdCBtb3Rpb25feSk7CisrCQlwdWJsaWMgdm9pZCBnZXRfcHJlc3NfY29vcmRz IChvdXQgZmxvYXQgcHJlc3NfeCwgb3V0IGZsb2F0IHByZXNzX3kpOworKwkJcHVibGljIHZvaWQg c2V0X2RyYWdfYXJlYSAoR3JhcGhlbmUuUmVjdD8gZHJhZ19hcmVhKTsKKysJCXB1YmxpYyB2b2lk IHNldF9kcmFnX2F4aXMgKENsdXR0ZXIuRHJhZ0F4aXMgYXhpcyk7CisrCQlwdWJsaWMgdm9pZCBz ZXRfZHJhZ19oYW5kbGUgKENsdXR0ZXIuQWN0b3I/IGhhbmRsZSk7CisrCQlwdWJsaWMgdm9pZCBz ZXRfZHJhZ190aHJlc2hvbGQgKGludCB4X3RocmVzaG9sZCwgaW50IHlfdGhyZXNob2xkKTsKKysJ CVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1 YmxpYyBHcmFwaGVuZS5SZWN0IGRyYWdfYXJlYSB7IG93bmVkIGdldDsgc2V0OyB9CisrCQlbTm9B Y2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMg Ym9vbCBkcmFnX2FyZWFfc2V0IHsgZ2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5EcmFnQXhpcyBk cmFnX2F4aXMgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIENsdXR0ZXIuQWN0b3IgZHJhZ19oYW5k bGUgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgaW50IHhf ZHJhZ190aHJlc2hvbGQgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlw dWJsaWMgaW50IHlfZHJhZ190aHJlc2hvbGQgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIHZpcnR1 YWwgc2lnbmFsIHZvaWQgZHJhZ19iZWdpbiAoQ2x1dHRlci5BY3RvciBhY3RvciwgZmxvYXQgZXZl bnRfeCwgZmxvYXQgZXZlbnRfeSwgQ2x1dHRlci5Nb2RpZmllclR5cGUgbW9kaWZpZXJzKTsKKysJ CXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGRyYWdfZW5kIChDbHV0dGVyLkFjdG9yIGFjdG9y LCBmbG9hdCBldmVudF94LCBmbG9hdCBldmVudF95LCBDbHV0dGVyLk1vZGlmaWVyVHlwZSBtb2Rp ZmllcnMpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgZHJhZ19tb3Rpb24gKENsdXR0 ZXIuQWN0b3IgYWN0b3IsIGZsb2F0IGRlbHRhX3gsIGZsb2F0IGRlbHRhX3kpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCBib29sIGRyYWdf cHJvZ3Jlc3MgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIGZsb2F0IGRlbHRhX3gsIGZsb2F0IGRlbHRh X3kpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9kcm9wX2FjdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMS44IildCisrCXB1YmxpYyBjbGFzcyBEcm9wQWN0aW9uIDogQ2x1dHRl ci5BY3Rpb24geworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5 cGUgPSAiQ2x1dHRlckFjdGlvbioiKV0KKysJCXB1YmxpYyBEcm9wQWN0aW9uICgpOworKwkJcHVi bGljIHZpcnR1YWwgc2lnbmFsIGJvb2wgY2FuX2Ryb3AgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIGZs b2F0IGV2ZW50X3gsIGZsb2F0IGV2ZW50X3kpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZv aWQgZHJvcCAoQ2x1dHRlci5BY3RvciBhY3RvciwgZmxvYXQgZXZlbnRfeCwgZmxvYXQgZXZlbnRf eSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHNpZ25hbCB2b2lk IGRyb3BfY2FuY2VsIChDbHV0dGVyLkFjdG9yIGFjdG9yLCBmbG9hdCBldmVudF94LCBmbG9hdCBl dmVudF95KTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIG92ZXJfaW4gKENsdXR0ZXIu QWN0b3IgYWN0b3IpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgb3Zlcl9vdXQgKENs dXR0ZXIuQWN0b3IgYWN0b3IpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9lZmZlY3RfZ2V0X3R5cGUgKCki KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgYWJzdHJhY3QgY2xhc3Mg RWZmZWN0IDogQ2x1dHRlci5BY3Rvck1ldGEgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1 bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIEVmZmVjdCAoKTsKKysJCVtOb1dyYXBwZXJd CisrCQlwdWJsaWMgdmlydHVhbCBib29sIG1vZGlmeV9wYWludF92b2x1bWUgKENsdXR0ZXIuUGFp bnRWb2x1bWUgdm9sdW1lKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lk IHBhaW50IChDbHV0dGVyLlBhaW50Q29udGV4dCBwYWludF9jb250ZXh0LCBDbHV0dGVyLkVmZmVj dFBhaW50RmxhZ3MgZmxhZ3MpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZv aWQgcGljayAoQ2x1dHRlci5QaWNrQ29udGV4dCBwaWNrX2NvbnRleHQpOworKwkJW05vV3JhcHBl cl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgcG9zdF9wYWludCAoQ2x1dHRlci5QYWludENvbnRl eHQgcGFpbnRfY29udGV4dCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgYm9v bCBwcmVfcGFpbnQgKENsdXR0ZXIuUGFpbnRDb250ZXh0IHBhaW50X2NvbnRleHQpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgcXVldWVfcmVwYWludCAoKTsK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj b3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24gPSAiZ19ib3hlZF9m cmVlIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2V2ZW50X2dldF90eXBlICgpIildCisrCVtDb21wYWN0 XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCXB1YmxpYyBjbGFzcyBFdmVudCB7Cisr CQlwdWJsaWMgQ2x1dHRlci5FdmVudFR5cGUgdHlwZTsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVj dF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1YmxpYyBFdmVudCAoQ2x1dHRlci5FdmVudFR5cGUg dHlwZSk7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudCBjb3B5ICgpOworKwkJcHVibGljIHZvaWQg ZnJlZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgZG91Ymxl IGdldF9hbmdsZSAoQ2x1dHRlci5FdmVudCB0YXJnZXQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuNiIpXQorKwkJcHVibGljIGRvdWJsZSBnZXRfYXhlcyAob3V0IHVpbnQgbl9heGVzKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1aW50MzIgZ2V0X2J1dHRvbiAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1aW50IGdldF9jbGlj a19jb3VudCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJCXB1YmxpYyB2b2lk IGdldF9jb29yZHMgKG91dCBmbG9hdCB4LCBvdXQgZmxvYXQgeSk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLklucHV0RGV2aWNlIGdldF9k ZXZpY2UgKCk7CisrCQlwdWJsaWMgaW50IGdldF9kZXZpY2VfaWQgKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4yOCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5JbnB1dERldmljZVRv b2wgZ2V0X2RldmljZV90b29sICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJ cHVibGljIENsdXR0ZXIuSW5wdXREZXZpY2VUeXBlIGdldF9kZXZpY2VfdHlwZSAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X2Rpc3RhbmNlIChD bHV0dGVyLkV2ZW50IHRhcmdldCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJ cHVibGljIHVub3duZWQgQ2x1dHRlci5FdmVudFNlcXVlbmNlIGdldF9ldmVudF9zZXF1ZW5jZSAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50 RmxhZ3MgZ2V0X2ZsYWdzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjQiKV0KKysJCXB1 YmxpYyB2b2lkIGdldF9nZXN0dXJlX21vdGlvbl9kZWx0YSAob3V0IGRvdWJsZSBkeCwgb3V0IGRv dWJsZSBkeSk7CisrCQlwdWJsaWMgQ2x1dHRlci5Ub3VjaHBhZEdlc3R1cmVQaGFzZSBnZXRfZ2Vz dHVyZV9waGFzZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjI0IildCisrCQlwdWJsaWMg ZG91YmxlIGdldF9nZXN0dXJlX3BpbmNoX2FuZ2xlX2RlbHRhICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMjQiKV0KKysJCXB1YmxpYyBkb3VibGUgZ2V0X2dlc3R1cmVfcGluY2hfc2NhbGUg KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdWludDE2IGdldF9r ZXlfY29kZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1aW50 IGdldF9rZXlfc3ltYm9sICgpOworKwkJcHVibGljIHVuaWNoYXIgZ2V0X2tleV91bmljb2RlICgp OworKwkJcHVibGljIHVpbnQgZ2V0X21vZGVfZ3JvdXAgKCk7CisrCQlwdWJsaWMgYm9vbCBnZXRf cGFkX2V2ZW50X2RldGFpbHMgKG91dCB1aW50IG51bWJlciwgb3V0IHVpbnQgbW9kZSwgb3V0IGRv dWJsZSB2YWx1ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZv aWQgZ2V0X3Bvc2l0aW9uIChHcmFwaGVuZS5Qb2ludCBwb3NpdGlvbik7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF9yZWxh dGVkICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIGdl dF9zY3JvbGxfZGVsdGEgKG91dCBkb3VibGUgZHgsIG91dCBkb3VibGUgZHkpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIENsdXR0ZXIuU2Nyb2xsRGlyZWN0aW9uIGdl dF9zY3JvbGxfZGlyZWN0aW9uICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjYiKV0KKysJ CXB1YmxpYyBDbHV0dGVyLlNjcm9sbEZpbmlzaEZsYWdzIGdldF9zY3JvbGxfZmluaXNoX2ZsYWdz ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjYiKV0KKysJCXB1YmxpYyBDbHV0dGVyLlNj cm9sbFNvdXJjZSBnZXRfc2Nyb2xsX3NvdXJjZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIw LjYiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X3NvdXJjZSAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuSW5w dXREZXZpY2UgZ2V0X3NvdXJjZV9kZXZpY2UgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44 IildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLlN0YWdlIGdldF9zdGFnZSAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJCXB1YmxpYyBDbHV0dGVyLk1vZGlmaWVyVHlwZSBn ZXRfc3RhdGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNiIpXQorKwkJcHVibGljIHZv aWQgZ2V0X3N0YXRlX2Z1bGwgKG91dCBDbHV0dGVyLk1vZGlmaWVyVHlwZSBidXR0b25fc3RhdGUs IG91dCBDbHV0dGVyLk1vZGlmaWVyVHlwZSBiYXNlX3N0YXRlLCBvdXQgQ2x1dHRlci5Nb2RpZmll clR5cGUgbGF0Y2hlZF9zdGF0ZSwgb3V0IENsdXR0ZXIuTW9kaWZpZXJUeXBlIGxvY2tlZF9zdGF0 ZSwgb3V0IENsdXR0ZXIuTW9kaWZpZXJUeXBlIGVmZmVjdGl2ZV9zdGF0ZSk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMC40IildCisrCQlwdWJsaWMgdWludDMyIGdldF90aW1lICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMjQiKV0KKysJCXB1YmxpYyB1aW50IGdldF90b3VjaHBhZF9nZXN0 dXJlX2Zpbmdlcl9jb3VudCAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl9ldmVudF90 eXBlIildCisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudFR5cGUgZ2V0X3R5cGUgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGJvb2wgaGFzX2NvbnRyb2xfbW9kaWZp ZXIgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGJvb2wgaGFz X3NoaWZ0X21vZGlmaWVyICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1 YmxpYyBib29sIGlzX3BvaW50ZXJfZW11bGF0ZWQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MC42IildCisrCQlwdWJsaWMgdm9pZCBwdXQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44 IildCisrCQlwdWJsaWMgdm9pZCBzZXRfYnV0dG9uICh1aW50MzIgYnV0dG9uKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9jb29yZHMgKGZsb2F0IHgs IGZsb2F0IHkpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIHZvaWQg c2V0X2RldmljZSAoQ2x1dHRlci5JbnB1dERldmljZT8gZGV2aWNlKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjI4IildCisrCQlwdWJsaWMgdm9pZCBzZXRfZGV2aWNlX3Rvb2wgKENsdXR0ZXIu SW5wdXREZXZpY2VUb29sPyB0b29sKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJ CXB1YmxpYyB2b2lkIHNldF9mbGFncyAoQ2x1dHRlci5FdmVudEZsYWdzIGZsYWdzKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9rZXlfY29kZSAodWlu dDE2IGtleV9jb2RlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2 b2lkIHNldF9rZXlfc3ltYm9sICh1aW50IGtleV9zeW0pOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2tleV91bmljb2RlICh1bmljaGFyIGtleV91bmlj b2RlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9y ZWxhdGVkIChDbHV0dGVyLkFjdG9yPyBhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3Njcm9sbF9kZWx0YSAoZG91YmxlIGR4LCBkb3VibGUg ZHkpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3Nj cm9sbF9kaXJlY3Rpb24gKENsdXR0ZXIuU2Nyb2xsRGlyZWN0aW9uIGRpcmVjdGlvbik7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBzZXRfc291cmNlIChDbHV0 dGVyLkFjdG9yPyBhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJs aWMgdm9pZCBzZXRfc291cmNlX2RldmljZSAoQ2x1dHRlci5JbnB1dERldmljZT8gZGV2aWNlKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9zdGFnZSAo Q2x1dHRlci5TdGFnZT8gc3RhZ2UpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJ cHVibGljIHZvaWQgc2V0X3N0YXRlIChDbHV0dGVyLk1vZGlmaWVyVHlwZSBzdGF0ZSk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBzZXRfdGltZSAodWludDMy IHRpbWVfKTsKKysJCXB1YmxpYyBDbHV0dGVyLkFueUV2ZW50IGFueSB7W0NDb2RlIChjbmFtZSA9 ICIoQ2x1dHRlckFueUV2ZW50ICopIildICBnZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLkJ1dHRv bkV2ZW50IGJ1dHRvbiB7W0NDb2RlIChjbmFtZSA9ICIoQ2x1dHRlckJ1dHRvbkV2ZW50ICopIild ICBnZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLkNyb3NzaW5nRXZlbnQgY3Jvc3Npbmcge1tDQ29k ZSAoY25hbWUgPSAiKENsdXR0ZXJDcm9zc2luZ0V2ZW50ICopIildICBnZXQ7IH0KKysJCXB1Ymxp YyBDbHV0dGVyLktleUV2ZW50IGtleSB7W0NDb2RlIChjbmFtZSA9ICIoQ2x1dHRlcktleUV2ZW50 ICopIildICBnZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLk1vdGlvbkV2ZW50IG1vdGlvbiB7W0ND b2RlIChjbmFtZSA9ICIoQ2x1dHRlck1vdGlvbkV2ZW50ICopIildICBnZXQ7IH0KKysJCXB1Ymxp YyBDbHV0dGVyLlNjcm9sbEV2ZW50IHNjcm9sbCB7W0NDb2RlIChjbmFtZSA9ICIoQ2x1dHRlclNj cm9sbEV2ZW50ICopIildICBnZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLlN0YWdlU3RhdGVFdmVu dCBzdGFnZV9zdGF0ZSB7W0NDb2RlIChjbmFtZSA9ICIoQ2x1dHRlclN0YWdlU3RhdGVFdmVudCAq KSIpXSAgZ2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5Ub3VjaEV2ZW50IHRvdWNoIHtbQ0NvZGUg KGNuYW1lID0gIihDbHV0dGVyVG91Y2hFdmVudCAqKSIpXSAgZ2V0OyB9CisrCQlwdWJsaWMgQ2x1 dHRlci5Ub3VjaHBhZFBpbmNoRXZlbnQgdG91Y2hwYWRfcGluY2gge1tDQ29kZSAoY25hbWUgPSAi KENsdXR0ZXJUb3VjaHBhZFBpbmNoRXZlbnQgKikiKV0gIGdldDsgfQorKwkJcHVibGljIENsdXR0 ZXIuVG91Y2hwYWRTd2lwZUV2ZW50IHRvdWNocGFkX3N3aXBlIHtbQ0NvZGUgKGNuYW1lID0gIihD bHV0dGVyVG91Y2hwYWRTd2lwZUV2ZW50ICopIildICBnZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjb3B5X2Z1bmN0aW9uID0gImdf Ym94ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJj bHV0dGVyX2V2ZW50X3NlcXVlbmNlX2dldF90eXBlICgpIildCisrCVtDb21wYWN0XQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwlwdWJsaWMgY2xhc3MgRXZlbnRTZXF1ZW5jZSB7Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlw ZV9pZCA9ICJjbHV0dGVyX2ZpeGVkX2xheW91dF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBjbGFzcyBGaXhlZExheW91dCA6IENsdXR0ZXIuTGF5 b3V0TWFuYWdlciB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwg dHlwZSA9ICJDbHV0dGVyTGF5b3V0TWFuYWdlcioiKV0KKysJCXB1YmxpYyBGaXhlZExheW91dCAo KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCB0eXBlX2lkID0gImNsdXR0ZXJfZmxvd19sYXlvdXRfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjEuMiIpXQorKwlwdWJsaWMgY2xhc3MgRmxvd0xheW91dCA6IENsdXR0ZXIu TGF5b3V0TWFuYWdlciB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxz ZSwgdHlwZSA9ICJDbHV0dGVyTGF5b3V0TWFuYWdlcioiKV0KKysJCXB1YmxpYyBGbG93TGF5b3V0 IChDbHV0dGVyLkZsb3dPcmllbnRhdGlvbiBvcmllbnRhdGlvbik7CisrCQlwdWJsaWMgZmxvYXQg Z2V0X2NvbHVtbl9zcGFjaW5nICgpOworKwkJcHVibGljIHZvaWQgZ2V0X2NvbHVtbl93aWR0aCAo b3V0IGZsb2F0IG1pbl93aWR0aCwgb3V0IGZsb2F0IG1heF93aWR0aCk7CisrCQlwdWJsaWMgYm9v bCBnZXRfaG9tb2dlbmVvdXMgKCk7CisrCQlwdWJsaWMgQ2x1dHRlci5GbG93T3JpZW50YXRpb24g Z2V0X29yaWVudGF0aW9uICgpOworKwkJcHVibGljIHZvaWQgZ2V0X3Jvd19oZWlnaHQgKG91dCBm bG9hdCBtaW5faGVpZ2h0LCBvdXQgZmxvYXQgbWF4X2hlaWdodCk7CisrCQlwdWJsaWMgZmxvYXQg Z2V0X3Jvd19zcGFjaW5nICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTYiKV0KKysJCXB1 YmxpYyBib29sIGdldF9zbmFwX3RvX2dyaWQgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfY29sdW1u X3NwYWNpbmcgKGZsb2F0IHNwYWNpbmcpOworKwkJcHVibGljIHZvaWQgc2V0X2NvbHVtbl93aWR0 aCAoZmxvYXQgbWluX3dpZHRoLCBmbG9hdCBtYXhfd2lkdGgpOworKwkJcHVibGljIHZvaWQgc2V0 X2hvbW9nZW5lb3VzIChib29sIGhvbW9nZW5lb3VzKTsKKysJCXB1YmxpYyB2b2lkIHNldF9vcmll bnRhdGlvbiAoQ2x1dHRlci5GbG93T3JpZW50YXRpb24gb3JpZW50YXRpb24pOworKwkJcHVibGlj IHZvaWQgc2V0X3Jvd19oZWlnaHQgKGZsb2F0IG1pbl9oZWlnaHQsIGZsb2F0IG1heF9oZWlnaHQp OworKwkJcHVibGljIHZvaWQgc2V0X3Jvd19zcGFjaW5nIChmbG9hdCBzcGFjaW5nKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjE2IildCisrCQlwdWJsaWMgdm9pZCBzZXRfc25hcF90b19ncmlk IChib29sIHNuYXBfdG9fZ3JpZCk7CisrCQlwdWJsaWMgZmxvYXQgY29sdW1uX3NwYWNpbmcgeyBn ZXQ7IHNldDsgfQorKwkJcHVibGljIGJvb2wgaG9tb2dlbmVvdXMgeyBnZXQ7IHNldDsgfQorKwkJ W05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgZmxvYXQgbWF4X2NvbHVtbl93aWR0aCB7IGdl dDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBmbG9hdCBtYXhfcm93 X2hlaWdodCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBm bG9hdCBtaW5fY29sdW1uX3dpZHRoIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9k XQorKwkJcHVibGljIGZsb2F0IG1pbl9yb3dfaGVpZ2h0IHsgZ2V0OyBzZXQ7IH0KKysJCXB1Ymxp YyBDbHV0dGVyLkZsb3dPcmllbnRhdGlvbiBvcmllbnRhdGlvbiB7IGdldDsgc2V0IGNvbnN0cnVj dDsgfQorKwkJcHVibGljIGZsb2F0IHJvd19zcGFjaW5nIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjE2IildCisrCQlwdWJsaWMgYm9vbCBzbmFwX3RvX2dyaWQgeyBnZXQ7 IHNldDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9nZXN0dXJlX2FjdGlvbl9nZXRfdHlwZSAoKSIpXQor KwlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCXB1YmxpYyBjbGFzcyBHZXN0dXJlQWN0aW9u IDogQ2x1dHRlci5BY3Rpb24geworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0g ZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFjdGlvbioiKV0KKysJCXB1YmxpYyBHZXN0dXJlQWN0aW9u ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIGNhbmNl bCAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCBib29sIGdlc3R1cmVfcHJl cGFyZSAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIp XQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5JbnB1dERldmljZSBnZXRfZGV2aWNlICh1aW50 IHBvaW50KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE0IildCisrCQlwdWJsaWMgdW5vd25l ZCBDbHV0dGVyLkV2ZW50IGdldF9sYXN0X2V2ZW50ICh1aW50IHBvaW50KTsKKysJCXB1YmxpYyB2 b2lkIGdldF9tb3Rpb25fY29vcmRzICh1aW50IHBvaW50LCBvdXQgZmxvYXQgbW90aW9uX3gsIG91 dCBmbG9hdCBtb3Rpb25feSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVi bGljIGZsb2F0IGdldF9tb3Rpb25fZGVsdGEgKHVpbnQgcG9pbnQsIG91dCBmbG9hdCBkZWx0YV94 LCBvdXQgZmxvYXQgZGVsdGFfeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJ cHVibGljIHVpbnQgZ2V0X25fY3VycmVudF9wb2ludHMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMiIpXQorKwkJcHVibGljIGludCBnZXRfbl90b3VjaF9wb2ludHMgKCk7CisrCQlwdWJs aWMgdm9pZCBnZXRfcHJlc3NfY29vcmRzICh1aW50IHBvaW50LCBvdXQgZmxvYXQgcHJlc3NfeCwg b3V0IGZsb2F0IHByZXNzX3kpOworKwkJcHVibGljIHZvaWQgZ2V0X3JlbGVhc2VfY29vcmRzICh1 aW50IHBvaW50LCBvdXQgZmxvYXQgcmVsZWFzZV94LCBvdXQgZmxvYXQgcmVsZWFzZV95KTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkV2 ZW50U2VxdWVuY2UgZ2V0X3NlcXVlbmNlICh1aW50IHBvaW50KTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjE4IildCisrCQlwdWJsaWMgdm9pZCBnZXRfdGhyZXNob2xkX3RyaWdnZXJfZGlzdGFu Y2UgKG91dCBmbG9hdCB4LCBvdXQgZmxvYXQgeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4y MCIpXQorKwkJcHVibGljIENsdXR0ZXIuR2VzdHVyZVRyaWdnZXJFZGdlIGdldF90aHJlc2hvbGRf dHJpZ2dlcl9lZGdlICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNh dGVkX3NpbmNlID0gIjEuMjAiLCBzaW5jZSA9ICIxLjE4IildCisrCQlwdWJsaWMgQ2x1dHRlci5H ZXN0dXJlVHJpZ2dlckVkZ2UgZ2V0X3RocmVzaG9sZF90cmlnZ2VyX2VnZGUgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGZsb2F0IGdldF92ZWxvY2l0eSAodWlu dCBwb2ludCwgb3V0IGZsb2F0IHZlbG9jaXR5X3gsIG91dCBmbG9hdCB2ZWxvY2l0eV95KTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbl90b3VjaF9w b2ludHMgKGludCBuYl9wb2ludHMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTgiKV0KKysJ CXB1YmxpYyB2b2lkIHNldF90aHJlc2hvbGRfdHJpZ2dlcl9kaXN0YW5jZSAoZmxvYXQgeCwgZmxv YXQgeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xOCIpXQorKwkJcHVibGljIHZvaWQgc2V0 X3RocmVzaG9sZF90cmlnZ2VyX2VkZ2UgKENsdXR0ZXIuR2VzdHVyZVRyaWdnZXJFZGdlIGVkZ2Up OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTYiKV0KKysJCXB1YmxpYyBpbnQgbl90b3VjaF9w b2ludHMgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xOCIpXQorKwkJcHVibGljIGZsb2F0IHRocmVzaG9sZF90cmlnZ2VyX2Rpc3Rh bmNlX3ggeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xOCIpXQorKwkJcHVibGljIGZsb2F0IHRocmVzaG9sZF90cmlnZ2Vy X2Rpc3RhbmNlX3kgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTgiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkdlc3R1cmVUcmlnZ2VyRWRnZSB0aHJlc2hvbGRfdHJp Z2dlcl9lZGdlIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCBi b29sIGdlc3R1cmVfYmVnaW4gKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwkJcHVibGljIHZpcnR1 YWwgc2lnbmFsIHZvaWQgZ2VzdHVyZV9jYW5jZWwgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwkJ cHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgZ2VzdHVyZV9lbmQgKENsdXR0ZXIuQWN0b3IgYWN0 b3IpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIGJvb2wgZ2VzdHVyZV9wcm9ncmVzcyAoQ2x1 dHRlci5BY3RvciBhY3Rvcik7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2dyaWRfbGF5b3V0X2dldF90eXBl ICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCXB1YmxpYyBjbGFzcyBHcmlk TGF5b3V0IDogQ2x1dHRlci5MYXlvdXRNYW5hZ2VyIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVj dF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJMYXlvdXRNYW5hZ2VyKiIpXQorKwkJ cHVibGljIEdyaWRMYXlvdXQgKCk7CisrCQlwdWJsaWMgdm9pZCBhdHRhY2ggKENsdXR0ZXIuQWN0 b3IgY2hpbGQsIGludCBsZWZ0LCBpbnQgdG9wLCBpbnQgd2lkdGgsIGludCBoZWlnaHQpOworKwkJ cHVibGljIHZvaWQgYXR0YWNoX25leHRfdG8gKENsdXR0ZXIuQWN0b3IgY2hpbGQsIENsdXR0ZXIu QWN0b3I/IHNpYmxpbmcsIENsdXR0ZXIuR3JpZFBvc2l0aW9uIHNpZGUsIGludCB3aWR0aCwgaW50 IGhlaWdodCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF9jaGlsZF9hdCAo aW50IGxlZnQsIGludCB0b3ApOworKwkJcHVibGljIGJvb2wgZ2V0X2NvbHVtbl9ob21vZ2VuZW91 cyAoKTsKKysJCXB1YmxpYyB1aW50IGdldF9jb2x1bW5fc3BhY2luZyAoKTsKKysJCXB1YmxpYyBD bHV0dGVyLk9yaWVudGF0aW9uIGdldF9vcmllbnRhdGlvbiAoKTsKKysJCXB1YmxpYyBib29sIGdl dF9yb3dfaG9tb2dlbmVvdXMgKCk7CisrCQlwdWJsaWMgdWludCBnZXRfcm93X3NwYWNpbmcgKCk7 CisrCQlwdWJsaWMgdm9pZCBpbnNlcnRfY29sdW1uIChpbnQgcG9zaXRpb24pOworKwkJcHVibGlj IHZvaWQgaW5zZXJ0X25leHRfdG8gKENsdXR0ZXIuQWN0b3Igc2libGluZywgQ2x1dHRlci5Hcmlk UG9zaXRpb24gc2lkZSk7CisrCQlwdWJsaWMgdm9pZCBpbnNlcnRfcm93IChpbnQgcG9zaXRpb24p OworKwkJcHVibGljIHZvaWQgc2V0X2NvbHVtbl9ob21vZ2VuZW91cyAoYm9vbCBob21vZ2VuZW91 cyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfY29sdW1uX3NwYWNpbmcgKHVpbnQgc3BhY2luZyk7Cisr CQlwdWJsaWMgdm9pZCBzZXRfb3JpZW50YXRpb24gKENsdXR0ZXIuT3JpZW50YXRpb24gb3JpZW50 YXRpb24pOworKwkJcHVibGljIHZvaWQgc2V0X3Jvd19ob21vZ2VuZW91cyAoYm9vbCBob21vZ2Vu ZW91cyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfcm93X3NwYWNpbmcgKHVpbnQgc3BhY2luZyk7Cisr CQlwdWJsaWMgYm9vbCBjb2x1bW5faG9tb2dlbmVvdXMgeyBnZXQ7IHNldDsgfQorKwkJcHVibGlj IHVpbnQgY29sdW1uX3NwYWNpbmcgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIENsdXR0ZXIuT3Jp ZW50YXRpb24gb3JpZW50YXRpb24geyBnZXQ7IHNldDsgfQorKwkJcHVibGljIGJvb2wgcm93X2hv bW9nZW5lb3VzIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyB1aW50IHJvd19zcGFjaW5nIHsgZ2V0 OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfZ3JvdXBfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjAuMiIpXQorKwlwdWJsaWMgY2xhc3MgR3JvdXAgOiBDbHV0dGVyLkFjdG9y LCBBdGsuSW1wbGVtZW50b3IsIENsdXR0ZXIuQW5pbWF0YWJsZSwgQ2x1dHRlci5Db250YWluZXIs IENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24g PSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0b3IqIildCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRl ZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIEdyb3VwICgp OworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEu MTAiLCBzaW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X25fY2hpbGRyZW4gKCk7Cisr CQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIs IHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfbnRo X2NoaWxkIChpbnQgaW5kZXhfKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVw cmVjYXRlZF9zaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCByZW1vdmVfYWxsICgpOwor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5 cGVfaWQgPSAiY2x1dHRlcl9pbWFnZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMCIpXQorKwlwdWJsaWMgY2xhc3MgSW1hZ2UgOiBHTGliLk9iamVjdCwgQ2x1dHRlci5D b250ZW50IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBl ID0gIkNsdXR0ZXJDb250ZW50KiIpXQorKwkJcHVibGljIEltYWdlICgpOworKwkJcHVibGljIHVu b3duZWQgQ29nbC5UZXh0dXJlIGdldF90ZXh0dXJlICgpOworKwkJcHVibGljIGJvb2wgc2V0X2Fy ZWEgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSB1aW50OFtdIGRhdGEsIENvZ2wuUGl4 ZWxGb3JtYXQgcGl4ZWxfZm9ybWF0LCBDYWlyby5SZWN0YW5nbGVJbnQgcmVjdCwgdWludCByb3df c3RyaWRlKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIild CisrCQlwdWJsaWMgYm9vbCBzZXRfYnl0ZXMgKEdMaWIuQnl0ZXMgZGF0YSwgQ29nbC5QaXhlbEZv cm1hdCBwaXhlbF9mb3JtYXQsIHVpbnQgd2lkdGgsIHVpbnQgaGVpZ2h0LCB1aW50IHJvd19zdHJp ZGUpIHRocm93cyBHTGliLkVycm9yOworKwkJcHVibGljIGJvb2wgc2V0X2RhdGEgKFtDQ29kZSAo YXJyYXlfbGVuZ3RoID0gZmFsc2UpXSB1aW50OFtdIGRhdGEsIENvZ2wuUGl4ZWxGb3JtYXQgcGl4 ZWxfZm9ybWF0LCB1aW50IHdpZHRoLCB1aW50IGhlaWdodCwgdWludCByb3dfc3RyaWRlKSB0aHJv d3MgR0xpYi5FcnJvcjsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfaW5wdXRfZGV2aWNlX2dldF90eXBlICgp IildCisrCXB1YmxpYyBjbGFzcyBJbnB1dERldmljZSA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29k ZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBJbnB1dERl dmljZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB1bm93bmVk IENsdXR0ZXIuSW5wdXREZXZpY2UgZ2V0X2Fzc29jaWF0ZWRfZGV2aWNlICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIENsdXR0ZXIuSW5wdXRBeGlzIGdldF9heGlz ICh1aW50IGluZGV4Xyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMg Ym9vbCBnZXRfYXhpc192YWx1ZSAoW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIGRvdWJs ZVtdIGF4ZXMsIENsdXR0ZXIuSW5wdXRBeGlzIGF4aXMsIG91dCBkb3VibGUgdmFsdWUpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBib29sIGdldF9jb29yZHMgKENs dXR0ZXIuRXZlbnRTZXF1ZW5jZT8gc2VxdWVuY2UsIEdyYXBoZW5lLlBvaW50IHBvaW50KTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X2RldmljZV9pZCAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBDbHV0dGVyLklucHV0 TW9kZSBnZXRfZGV2aWNlX21vZGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisr CQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X2RldmljZV9uYW1lICgpOworKwkJcHVibGljIHVu b3duZWQgc3RyaW5nIGdldF9kZXZpY2Vfbm9kZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLklucHV0RGV2aWNlVHlwZSBnZXRfZGV2aWNlX3R5cGUg KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgYm9vbCBnZXRfZW5h YmxlZCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdW5vd25l ZCBDbHV0dGVyLkFjdG9yIGdldF9ncmFiYmVkX2FjdG9yICgpOworKwkJcHVibGljIHZpcnR1YWwg aW50IGdldF9ncm91cF9uX21vZGVzIChpbnQgZ3JvdXApOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuNiIpXQorKwkJcHVibGljIGJvb2wgZ2V0X2hhc19jdXJzb3IgKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgYm9vbCBnZXRfa2V5ICh1aW50IGluZGV4Xywgb3V0 IHVpbnQga2V5dmFsLCBvdXQgQ2x1dHRlci5Nb2RpZmllclR5cGUgbW9kaWZpZXJzKTsKKysJCXB1 YmxpYyBDbHV0dGVyLklucHV0RGV2aWNlTWFwcGluZyBnZXRfbWFwcGluZ19tb2RlICgpOworKwkJ cHVibGljIGludCBnZXRfbW9kZV9zd2l0Y2hfYnV0dG9uX2dyb3VwICh1aW50IGJ1dHRvbik7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNiIpXQorKwkJcHVibGljIENsdXR0ZXIuTW9kaWZpZXJU eXBlIGdldF9tb2RpZmllcl9zdGF0ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0K KysJCXB1YmxpYyB1aW50IGdldF9uX2F4ZXMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42 IildCisrCQlwdWJsaWMgdWludCBnZXRfbl9rZXlzICgpOworKwkJcHVibGljIGludCBnZXRfbl9t b2RlX2dyb3VwcyAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0X25fcmluZ3MgKCk7CisrCQlwdWJsaWMg aW50IGdldF9uX3N0cmlwcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1 YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X3BvaW50ZXJfYWN0b3IgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLlN0YWdlIGdl dF9wb2ludGVyX3N0YWdlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjIiKV0KKysJCXB1 YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfcHJvZHVjdF9pZCAoKTsKKysJCXB1YmxpYyB1bm93bmVk IENsdXR0ZXIuU2VhdCBnZXRfc2VhdCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0K KysJCXB1YmxpYyBHTGliLkxpc3Q8d2VhayBDbHV0dGVyLklucHV0RGV2aWNlPiBnZXRfc2xhdmVf ZGV2aWNlcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIyIildCisrCQlwdWJsaWMgdW5v d25lZCBzdHJpbmcgZ2V0X3ZlbmRvcl9pZCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEw IildCisrCQlwdWJsaWMgdm9pZCBncmFiIChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJCXB1Ymxp YyB2aXJ0dWFsIGJvb2wgaXNfZ3JvdXBlZCAoQ2x1dHRlci5JbnB1dERldmljZSBvdGhlcl9kZXZp Y2UpOworKwkJcHVibGljIHZpcnR1YWwgYm9vbCBpc19tb2RlX3N3aXRjaF9idXR0b24gKHVpbnQg Z3JvdXAsIHVpbnQgYnV0dG9uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlw dWJsaWMgdmlydHVhbCBib29sIGtleWNvZGVfdG9fZXZkZXYgKHVpbnQgaGFyZHdhcmVfa2V5Y29k ZSwgdWludCBldmRldl9rZXljb2RlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisr CQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIHNlcXVlbmNlX2dldF9ncmFiYmVkX2FjdG9y IChDbHV0dGVyLkV2ZW50U2VxdWVuY2Ugc2VxdWVuY2UpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIHNlcXVlbmNlX2dyYWIgKENsdXR0ZXIuRXZlbnRTZXF1 ZW5jZSBzZXF1ZW5jZSwgQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQgc2VxdWVuY2VfdW5ncmFiIChDbHV0dGVyLkV2ZW50 U2VxdWVuY2Ugc2VxdWVuY2UpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVi bGljIHZvaWQgc2V0X2VuYWJsZWQgKGJvb2wgZW5hYmxlZCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS42IildCisrCQlwdWJsaWMgdm9pZCBzZXRfa2V5ICh1aW50IGluZGV4XywgdWludCBrZXl2 YWwsIENsdXR0ZXIuTW9kaWZpZXJUeXBlIG1vZGlmaWVycyk7CisrCQlwdWJsaWMgdm9pZCBzZXRf bWFwcGluZ19tb2RlIChDbHV0dGVyLklucHV0RGV2aWNlTWFwcGluZyBtYXBwaW5nKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCB1bmdyYWIgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCB1cGRhdGVfZnJvbV9ldmVu dCAoQ2x1dHRlci5FdmVudCBldmVudCwgYm9vbCB1cGRhdGVfc3RhZ2UpOworKwkJW05vV3JhcHBl cl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgdXBkYXRlX2Zyb21fdG9vbCAoQ2x1dHRlci5JbnB1 dERldmljZVRvb2wgdG9vbCk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkJhY2tlbmQgYmFja2VuZCB7IG93bmVk IGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5JbnB1dE1vZGUgZGV2aWNlX21v ZGUgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIHN0cmluZyBkZXZpY2Vfbm9kZSB7IGdl dDsgY29uc3RydWN0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMg Q2x1dHRlci5JbnB1dERldmljZVR5cGUgZGV2aWNlX3R5cGUgeyBnZXQ7IGNvbnN0cnVjdDsgfQor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIGJvb2wgZW5hYmxlZCB7IGdl dDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgYm9vbCBo YXNfY3Vyc29yIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIGludCBpZCB7IGdldDsgY29uc3Ry dWN0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5JbnB1dERldmljZU1hcHBpbmcgbWFwcGluZ19tb2Rl IHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB1 aW50IG5fYXhlcyB7IGdldDsgfQorKwkJcHVibGljIGludCBuX21vZGVfZ3JvdXBzIHsgZ2V0OyBj b25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBpbnQgbl9yaW5ncyB7IGdldDsgY29uc3RydWN0OyB9Cisr CQlwdWJsaWMgaW50IG5fc3RyaXBzIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtOb0FjY2Vzc29y TWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHN0cmluZyBu YW1lIHsgb3duZWQgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIy IildCisrCQlwdWJsaWMgc3RyaW5nIHByb2R1Y3RfaWQgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJ cHVibGljIENsdXR0ZXIuU2VhdCBzZWF0IHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjIyIildCisrCQlwdWJsaWMgc3RyaW5nIHZlbmRvcl9pZCB7IGdldDsgY29u c3RydWN0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2lucHV0X2RldmljZV90b29sX2dldF90eXBlICgp IildCisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBJbnB1dERldmljZVRvb2wgOiBHTGliLk9iamVj dCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90 ZWN0ZWQgSW5wdXREZXZpY2VUb29sICgpOworKwkJcHVibGljIHVpbnQ2NCBnZXRfaWQgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yOCIpXQorKwkJcHVibGljIHVpbnQ2NCBnZXRfc2VyaWFs ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjgiKV0KKysJCXB1YmxpYyBDbHV0dGVyLklu cHV0RGV2aWNlVG9vbFR5cGUgZ2V0X3Rvb2xfdHlwZSAoKTsKKysJCXB1YmxpYyB1aW50NjQgaWQg eyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIHVpbnQ2NCBzZXJpYWwgeyBnZXQ7IGNvbnN0 cnVjdDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgQ2x1dHRlci5JbnB1dERl dmljZVRvb2xUeXBlIHR5cGUgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9p bnB1dF9mb2N1c19nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgYWJzdHJhY3QgY2xhc3MgSW5wdXRG b2N1cyA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9 IGZhbHNlKV0KKysJCXByb3RlY3RlZCBJbnB1dEZvY3VzICgpOworKwkJW05vV3JhcHBlcl0KKysJ CXB1YmxpYyB2aXJ0dWFsIHZvaWQgY29tbWl0X3RleHQgKHN0cmluZyB0ZXh0KTsKKysJCVtOb1dy YXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGRlbGV0ZV9zdXJyb3VuZGluZyAodWludCBv ZmZzZXQsIHVpbnQgbGVuKTsKKysJCXB1YmxpYyBib29sIGZpbHRlcl9rZXlfZXZlbnQgKENsdXR0 ZXIuS2V5RXZlbnQga2V5KTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lk IGZvY3VzX2luIChDbHV0dGVyLklucHV0TWV0aG9kIGlucHV0X21ldGhvZCk7CisrCQlbTm9XcmFw cGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBmb2N1c19vdXQgKCk7CisrCQlwdWJsaWMgYm9v bCBpc19mb2N1c2VkICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQg cmVxdWVzdF9zdXJyb3VuZGluZyAoKTsKKysJCXB1YmxpYyB2b2lkIHJlc2V0ICgpOworKwkJcHVi bGljIHZvaWQgc2V0X2Nhbl9zaG93X3ByZWVkaXQgKGJvb2wgY2FuX3Nob3dfcHJlZWRpdCk7Cisr CQlwdWJsaWMgdm9pZCBzZXRfY29udGVudF9oaW50cyAoQ2x1dHRlci5JbnB1dENvbnRlbnRIaW50 RmxhZ3MgaGludCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfY29udGVudF9wdXJwb3NlIChDbHV0dGVy LklucHV0Q29udGVudFB1cnBvc2UgcHVycG9zZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfY3Vyc29y X2xvY2F0aW9uIChHcmFwaGVuZS5SZWN0IHJlY3QpOworKwkJcHVibGljIHZvaWQgc2V0X2lucHV0 X3BhbmVsX3N0YXRlIChDbHV0dGVyLklucHV0UGFuZWxTdGF0ZSBzdGF0ZSk7CisrCQlbTm9XcmFw cGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBzZXRfcHJlZWRpdF90ZXh0IChzdHJpbmcgcHJl ZWRpdCwgdWludCBjdXJzb3IpOworKwkJcHVibGljIHZvaWQgc2V0X3N1cnJvdW5kaW5nIChzdHJp bmcgdGV4dCwgdWludCBjdXJzb3IsIHVpbnQgYW5jaG9yKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfaW5w dXRfbWV0aG9kX2dldF90eXBlICgpIildCisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBJbnB1dE1l dGhvZCA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9 IGZhbHNlKV0KKysJCXByb3RlY3RlZCBJbnB1dE1ldGhvZCAoKTsKKysJCVtOb1dyYXBwZXJdCisr CQlwdWJsaWMgdmlydHVhbCBib29sIGZpbHRlcl9rZXlfZXZlbnQgKENsdXR0ZXIuRXZlbnQga2V5 KTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgZm9jdXNfaW4gKENsdXR0ZXIuSW5wdXRGb2N1cyBh Y3Rvcik7CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGZvY3VzX291dCAoKTsKKysJCXB1YmxpYyB2 b2lkIGZvcndhcmRfa2V5ICh1aW50MzIga2V5dmFsLCB1aW50MzIga2V5Y29kZSwgdWludDMyIHN0 YXRlLCB1aW50NjQgdGltZV8sIGJvb2wgcHJlc3MpOworKwkJcHVibGljIHZvaWQgbm90aWZ5X2tl eV9ldmVudCAoQ2x1dHRlci5FdmVudCBldmVudCwgYm9vbCBmaWx0ZXJlZCk7CisrCQlbTm9XcmFw cGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCByZXNldCAoKTsKKysJCVtOb1dyYXBwZXJdCisr CQlwdWJsaWMgdmlydHVhbCB2b2lkIHNldF9jdXJzb3JfbG9jYXRpb24gKEdyYXBoZW5lLlJlY3Qg cmVjdCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfaW5wdXRfcGFuZWxfc3RhdGUgKENsdXR0ZXIuSW5w dXRQYW5lbFN0YXRlIHN0YXRlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9wcmVlZGl0X3RleHQgKHN0 cmluZz8gcHJlZWRpdCwgdWludCBjdXJzb3IpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2 aXJ0dWFsIHZvaWQgc2V0X3N1cnJvdW5kaW5nIChzdHJpbmcgdGV4dCwgdWludCBjdXJzb3IsIHVp bnQgYW5jaG9yKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHVwZGF0 ZV9jb250ZW50X2hpbnRzIChDbHV0dGVyLklucHV0Q29udGVudEhpbnRGbGFncyBoaW50KTsKKysJ CVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHVwZGF0ZV9jb250ZW50X3B1cnBv c2UgKENsdXR0ZXIuSW5wdXRDb250ZW50UHVycG9zZSBwdXJwb3NlKTsKKysJCVtOb0FjY2Vzc29y TWV0aG9kXQorKwkJcHVibGljIGJvb2wgY2FuX3Nob3dfcHJlZWRpdCB7IGdldDsgc2V0OyB9Cisr CQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBDbHV0dGVyLklucHV0Q29udGVudEhpbnRG bGFncyBjb250ZW50X2hpbnRzIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQor KwkJcHVibGljIENsdXR0ZXIuSW5wdXRDb250ZW50UHVycG9zZSBjb250ZW50X3B1cnBvc2UgeyBn ZXQ7IHNldDsgfQorKwkJW0hhc0VtaXR0ZXJdCisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgY29tbWl0 IChzdHJpbmcgdGV4dCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgY3Vyc29yX2xvY2F0aW9uX2No YW5nZWQgKEdyYXBoZW5lLlJlY3Qgb2JqZWN0KTsKKysJCVtIYXNFbWl0dGVyXQorKwkJcHVibGlj IHNpZ25hbCB2b2lkIGRlbGV0ZV9zdXJyb3VuZGluZyAodWludCBvZmZzZXQsIHVpbnQgbGVuKTsK KysJCXB1YmxpYyBzaWduYWwgdm9pZCBpbnB1dF9wYW5lbF9zdGF0ZSAoQ2x1dHRlci5JbnB1dFBh bmVsU3RhdGUgb2JqZWN0KTsKKysJCVtIYXNFbWl0dGVyXQorKwkJcHVibGljIHNpZ25hbCB2b2lk IHJlcXVlc3Rfc3Vycm91bmRpbmcgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2ludGVydmFsX2dldF90 eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGNsYXNzIElu dGVydmFsIDogR0xpYi5Jbml0aWFsbHlVbm93bmVkLCBDbHV0dGVyLlNjcmlwdGFibGUgeworKwkJ W0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHVibGljIEludGVy dmFsIChHTGliLlR5cGUgZ3R5cGUsIC4uLik7CisrCQlwdWJsaWMgQ2x1dHRlci5JbnRlcnZhbCBj bG9uZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB1bm93bmVk IEdMaWIuVmFsdWU/IGNvbXB1dGUgKGRvdWJsZSBmYWN0b3IpOworKwkJcHVibGljIHZpcnR1YWwg Ym9vbCBjb21wdXRlX3ZhbHVlIChkb3VibGUgZmFjdG9yLCBvdXQgR0xpYi5WYWx1ZSB2YWx1ZSk7 CisrCQlwdWJsaWMgR0xpYi5WYWx1ZSBnZXRfZmluYWxfdmFsdWUgKCk7CisrCQlwdWJsaWMgR0xp Yi5WYWx1ZSBnZXRfaW5pdGlhbF92YWx1ZSAoKTsKKysJCXB1YmxpYyB2b2lkIGdldF9pbnRlcnZh bCAoLi4uKTsKKysJCXB1YmxpYyBHTGliLlR5cGUgZ2V0X3ZhbHVlX3R5cGUgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGJvb2wgaXNfdmFsaWQgKCk7CisrCQlw dWJsaWMgdW5vd25lZCBHTGliLlZhbHVlPyBwZWVrX2ZpbmFsX3ZhbHVlICgpOworKwkJcHVibGlj IHVub3duZWQgR0xpYi5WYWx1ZT8gcGVla19pbml0aWFsX3ZhbHVlICgpOworKwkJcHVibGljIHN0 YXRpYyB2b2lkIHJlZ2lzdGVyX3Byb2dyZXNzX2Z1bmMgKEdMaWIuVHlwZSB2YWx1ZV90eXBlLCBD bHV0dGVyLlByb2dyZXNzRnVuYyBmdW5jKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIild CisrCQlwdWJsaWMgdm9pZCBzZXRfZmluYWwgKC4uLik7CisrCQlwdWJsaWMgdm9pZCBzZXRfZmlu YWxfdmFsdWUgKEdMaWIuVmFsdWUgdmFsdWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAi KV0KKysJCXB1YmxpYyB2b2lkIHNldF9pbml0aWFsICguLi4pOworKwkJcHVibGljIHZvaWQgc2V0 X2luaXRpYWxfdmFsdWUgKEdMaWIuVmFsdWUgdmFsdWUpOworKwkJcHVibGljIHZvaWQgc2V0X2lu dGVydmFsICguLi4pOworKwkJcHVibGljIHZpcnR1YWwgYm9vbCB2YWxpZGF0ZSAoR0xpYi5QYXJh bVNwZWMgcHNwZWMpOworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2Up XQorKwkJcHVibGljIEludGVydmFsLndpdGhfdmFsdWVzIChHTGliLlR5cGUgZ3R5cGUsIEdMaWIu VmFsdWU/IGluaXRpYWwsIEdMaWIuVmFsdWU/IGZpbmFsKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9k XQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBHTGliLlZhbHVlIGZp bmFsIHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBHTGliLlZhbHVlIGluaXRpYWwgeyBvd25l ZCBnZXQ7IHNldDsgfQorKwkJcHVibGljIEdMaWIuVHlwZSB2YWx1ZV90eXBlIHsgZ2V0OyBjb25z dHJ1Y3Q7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0NvbXBhY3RdCisrCVtWZXJzaW9uIChz aW5jZSA9ICIwLjIiKV0KKysJcHVibGljIGNsYXNzIEtleUV2ZW50IDogQ2x1dHRlci5FdmVudCB7 CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLklucHV0RGV2aWNlIGRldmljZTsKKysJCXB1YmxpYyBD bHV0dGVyLkV2ZW50RmxhZ3MgZmxhZ3M7CisrCQlwdWJsaWMgdWludDE2IGhhcmR3YXJlX2tleWNv ZGU7CisrCQlwdWJsaWMgdWludCBrZXl2YWw7CisrCQlwdWJsaWMgQ2x1dHRlci5Nb2RpZmllclR5 cGUgbW9kaWZpZXJfc3RhdGU7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLkFjdG9yIHNvdXJjZTsK KysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuU3RhZ2Ugc3RhZ2U7CisrCQlwdWJsaWMgdWludDMyIHRp bWU7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudFR5cGUgdHlwZTsKKysJCXB1YmxpYyB1bmljaGFy IHVuaWNvZGVfdmFsdWU7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2tleWZyYW1lX3RyYW5zaXRpb25fZ2V0 X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJcHVibGljIGNsYXNz IEtleWZyYW1lVHJhbnNpdGlvbiA6IENsdXR0ZXIuUHJvcGVydHlUcmFuc2l0aW9uLCBDbHV0dGVy LlNjcmlwdGFibGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2Us IHR5cGUgPSAiQ2x1dHRlclRyYW5zaXRpb24qIildCisrCQlwdWJsaWMgS2V5ZnJhbWVUcmFuc2l0 aW9uIChzdHJpbmcgcHJvcGVydHlfbmFtZSk7CisrCQlwdWJsaWMgdm9pZCBjbGVhciAoKTsKKysJ CXB1YmxpYyB2b2lkIGdldF9rZXlfZnJhbWUgKHVpbnQgaW5kZXhfLCBvdXQgZG91YmxlIGtleSwg b3V0IENsdXR0ZXIuQW5pbWF0aW9uTW9kZSBtb2RlLCBvdXQgR0xpYi5WYWx1ZSB2YWx1ZSk7Cisr CQlwdWJsaWMgdWludCBnZXRfbl9rZXlfZnJhbWVzICgpOworKwkJcHVibGljIHZvaWQgc2V0X2tl eV9mcmFtZSAodWludCBpbmRleF8sIGRvdWJsZSBrZXksIENsdXR0ZXIuQW5pbWF0aW9uTW9kZSBt b2RlLCBHTGliLlZhbHVlIHZhbHVlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9rZXlfZnJhbWVzIChb Q0NvZGUgKGFycmF5X2xlbmd0aF9jbmFtZSA9ICJuX2tleV9mcmFtZXMiLCBhcnJheV9sZW5ndGhf cG9zID0gMC41LCBhcnJheV9sZW5ndGhfdHlwZSA9ICJndWludCIpXSBkb3VibGVbXSBrZXlfZnJh bWVzKTsKKysJCXB1YmxpYyB2b2lkIHNldF9tb2RlcyAoW0NDb2RlIChhcnJheV9sZW5ndGhfY25h bWUgPSAibl9tb2RlcyIsIGFycmF5X2xlbmd0aF9wb3MgPSAwLjUsIGFycmF5X2xlbmd0aF90eXBl ID0gImd1aW50IildIENsdXR0ZXIuQW5pbWF0aW9uTW9kZVtdIG1vZGVzKTsKKysJCXB1YmxpYyB2 b2lkIHNldF92YWx1ZXMgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoX2NuYW1lID0gIm5fdmFsdWVzIiwg YXJyYXlfbGVuZ3RoX3BvcyA9IDAuNSwgYXJyYXlfbGVuZ3RoX3R5cGUgPSAiZ3VpbnQiKV0gR0xp Yi5WYWx1ZVtdIHZhbHVlcyk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2tleW1hcF9nZXRfdHlwZSAoKSIp XQorKwlwdWJsaWMgYWJzdHJhY3QgY2xhc3MgS2V5bWFwIDogR0xpYi5PYmplY3QgeworKwkJW0ND b2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIEtleW1h cCAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIGJvb2wgZ2V0X2NhcHNfbG9ja19zdGF0ZSAoKTsKKysJ CXB1YmxpYyB2aXJ0dWFsIFBhbmdvLkRpcmVjdGlvbiBnZXRfZGlyZWN0aW9uICgpOworKwkJcHVi bGljIHZpcnR1YWwgYm9vbCBnZXRfbnVtX2xvY2tfc3RhdGUgKCk7CisrCQlwdWJsaWMgc2lnbmFs IHZvaWQgc3RhdGVfY2hhbmdlZCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfbGF5ZXJfbm9kZV9nZXRf dHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgTGF5ZXJOb2RlIDogQ2x1dHRlci5QYWludE5vZGUg eworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1 dHRlclBhaW50Tm9kZSoiKV0KKysJCXB1YmxpYyBMYXllck5vZGUgKENvZ2wuTWF0cml4IHByb2pl Y3Rpb24sIENhaXJvLlJlY3RhbmdsZSB2aWV3cG9ydCwgZmxvYXQgd2lkdGgsIGZsb2F0IGhlaWdo dCwgdWludDggb3BhY2l0eSk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2xheW91dF9tYW5hZ2VyX2dldF90 eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJcHVibGljIGFic3RyYWN0 IGNsYXNzIExheW91dE1hbmFnZXIgOiBHTGliLkluaXRpYWxseVVub3duZWQgeworKwkJW0NDb2Rl IChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIExheW91dE1h bmFnZXIgKCk7CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGFsbG9jYXRlIChDbHV0dGVyLkNvbnRh aW5lciBjb250YWluZXIsIENsdXR0ZXIuQWN0b3JCb3ggYWxsb2NhdGlvbiwgQ2x1dHRlci5BbGxv Y2F0aW9uRmxhZ3MgZmxhZ3MpOworKwkJcHVibGljIHZvaWQgY2hpbGRfZ2V0IChDbHV0dGVyLkNv bnRhaW5lciBjb250YWluZXIsIENsdXR0ZXIuQWN0b3IgYWN0b3IsIC4uLik7CisrCQlwdWJsaWMg dm9pZCBjaGlsZF9nZXRfcHJvcGVydHkgKENsdXR0ZXIuQ29udGFpbmVyIGNvbnRhaW5lciwgQ2x1 dHRlci5BY3RvciBhY3Rvciwgc3RyaW5nIHByb3BlcnR5X25hbWUsIEdMaWIuVmFsdWUgdmFsdWUp OworKwkJcHVibGljIHZvaWQgY2hpbGRfc2V0IChDbHV0dGVyLkNvbnRhaW5lciBjb250YWluZXIs IENsdXR0ZXIuQWN0b3IgYWN0b3IsIC4uLik7CisrCQlwdWJsaWMgdm9pZCBjaGlsZF9zZXRfcHJv cGVydHkgKENsdXR0ZXIuQ29udGFpbmVyIGNvbnRhaW5lciwgQ2x1dHRlci5BY3RvciBhY3Rvciwg c3RyaW5nIHByb3BlcnR5X25hbWUsIEdMaWIuVmFsdWUgdmFsdWUpOworKwkJW05vV3JhcHBlcl0K KysJCXB1YmxpYyB2aXJ0dWFsIHVub3duZWQgQ2x1dHRlci5MYXlvdXRNZXRhIGNyZWF0ZV9jaGls ZF9tZXRhIChDbHV0dGVyLkNvbnRhaW5lciBjb250YWluZXIsIENsdXR0ZXIuQWN0b3IgYWN0b3Ip OworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgZW5kX2FuaW1hdGlvbiAo KTsKKysJCXB1YmxpYyB1bm93bmVkIEdMaWIuUGFyYW1TcGVjIGZpbmRfY2hpbGRfcHJvcGVydHkg KHN0cmluZyBuYW1lKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCBkb3VibGUg Z2V0X2FuaW1hdGlvbl9wcm9ncmVzcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0K KysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuTGF5b3V0TWV0YSBnZXRfY2hpbGRfbWV0YSAoQ2x1 dHRlci5Db250YWluZXIgY29udGFpbmVyLCBDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJCVtOb1dy YXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCBHTGliLlR5cGUgZ2V0X2NoaWxkX21ldGFfdHlwZSAo KTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgZ2V0X3ByZWZlcnJlZF9oZWlnaHQgKENsdXR0ZXIu Q29udGFpbmVyIGNvbnRhaW5lciwgZmxvYXQgZm9yX3dpZHRoLCBvdXQgZmxvYXQgbWluX2hlaWdo dF9wLCBvdXQgZmxvYXQgbmF0X2hlaWdodF9wKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgZ2V0 X3ByZWZlcnJlZF93aWR0aCAoQ2x1dHRlci5Db250YWluZXIgY29udGFpbmVyLCBmbG9hdCBmb3Jf aGVpZ2h0LCBvdXQgZmxvYXQgbWluX3dpZHRoX3AsIG91dCBmbG9hdCBuYXRfd2lkdGhfcCk7Cisr CQlbQ0NvZGUgKGFycmF5X2xlbmd0aF9wb3MgPSAwLjEsIGFycmF5X2xlbmd0aF90eXBlID0gImd1 aW50IildCisrCQlwdWJsaWMgR0xpYi5QYXJhbVNwZWNbXSBsaXN0X2NoaWxkX3Byb3BlcnRpZXMg KCk7CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHNldF9jb250YWluZXIgKENsdXR0ZXIuQ29udGFp bmVyPyBjb250YWluZXIpOworKwkJW0hhc0VtaXR0ZXJdCisrCQlwdWJsaWMgdmlydHVhbCBzaWdu YWwgdm9pZCBsYXlvdXRfY2hhbmdlZCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfbGF5b3V0X21ldGFf Z2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwlwdWJsaWMgYWJz dHJhY3QgY2xhc3MgTGF5b3V0TWV0YSA6IENsdXR0ZXIuQ2hpbGRNZXRhIHsKKysJCVtDQ29kZSAo aGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBMYXlvdXRNZXRh ICgpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5MYXlvdXRNYW5hZ2VyIGdldF9tYW5hZ2Vy ICgpOworKwkJcHVibGljIENsdXR0ZXIuTGF5b3V0TWFuYWdlciBtYW5hZ2VyIHsgZ2V0OyBjb25z dHJ1Y3Q7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24gPSAi Z19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJjbHV0dGVyX21hcmdpbl9nZXRfdHlwZSAoKSIpXQor KwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGNsYXNz IE1hcmdpbiB7CisrCQlwdWJsaWMgZmxvYXQgYm90dG9tOworKwkJcHVibGljIGZsb2F0IGxlZnQ7 CisrCQlwdWJsaWMgZmxvYXQgcmlnaHQ7CisrCQlwdWJsaWMgZmxvYXQgdG9wOworKwkJW0NDb2Rl IChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHVibGljIE1hcmdpbiAoKTsK KysJCXB1YmxpYyBDbHV0dGVyLk1hcmdpbiBjb3B5ICgpOworKwkJcHVibGljIHZvaWQgZnJlZSAo KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0NvbXBhY3RdCisrCVtWZXJzaW9uIChzaW5jZSA9 ICIwLjIiKV0KKysJcHVibGljIGNsYXNzIE1vdGlvbkV2ZW50IDogQ2x1dHRlci5FdmVudCB7Cisr CQlwdWJsaWMgZG91YmxlIGF4ZXM7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLklucHV0RGV2aWNl IGRldmljZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50RmxhZ3MgZmxhZ3M7CisrCQlwdWJsaWMg Q2x1dHRlci5Nb2RpZmllclR5cGUgbW9kaWZpZXJfc3RhdGU7CisrCQlwdWJsaWMgd2VhayBDbHV0 dGVyLkFjdG9yIHNvdXJjZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuU3RhZ2Ugc3RhZ2U7Cisr CQlwdWJsaWMgdWludDMyIHRpbWU7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudFR5cGUgdHlwZTsK KysJCXB1YmxpYyBmbG9hdCB4OworKwkJcHVibGljIGZsb2F0IHk7CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVy X29mZnNjcmVlbl9lZmZlY3RfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEu NCIpXQorKwlwdWJsaWMgYWJzdHJhY3QgY2xhc3MgT2Zmc2NyZWVuRWZmZWN0IDogQ2x1dHRlci5F ZmZlY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJ cHJvdGVjdGVkIE9mZnNjcmVlbkVmZmVjdCAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIENvZ2wuSGFu ZGxlIGNyZWF0ZV90ZXh0dXJlIChmbG9hdCB3aWR0aCwgZmxvYXQgaGVpZ2h0KTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjE0IildCisrCQlwdWJsaWMgYm9vbCBnZXRfdGFyZ2V0X3JlY3QgKG91 dCB1bm93bmVkIEdyYXBoZW5lLlJlY3QgcmVjdCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9 IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNCIsIHNpbmNlID0gIjEuOCIpXQorKwkJcHVi bGljIGJvb2wgZ2V0X3RhcmdldF9zaXplIChvdXQgZmxvYXQgd2lkdGgsIG91dCBmbG9hdCBoZWln aHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1bm93bmVkIENv Z2wuSGFuZGxlIGdldF90ZXh0dXJlICgpOworKwkJcHVibGljIHZpcnR1YWwgdm9pZCBwYWludF90 YXJnZXQgKENsdXR0ZXIuUGFpbnRDb250ZXh0IHBhaW50X2NvbnRleHQpOworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1 dHRlcl9wYWdlX3R1cm5fZWZmZWN0X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjQiKV0KKysJcHVibGljIGNsYXNzIFBhZ2VUdXJuRWZmZWN0IDogQ2x1dHRlci5EZWZvcm1F ZmZlY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUg PSAiQ2x1dHRlckVmZmVjdCoiKV0KKysJCXB1YmxpYyBQYWdlVHVybkVmZmVjdCAoZG91YmxlIHBl cmlvZCwgZG91YmxlIGFuZ2xlLCBmbG9hdCByYWRpdXMpOworKwkJcHVibGljIGRvdWJsZSBnZXRf YW5nbGUgKCk7CisrCQlwdWJsaWMgZG91YmxlIGdldF9wZXJpb2QgKCk7CisrCQlwdWJsaWMgZmxv YXQgZ2V0X3JhZGl1cyAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9hbmdsZSAoZG91YmxlIGFuZ2xl KTsKKysJCXB1YmxpYyB2b2lkIHNldF9wZXJpb2QgKGRvdWJsZSBwZXJpb2QpOworKwkJcHVibGlj IHZvaWQgc2V0X3JhZGl1cyAoZmxvYXQgcmFkaXVzKTsKKysJCXB1YmxpYyBkb3VibGUgYW5nbGUg eyBnZXQ7IHNldDsgfQorKwkJcHVibGljIGRvdWJsZSBwZXJpb2QgeyBnZXQ7IHNldDsgfQorKwkJ cHVibGljIGZsb2F0IHJhZGl1cyB7IGdldDsgc2V0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgcmVmX2Z1bmN0aW9uID0gImNsdXR0ZXJf cGFpbnRfY29udGV4dF9yZWYiLCB0eXBlX2lkID0gImNsdXR0ZXJfcGFpbnRfY29udGV4dF9nZXRf dHlwZSAoKSIsIHVucmVmX2Z1bmN0aW9uID0gImNsdXR0ZXJfcGFpbnRfY29udGV4dF91bnJlZiIp XQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIFBhaW50Q29udGV4dCB7CisrCQlwdWJsaWMg dm9pZCBkZXN0cm95ICgpOworKwkJcHVibGljIHVub3duZWQgQ29nbC5GcmFtZWJ1ZmZlciBnZXRf ZnJhbWVidWZmZXIgKCk7CisrCQlwdWJsaWMgdm9pZCBwb3BfZnJhbWVidWZmZXIgKCk7CisrCQlw dWJsaWMgdm9pZCBwdXNoX2ZyYW1lYnVmZmVyIChDb2dsLkZyYW1lYnVmZmVyIGZyYW1lYnVmZmVy KTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuUGFpbnRDb250ZXh0IEByZWYgKCk7CisrCQlw dWJsaWMgdm9pZCB1bnJlZiAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfcGFpbnRfbm9kZV9nZXRfdHlw ZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgYWJzdHJhY3Qg Y2xhc3MgUGFpbnROb2RlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZh bHNlKV0KKysJCXByb3RlY3RlZCBQYWludE5vZGUgKCk7CisrCQlwdWJsaWMgdm9pZCBhZGRfY2hp bGQgKENsdXR0ZXIuUGFpbnROb2RlIGNoaWxkKTsKKysJCXB1YmxpYyB2b2lkIGFkZF9tdWx0aXRl eHR1cmVfcmVjdGFuZ2xlIChDbHV0dGVyLkFjdG9yQm94IHJlY3QsIGZsb2F0IHRleHRfY29vcmRz LCB1aW50IHRleHRfY29vcmRzX2xlbik7CisrCQlwdWJsaWMgdm9pZCBhZGRfcmVjdGFuZ2xlIChD bHV0dGVyLkFjdG9yQm94IHJlY3QpOworKwkJcHVibGljIHZvaWQgYWRkX3RleHR1cmVfcmVjdGFu Z2xlIChDbHV0dGVyLkFjdG9yQm94IHJlY3QsIGZsb2F0IHhfMSwgZmxvYXQgeV8xLCBmbG9hdCB4 XzIsIGZsb2F0IHlfMik7CisrCQlwdWJsaWMgdW5vd25lZCBDb2dsLkZyYW1lYnVmZmVyIGdldF9m cmFtZWJ1ZmZlciAoKTsKKysJCXB1YmxpYyB2b2lkIHBhaW50IChDbHV0dGVyLlBhaW50Q29udGV4 dCBwYWludF9jb250ZXh0KTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuUGFpbnROb2RlIEBy ZWYgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfbmFtZSAoc3RyaW5nIG5hbWUpOworKwkJcHVibGlj IHZvaWQgdW5yZWYgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY29weV9mdW5jdGlvbiA9ICJnX2JveGVkX2NvcHkiLCBmcmVlX2Z1bmN0 aW9uID0gImdfYm94ZWRfZnJlZSIsIHR5cGVfaWQgPSAiY2x1dHRlcl9wYWludF92b2x1bWVfZ2V0 X3R5cGUgKCkiKV0KKysJW0NvbXBhY3RdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJ cHVibGljIGNsYXNzIFBhaW50Vm9sdW1lIHsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0K KysJCXB1YmxpYyBDbHV0dGVyLlBhaW50Vm9sdW1lIGNvcHkgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS42IildCisrCQlwdWJsaWMgdm9pZCBmcmVlICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuNiIpXQorKwkJcHVibGljIGZsb2F0IGdldF9kZXB0aCAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfaGVpZ2h0ICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIHZvaWQgZ2V0X29yaWdpbiAob3V0IHVub3du ZWQgR3JhcGhlbmUuUG9pbnQzRCB2ZXJ0ZXgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIp XQorKwkJcHVibGljIGZsb2F0IGdldF93aWR0aCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9kZXB0aCAoZmxvYXQgZGVwdGgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIGJvb2wgc2V0X2Zyb21fYWxsb2NhdGlvbiAo Q2x1dHRlci5BY3RvciBhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlw dWJsaWMgdm9pZCBzZXRfaGVpZ2h0IChmbG9hdCBoZWlnaHQpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuNiIpXQorKwkJcHVibGljIHZvaWQgc2V0X29yaWdpbiAoR3JhcGhlbmUuUG9pbnQzRCBv cmlnaW4pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIHZvaWQgc2V0 X3dpZHRoIChmbG9hdCB3aWR0aCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlw dWJsaWMgdm9pZCB1bmlvbiAoQ2x1dHRlci5QYWludFZvbHVtZSBhbm90aGVyX3B2KTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCB1bmlvbl9ib3ggKENsdXR0 ZXIuQWN0b3JCb3ggYm94KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfcGFuX2FjdGlvbl9nZXRfdHlwZSAo KSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwlwdWJsaWMgY2xhc3MgUGFuQWN0 aW9uIDogQ2x1dHRlci5HZXN0dXJlQWN0aW9uIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9m dW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3Rpb24qIildCisrCQlwdWJsaWMgUGFu QWN0aW9uICgpOworKwkJcHVibGljIGRvdWJsZSBnZXRfYWNjZWxlcmF0aW9uX2ZhY3RvciAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjI0IildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X2NvbnN0 cmFpbmVkX21vdGlvbl9kZWx0YSAodWludCBwb2ludCwgb3V0IGZsb2F0IGRlbHRhX3gsIG91dCBm bG9hdCBkZWx0YV95KTsKKysJCXB1YmxpYyBkb3VibGUgZ2V0X2RlY2VsZXJhdGlvbiAoKTsKKysJ CXB1YmxpYyBib29sIGdldF9pbnRlcnBvbGF0ZSAoKTsKKysJCXB1YmxpYyB2b2lkIGdldF9pbnRl cnBvbGF0ZWRfY29vcmRzIChvdXQgZmxvYXQgaW50ZXJwb2xhdGVkX3gsIG91dCBmbG9hdCBpbnRl cnBvbGF0ZWRfeSk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X2ludGVycG9sYXRlZF9kZWx0YSAob3V0 IGZsb2F0IGRlbHRhX3gsIG91dCBmbG9hdCBkZWx0YV95KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjE0IildCisrCQlwdWJsaWMgdm9pZCBnZXRfbW90aW9uX2Nvb3JkcyAodWludCBwb2ludCwg b3V0IGZsb2F0IG1vdGlvbl94LCBvdXQgZmxvYXQgbW90aW9uX3kpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTQiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfbW90aW9uX2RlbHRhICh1aW50IHBv aW50LCBvdXQgZmxvYXQgZGVsdGFfeCwgb3V0IGZsb2F0IGRlbHRhX3kpOworKwkJcHVibGljIENs dXR0ZXIuUGFuQXhpcyBnZXRfcGFuX2F4aXMgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfYWNjZWxl cmF0aW9uX2ZhY3RvciAoZG91YmxlIGZhY3Rvcik7CisrCQlwdWJsaWMgdm9pZCBzZXRfZGVjZWxl cmF0aW9uIChkb3VibGUgcmF0ZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfaW50ZXJwb2xhdGUgKGJv b2wgc2hvdWxkX2ludGVycG9sYXRlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9wYW5fYXhpcyAoQ2x1 dHRlci5QYW5BeGlzIGF4aXMpOworKwkJcHVibGljIGRvdWJsZSBhY2NlbGVyYXRpb25fZmFjdG9y IHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBkb3VibGUgZGVjZWxlcmF0aW9uIHsgZ2V0OyBzZXQ7 IH0KKysJCXB1YmxpYyBib29sIGludGVycG9sYXRlIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBD bHV0dGVyLlBhbkF4aXMgcGFuX2F4aXMgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIHZpcnR1YWwg c2lnbmFsIGJvb2wgcGFuIChDbHV0dGVyLkFjdG9yIGFjdG9yLCBib29sIGlzX2ludGVycG9sYXRl ZCk7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBwYW5fc3RvcHBlZCAoQ2x1dHRlci5B Y3RvciBhY3Rvcik7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgbG93ZXJfY2FzZV9jc3VmZml4ID0gInBhcmFtX3VuaXRzIiwgdHlwZV9pZCA9 ICJjbHV0dGVyX3BhcmFtX3VuaXRzX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBQYXJh bVNwZWNVbml0IDogR0xpYi5QYXJhbVNwZWMgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1 bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFBhcmFtU3BlY1VuaXQgKCk7CisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9 ICJjbHV0dGVyX3BhdGhfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIp XQorKwlwdWJsaWMgY2xhc3MgUGF0aCA6IEdMaWIuSW5pdGlhbGx5VW5vd25lZCB7CisrCQlbQ0Nv ZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwdWJsaWMgUGF0aCAoKTsK KysJCXB1YmxpYyB2b2lkIGFkZF9jYWlyb19wYXRoIChDYWlyby5QYXRoIGNwYXRoKTsKKysJCXB1 YmxpYyB2b2lkIGFkZF9jbG9zZSAoKTsKKysJCXB1YmxpYyB2b2lkIGFkZF9jdXJ2ZV90byAoaW50 IHhfMSwgaW50IHlfMSwgaW50IHhfMiwgaW50IHlfMiwgaW50IHhfMywgaW50IHlfMyk7CisrCQlw dWJsaWMgdm9pZCBhZGRfbGluZV90byAoaW50IHgsIGludCB5KTsKKysJCXB1YmxpYyB2b2lkIGFk ZF9tb3ZlX3RvIChpbnQgeCwgaW50IHkpOworKwkJcHVibGljIHZvaWQgYWRkX25vZGUgKENsdXR0 ZXIuUGF0aE5vZGUgbm9kZSk7CisrCQlwdWJsaWMgdm9pZCBhZGRfcmVsX2N1cnZlX3RvIChpbnQg eF8xLCBpbnQgeV8xLCBpbnQgeF8yLCBpbnQgeV8yLCBpbnQgeF8zLCBpbnQgeV8zKTsKKysJCXB1 YmxpYyB2b2lkIGFkZF9yZWxfbGluZV90byAoaW50IHgsIGludCB5KTsKKysJCXB1YmxpYyB2b2lk IGFkZF9yZWxfbW92ZV90byAoaW50IHgsIGludCB5KTsKKysJCXB1YmxpYyBib29sIGFkZF9zdHJp bmcgKHN0cmluZyBzdHIpOworKwkJcHVibGljIHZvaWQgY2xlYXIgKCk7CisrCQlwdWJsaWMgdm9p ZCBAZm9yZWFjaCAoQ2x1dHRlci5QYXRoQ2FsbGJhY2sgY2FsbGJhY2spOworKwkJcHVibGljIHN0 cmluZyBnZXRfZGVzY3JpcHRpb24gKCk7CisrCQlwdWJsaWMgdWludCBnZXRfbGVuZ3RoICgpOwor KwkJcHVibGljIHVpbnQgZ2V0X25fbm9kZXMgKCk7CisrCQlwdWJsaWMgQ2x1dHRlci5QYXRoTm9k ZSBnZXRfbm9kZSAodWludCBpbmRleF8pOworKwkJcHVibGljIEdMaWIuU0xpc3Q8d2VhayBDbHV0 dGVyLlBhdGhOb2RlPz4gZ2V0X25vZGVzICgpOworKwkJcHVibGljIHVpbnQgZ2V0X3Bvc2l0aW9u IChkb3VibGUgcHJvZ3Jlc3MsIG91dCBDbHV0dGVyLktub3QgcG9zaXRpb24pOworKwkJcHVibGlj IHZvaWQgaW5zZXJ0X25vZGUgKGludCBpbmRleF8sIENsdXR0ZXIuUGF0aE5vZGUgbm9kZSk7Cisr CQlwdWJsaWMgdm9pZCByZW1vdmVfbm9kZSAodWludCBpbmRleF8pOworKwkJcHVibGljIHZvaWQg cmVwbGFjZV9ub2RlICh1aW50IGluZGV4XywgQ2x1dHRlci5QYXRoTm9kZSBub2RlKTsKKysJCXB1 YmxpYyBib29sIHNldF9kZXNjcmlwdGlvbiAoc3RyaW5nIHN0cik7CisrCQlwdWJsaWMgdm9pZCB0 b19jYWlyb19wYXRoIChDYWlyby5Db250ZXh0IGNyKTsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVj dF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1YmxpYyBQYXRoLndpdGhfZGVzY3JpcHRpb24gKHN0 cmluZyBkZXNjKTsKKysJCXB1YmxpYyBzdHJpbmcgZGVzY3JpcHRpb24geyBvd25lZCBnZXQ7IHNl dDsgfQorKwkJcHVibGljIHVpbnQgbGVuZ3RoIHsgZ2V0OyB9CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3Bh dGhfY29uc3RyYWludF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS42Iild CisrCXB1YmxpYyBjbGFzcyBQYXRoQ29uc3RyYWludCA6IENsdXR0ZXIuQ29uc3RyYWludCB7Cisr CQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVy Q29uc3RyYWludCoiKV0KKysJCXB1YmxpYyBQYXRoQ29uc3RyYWludCAoQ2x1dHRlci5QYXRoPyBw YXRoLCBmbG9hdCBvZmZzZXQpOworKwkJcHVibGljIGZsb2F0IGdldF9vZmZzZXQgKCk7CisrCQlw dWJsaWMgdW5vd25lZCBDbHV0dGVyLlBhdGggZ2V0X3BhdGggKCk7CisrCQlwdWJsaWMgdm9pZCBz ZXRfb2Zmc2V0IChmbG9hdCBvZmZzZXQpOworKwkJcHVibGljIHZvaWQgc2V0X3BhdGggKENsdXR0 ZXIuUGF0aD8gcGF0aCk7CisrCQlwdWJsaWMgZmxvYXQgb2Zmc2V0IHsgZ2V0OyBzZXQ7IH0KKysJ CXB1YmxpYyBDbHV0dGVyLlBhdGggcGF0aCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgc2lnbmFs IHZvaWQgbm9kZV9yZWFjaGVkIChDbHV0dGVyLkFjdG9yIGFjdG9yLCB1aW50IGluZGV4KTsKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCByZWZf ZnVuY3Rpb24gPSAiY2x1dHRlcl9waWNrX2NvbnRleHRfcmVmIiwgdHlwZV9pZCA9ICJjbHV0dGVy X3BpY2tfY29udGV4dF9nZXRfdHlwZSAoKSIsIHVucmVmX2Z1bmN0aW9uID0gImNsdXR0ZXJfcGlj a19jb250ZXh0X3VucmVmIildCisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3MgUGlja0NvbnRl eHQgeworKwkJcHVibGljIHZvaWQgZGVzdHJveSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0 ZXIuUGlja0NvbnRleHQgQHJlZiAoKTsKKysJCXB1YmxpYyB2b2lkIHVucmVmICgpOworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQg PSAiY2x1dHRlcl9waXBlbGluZV9ub2RlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEwIildCisrCXB1YmxpYyBjbGFzcyBQaXBlbGluZU5vZGUgOiBDbHV0dGVyLlBhaW50 Tm9kZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlw cm90ZWN0ZWQgUGlwZWxpbmVOb2RlICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9wcm9wZXJ0eV90cmFu c2l0aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1 YmxpYyBjbGFzcyBQcm9wZXJ0eVRyYW5zaXRpb24gOiBDbHV0dGVyLlRyYW5zaXRpb24sIENsdXR0 ZXIuU2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxz ZSwgdHlwZSA9ICJDbHV0dGVyVHJhbnNpdGlvbioiKV0KKysJCXB1YmxpYyBQcm9wZXJ0eVRyYW5z aXRpb24gKHN0cmluZz8gcHJvcGVydHlfbmFtZSk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcg Z2V0X3Byb3BlcnR5X25hbWUgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfcHJvcGVydHlfbmFtZSAo c3RyaW5nPyBwcm9wZXJ0eV9uYW1lKTsKKysJCXB1YmxpYyBzdHJpbmcgcHJvcGVydHlfbmFtZSB7 IGdldDsgc2V0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3JlY3RhbmdsZV9nZXRfdHlwZSAoKSIpXQor KwlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCXB1YmxpYyBjbGFzcyBSZWN0YW5nbGUgOiBD bHV0dGVyLkFjdG9yLCBBdGsuSW1wbGVtZW50b3IsIENsdXR0ZXIuQW5pbWF0YWJsZSwgQ2x1dHRl ci5Db250YWluZXIsIENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1 Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0b3IqIildCisrCQlbVmVyc2lv biAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIpXQorKwkJcHVi bGljIFJlY3RhbmdsZSAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVj YXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMC4yIildCisrCQlwdWJsaWMgQ2x1dHRlci5D b2xvciBnZXRfYm9yZGVyX2NvbG9yICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVl LCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyB1 aW50IGdldF9ib3JkZXJfd2lkdGggKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUs IGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENsdXR0ZXIuQ29sb3IgZ2V0 X2NvbG9yICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3Np bmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9ib3JkZXJfY29sb3IgKENsdXR0ZXIu Q29sb3IgY29sb3IpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVk X3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9ib3Jk ZXJfd2lkdGggKHVpbnQgd2lkdGgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBk ZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9jb2xvciAoQ2x1 dHRlci5Db2xvciBjb2xvcik7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBm YWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0b3IqIildCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9 IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIFJlY3RhbmdsZS53 aXRoX2NvbG9yIChDbHV0dGVyLkNvbG9yIGNvbG9yKTsKKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9y IGJvcmRlcl9jb2xvciB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgdWludCBib3JkZXJfd2lkdGgg eyBnZXQ7IHNldDsgfQorKwkJcHVibGljIENsdXR0ZXIuQ29sb3IgY29sb3IgeyBnZXQ7IHNldDsg fQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9vbCBoYXNfYm9yZGVyIHsgZ2V0 OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfcm9vdF9ub2RlX2dldF90eXBlICgpIildCisrCXB1 YmxpYyBjbGFzcyBSb290Tm9kZSA6IENsdXR0ZXIuUGFpbnROb2RlIHsKKysJCVtDQ29kZSAoaGFz X2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJQYWludE5vZGUqIild CisrCQlwdWJsaWMgUm9vdE5vZGUgKENvZ2wuRnJhbWVidWZmZXIgZnJhbWVidWZmZXIsIENsdXR0 ZXIuQ29sb3IgY2xlYXJfY29sb3IsIENvZ2wuQnVmZmVyQml0IGNsZWFyX2ZsYWdzKTsKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lk ID0gImNsdXR0ZXJfcm90YXRlX2FjdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMiIpXQorKwlwdWJsaWMgY2xhc3MgUm90YXRlQWN0aW9uIDogQ2x1dHRlci5HZXN0 dXJlQWN0aW9uIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0 eXBlID0gIkNsdXR0ZXJBY3Rpb24qIildCisrCQlwdWJsaWMgUm90YXRlQWN0aW9uICgpOworKwkJ cHVibGljIHZpcnR1YWwgc2lnbmFsIGJvb2wgcm90YXRlIChDbHV0dGVyLkFjdG9yIGFjdG9yLCBk b3VibGUgYW5nbGUpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zY3JpcHRfZ2V0X3R5cGUgKCkiKV0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwlwdWJsaWMgY2xhc3MgU2NyaXB0IDogR0xpYi5P YmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJ cHVibGljIFNjcmlwdCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1Ymxp YyB2b2lkIGFkZF9zZWFyY2hfcGF0aHMgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoX2NuYW1lID0gIm5f cGF0aHMiLCBhcnJheV9sZW5ndGhfcG9zID0gMS4xLCBhcnJheV9sZW5ndGhfdHlwZSA9ICJnc2l6 ZSIpXSBzdHJpbmdbXSBwYXRocyk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRl cHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQg YWRkX3N0YXRlcyAoc3RyaW5nPyBuYW1lLCBDbHV0dGVyLlN0YXRlIHN0YXRlKTsKKysJCXB1Ymxp YyB2b2lkIGNvbm5lY3Rfc2lnbmFscyAodm9pZCogdXNlcl9kYXRhKTsKKysJCXB1YmxpYyB2b2lk IGNvbm5lY3Rfc2lnbmFsc19mdWxsIChDbHV0dGVyLlNjcmlwdENvbm5lY3RGdW5jIGZ1bmMpOwor KwkJcHVibGljIHZvaWQgZW5zdXJlX29iamVjdHMgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBHTGli Lk9iamVjdCBnZXRfb2JqZWN0IChzdHJpbmcgbmFtZSk7CisrCQlwdWJsaWMgaW50IGdldF9vYmpl Y3RzICguLi4pOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3Np bmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIu U3RhdGUgZ2V0X3N0YXRlcyAoc3RyaW5nPyBuYW1lKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEwIildCisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X3RyYW5zbGF0aW9uX2RvbWFpbiAo KTsKKysJCXB1YmxpYyB2aXJ0dWFsIEdMaWIuVHlwZSBnZXRfdHlwZV9mcm9tX25hbWUgKHN0cmlu ZyB0eXBlX25hbWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIEdM aWIuTGlzdDx3ZWFrIEdMaWIuT2JqZWN0PiBsaXN0X29iamVjdHMgKCk7CisrCQlwdWJsaWMgdWlu dCBsb2FkX2Zyb21fZGF0YSAoc3RyaW5nIGRhdGEsIHNzaXplX3QgbGVuZ3RoKSB0aHJvd3MgR0xp Yi5FcnJvcjsKKysJCXB1YmxpYyB1aW50IGxvYWRfZnJvbV9maWxlIChzdHJpbmcgZmlsZW5hbWUp IHRocm93cyBHTGliLkVycm9yOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1 YmxpYyB1aW50IGxvYWRfZnJvbV9yZXNvdXJjZSAoc3RyaW5nIHJlc291cmNlX3BhdGgpIHRocm93 cyBHTGliLkVycm9yOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHN0 cmluZyBsb29rdXBfZmlsZW5hbWUgKHN0cmluZyBmaWxlbmFtZSk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3RyYW5zbGF0aW9uX2RvbWFpbiAoc3Ry aW5nPyBkb21haW4pOworKwkJcHVibGljIHZvaWQgdW5tZXJnZV9vYmplY3RzICh1aW50IG1lcmdl X2lkKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIHN0cmluZyBmaWxlbmFtZSB7 IG93bmVkIGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9vbCBmaWxl bmFtZV9zZXQgeyBnZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJs aWMgc3RyaW5nIHRyYW5zbGF0aW9uX2RvbWFpbiB7IGdldDsgc2V0OyB9CisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0 dGVyX3Njcm9sbF9hY3Rvcl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MiIpXQorKwlwdWJsaWMgY2xhc3MgU2Nyb2xsQWN0b3IgOiBDbHV0dGVyLkFjdG9yLCBBdGsuSW1w bGVtZW50b3IsIENsdXR0ZXIuQW5pbWF0YWJsZSwgQ2x1dHRlci5Db250YWluZXIsIENsdXR0ZXIu U2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwg dHlwZSA9ICJDbHV0dGVyQWN0b3IqIildCisrCQlwdWJsaWMgU2Nyb2xsQWN0b3IgKCk7CisrCQlw dWJsaWMgQ2x1dHRlci5TY3JvbGxNb2RlIGdldF9zY3JvbGxfbW9kZSAoKTsKKysJCXB1YmxpYyB2 b2lkIHNjcm9sbF90b19wb2ludCAoR3JhcGhlbmUuUG9pbnQgcG9pbnQpOworKwkJcHVibGljIHZv aWQgc2Nyb2xsX3RvX3JlY3QgKEdyYXBoZW5lLlJlY3QgcmVjdCk7CisrCQlwdWJsaWMgdm9pZCBz ZXRfc2Nyb2xsX21vZGUgKENsdXR0ZXIuU2Nyb2xsTW9kZSBtb2RlKTsKKysJCXB1YmxpYyBDbHV0 dGVyLlNjcm9sbE1vZGUgc2Nyb2xsX21vZGUgeyBnZXQ7IHNldDsgfQorKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGhhc190eXBlX2lkID0gZmFs c2UpXQorKwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwlwdWJsaWMg Y2xhc3MgU2Nyb2xsRXZlbnQgOiBDbHV0dGVyLkV2ZW50IHsKKysJCXB1YmxpYyBkb3VibGUgYXhl czsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuSW5wdXREZXZpY2UgZGV2aWNlOworKwkJcHVibGlj IENsdXR0ZXIuU2Nyb2xsRGlyZWN0aW9uIGRpcmVjdGlvbjsKKysJCXB1YmxpYyBDbHV0dGVyLlNj cm9sbEZpbmlzaEZsYWdzIGZpbmlzaF9mbGFnczsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50Rmxh Z3MgZmxhZ3M7CisrCQlwdWJsaWMgQ2x1dHRlci5Nb2RpZmllclR5cGUgbW9kaWZpZXJfc3RhdGU7 CisrCQlwdWJsaWMgQ2x1dHRlci5TY3JvbGxTb3VyY2Ugc2Nyb2xsX3NvdXJjZTsKKysJCXB1Ymxp YyB3ZWFrIENsdXR0ZXIuQWN0b3Igc291cmNlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5TdGFn ZSBzdGFnZTsKKysJCXB1YmxpYyB1aW50MzIgdGltZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50 VHlwZSB0eXBlOworKwkJcHVibGljIGZsb2F0IHg7CisrCQlwdWJsaWMgZmxvYXQgeTsKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lk ID0gImNsdXR0ZXJfc2VhdF9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgYWJzdHJhY3QgY2xhc3Mg U2VhdCA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9 IGZhbHNlKV0KKysJCXByb3RlY3RlZCBTZWF0ICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1Ymxp YyB2aXJ0dWFsIHZvaWQgYXBwbHlfa2JkX2ExMXlfc2V0dGluZ3MgKENsdXR0ZXIuS2JkQTExeVNl dHRpbmdzIHNldHRpbmdzKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgYmVsbF9ub3RpZnkgKCk7 CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGNvbXByZXNzX21vdGlvbiAoQ2x1dHRlci5FdmVudCBl dmVudCwgQ2x1dHRlci5FdmVudCB0b19kaXNjYXJkKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJs aWMgdmlydHVhbCB2b2lkIGNvcHlfZXZlbnRfZGF0YSAoQ2x1dHRlci5FdmVudCBzcmMsIENsdXR0 ZXIuRXZlbnQgZGVzdCk7CisrCQlwdWJsaWMgdmlydHVhbCBDbHV0dGVyLlZpcnR1YWxJbnB1dERl dmljZSBjcmVhdGVfdmlydHVhbF9kZXZpY2UgKENsdXR0ZXIuSW5wdXREZXZpY2VUeXBlIGRldmlj ZV90eXBlKTsKKysJCXB1YmxpYyB2b2lkIGVuc3VyZV9hMTF5X3N0YXRlICgpOworKwkJW05vV3Jh cHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgZnJlZV9ldmVudF9kYXRhIChDbHV0dGVyLkV2 ZW50IGV2ZW50KTsKKysJCXB1YmxpYyB2b2lkIGdldF9rYmRfYTExeV9zZXR0aW5ncyAoQ2x1dHRl ci5LYmRBMTF5U2V0dGluZ3Mgc2V0dGluZ3MpOworKwkJcHVibGljIHZpcnR1YWwgdW5vd25lZCBD bHV0dGVyLklucHV0RGV2aWNlIGdldF9rZXlib2FyZCAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHVu b3duZWQgQ2x1dHRlci5LZXltYXAgZ2V0X2tleW1hcCAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHVu b3duZWQgQ2x1dHRlci5JbnB1dERldmljZSBnZXRfcG9pbnRlciAoKTsKKysJCXB1YmxpYyB2b2lk IGdldF9wb2ludGVyX2ExMXlfc2V0dGluZ3MgKENsdXR0ZXIuUG9pbnRlckExMXlTZXR0aW5ncyBz ZXR0aW5ncyk7CisrCQlwdWJsaWMgdmlydHVhbCBDbHV0dGVyLlZpcnR1YWxEZXZpY2VUeXBlIGdl dF9zdXBwb3J0ZWRfdmlydHVhbF9kZXZpY2VfdHlwZXMgKCk7CisrCQlwdWJsaWMgdmlydHVhbCBH TGliLkxpc3Q8d2VhayBDbHV0dGVyLklucHV0RGV2aWNlPiBsaXN0X2RldmljZXMgKCk7CisrCQlw dWJsaWMgdm9pZCBzZXRfa2JkX2ExMXlfc2V0dGluZ3MgKENsdXR0ZXIuS2JkQTExeVNldHRpbmdz IHNldHRpbmdzKTsKKysJCXB1YmxpYyB2b2lkIHNldF9wb2ludGVyX2ExMXlfZHdlbGxfY2xpY2tf dHlwZSAoQ2x1dHRlci5Qb2ludGVyQTExeUR3ZWxsQ2xpY2tUeXBlIGNsaWNrX3R5cGUpOworKwkJ cHVibGljIHZvaWQgc2V0X3BvaW50ZXJfYTExeV9zZXR0aW5ncyAoQ2x1dHRlci5Qb2ludGVyQTEx eVNldHRpbmdzIHNldHRpbmdzKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgd2FycF9wb2ludGVy IChpbnQgeCwgaW50IHkpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgQ2x1dHRl ci5CYWNrZW5kIGJhY2tlbmQgeyBvd25lZCBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIHNp Z25hbCB2b2lkIGRldmljZV9hZGRlZCAoQ2x1dHRlci5JbnB1dERldmljZSBvYmplY3QpOworKwkJ cHVibGljIHNpZ25hbCB2b2lkIGRldmljZV9yZW1vdmVkIChDbHV0dGVyLklucHV0RGV2aWNlIG9i amVjdCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQga2JkX2ExMXlfZmxhZ3NfY2hhbmdlZCAodWlu dCBzZXR0aW5nc19mbGFncywgdWludCBjaGFuZ2VkX21hc2spOworKwkJcHVibGljIHNpZ25hbCB2 b2lkIGtiZF9hMTF5X21vZHNfc3RhdGVfY2hhbmdlZCAodWludCBsYXRjaGVkX21hc2ssIHVpbnQg bG9ja2VkX21hc2spOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHB0cl9hMTF5X2R3ZWxsX2NsaWNr X3R5cGVfY2hhbmdlZCAoQ2x1dHRlci5Qb2ludGVyQTExeUR3ZWxsQ2xpY2tUeXBlIGNsaWNrX3R5 cGUpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHB0cl9hMTF5X3RpbWVvdXRfc3RhcnRlZCAoQ2x1 dHRlci5JbnB1dERldmljZSBkZXZpY2UsIENsdXR0ZXIuUG9pbnRlckExMXlUaW1lb3V0VHlwZSB0 aW1lb3V0X3R5cGUsIHVpbnQgZGVsYXkpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHB0cl9hMTF5 X3RpbWVvdXRfc3RvcHBlZCAoQ2x1dHRlci5JbnB1dERldmljZSBkZXZpY2UsIENsdXR0ZXIuUG9p bnRlckExMXlUaW1lb3V0VHlwZSB0aW1lb3V0X3R5cGUsIGJvb2wgY2xpY2tlZCk7CisrCQlwdWJs aWMgc2lnbmFsIHZvaWQgdG9vbF9jaGFuZ2VkIChDbHV0dGVyLklucHV0RGV2aWNlIG9iamVjdCwg Q2x1dHRlci5JbnB1dERldmljZVRvb2wgcDApOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zZXR0aW5nc19n ZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBjbGFz cyBTZXR0aW5ncyA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5j dGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBTZXR0aW5ncyAoKTsKKysJCXB1YmxpYyBzdGF0 aWMgdW5vd25lZCBDbHV0dGVyLlNldHRpbmdzIGdldF9kZWZhdWx0ICgpOworKwkJW05vQWNjZXNz b3JNZXRob2RdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2lu Y2UgPSAiMS4xMCIsIHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIENsdXR0ZXIuQmFja2VuZCBi YWNrZW5kIHsgY29uc3RydWN0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBpbnQgZG5kX2RyYWdfdGhyZXNob2xkIHsgZ2V0 OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGludCBkb3VibGVfY2xp Y2tfZGlzdGFuY2UgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJs aWMgaW50IGRvdWJsZV9jbGlja190aW1lIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0 aG9kXQorKwkJcHVibGljIGludCBmb250X2FudGlhbGlhcyB7IGdldDsgc2V0OyB9CisrCQlbTm9B Y2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBpbnQgZm9udF9kcGkgeyBnZXQ7IHNldDsgfQorKwkJ W05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgc3RyaW5nIGZvbnRfaGludF9zdHlsZSB7IG93 bmVkIGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBpbnQgZm9u dF9oaW50aW5nIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGlj IHN0cmluZyBmb250X25hbWUgeyBvd25lZCBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRo b2RdCisrCQlwdWJsaWMgc3RyaW5nIGZvbnRfc3VicGl4ZWxfb3JkZXIgeyBvd25lZCBnZXQ7IHNl dDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgdWludCBmb250Y29uZmlnX3Rp bWVzdGFtcCB7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS44IildCisrCQlwdWJsaWMgaW50IGxvbmdfcHJlc3NfZHVyYXRpb24geyBnZXQ7IHNl dDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgdWludCBwYXNzd29yZF9oaW50 X3RpbWUgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgaW50 IHVuc2NhbGVkX2ZvbnRfZHBpIHsgc2V0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtDb21w YWN0XQorKwlwdWJsaWMgY2xhc3MgU2hhZGVyIHsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfc2hhZGVyX2Vm ZmVjdF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1Ymxp YyBjbGFzcyBTaGFkZXJFZmZlY3QgOiBDbHV0dGVyLk9mZnNjcmVlbkVmZmVjdCB7CisrCQlbQ0Nv ZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyRWZmZWN0 KiIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIFNoYWRlckVmZmVj dCAoQ2x1dHRlci5TaGFkZXJUeXBlIHNoYWRlcl90eXBlKTsKKysJCXB1YmxpYyB1bm93bmVkIENv Z2wuSGFuZGxlIGdldF9wcm9ncmFtICgpOworKwkJcHVibGljIHVub3duZWQgQ29nbC5IYW5kbGUg Z2V0X3NoYWRlciAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCBzdHJpbmcg Z2V0X3N0YXRpY19zaGFkZXJfc291cmNlICgpOworKwkJcHVibGljIGJvb2wgc2V0X3NoYWRlcl9z b3VyY2UgKHN0cmluZyBzb3VyY2UpOworKwkJcHVibGljIHZvaWQgc2V0X3VuaWZvcm1fdmFsdWUg KHN0cmluZyBuYW1lLCBHTGliLlZhbHVlIHZhbHVlKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQor KwkJcHVibGljIENsdXR0ZXIuU2hhZGVyVHlwZSBzaGFkZXJfdHlwZSB7IGNvbnN0cnVjdDsgfQor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5 cGVfaWQgPSAiY2x1dHRlcl9zaGFkZXJfZmxvYXRfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNs YXNzIFNoYWRlckZsb2F0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZh bHNlKV0KKysJCXByb3RlY3RlZCBTaGFkZXJGbG9hdCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfc2hh ZGVyX2ludF9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgU2hhZGVySW50IHsKKysJCVtD Q29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBTaGFk ZXJJbnQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3NoYWRlcl9tYXRyaXhfZ2V0X3R5cGUgKCkiKV0K KysJcHVibGljIGNsYXNzIFNoYWRlck1hdHJpeCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3Rf ZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgU2hhZGVyTWF0cml4ICgpOworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQg PSAiY2x1dHRlcl9zbmFwX2NvbnN0cmFpbnRfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNp bmNlID0gIjEuNiIpXQorKwlwdWJsaWMgY2xhc3MgU25hcENvbnN0cmFpbnQgOiBDbHV0dGVyLkNv bnN0cmFpbnQgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5 cGUgPSAiQ2x1dHRlckNvbnN0cmFpbnQqIildCisrCQlwdWJsaWMgU25hcENvbnN0cmFpbnQgKENs dXR0ZXIuQWN0b3I/IHNvdXJjZSwgQ2x1dHRlci5TbmFwRWRnZSBmcm9tX2VkZ2UsIENsdXR0ZXIu U25hcEVkZ2UgdG9fZWRnZSwgZmxvYXQgb2Zmc2V0KTsKKysJCXB1YmxpYyB2b2lkIGdldF9lZGdl cyAob3V0IENsdXR0ZXIuU25hcEVkZ2UgZnJvbV9lZGdlLCBvdXQgQ2x1dHRlci5TbmFwRWRnZSB0 b19lZGdlKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfb2Zmc2V0ICgpOworKwkJcHVibGljIHVub3du ZWQgQ2x1dHRlci5BY3RvciBnZXRfc291cmNlICgpOworKwkJcHVibGljIHZvaWQgc2V0X2VkZ2Vz IChDbHV0dGVyLlNuYXBFZGdlIGZyb21fZWRnZSwgQ2x1dHRlci5TbmFwRWRnZSB0b19lZGdlKTsK KysJCXB1YmxpYyB2b2lkIHNldF9vZmZzZXQgKGZsb2F0IG9mZnNldCk7CisrCQlwdWJsaWMgdm9p ZCBzZXRfc291cmNlIChDbHV0dGVyLkFjdG9yPyBzb3VyY2UpOworKwkJW05vQWNjZXNzb3JNZXRo b2RdCisrCQlwdWJsaWMgQ2x1dHRlci5TbmFwRWRnZSBmcm9tX2VkZ2UgeyBnZXQ7IHNldCBjb25z dHJ1Y3Q7IH0KKysJCXB1YmxpYyBmbG9hdCBvZmZzZXQgeyBnZXQ7IHNldCBjb25zdHJ1Y3Q7IH0K KysJCXB1YmxpYyBDbHV0dGVyLkFjdG9yIHNvdXJjZSB7IGdldDsgc2V0IGNvbnN0cnVjdDsgfQor KwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgQ2x1dHRlci5TbmFwRWRnZSB0b19lZGdl IHsgZ2V0OyBzZXQgY29uc3RydWN0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3N0YWdlX2dldF90eXBl ICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJcHVibGljIGNsYXNzIFN0YWdl IDogQ2x1dHRlci5Hcm91cCwgQXRrLkltcGxlbWVudG9yLCBDbHV0dGVyLkFuaW1hdGFibGUsIENs dXR0ZXIuQ29udGFpbmVyLCBDbHV0dGVyLlNjcmlwdGFibGUgeworKwkJW0NDb2RlIChoYXNfY29u c3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFjdG9yKiIpXQorKwkJW1Zl cnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIFN0YWdlICgpOworKwkJcHVibGljIGJv b2wgY2FwdHVyZSAoYm9vbCBwYWludCwgQ2Fpcm8uUmVjdGFuZ2xlSW50IHJlY3QsIENsdXR0ZXIu Q2FwdHVyZSBjYXB0dXJlcywgaW50IG5fY2FwdHVyZXMpOworKwkJcHVibGljIHZvaWQgY2FwdHVy ZV9pbnRvIChib29sIHBhaW50LCBDYWlyby5SZWN0YW5nbGVJbnQgcmVjdCwgdWludDggZGF0YSk7 CisrCQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfc3RhZ2VfZXZlbnQiKV0KKysJCVtWZXJzaW9u IChzaW5jZSA9ICIwLjQiKV0KKysJCXB1YmxpYyBib29sIGVtaXRfZXZlbnQgKENsdXR0ZXIuRXZl bnQgZXZlbnQpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBzaW5jZSA9ICIwLjgi KV0KKysJCXB1YmxpYyB2b2lkIGVuc3VyZV9jdXJyZW50ICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgZW5zdXJlX3JlZHJhdyAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIGVuc3VyZV92aWV3cG9ydCAoKTsKKysJ CXB1YmxpYyB2b2lkIGZyZWV6ZV91cGRhdGVzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu NiIpXQorKwkJcHVibGljIGJvb2wgZ2V0X2FjY2VwdF9mb2N1cyAoKTsKKysJCXB1YmxpYyB1bm93 bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X2FjdG9yX2F0X3BvcyAoQ2x1dHRlci5QaWNrTW9kZSBwaWNr X21vZGUsIGZsb2F0IHgsIGZsb2F0IHkpOworKwkJcHVibGljIGJvb2wgZ2V0X2NhcHR1cmVfZmlu YWxfc2l6ZSAoQ2Fpcm8uUmVjdGFuZ2xlSW50IHJlY3QsIGludCB3aWR0aCwgaW50IGhlaWdodCwg ZmxvYXQgc2NhbGUpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVk X3NpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIGdldF9jb2xvciAoKTsK KysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEw IildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgQ2x1dHRlci5TdGFnZSBnZXRfZGVmYXVsdCAo KTsKKysJCXB1YmxpYyBpbnQ2NCBnZXRfZnJhbWVfY291bnRlciAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X2tleV9m b2N1cyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIGdl dF9taW5pbXVtX3NpemUgKG91dCB1aW50IHdpZHRoLCBvdXQgdWludCBoZWlnaHQpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIGJvb2wgZ2V0X21vdGlvbl9ldmVudHNf ZW5hYmxlZCAoKTsKKysJCXB1YmxpYyBDbHV0dGVyLlBlcnNwZWN0aXZlIGdldF9wZXJzcGVjdGl2 ZSAoKTsKKysJCXB1YmxpYyBDYWlyby5SZWdpb24gZ2V0X3JlZHJhd19jbGlwICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGJvb2wgZ2V0X3Rocm90dGxlX21vdGlv bl9ldmVudHMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCQlwdWJsaWMgdW5v d25lZCBzdHJpbmcgZ2V0X3RpdGxlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQor KwkJcHVibGljIGJvb2wgZ2V0X3VzZV9hbHBoYSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIw LjQiKV0KKysJCXB1YmxpYyB2b2lkIGhpZGVfY3Vyc29yICgpOworKwkJW1ZlcnNpb24gKGRlcHJl Y2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIwLjgiKV0K KysJCXB1YmxpYyBib29sIGlzX2RlZmF1bHQgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9 IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjAuOCIpXQorKwkJcHVi bGljIHZvaWQgcXVldWVfcmVkcmF3ICgpOworKwkJW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxz ZSldCisrCQlwdWJsaWMgdWludDhbXSByZWFkX3BpeGVscyAoaW50IHgsIGludCB5LCBpbnQgd2lk dGggPSAtMSwgaW50IGhlaWdodCA9IC0xKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl9y ZWRyYXciKV0KKysJCXB1YmxpYyB2b2lkIHJlZHJhdyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9hY2NlcHRfZm9jdXMgKGJvb2wgYWNjZXB0X2Zv Y3VzKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9 ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfY29sb3IgKENsdXR0ZXIuQ29sb3IgY29sb3Ip OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2tleV9m b2N1cyAoQ2x1dHRlci5BY3Rvcj8gYWN0b3IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIp XQorKwkJcHVibGljIHZvaWQgc2V0X21pbmltdW1fc2l6ZSAodWludCB3aWR0aCwgdWludCBoZWln aHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X21v dGlvbl9ldmVudHNfZW5hYmxlZCAoYm9vbCBlbmFibGVkKTsKKysJCXB1YmxpYyB2b2lkIHNldF9w ZXJzcGVjdGl2ZSAoQ2x1dHRlci5QZXJzcGVjdGl2ZSBwZXJzcGVjdGl2ZSk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfdGhyb3R0bGVfbW90aW9uX2V2 ZW50cyAoYm9vbCB0aHJvdHRsZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCQlw dWJsaWMgdm9pZCBzZXRfdGl0bGUgKHN0cmluZyB0aXRsZSk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBzZXRfdXNlX2FscGhhIChib29sIHVzZV9hbHBoYSk7 CisrCQlwdWJsaWMgdm9pZCBzaG93X2N1cnNvciAoKTsKKysJCXB1YmxpYyB2b2lkIHRoYXdfdXBk YXRlcyAoKTsKKysJCXB1YmxpYyB2b2lkIHVwZGF0ZV9yZXNvdXJjZV9zY2FsZXMgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgYm9vbCBhY2NlcHRfZm9jdXMgeyBn ZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3Np bmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIGNvbG9yIHsgZ2V0OyBzZXQ7 IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wgY3Vyc29yX3Zpc2libGUg eyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIENs dXR0ZXIuQWN0b3Iga2V5X2ZvY3VzIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIwLjgiKV0KKysJCXB1YmxpYyBDbHV0dGVyLlBlcnNwZWN0aXZlIHBlcnNwZWN0aXZlIHsgZ2V0 OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJCXB1YmxpYyBzdHJpbmcg dGl0bGUgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVi bGljIGJvb2wgdXNlX2FscGhhIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIw LjYiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGFjdGl2YXRlICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMjAiKV0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCBhZnRlcl9wYWlu dCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNp Z25hbCB2b2lkIGRlYWN0aXZhdGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisr CQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCBkZWxldGVfZXZlbnQgKENsdXR0ZXIuRXZlbnQg ZXZlbnQpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgcGFpbnRfdmlldyAoQ2x1dHRl ci5TdGFnZVZpZXcgdmlldyk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3N0YWdlX21hbmFnZXJfZ2V0X3R5 cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgY2xhc3MgU3Rh Z2VNYW5hZ2VyIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0 aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFN0YWdlTWFuYWdlciAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLlN0YWdl TWFuYWdlciBnZXRfZGVmYXVsdCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJ CXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuU3RhZ2UgZ2V0X2RlZmF1bHRfc3RhZ2UgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgR0xpYi5TTGlzdDx3ZWFrIENsdXR0 ZXIuU3RhZ2U+IGxpc3Rfc3RhZ2VzICgpOworKwkJcHVibGljIHVub3duZWQgR0xpYi5TTGlzdDxD bHV0dGVyLlN0YWdlPiBwZWVrX3N0YWdlcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgi KV0KKysJCXB1YmxpYyBDbHV0dGVyLlN0YWdlIGRlZmF1bHRfc3RhZ2UgeyBnZXQ7IH0KKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIHN0 YWdlX2FkZGVkIChDbHV0dGVyLlN0YWdlIHN0YWdlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIw LjgiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIHN0YWdlX3JlbW92ZWQgKENsdXR0 ZXIuU3RhZ2Ugc3RhZ2UpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbQ29tcGFjdF0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwlwdWJsaWMgY2xhc3MgU3RhZ2VTdGF0ZUV2ZW50IDog Q2x1dHRlci5FdmVudCB7CisrCQlwdWJsaWMgQ2x1dHRlci5TdGFnZVN0YXRlIGNoYW5nZWRfbWFz azsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50RmxhZ3MgZmxhZ3M7CisrCQlwdWJsaWMgQ2x1dHRl ci5TdGFnZVN0YXRlIG5ld19zdGF0ZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuQWN0b3Igc291 cmNlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5TdGFnZSBzdGFnZTsKKysJCXB1YmxpYyB1aW50 MzIgdGltZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50VHlwZSB0eXBlOworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1 dHRlcl9zdGFnZV92aWV3X2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBTdGFnZVZpZXcg OiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxz ZSldCisrCQlwcm90ZWN0ZWQgU3RhZ2VWaWV3ICgpOworKwkJcHVibGljIHVub3duZWQgQ29nbC5G cmFtZWJ1ZmZlciBnZXRfZnJhbWVidWZmZXIgKCk7CisrCQlwdWJsaWMgdm9pZCBnZXRfbGF5b3V0 IChDYWlyby5SZWN0YW5nbGVJbnQgcmVjdCk7CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGdldF9v ZmZzY3JlZW5fdHJhbnNmb3JtYXRpb25fbWF0cml4IChDb2dsLk1hdHJpeCBtYXRyaXgpOworKwkJ cHVibGljIHVub3duZWQgQ29nbC5GcmFtZWJ1ZmZlciBnZXRfb25zY3JlZW4gKCk7CisrCQlwdWJs aWMgZmxvYXQgZ2V0X3NjYWxlICgpOworKwkJcHVibGljIHZvaWQgaW52YWxpZGF0ZV9vZmZzY3Jl ZW5fYmxpdF9waXBlbGluZSAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2 b2lkIHNldHVwX29mZnNjcmVlbl9ibGl0X3BpcGVsaW5lIChDb2dsLlBpcGVsaW5lIHBpcGVsaW5l KTsKKysJCXB1YmxpYyB2b2lkIHRyYW5zZm9ybV90b19vbnNjcmVlbiAoZmxvYXQgeCwgZmxvYXQg eSk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBDYWlyby5SZWN0YW5nbGVJbnQg bGF5b3V0IHsgb3duZWQgZ2V0OyBzZXQgY29uc3RydWN0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhv ZF0KKysJCXB1YmxpYyBmbG9hdCBzY2FsZSB7IGdldDsgc2V0IGNvbnN0cnVjdDsgfQorKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQg PSAiY2x1dHRlcl9zdGF0ZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40 IildCisrCXB1YmxpYyBjbGFzcyBTdGF0ZSA6IEdMaWIuT2JqZWN0LCBDbHV0dGVyLlNjcmlwdGFi bGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJW1Zl cnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5j ZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBTdGF0ZSAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVk ID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS40IildCisrCQlw dWJsaWMgdWludCBnZXRfZHVyYXRpb24gKHN0cmluZz8gc291cmNlX3N0YXRlX25hbWUsIHN0cmlu Zz8gdGFyZ2V0X3N0YXRlX25hbWUpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBk ZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB1bm93 bmVkIHN0cmluZyBnZXRfc3RhdGUgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUs IGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIEdM aWIuTGlzdDx3ZWFrIHN0cmluZz4gZ2V0X3N0YXRlcyAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNh dGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS40IildCisr CQlwdWJsaWMgdm9pZCBzZXRfZHVyYXRpb24gKHN0cmluZz8gc291cmNlX3N0YXRlX25hbWUsIHN0 cmluZz8gdGFyZ2V0X3N0YXRlX25hbWUsIHVpbnQgZHVyYXRpb24pOworKwkJW1ZlcnNpb24gKGRl cHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjQi KV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuU3RhdGUgc2V0X2tleSAoc3RyaW5nPyBzb3Vy Y2Vfc3RhdGVfbmFtZSwgc3RyaW5nIHRhcmdldF9zdGF0ZV9uYW1lLCBHTGliLk9iamVjdCBvYmpl Y3QsIHN0cmluZyBwcm9wZXJ0eV9uYW1lLCB1aW50IG1vZGUsIEdMaWIuVmFsdWUgdmFsdWUsIGRv dWJsZSBwcmVfZGVsYXksIGRvdWJsZSBwb3N0X2RlbGF5KTsKKysJCVtWZXJzaW9uIChkZXByZWNh dGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS40IildCisr CQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLlRpbWVsaW5lIHNldF9zdGF0ZSAoc3RyaW5nIHRhcmdl dF9zdGF0ZV9uYW1lKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRl ZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0 dGVyLlRpbWVsaW5lIHdhcnBfdG9fc3RhdGUgKHN0cmluZyB0YXJnZXRfc3RhdGVfbmFtZSk7Cisr CQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVw cmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdWludCBk dXJhdGlvbiB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9u IChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAi MS40IildCisrCQlwdWJsaWMgc3RyaW5nIHN0YXRlIHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJCVtW ZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2lu Y2UgPSAiMS40IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBjb21wbGV0ZWQgKCk7 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y29weV9mdW5jdGlvbiA9ICJnX2JveGVkX2NvcHkiLCBmcmVlX2Z1bmN0aW9uID0gImdfYm94ZWRf ZnJlZSIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zdGF0ZV9rZXlfZ2V0X3R5cGUgKCkiKV0KKysJW0Nv bXBhY3RdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGNsYXNzIFN0YXRl S2V5IHsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9 ICIxLjEyIiwgc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgR0xpYi5UeXBlIGdldF9wcm9wZXJ0 eV90eXBlICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zd2lwZV9hY3Rpb25fZ2V0X3R5cGUgKCkiKV0K KysJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwlwdWJsaWMgY2xhc3MgU3dpcGVBY3Rpb24g OiBDbHV0dGVyLkdlc3R1cmVBY3Rpb24geworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0 aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFjdGlvbioiKV0KKysJCXB1YmxpYyBTd2lwZUFj dGlvbiAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5j ZSA9ICIxLjE0Iiwgc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9p ZCBzd2VwdCAoQ2x1dHRlci5BY3RvciBhY3RvciwgQ2x1dHRlci5Td2lwZURpcmVjdGlvbiBkaXJl Y3Rpb24pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTQiKV0KKysJCXB1YmxpYyB2aXJ0dWFs IHNpZ25hbCBib29sIHN3aXBlIChDbHV0dGVyLkFjdG9yIGFjdG9yLCBDbHV0dGVyLlN3aXBlRGly ZWN0aW9uIGRpcmVjdGlvbik7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3RhcF9hY3Rpb25fZ2V0X3R5cGUg KCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTQiKV0KKysJcHVibGljIGNsYXNzIFRhcEFj dGlvbiA6IENsdXR0ZXIuR2VzdHVyZUFjdGlvbiB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3Rf ZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0aW9uKiIpXQorKwkJcHVibGljIFRh cEFjdGlvbiAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIHRhcCAoQ2x1dHRlci5B Y3RvciBhY3Rvcik7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3RleHRfZ2V0X3R5cGUgKCkiKV0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgY2xhc3MgVGV4dCA6IENsdXR0ZXIuQWN0 b3IsIEF0ay5JbXBsZW1lbnRvciwgQ2x1dHRlci5BbmltYXRhYmxlLCBDbHV0dGVyLkNvbnRhaW5l ciwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlv biA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3RvcioiKV0KKysJCXB1YmxpYyBUZXh0ICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBpbnQgY29vcmRzX3RvX3Bv c2l0aW9uIChmbG9hdCB4LCBmbG9hdCB5KTsKKysJCXB1YmxpYyB2b2lkIGRlbGV0ZV9jaGFycyAo dWludCBuX2NoYXJzKTsKKysJCXB1YmxpYyBib29sIGRlbGV0ZV9zZWxlY3Rpb24gKCk7CisrCQlb Q0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0 b3IqIildCisrCQlwdWJsaWMgVGV4dC5mdWxsIChzdHJpbmcgZm9udF9uYW1lLCBzdHJpbmcgdGV4 dCwgQ2x1dHRlci5Db2xvciBjb2xvcik7CisrCQlwdWJsaWMgYm9vbCBnZXRfYWN0aXZhdGFibGUg KCk7CisrCQlwdWJsaWMgdW5vd25lZCBQYW5nby5BdHRyTGlzdCBnZXRfYXR0cmlidXRlcyAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVy LlRleHRCdWZmZXIgZ2V0X2J1ZmZlciAoKTsKKysJCXB1YmxpYyBzdHJpbmcgZ2V0X2NoYXJzIChz c2l6ZV90IHN0YXJ0X3Bvcywgc3NpemVfdCBlbmRfcG9zKTsKKysJCXB1YmxpYyBDbHV0dGVyLkNv bG9yIGdldF9jb2xvciAoKTsKKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIGdldF9jdXJzb3JfY29s b3IgKCk7CisrCQlwdWJsaWMgaW50IGdldF9jdXJzb3JfcG9zaXRpb24gKCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4xNiIpXQorKwkJcHVibGljIHZvaWQgZ2V0X2N1cnNvcl9yZWN0IChvdXQg dW5vd25lZCBHcmFwaGVuZS5SZWN0IHJlY3QpOworKwkJcHVibGljIHVpbnQgZ2V0X2N1cnNvcl9z aXplICgpOworKwkJcHVibGljIGJvb2wgZ2V0X2N1cnNvcl92aXNpYmxlICgpOworKwkJcHVibGlj IGJvb2wgZ2V0X2VkaXRhYmxlICgpOworKwkJcHVibGljIFBhbmdvLkVsbGlwc2l6ZU1vZGUgZ2V0 X2VsbGlwc2l6ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBQ YW5nby5Gb250RGVzY3JpcHRpb24gZ2V0X2ZvbnRfZGVzY3JpcHRpb24gKCk7CisrCQlwdWJsaWMg dW5vd25lZCBzdHJpbmcgZ2V0X2ZvbnRfbmFtZSAoKTsKKysJCXB1YmxpYyBDbHV0dGVyLklucHV0 Q29udGVudEhpbnRGbGFncyBnZXRfaW5wdXRfaGludHMgKCk7CisrCQlwdWJsaWMgQ2x1dHRlci5J bnB1dENvbnRlbnRQdXJwb3NlIGdldF9pbnB1dF9wdXJwb3NlICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjAuNiIpXQorKwkJcHVibGljIGJvb2wgZ2V0X2p1c3RpZnkgKCk7CisrCQlwdWJsaWMg dW5vd25lZCBQYW5nby5MYXlvdXQgZ2V0X2xheW91dCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9sYXlvdXRfb2Zmc2V0cyAob3V0IGludCB4LCBv dXQgaW50IHkpOworKwkJcHVibGljIFBhbmdvLkFsaWdubWVudCBnZXRfbGluZV9hbGlnbm1lbnQg KCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfbGluZV93cmFwICgpOworKwkJcHVibGljIFBhbmdvLldy YXBNb2RlIGdldF9saW5lX3dyYXBfbW9kZSAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0X21heF9sZW5n dGggKCk7CisrCQlwdWJsaWMgdW5pY2hhciBnZXRfcGFzc3dvcmRfY2hhciAoKTsKKysJCXB1Ymxp YyBib29sIGdldF9zZWxlY3RhYmxlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQor KwkJcHVibGljIENsdXR0ZXIuQ29sb3IgZ2V0X3NlbGVjdGVkX3RleHRfY29sb3IgKCk7CisrCQlw dWJsaWMgc3RyaW5nIGdldF9zZWxlY3Rpb24gKCk7CisrCQlwdWJsaWMgaW50IGdldF9zZWxlY3Rp b25fYm91bmQgKCk7CisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBnZXRfc2VsZWN0aW9uX2NvbG9y ICgpOworKwkJcHVibGljIGJvb2wgZ2V0X3NpbmdsZV9saW5lX21vZGUgKCk7CisrCQlwdWJsaWMg dW5vd25lZCBzdHJpbmcgZ2V0X3RleHQgKCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfdXNlX21hcmt1 cCAoKTsKKysJCXB1YmxpYyBib29sIGhhc19wcmVlZGl0ICgpOworKwkJcHVibGljIHZvaWQgaW5z ZXJ0X3RleHQgKHN0cmluZyB0ZXh0LCBzc2l6ZV90IHBvc2l0aW9uKTsKKysJCXB1YmxpYyB2b2lk IGluc2VydF91bmljaGFyICh1bmljaGFyIHdjKTsKKysJCXB1YmxpYyBib29sIHBvc2l0aW9uX3Rv X2Nvb3JkcyAoaW50IHBvc2l0aW9uLCBvdXQgZmxvYXQgeCwgb3V0IGZsb2F0IHksIG91dCBmbG9h dCBsaW5lX2hlaWdodCA9IG51bGwpOworKwkJcHVibGljIHZvaWQgc2V0X2FjdGl2YXRhYmxlIChi b29sIGFjdGl2YXRhYmxlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9hdHRyaWJ1dGVzIChQYW5nby5B dHRyTGlzdD8gYXR0cnMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1Ymxp YyB2b2lkIHNldF9idWZmZXIgKENsdXR0ZXIuVGV4dEJ1ZmZlciBidWZmZXIpOworKwkJcHVibGlj IHZvaWQgc2V0X2NvbG9yIChDbHV0dGVyLkNvbG9yIGNvbG9yKTsKKysJCXB1YmxpYyB2b2lkIHNl dF9jdXJzb3JfY29sb3IgKENsdXR0ZXIuQ29sb3I/IGNvbG9yKTsKKysJCXB1YmxpYyB2b2lkIHNl dF9jdXJzb3JfcG9zaXRpb24gKGludCBwb3NpdGlvbik7CisrCQlwdWJsaWMgdm9pZCBzZXRfY3Vy c29yX3NpemUgKGludCBzaXplKTsKKysJCXB1YmxpYyB2b2lkIHNldF9jdXJzb3JfdmlzaWJsZSAo Ym9vbCBjdXJzb3JfdmlzaWJsZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfZWRpdGFibGUgKGJvb2wg ZWRpdGFibGUpOworKwkJcHVibGljIHZvaWQgc2V0X2VsbGlwc2l6ZSAoUGFuZ28uRWxsaXBzaXpl TW9kZSBtb2RlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lk IHNldF9mb250X2Rlc2NyaXB0aW9uIChQYW5nby5Gb250RGVzY3JpcHRpb24gZm9udF9kZXNjKTsK KysJCXB1YmxpYyB2b2lkIHNldF9mb250X25hbWUgKHN0cmluZz8gZm9udF9uYW1lKTsKKysJCXB1 YmxpYyB2b2lkIHNldF9pbnB1dF9oaW50cyAoQ2x1dHRlci5JbnB1dENvbnRlbnRIaW50RmxhZ3Mg aGludHMpOworKwkJcHVibGljIHZvaWQgc2V0X2lucHV0X3B1cnBvc2UgKENsdXR0ZXIuSW5wdXRD b250ZW50UHVycG9zZSBwdXJwb3NlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9qdXN0aWZ5IChib29s IGp1c3RpZnkpOworKwkJcHVibGljIHZvaWQgc2V0X2xpbmVfYWxpZ25tZW50IChQYW5nby5BbGln bm1lbnQgYWxpZ25tZW50KTsKKysJCXB1YmxpYyB2b2lkIHNldF9saW5lX3dyYXAgKGJvb2wgbGlu ZV93cmFwKTsKKysJCXB1YmxpYyB2b2lkIHNldF9saW5lX3dyYXBfbW9kZSAoUGFuZ28uV3JhcE1v ZGUgd3JhcF9tb2RlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9tYXJrdXAgKHN0cmluZz8gbWFya3Vw KTsKKysJCXB1YmxpYyB2b2lkIHNldF9tYXhfbGVuZ3RoIChpbnQgbWF4KTsKKysJCXB1YmxpYyB2 b2lkIHNldF9wYXNzd29yZF9jaGFyICh1bmljaGFyIHdjKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9wcmVlZGl0X3N0cmluZyAoc3RyaW5nPyBwcmVl ZGl0X3N0ciwgUGFuZ28uQXR0ckxpc3Q/IHByZWVkaXRfYXR0cnMsIHVpbnQgY3Vyc29yX3Bvcyk7 CisrCQlwdWJsaWMgdm9pZCBzZXRfc2VsZWN0YWJsZSAoYm9vbCBzZWxlY3RhYmxlKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9zZWxlY3RlZF90ZXh0 X2NvbG9yIChDbHV0dGVyLkNvbG9yPyBjb2xvcik7CisrCQlwdWJsaWMgdm9pZCBzZXRfc2VsZWN0 aW9uIChzc2l6ZV90IHN0YXJ0X3Bvcywgc3NpemVfdCBlbmRfcG9zKTsKKysJCXB1YmxpYyB2b2lk IHNldF9zZWxlY3Rpb25fYm91bmQgKGludCBzZWxlY3Rpb25fYm91bmQpOworKwkJcHVibGljIHZv aWQgc2V0X3NlbGVjdGlvbl9jb2xvciAoQ2x1dHRlci5Db2xvcj8gY29sb3IpOworKwkJcHVibGlj IHZvaWQgc2V0X3NpbmdsZV9saW5lX21vZGUgKGJvb2wgc2luZ2xlX2xpbmUpOworKwkJcHVibGlj IHZvaWQgc2V0X3RleHQgKHN0cmluZz8gdGV4dCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfdXNlX21h cmt1cCAoYm9vbCBzZXR0aW5nKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl90ZXh0X2Fj dGl2YXRlIildCisrCQlwdWJsaWMgYm9vbCB0cnlfYWN0aXZhdGUgKCk7CisrCQlbQ0NvZGUgKGhh c19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0b3IqIildCisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIFRleHQud2l0aF9idWZmZXIg KENsdXR0ZXIuVGV4dEJ1ZmZlciBidWZmZXIpOworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1 bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFjdG9yKiIpXQorKwkJcHVibGljIFRleHQu d2l0aF90ZXh0IChzdHJpbmc/IGZvbnRfbmFtZSwgc3RyaW5nIHRleHQpOworKwkJcHVibGljIGJv b2wgYWN0aXZhdGFibGUgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIFBhbmdvLkF0dHJMaXN0IGF0 dHJpYnV0ZXMgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJ cHVibGljIENsdXR0ZXIuVGV4dEJ1ZmZlciBidWZmZXIgeyBnZXQ7IHNldDsgfQorKwkJcHVibGlj IENsdXR0ZXIuQ29sb3IgY29sb3IgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIENsdXR0ZXIuQ29s b3IgY3Vyc29yX2NvbG9yIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJ cHVibGljIGJvb2wgY3Vyc29yX2NvbG9yX3NldCB7IGdldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTIiKV0KKysJCXB1YmxpYyBpbnQgY3Vyc29yX3Bvc2l0aW9uIHsgZ2V0OyBzZXQ7IH0K KysJCXB1YmxpYyBpbnQgY3Vyc29yX3NpemUgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIGJvb2wg Y3Vyc29yX3Zpc2libGUgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIGJvb2wgZWRpdGFibGUgeyBn ZXQ7IHNldDsgfQorKwkJcHVibGljIFBhbmdvLkVsbGlwc2l6ZU1vZGUgZWxsaXBzaXplIHsgZ2V0 OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBQYW5nby5G b250RGVzY3JpcHRpb24gZm9udF9kZXNjcmlwdGlvbiB7IG93bmVkIGdldDsgc2V0OyB9CisrCQlw dWJsaWMgc3RyaW5nIGZvbnRfbmFtZSB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5J bnB1dENvbnRlbnRIaW50RmxhZ3MgaW5wdXRfaGludHMgeyBnZXQ7IHNldDsgfQorKwkJcHVibGlj IENsdXR0ZXIuSW5wdXRDb250ZW50UHVycG9zZSBpbnB1dF9wdXJwb3NlIHsgZ2V0OyBzZXQ7IH0K KysJCXB1YmxpYyBib29sIGp1c3RpZnkgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIFBhbmdvLkFs aWdubWVudCBsaW5lX2FsaWdubWVudCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgYm9vbCBsaW5l X3dyYXAgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIFBhbmdvLldyYXBNb2RlIGxpbmVfd3JhcF9t b2RlIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBpbnQgbWF4X2xlbmd0aCB7IGdldDsgc2V0OyB9 CisrCQlwdWJsaWMgdWludCBwYXNzd29yZF9jaGFyIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vz c29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3Np bmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBpbnQgcG9zaXRpb24geyBn ZXQ7IHNldDsgfQorKwkJcHVibGljIGJvb2wgc2VsZWN0YWJsZSB7IGdldDsgc2V0OyB9CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBzZWxlY3Rl ZF90ZXh0X2NvbG9yIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIGJvb2wgc2VsZWN0ZWRfdGV4dF9jb2xv cl9zZXQgeyBnZXQ7IH0KKysJCXB1YmxpYyBpbnQgc2VsZWN0aW9uX2JvdW5kIHsgZ2V0OyBzZXQ7 IH0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIHNlbGVjdGlvbl9jb2xvciB7IGdldDsgc2V0OyB9 CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIHNlbGVjdGlvbl9jb2xvcl9z ZXQgeyBnZXQ7IH0KKysJCXB1YmxpYyBib29sIHNpbmdsZV9saW5lX21vZGUgeyBnZXQ7IHNldDsg fQorKwkJcHVibGljIHN0cmluZyB0ZXh0IHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBib29sIHVz ZV9tYXJrdXAgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgYWN0 aXZhdGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNiIpXQorKwkJcHVibGljIHZpcnR1 YWwgc2lnbmFsIHZvaWQgY3Vyc29yX2NoYW5nZWQgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRl ZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIsIHNpbmNlID0gIjEuMCIpXQorKwkJ cHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgY3Vyc29yX2V2ZW50IChHcmFwaGVuZS5SZWN0IHJl Y3QpOworKwkJW0hhc0VtaXR0ZXJdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlw dWJsaWMgc2lnbmFsIHZvaWQgZGVsZXRlX3RleHQgKGludCBzdGFydF9wb3MsIGludCBlbmRfcG9z KTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIHRleHRfY2hhbmdlZCAoKTsKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lk ID0gImNsdXR0ZXJfdGV4dF9idWZmZXJfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTAiKV0KKysJcHVibGljIGNsYXNzIFRleHRCdWZmZXIgOiBHTGliLk9iamVjdCB7Cisr CQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwdWJsaWMgVGV4 dEJ1ZmZlciAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHVpbnQgZGVsZXRlX3RleHQgKHVpbnQgcG9z aXRpb24sIHVpbnQgbl9jaGFycyk7CisrCQlwdWJsaWMgdm9pZCBlbWl0X2RlbGV0ZWRfdGV4dCAo dWludCBwb3NpdGlvbiwgdWludCBuX2NoYXJzKTsKKysJCXB1YmxpYyB2b2lkIGVtaXRfaW5zZXJ0 ZWRfdGV4dCAodWludCBwb3NpdGlvbiwgc3RyaW5nIGNoYXJzLCB1aW50IG5fY2hhcnMpOworKwkJ cHVibGljIHNpemVfdCBnZXRfYnl0ZXMgKCk7CisrCQlwdWJsaWMgdmlydHVhbCB1aW50IGdldF9s ZW5ndGggKCk7CisrCQlwdWJsaWMgaW50IGdldF9tYXhfbGVuZ3RoICgpOworKwkJcHVibGljIHVu b3duZWQgc3RyaW5nIGdldF90ZXh0ICgpOworKwkJW0NDb2RlICh2ZnVuY19uYW1lID0gImdldF90 ZXh0IildCisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdW5vd25lZCBzdHJpbmcg Z2V0X3RleHRfd2l0aF9sZW5ndGggKHNpemVfdCBuX2J5dGVzKTsKKysJCXB1YmxpYyB2aXJ0dWFs IHVpbnQgaW5zZXJ0X3RleHQgKHVpbnQgcG9zaXRpb24sIHN0cmluZyBjaGFycywgdWludCBuX2No YXJzKTsKKysJCXB1YmxpYyB2b2lkIHNldF9tYXhfbGVuZ3RoIChpbnQgbWF4X2xlbmd0aCk7Cisr CQlwdWJsaWMgdm9pZCBzZXRfdGV4dCAoc3RyaW5nIGNoYXJzLCBpbnQgbl9jaGFycyk7CisrCQlb Q0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwdWJsaWMgVGV4dEJ1 ZmZlci53aXRoX3RleHQgKHN0cmluZz8gdGV4dCwgc3NpemVfdCB0ZXh0X2xlbik7CisrCQlwdWJs aWMgdWludCBsZW5ndGggeyBnZXQ7IH0KKysJCXB1YmxpYyBpbnQgbWF4X2xlbmd0aCB7IGdldDsg c2V0OyB9CisrCQlwdWJsaWMgc3RyaW5nIHRleHQgeyBnZXQ7IH0KKysJCXB1YmxpYyB2aXJ0dWFs IHNpZ25hbCB2b2lkIGRlbGV0ZWRfdGV4dCAodWludCBwb3NpdGlvbiwgdWludCBuX2NoYXJzKTsK KysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGluc2VydGVkX3RleHQgKHVpbnQgcG9zaXRp b24sIHN0cmluZyBjaGFycywgdWludCBuX2NoYXJzKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfdGV4dF9u b2RlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1Ymxp YyBjbGFzcyBUZXh0Tm9kZSA6IENsdXR0ZXIuUGFpbnROb2RlIHsKKysJCVtDQ29kZSAoaGFzX2Nv bnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJQYWludE5vZGUqIildCisr CQlwdWJsaWMgVGV4dE5vZGUgKFBhbmdvLkxheW91dD8gbGF5b3V0LCBDbHV0dGVyLkNvbG9yPyBj b2xvcik7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3RleHR1cmVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGlj IGNsYXNzIFRleHR1cmUgOiBDbHV0dGVyLkFjdG9yIHsKKysJCXB1YmxpYyBDb2dsLk1hdGVyaWFs IGNvZ2xfbWF0ZXJpYWwgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIENvZ2wuVGV4dHVyZSBjb2ds X3RleHR1cmUgeyBnZXQ7IHNldDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl90ZXh0dXJlX25vZGVfZ2V0 X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGNsYXNz IFRleHR1cmVOb2RlIDogQ2x1dHRlci5QaXBlbGluZU5vZGUgeworKwkJW0NDb2RlIChoYXNfY29u c3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlclBhaW50Tm9kZSoiKV0KKysJ CXB1YmxpYyBUZXh0dXJlTm9kZSAoQ29nbC5UZXh0dXJlIHRleHR1cmUsIENsdXR0ZXIuQ29sb3I/ IGNvbG9yLCBDbHV0dGVyLlNjYWxpbmdGaWx0ZXIgbWluX2ZpbHRlciwgQ2x1dHRlci5TY2FsaW5n RmlsdGVyIG1hZ19maWx0ZXIpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl90aW1lbGluZV9nZXRfdHlwZSAo KSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCXB1YmxpYyBjbGFzcyBUaW1lbGlu ZSA6IEdMaWIuT2JqZWN0LCBDbHV0dGVyLlNjcmlwdGFibGUgeworKwkJW0NDb2RlIChoYXNfY29u c3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQor KwkJcHVibGljIFRpbWVsaW5lICh1aW50IG1zZWNzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjE0IildCisrCQlwdWJsaWMgdm9pZCBhZGRfbWFya2VyIChzdHJpbmcgbWFya2VyX25hbWUsIGRv dWJsZSBwcm9ncmVzcyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMg dm9pZCBhZGRfbWFya2VyX2F0X3RpbWUgKHN0cmluZyBtYXJrZXJfbmFtZSwgdWludCBtc2Vjcyk7 CisrCQlwdWJsaWMgdm9pZCBhZHZhbmNlICh1aW50IG1zZWNzKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2b2lkIGFkdmFuY2VfdG9fbWFya2VyIChzdHJpbmcgbWFy a2VyX25hbWUpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3Np bmNlID0gIjEuMTAiLCBzaW5jZSA9ICIwLjQiKV0KKysJCXB1YmxpYyBDbHV0dGVyLlRpbWVsaW5l IGNsb25lICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIGJvb2wg Z2V0X2F1dG9fcmV2ZXJzZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlw dWJsaWMgYm9vbCBnZXRfY3ViaWNfYmV6aWVyX3Byb2dyZXNzIChHcmFwaGVuZS5Qb2ludCBjXzEs IEdyYXBoZW5lLlBvaW50IGNfMik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJ cHVibGljIGludCBnZXRfY3VycmVudF9yZXBlYXQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MC40IildCisrCQlwdWJsaWMgdWludCBnZXRfZGVsYXkgKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMC42IildCisrCQlwdWJsaWMgdWludCBnZXRfZGVsdGEgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMC42IildCisrCQlwdWJsaWMgQ2x1dHRlci5UaW1lbGluZURpcmVjdGlvbiBnZXRfZGly ZWN0aW9uICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHVpbnQg Z2V0X2R1cmF0aW9uICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1Ymxp YyBpbnQ2NCBnZXRfZHVyYXRpb25faGludCAoKTsKKysJCXB1YmxpYyB1aW50IGdldF9lbGFwc2Vk X3RpbWUgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2lu Y2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGJvb2wgZ2V0X2xvb3AgKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgZG91YmxlIGdldF9wcm9ncmVzcyAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ2x1dHRlci5BbmltYXRpb25Nb2Rl IGdldF9wcm9ncmVzc19tb2RlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyBpbnQgZ2V0X3JlcGVhdF9jb3VudCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEyIildCisrCQlwdWJsaWMgYm9vbCBnZXRfc3RlcF9wcm9ncmVzcyAob3V0IGludCBuX3N0ZXBz LCBvdXQgQ2x1dHRlci5TdGVwTW9kZSBzdGVwX21vZGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjAuOCIpXQorKwkJcHVibGljIGJvb2wgaGFzX21hcmtlciAoc3RyaW5nIG1hcmtlcl9uYW1lKTsK KysJCXB1YmxpYyBib29sIGlzX3BsYXlpbmcgKCk7CisrCQlbQ0NvZGUgKGFycmF5X2xlbmd0aCA9 IHRydWUsIGFycmF5X2xlbmd0aF9wb3MgPSAxLjEsIGFycmF5X2xlbmd0aF90eXBlID0gImdzaXpl IiwgYXJyYXlfbnVsbF90ZXJtaW5hdGVkID0gdHJ1ZSldCisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MC44IildCisrCQlwdWJsaWMgc3RyaW5nW10gbGlzdF9tYXJrZXJzIChpbnQgbXNlY3MpOworKwkJ cHVibGljIHZvaWQgcGF1c2UgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlw dWJsaWMgdm9pZCByZW1vdmVfbWFya2VyIChzdHJpbmcgbWFya2VyX25hbWUpOworKwkJcHVibGlj IHZvaWQgcmV3aW5kICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGlj IHZvaWQgc2V0X2F1dG9fcmV2ZXJzZSAoYm9vbCByZXZlcnNlKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBzZXRfY3ViaWNfYmV6aWVyX3Byb2dyZXNzIChH cmFwaGVuZS5Qb2ludCBjXzEsIEdyYXBoZW5lLlBvaW50IGNfMik7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMC40IildCisrCQlwdWJsaWMgdm9pZCBzZXRfZGVsYXkgKHVpbnQgbXNlY3MpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2RpcmVjdGlvbiAo Q2x1dHRlci5UaW1lbGluZURpcmVjdGlvbiBkaXJlY3Rpb24pOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjAuNiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2R1cmF0aW9uICh1aW50IG1zZWNzKTsKKysJ CVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIild CisrCQlwdWJsaWMgdm9pZCBzZXRfbG9vcCAoYm9vbCBsb29wKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfcHJvZ3Jlc3NfZnVuYyAob3duZWQgQ2x1 dHRlci5UaW1lbGluZVByb2dyZXNzRnVuYz8gZnVuYyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3Byb2dyZXNzX21vZGUgKENsdXR0ZXIuQW5pbWF0 aW9uTW9kZSBtb2RlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMg dm9pZCBzZXRfcmVwZWF0X2NvdW50IChpbnQgY291bnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9zdGVwX3Byb2dyZXNzIChpbnQgbl9zdGVwcywg Q2x1dHRlci5TdGVwTW9kZSBzdGVwX21vZGUpOworKwkJcHVibGljIHZvaWQgc2tpcCAodWludCBt c2Vjcyk7CisrCQlwdWJsaWMgdm9pZCBzdGFydCAoKTsKKysJCXB1YmxpYyB2b2lkIHN0b3AgKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgYm9vbCBhdXRvX3JldmVy c2UgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwkJcHVibGlj IHVpbnQgZGVsYXkgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQor KwkJcHVibGljIENsdXR0ZXIuVGltZWxpbmVEaXJlY3Rpb24gZGlyZWN0aW9uIHsgZ2V0OyBzZXQ7 IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB1aW50IGR1cmF0aW9u IHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRl ZF9zaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgYm9vbCBsb29wIHsgZ2V0OyBzZXQ7IH0KKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ2x1dHRlci5BbmltYXRpb25N b2RlIHByb2dyZXNzX21vZGUgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTAiKV0KKysJCXB1YmxpYyBpbnQgcmVwZWF0X2NvdW50IHsgZ2V0OyBzZXQ7IH0KKysJCXB1Ymxp YyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGNvbXBsZXRlZCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIwLjgiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIG1hcmtlcl9yZWFjaGVkIChz dHJpbmcgbWFya2VyX25hbWUsIGludCBtc2Vjcyk7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwg dm9pZCBuZXdfZnJhbWUgKGludCBtc2Vjcyk7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9p ZCBwYXVzZWQgKCk7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBzdGFydGVkICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2 b2lkIHN0b3BwZWQgKGJvb2wgaXNfZmluaXNoZWQpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNs YXNzIFRpbWVvdXRQb29sIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZh bHNlKV0KKysJCXB1YmxpYyBUaW1lb3V0UG9vbCAoaW50IHByaW9yaXR5KTsKKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBoYXNfdHlwZV9pZCA9 IGZhbHNlKV0KKysJW0NvbXBhY3RdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1 YmxpYyBjbGFzcyBUb3VjaEV2ZW50IDogQ2x1dHRlci5FdmVudCB7CisrCQlwdWJsaWMgZG91Ymxl IGF4ZXM7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLklucHV0RGV2aWNlIGRldmljZTsKKysJCXB1 YmxpYyBDbHV0dGVyLkV2ZW50RmxhZ3MgZmxhZ3M7CisrCQlwdWJsaWMgQ2x1dHRlci5Nb2RpZmll clR5cGUgbW9kaWZpZXJfc3RhdGU7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLkV2ZW50U2VxdWVu Y2Ugc2VxdWVuY2U7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLkFjdG9yIHNvdXJjZTsKKysJCXB1 YmxpYyB3ZWFrIENsdXR0ZXIuU3RhZ2Ugc3RhZ2U7CisrCQlwdWJsaWMgdWludDMyIHRpbWU7Cisr CQlwdWJsaWMgQ2x1dHRlci5FdmVudFR5cGUgdHlwZTsKKysJCXB1YmxpYyBmbG9hdCB4OworKwkJ cHVibGljIGZsb2F0IHk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtDb21wYWN0XQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMS4yNCIpXQorKwlwdWJsaWMgY2xhc3MgVG91Y2hwYWRQaW5jaEV2ZW50 IDogQ2x1dHRlci5FdmVudCB7CisrCQlwdWJsaWMgZmxvYXQgYW5nbGVfZGVsdGE7CisrCQlwdWJs aWMgZmxvYXQgZHg7CisrCQlwdWJsaWMgZmxvYXQgZHk7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVu dEZsYWdzIGZsYWdzOworKwkJcHVibGljIHVpbnQgbl9maW5nZXJzOworKwkJcHVibGljIENsdXR0 ZXIuVG91Y2hwYWRHZXN0dXJlUGhhc2UgcGhhc2U7CisrCQlwdWJsaWMgZmxvYXQgc2NhbGU7Cisr CQlwdWJsaWMgd2VhayBDbHV0dGVyLkFjdG9yIHNvdXJjZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0 ZXIuU3RhZ2Ugc3RhZ2U7CisrCQlwdWJsaWMgdWludDMyIHRpbWU7CisrCQlwdWJsaWMgQ2x1dHRl ci5FdmVudFR5cGUgdHlwZTsKKysJCXB1YmxpYyBmbG9hdCB4OworKwkJcHVibGljIGZsb2F0IHk7 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg aGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtDb21wYWN0XQorKwlbVmVyc2lvbiAoc2luY2UgPSAi MS4yNCIpXQorKwlwdWJsaWMgY2xhc3MgVG91Y2hwYWRTd2lwZUV2ZW50IDogQ2x1dHRlci5FdmVu dCB7CisrCQlwdWJsaWMgZmxvYXQgZHg7CisrCQlwdWJsaWMgZmxvYXQgZHk7CisrCQlwdWJsaWMg Q2x1dHRlci5FdmVudEZsYWdzIGZsYWdzOworKwkJcHVibGljIHVpbnQgbl9maW5nZXJzOworKwkJ cHVibGljIENsdXR0ZXIuVG91Y2hwYWRHZXN0dXJlUGhhc2UgcGhhc2U7CisrCQlwdWJsaWMgd2Vh ayBDbHV0dGVyLkFjdG9yIHNvdXJjZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuU3RhZ2Ugc3Rh Z2U7CisrCQlwdWJsaWMgdWludDMyIHRpbWU7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudFR5cGUg dHlwZTsKKysJCXB1YmxpYyBmbG9hdCB4OworKwkJcHVibGljIGZsb2F0IHk7CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJj bHV0dGVyX3RyYW5zZm9ybV9ub2RlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBUcmFu c2Zvcm1Ob2RlIDogQ2x1dHRlci5QYWludE5vZGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0 X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlclBhaW50Tm9kZSoiKV0KKysJCXB1Ymxp YyBUcmFuc2Zvcm1Ob2RlIChDb2dsLk1hdHJpeCBwcm9qZWN0aW9uKTsKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0 ZXJfdHJhbnNpdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIp XQorKwlwdWJsaWMgYWJzdHJhY3QgY2xhc3MgVHJhbnNpdGlvbiA6IENsdXR0ZXIuVGltZWxpbmUs IENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24g PSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgVHJhbnNpdGlvbiAoKTsKKysJCVtOb1dyYXBwZXJdCisr CQlwdWJsaWMgdmlydHVhbCB2b2lkIGF0dGFjaGVkIChDbHV0dGVyLkFuaW1hdGFibGUgYW5pbWF0 YWJsZSk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBjb21wdXRlX3Zh bHVlIChDbHV0dGVyLkFuaW1hdGFibGUgYW5pbWF0YWJsZSwgQ2x1dHRlci5JbnRlcnZhbCBpbnRl cnZhbCwgZG91YmxlIHByb2dyZXNzKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVh bCB2b2lkIGRldGFjaGVkIChDbHV0dGVyLkFuaW1hdGFibGUgYW5pbWF0YWJsZSk7CisrCQlwdWJs aWMgdW5vd25lZCBDbHV0dGVyLkFuaW1hdGFibGUgZ2V0X2FuaW1hdGFibGUgKCk7CisrCQlwdWJs aWMgdW5vd25lZCBDbHV0dGVyLkludGVydmFsIGdldF9pbnRlcnZhbCAoKTsKKysJCXB1YmxpYyBi b29sIGdldF9yZW1vdmVfb25fY29tcGxldGUgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfYW5pbWF0 YWJsZSAoQ2x1dHRlci5BbmltYXRhYmxlPyBhbmltYXRhYmxlKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBzZXRfZnJvbV92YWx1ZSAoR0xpYi5WYWx1ZSB2 YWx1ZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfaW50ZXJ2YWwgKENsdXR0ZXIuSW50ZXJ2YWw/IGlu dGVydmFsKTsKKysJCXB1YmxpYyB2b2lkIHNldF9yZW1vdmVfb25fY29tcGxldGUgKGJvb2wgcmVt b3ZlX2NvbXBsZXRlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMg dm9pZCBzZXRfdG9fdmFsdWUgKEdMaWIuVmFsdWUgdmFsdWUpOworKwkJcHVibGljIENsdXR0ZXIu QW5pbWF0YWJsZSBhbmltYXRhYmxlIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLklu dGVydmFsIGludGVydmFsIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBib29sIHJlbW92ZV9vbl9j b21wbGV0ZSB7IGdldDsgc2V0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3RyYW5zaXRpb25fZ3JvdXBf Z2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJcHVibGljIGNs YXNzIFRyYW5zaXRpb25Hcm91cCA6IENsdXR0ZXIuVHJhbnNpdGlvbiwgQ2x1dHRlci5TY3JpcHRh YmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0g IkNsdXR0ZXJUcmFuc2l0aW9uKiIpXQorKwkJcHVibGljIFRyYW5zaXRpb25Hcm91cCAoKTsKKysJ CXB1YmxpYyB2b2lkIGFkZF90cmFuc2l0aW9uIChDbHV0dGVyLlRyYW5zaXRpb24gdHJhbnNpdGlv bik7CisrCQlwdWJsaWMgdm9pZCByZW1vdmVfYWxsICgpOworKwkJcHVibGljIHZvaWQgcmVtb3Zl X3RyYW5zaXRpb24gKENsdXR0ZXIuVHJhbnNpdGlvbiB0cmFuc2l0aW9uKTsKKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNs dXR0ZXJfdmlydHVhbF9pbnB1dF9kZXZpY2VfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNz IFZpcnR1YWxJbnB1dERldmljZSA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0 cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBWaXJ0dWFsSW5wdXREZXZpY2Ug KCk7CisrCQlwdWJsaWMgaW50IGdldF9kZXZpY2VfdHlwZSAoKTsKKysJCXB1YmxpYyB2aXJ0dWFs IHZvaWQgbm90aWZ5X2Fic29sdXRlX21vdGlvbiAodWludDY0IHRpbWVfdXMsIGRvdWJsZSB4LCBk b3VibGUgeSk7CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIG5vdGlmeV9idXR0b24gKHVpbnQ2NCB0 aW1lX3VzLCB1aW50MzIgYnV0dG9uLCBDbHV0dGVyLkJ1dHRvblN0YXRlIGJ1dHRvbl9zdGF0ZSk7 CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIG5vdGlmeV9kaXNjcmV0ZV9zY3JvbGwgKHVpbnQ2NCB0 aW1lX3VzLCBDbHV0dGVyLlNjcm9sbERpcmVjdGlvbiBkaXJlY3Rpb24sIENsdXR0ZXIuU2Nyb2xs U291cmNlIHNjcm9sbF9zb3VyY2UpOworKwkJcHVibGljIHZpcnR1YWwgdm9pZCBub3RpZnlfa2V5 ICh1aW50NjQgdGltZV91cywgdWludDMyIGtleSwgQ2x1dHRlci5LZXlTdGF0ZSBrZXlfc3RhdGUp OworKwkJcHVibGljIHZpcnR1YWwgdm9pZCBub3RpZnlfa2V5dmFsICh1aW50NjQgdGltZV91cywg dWludDMyIGtleXZhbCwgQ2x1dHRlci5LZXlTdGF0ZSBrZXlfc3RhdGUpOworKwkJcHVibGljIHZp cnR1YWwgdm9pZCBub3RpZnlfcmVsYXRpdmVfbW90aW9uICh1aW50NjQgdGltZV91cywgZG91Ymxl IGR4LCBkb3VibGUgZHkpOworKwkJcHVibGljIHZpcnR1YWwgdm9pZCBub3RpZnlfc2Nyb2xsX2Nv bnRpbnVvdXMgKHVpbnQ2NCB0aW1lX3VzLCBkb3VibGUgZHgsIGRvdWJsZSBkeSwgQ2x1dHRlci5T Y3JvbGxTb3VyY2Ugc2Nyb2xsX3NvdXJjZSwgQ2x1dHRlci5TY3JvbGxGaW5pc2hGbGFncyBmaW5p c2hfZmxhZ3MpOworKwkJcHVibGljIHZpcnR1YWwgdm9pZCBub3RpZnlfdG91Y2hfZG93biAodWlu dDY0IHRpbWVfdXMsIGludCBzbG90LCBkb3VibGUgeCwgZG91YmxlIHkpOworKwkJcHVibGljIHZp cnR1YWwgdm9pZCBub3RpZnlfdG91Y2hfbW90aW9uICh1aW50NjQgdGltZV91cywgaW50IHNsb3Qs IGRvdWJsZSB4LCBkb3VibGUgeSk7CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIG5vdGlmeV90b3Vj aF91cCAodWludDY0IHRpbWVfdXMsIGludCBzbG90KTsKKysJCXB1YmxpYyBDbHV0dGVyLklucHV0 RGV2aWNlVHlwZSBkZXZpY2VfdHlwZSB7IGdldDsgY29uc3RydWN0OyB9CisrCQlbTm9BY2Nlc3Nv ck1ldGhvZF0KKysJCXB1YmxpYyBDbHV0dGVyLlNlYXQgc2VhdCB7IG93bmVkIGdldDsgY29uc3Ry dWN0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3pvb21fYWN0aW9uX2dldF90eXBlICgpIildCisrCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCXB1YmxpYyBjbGFzcyBab29tQWN0aW9uIDogQ2x1 dHRlci5HZXN0dXJlQWN0aW9uIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9 IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3Rpb24qIildCisrCQlwdWJsaWMgWm9vbUFjdGlvbiAo KTsKKysJCXB1YmxpYyB2b2lkIGdldF9mb2NhbF9wb2ludCAoR3JhcGhlbmUuUG9pbnQgcG9pbnQp OworKwkJcHVibGljIHZvaWQgZ2V0X3RyYW5zZm9ybWVkX2ZvY2FsX3BvaW50IChHcmFwaGVuZS5Q b2ludCBwb2ludCk7CisrCQlwdWJsaWMgQ2x1dHRlci5ab29tQXhpcyBnZXRfem9vbV9heGlzICgp OworKwkJcHVibGljIHZvaWQgc2V0X3pvb21fYXhpcyAoQ2x1dHRlci5ab29tQXhpcyBheGlzKTsK KysJCXB1YmxpYyBDbHV0dGVyLlpvb21BeGlzIHpvb21fYXhpcyB7IGdldDsgc2V0OyB9CisrCQlw dWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCB6b29tIChDbHV0dGVyLkFjdG9yIGFjdG9yLCBHcmFw aGVuZS5Qb2ludCBmb2NhbF9wb2ludCwgZG91YmxlIGZhY3Rvcik7CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9jbmFtZSA9ICJDbHV0 dGVyQW5pbWF0YWJsZUludGVyZmFjZSIsIHR5cGVfaWQgPSAiY2x1dHRlcl9hbmltYXRhYmxlX2dl dF90eXBlICgpIildCisrCXB1YmxpYyBpbnRlcmZhY2UgQW5pbWF0YWJsZSA6IEdMaWIuT2JqZWN0 IHsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgYWJzdHJhY3QgYm9vbCBhbmltYXRlX3Byb3Bl cnR5IChDbHV0dGVyLkFuaW1hdGlvbiBhbmltYXRpb24sIHN0cmluZyBwcm9wZXJ0eV9uYW1lLCBH TGliLlZhbHVlIGluaXRpYWxfdmFsdWUsIEdMaWIuVmFsdWUgZmluYWxfdmFsdWUsIGRvdWJsZSBw cm9ncmVzcywgR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40Iild CisrCQlwdWJsaWMgYWJzdHJhY3QgdW5vd25lZCBHTGliLlBhcmFtU3BlYyBmaW5kX3Byb3BlcnR5 IChzdHJpbmcgcHJvcGVydHlfbmFtZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisr CQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBnZXRfaW5pdGlhbF9zdGF0ZSAoc3RyaW5nIHByb3BlcnR5 X25hbWUsIEdMaWIuVmFsdWUgdmFsdWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQor KwkJcHVibGljIGFic3RyYWN0IGJvb2wgaW50ZXJwb2xhdGVfdmFsdWUgKHN0cmluZyBwcm9wZXJ0 eV9uYW1lLCBDbHV0dGVyLkludGVydmFsIGludGVydmFsLCBkb3VibGUgcHJvZ3Jlc3MsIG91dCBH TGliLlZhbHVlIHZhbHVlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1Ymxp YyBhYnN0cmFjdCB2b2lkIHNldF9maW5hbF9zdGF0ZSAoc3RyaW5nIHByb3BlcnR5X25hbWUsIEdM aWIuVmFsdWUgdmFsdWUpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9jb250YWluZXJfZ2V0X3R5cGUgKCki KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwlwdWJsaWMgaW50ZXJmYWNlIENvbnRh aW5lciA6IEdMaWIuT2JqZWN0IHsKKysJCXB1YmxpYyB2b2lkIGFkZCAocGFyYW1zIENsdXR0ZXIu QWN0b3JbXSBhY3RvcnMpOworKwkJW0NDb2RlICh2ZnVuY19uYW1lID0gImFkZCIpXQorKwkJW1Zl cnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5j ZSA9ICIwLjQiKV0KKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lkIGFkZF9hY3RvciAoQ2x1dHRlci5B Y3RvciBhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdm9p ZCBjaGlsZF9nZXQgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIC4uLik7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMC44IildCisrCQlwdWJsaWMgdm9pZCBjaGlsZF9nZXRfcHJvcGVydHkgKENsdXR0ZXIu QWN0b3IgY2hpbGQsIHN0cmluZyBwcm9wZXJ0eSwgR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdm9pZCBjaGlsZF9zZXQgKENsdXR0ZXIu QWN0b3IgYWN0b3IsIC4uLik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJs aWMgdm9pZCBjaGlsZF9zZXRfcHJvcGVydHkgKENsdXR0ZXIuQWN0b3IgY2hpbGQsIHN0cmluZyBw cm9wZXJ0eSwgR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44Iild CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR0xpYi5QYXJhbVNwZWMgY2xhc3NfZmluZF9jaGls ZF9wcm9wZXJ0eSAoR0xpYi5PYmplY3RDbGFzcyBrbGFzcywgc3RyaW5nIHByb3BlcnR5X25hbWUp OworKwkJW0NDb2RlIChhcnJheV9sZW5ndGhfcG9zID0gMS4xLCBhcnJheV9sZW5ndGhfdHlwZSA9 ICJndWludCIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHN0YXRp YyBHTGliLlBhcmFtU3BlY1tdIGNsYXNzX2xpc3RfY2hpbGRfcHJvcGVydGllcyAoR0xpYi5PYmpl Y3RDbGFzcyBrbGFzcyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMg dmlydHVhbCB2b2lkIGNyZWF0ZV9jaGlsZF9tZXRhIChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgZGVzdHJv eV9jaGlsZF9tZXRhIChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIwLjYiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZmluZF9jaGlsZF9ieV9u YW1lIChzdHJpbmcgY2hpbGRfbmFtZSk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfY29u dGFpbmVyX2NsYXNzX2ZpbmRfY2hpbGRfcHJvcGVydHkiKV0KKysJCXB1YmxpYyBjbGFzcyB1bm93 bmVkIEdMaWIuUGFyYW1TcGVjIGZpbmRfY2hpbGRfcHJvcGVydHkgKHN0cmluZyBwcm9wZXJ0eV9u YW1lKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHVu b3duZWQgQ2x1dHRlci5DaGlsZE1ldGEgZ2V0X2NoaWxkX21ldGEgKENsdXR0ZXIuQWN0b3IgYWN0 b3IpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0g IjEuMTAiLCBzaW5jZSA9ICIwLjQiKV0KKysJCXB1YmxpYyBHTGliLkxpc3Q8d2VhayBDbHV0dGVy LkFjdG9yPiBnZXRfY2hpbGRyZW4gKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfY29u dGFpbmVyX2NsYXNzX2xpc3RfY2hpbGRfcHJvcGVydGllcyIpXQorKwkJcHVibGljIGNsYXNzIHVu b3duZWQgR0xpYi5QYXJhbVNwZWNbXSBsaXN0X2NoaWxkX3Byb3BlcnRpZXMgKCk7CisrCQlbQ0Nv ZGUgKHZmdW5jX25hbWUgPSAibG93ZXIiKV0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1 ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMg dmlydHVhbCB2b2lkIGxvd2VyX2NoaWxkIChDbHV0dGVyLkFjdG9yIGFjdG9yLCBDbHV0dGVyLkFj dG9yPyBzaWJsaW5nID0gbnVsbCk7CisrCQlbQ0NvZGUgKHZmdW5jX25hbWUgPSAicmFpc2UiKV0K KysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEw Iiwgc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHJhaXNlX2NoaWxkIChD bHV0dGVyLkFjdG9yIGFjdG9yLCBDbHV0dGVyLkFjdG9yPyBzaWJsaW5nID0gbnVsbCk7CisrCQlb VmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNp bmNlID0gIjAuNCIpXQorKwkJcHVibGljIHZvaWQgcmVtb3ZlICguLi4pOworKwkJW0NDb2RlICh2 ZnVuY19uYW1lID0gInJlbW92ZSIpXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBk ZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIwLjQiKV0KKysJCXB1YmxpYyBhYnN0 cmFjdCB2b2lkIHJlbW92ZV9hY3RvciAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCQlbVmVyc2lv biAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0g IjAuNiIpXQorKwkJcHVibGljIGFic3RyYWN0IHZvaWQgc29ydF9kZXB0aF9vcmRlciAoKTsKKysJ CXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGFjdG9yX2FkZGVkIChDbHV0dGVyLkFjdG9yIGFj dG9yKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGFjdG9yX3JlbW92ZWQgKENsdXR0 ZXIuQWN0b3IgYWN0b3IpOworKwkJW0hhc0VtaXR0ZXJdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MC44IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBjaGlsZF9ub3RpZnkgKENsdXR0 ZXIuQWN0b3IgY2hpbGQsIEdMaWIuUGFyYW1TcGVjIHBzcGVjKTsKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2NuYW1lID0gIkNsdXR0 ZXJDb250ZW50SW50ZXJmYWNlIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2NvbnRlbnRfZ2V0X3R5cGUg KCkiKV0KKysJcHVibGljIGludGVyZmFjZSBDb250ZW50IDogR0xpYi5PYmplY3QgeworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBhYnN0cmFjdCBib29sIGdldF9wcmVm ZXJyZWRfc2l6ZSAob3V0IGZsb2F0IHdpZHRoLCBvdXQgZmxvYXQgaGVpZ2h0KTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBpbnZhbGlkYXRl ICgpOworKwkJcHVibGljIGFic3RyYWN0IHZvaWQgaW52YWxpZGF0ZV9zaXplICgpOworKwkJW05v V3JhcHBlcl0KKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lkIHBhaW50X2NvbnRlbnQgKENsdXR0ZXIu QWN0b3IgYWN0b3IsIENsdXR0ZXIuUGFpbnROb2RlIG5vZGUsIENsdXR0ZXIuUGFpbnRDb250ZXh0 IHBhaW50X2NvbnRleHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1Ymxp YyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGF0dGFjaGVkIChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9p ZCBkZXRhY2hlZCAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3Njcmlw dGFibGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwlwdWJs aWMgaW50ZXJmYWNlIFNjcmlwdGFibGUgOiBHTGliLk9iamVjdCB7CisrCQlwdWJsaWMgYWJzdHJh Y3QgdW5vd25lZCBzdHJpbmcgZ2V0X2lkICgpOworKwkJcHVibGljIGFic3RyYWN0IGJvb2wgcGFy c2VfY3VzdG9tX25vZGUgKENsdXR0ZXIuU2NyaXB0IHNjcmlwdCwgR0xpYi5WYWx1ZSB2YWx1ZSwg c3RyaW5nIG5hbWUsIEpzb24uTm9kZSBub2RlKTsKKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lkIHNl dF9jdXN0b21fcHJvcGVydHkgKENsdXR0ZXIuU2NyaXB0IHNjcmlwdCwgc3RyaW5nIG5hbWUsIEdM aWIuVmFsdWUgdmFsdWUpOworKwkJcHVibGljIGFic3RyYWN0IHZvaWQgc2V0X2lkIChzdHJpbmcg aWRfKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiKV0KKysJcHVibGljIGludGVyZmFjZSBTdGFnZVdpbmRvdyA6IEdMaWIuT2JqZWN0IHsKKysJ CVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgYWJzdHJhY3QgaW50IGdldF9wZW5kaW5nX3N3YXBzICgp OworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyBhYnN0cmFjdCB1bm93bmVkIENsdXR0ZXIuQWN0 b3IgZ2V0X3dyYXBwZXIgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIGFic3RyYWN0IGJv b2wgaGFzX3JlZHJhd19jbGlwcyAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgYWJzdHJh Y3Qgdm9pZCBoaWRlICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyBhYnN0cmFjdCBib29s IGlnbm9yaW5nX3JlZHJhd19jbGlwcyAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgYWJz dHJhY3QgYm9vbCByZWFsaXplICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyBhYnN0cmFj dCB2b2lkIHJlc2l6ZSAoaW50IHdpZHRoLCBpbnQgaGVpZ2h0KTsKKysJCVtOb1dyYXBwZXJdCisr CQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBzZXRfY3Vyc29yX3Zpc2libGUgKGJvb2wgY3Vyc29yX3Zp c2libGUpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lkIHNldF9mdWxs c2NyZWVuIChib29sIGlzX2Z1bGxzY3JlZW4pOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyBh YnN0cmFjdCB2b2lkIHNldF90aXRsZSAoc3RyaW5nIHRpdGxlKTsKKysJCVtOb1dyYXBwZXJdCisr CQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBzZXRfdXNlcl9yZXNpemFibGUgKGJvb2wgaXNfcmVzaXph YmxlKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBzaG93IChib29s IGRvX3JhaXNlKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCB1bnJl YWxpemUgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY29weV9mdW5jdGlvbiA9ICJnX2JveGVkX2NvcHkiLCBmcmVlX2Z1bmN0aW9uID0g ImdfYm94ZWRfZnJlZSIsIHR5cGVfaWQgPSAiY2x1dHRlcl9hY3Rvcl9ib3hfZ2V0X3R5cGUgKCki KV0KKysJcHVibGljIHN0cnVjdCBBY3RvckJveCB7CisrCQlwdWJsaWMgZmxvYXQgeDE7CisrCQlw dWJsaWMgZmxvYXQgeTE7CisrCQlwdWJsaWMgZmxvYXQgeDI7CisrCQlwdWJsaWMgZmxvYXQgeTI7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHN0YXRpYyBDbHV0dGVy LkFjdG9yQm94PyBhbGxvYyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1 YmxpYyBzdGF0aWMgdm9pZCBjbGFtcF90b19waXhlbCAocmVmIENsdXR0ZXIuQWN0b3JCb3ggYm94 KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBib29sIGNvbnRhaW5z IChmbG9hdCB4LCBmbG9hdCB5KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyBDbHV0dGVyLkFjdG9yQm94PyBjb3B5ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MCIpXQorKwkJcHVibGljIGJvb2wgZXF1YWwgKENsdXR0ZXIuQWN0b3JCb3ggYm94X2IpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgZnJlZSAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfYXJlYSAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfaGVpZ2h0ICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgZ2V0X29yaWdp biAob3V0IGZsb2F0IHgsIG91dCBmbG9hdCB5KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyB2b2lkIGdldF9zaXplIChvdXQgZmxvYXQgd2lkdGgsIG91dCBmbG9hdCBo ZWlnaHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGdl dF93aWR0aCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9h dCBnZXRfeCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9h dCBnZXRfeSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdW5v d25lZCBDbHV0dGVyLkFjdG9yQm94PyBpbml0IChmbG9hdCB4XzEsIGZsb2F0IHlfMSwgZmxvYXQg eF8yLCBmbG9hdCB5XzIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1Ymxp YyB2b2lkIGluaXRfcmVjdCAoZmxvYXQgeCwgZmxvYXQgeSwgZmxvYXQgd2lkdGgsIGZsb2F0IGhl aWdodCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgQ2x1dHRlci5B Y3RvckJveCBpbnRlcnBvbGF0ZSAoQ2x1dHRlci5BY3RvckJveCBmaW5hbCwgZG91YmxlIHByb2dy ZXNzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB2b2lkIHNjYWxl IChmbG9hdCBzY2FsZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMg dm9pZCBzZXRfb3JpZ2luIChmbG9hdCB4LCBmbG9hdCB5KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9zaXplIChmbG9hdCB3aWR0aCwgZmxvYXQgaGVp Z2h0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFj dG9yQm94IHVuaW9uIChDbHV0dGVyLkFjdG9yQm94IGIpOworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQor KwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgc3RydWN0IEFjdG9ySXRlciB7 CisrCQlwdWJsaWMgdm9pZCBkZXN0cm95ICgpOworKwkJcHVibGljIHZvaWQgaW5pdCAoQ2x1dHRl ci5BY3RvciByb290KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMg Ym9vbCBpc192YWxpZCAoKTsKKysJCXB1YmxpYyBib29sIG5leHQgKG91dCB1bm93bmVkIENsdXR0 ZXIuQWN0b3IgY2hpbGQpOworKwkJcHVibGljIGJvb2wgcHJldiAob3V0IHVub3duZWQgQ2x1dHRl ci5BY3RvciBjaGlsZCk7CisrCQlwdWJsaWMgdm9pZCByZW1vdmUgKCk7CisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBm YWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgQ2FwdHVyZSB7CisrCQlwdWJsaWMgd2VhayBDYWlyby5T dXJmYWNlIGltYWdlOworKwkJcHVibGljIENhaXJvLlJlY3RhbmdsZUludCByZWN0OworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNvcHlfZnVu Y3Rpb24gPSAiZ19ib3hlZF9jb3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0 eXBlX2lkID0gIkNMVVRURVJfVFlQRV9DT0xPUiIpXQorKwlwdWJsaWMgc3RydWN0IENvbG9yIHsK KysJCXB1YmxpYyB1aW50OCByZWQ7CisrCQlwdWJsaWMgdWludDggZ3JlZW47CisrCQlwdWJsaWMg dWludDggYmx1ZTsKKysJCXB1YmxpYyB1aW50OCBhbHBoYTsKKysJCXB1YmxpYyBDbHV0dGVyLkNv bG9yIGFkZCAoQ2x1dHRlci5Db2xvciBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIild CisrCQlwdWJsaWMgc3RhdGljIENsdXR0ZXIuQ29sb3I/IGFsbG9jICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIENsdXR0ZXIuQ29sb3I/IGNvcHkgKCk7CisrCQlw dWJsaWMgQ2x1dHRlci5Db2xvciBkYXJrZW4gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC4y IildCisrCQlwdWJsaWMgYm9vbCBlcXVhbCAoQ2x1dHRlci5Db2xvciB2Mik7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMC4yIildCisrCQlwdWJsaWMgdm9pZCBmcmVlICgpOworKwkJW0NDb2RlIChj bmFtZSA9ICJjbHV0dGVyX2NvbG9yX2Zyb21faGxzIildCisrCQlwdWJsaWMgQ29sb3IuZnJvbV9o bHMgKGZsb2F0IGh1ZSwgZmxvYXQgbHVtaW5hbmNlLCBmbG9hdCBzYXR1cmF0aW9uKTsKKysJCVtD Q29kZSAoY25hbWUgPSAiY2x1dHRlcl9jb2xvcl9mcm9tX3BpeGVsIildCisrCQlwdWJsaWMgQ29s b3IuZnJvbV9waXhlbCAodWludDMyIHBpeGVsKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRl cl9jb2xvcl9mcm9tX3N0cmluZyIpXQorKwkJcHVibGljIENvbG9yLmZyb21fc3RyaW5nIChzdHJp bmcgc3RyKTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLkNvbG9yPyBnZXRfc3Rh dGljIChDbHV0dGVyLlN0YXRpY0NvbG9yIGNvbG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjAiKV0KKysJCXB1YmxpYyB1aW50IGhhc2ggKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MiIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5Db2xvcj8gaW5pdCAodWludDggcmVkLCB1 aW50OCBncmVlbiwgdWludDggYmx1ZSwgdWludDggYWxwaGEpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuNiIpXQorKwkJcHVibGljIENsdXR0ZXIuQ29sb3IgaW50ZXJwb2xhdGUgKENsdXR0ZXIu Q29sb3IgZmluYWwsIGRvdWJsZSBwcm9ncmVzcyk7CisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBs aWdodGVuICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX2NvbG9yX2Zyb21fc3RyaW5n IildCisrCQlwdWJsaWMgYm9vbCBwYXJzZV9zdHJpbmcgKHN0cmluZyBzdHIpOworKwkJcHVibGlj IENsdXR0ZXIuQ29sb3Igc2hhZGUgKGRvdWJsZSBmYWN0b3IpOworKwkJcHVibGljIENsdXR0ZXIu Q29sb3Igc3VidHJhY3QgKENsdXR0ZXIuQ29sb3IgYik7CisrCQlwdWJsaWMgdm9pZCB0b19obHMg KG91dCBmbG9hdCBodWUsIG91dCBmbG9hdCBsdW1pbmFuY2UsIG91dCBmbG9hdCBzYXR1cmF0aW9u KTsKKysJCXB1YmxpYyB1aW50MzIgdG9fcGl4ZWwgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MC4yIildCisrCQlwdWJsaWMgc3RyaW5nIHRvX3N0cmluZyAoKTsKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNl KV0KKysJcHVibGljIHN0cnVjdCBLYmRBMTF5U2V0dGluZ3MgeworKwkJcHVibGljIENsdXR0ZXIu S2V5Ym9hcmRBMTF5RmxhZ3MgY29udHJvbHM7CisrCQlwdWJsaWMgaW50IHNsb3drZXlzX2RlbGF5 OworKwkJcHVibGljIGludCBkZWJvdW5jZV9kZWxheTsKKysJCXB1YmxpYyBpbnQgdGltZW91dF9k ZWxheTsKKysJCXB1YmxpYyBpbnQgbW91c2VrZXlzX2luaXRfZGVsYXk7CisrCQlwdWJsaWMgaW50 IG1vdXNla2V5c19tYXhfc3BlZWQ7CisrCQlwdWJsaWMgaW50IG1vdXNla2V5c19hY2NlbF90aW1l OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNvcHlfZnVuY3Rpb24gPSAiZ19ib3hlZF9jb3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVk X2ZyZWUiLCB0eXBlX2lkID0gImNsdXR0ZXJfa25vdF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMC4yIildCisrCXB1YmxpYyBzdHJ1Y3QgS25vdCB7CisrCQlwdWJsaWMgaW50 IHg7CisrCQlwdWJsaWMgaW50IHk7CisrCQlwdWJsaWMgQ2x1dHRlci5Lbm90PyBjb3B5ICgpOwor KwkJcHVibGljIGJvb2wgZXF1YWwgKENsdXR0ZXIuS25vdCBrbm90X2IpOworKwkJcHVibGljIHZv aWQgZnJlZSAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiKV0KKysJcHVibGljIHN0cnVjdCBNYXRyaXggOiBDb2dsLk1hdHJpeCB7CisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5 cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgUGFkQnV0dG9uRXZlbnQgeworKwkJcHVi bGljIENsdXR0ZXIuRXZlbnRUeXBlIHR5cGU7CisrCQlwdWJsaWMgdWludDMyIHRpbWU7CisrCQlw dWJsaWMgQ2x1dHRlci5FdmVudEZsYWdzIGZsYWdzOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5T dGFnZSBzdGFnZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuQWN0b3Igc291cmNlOworKwkJcHVi bGljIHVpbnQzMiBidXR0b247CisrCQlwdWJsaWMgdWludDMyIGdyb3VwOworKwkJcHVibGljIHdl YWsgQ2x1dHRlci5JbnB1dERldmljZSBkZXZpY2U7CisrCQlwdWJsaWMgdWludDMyIG1vZGU7Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFz X3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgUGFkUmluZ0V2ZW50IHsKKysJCXB1 YmxpYyBDbHV0dGVyLkV2ZW50VHlwZSB0eXBlOworKwkJcHVibGljIHVpbnQzMiB0aW1lOworKwkJ cHVibGljIENsdXR0ZXIuRXZlbnRGbGFncyBmbGFnczsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIu U3RhZ2Ugc3RhZ2U7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLkFjdG9yIHNvdXJjZTsKKysJCXB1 YmxpYyB3ZWFrIENsdXR0ZXIuSW5wdXREZXZpY2UgZGV2aWNlOworKwkJcHVibGljIENsdXR0ZXIu SW5wdXREZXZpY2VQYWRTb3VyY2UgcmluZ19zb3VyY2U7CisrCQlwdWJsaWMgdWludDMyIHJpbmdf bnVtYmVyOworKwkJcHVibGljIHVpbnQzMiBncm91cDsKKysJCXB1YmxpYyBkb3VibGUgYW5nbGU7 CisrCQlwdWJsaWMgdWludDMyIG1vZGU7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBz dHJ1Y3QgUGFkU3RyaXBFdmVudCB7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudFR5cGUgdHlwZTsK KysJCXB1YmxpYyB1aW50MzIgdGltZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50RmxhZ3MgZmxh Z3M7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLlN0YWdlIHN0YWdlOworKwkJcHVibGljIHdlYWsg Q2x1dHRlci5BY3RvciBzb3VyY2U7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLklucHV0RGV2aWNl IGRldmljZTsKKysJCXB1YmxpYyBDbHV0dGVyLklucHV0RGV2aWNlUGFkU291cmNlIHN0cmlwX3Nv dXJjZTsKKysJCXB1YmxpYyB1aW50MzIgc3RyaXBfbnVtYmVyOworKwkJcHVibGljIHVpbnQzMiBn cm91cDsKKysJCXB1YmxpYyBkb3VibGUgdmFsdWU7CisrCQlwdWJsaWMgdWludDMyIG1vZGU7Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY29w eV9mdW5jdGlvbiA9ICJnX2JveGVkX2NvcHkiLCBmcmVlX2Z1bmN0aW9uID0gImdfYm94ZWRfZnJl ZSIsIHR5cGVfaWQgPSAiY2x1dHRlcl9wYXRoX25vZGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgc3RydWN0IFBhdGhOb2RlIHsKKysJCXB1Ymxp YyBDbHV0dGVyLlBhdGhOb2RlVHlwZSB0eXBlOworKwkJW0NDb2RlIChhcnJheV9sZW5ndGggPSBm YWxzZSldCisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLktub3QgcG9pbnRzWzNdOworKwkJcHVibGlj IENsdXR0ZXIuUGF0aE5vZGU/IGNvcHkgKCk7CisrCQlwdWJsaWMgYm9vbCBlcXVhbCAoQ2x1dHRl ci5QYXRoTm9kZSBub2RlX2IpOworKwkJcHVibGljIHZvaWQgZnJlZSAoKTsKKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjb3B5X2Z1bmN0aW9u ID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9p ZCA9ICJjbHV0dGVyX3BlcnNwZWN0aXZlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIwLjQiKV0KKysJcHVibGljIHN0cnVjdCBQZXJzcGVjdGl2ZSB7CisrCQlwdWJsaWMgZmxv YXQgZm92eTsKKysJCXB1YmxpYyBmbG9hdCBhc3BlY3Q7CisrCQlwdWJsaWMgZmxvYXQgel9uZWFy OworKwkJcHVibGljIGZsb2F0IHpfZmFyOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMg c3RydWN0IFBvaW50ZXJBMTF5U2V0dGluZ3MgeworKwkJcHVibGljIENsdXR0ZXIuUG9pbnRlckEx MXlGbGFncyBjb250cm9sczsKKysJCXB1YmxpYyBDbHV0dGVyLlBvaW50ZXJBMTF5RHdlbGxDbGlj a1R5cGUgZHdlbGxfY2xpY2tfdHlwZTsKKysJCXB1YmxpYyBDbHV0dGVyLlBvaW50ZXJBMTF5RHdl bGxNb2RlIGR3ZWxsX21vZGU7CisrCQlwdWJsaWMgQ2x1dHRlci5Qb2ludGVyQTExeUR3ZWxsRGly ZWN0aW9uIGR3ZWxsX2dlc3R1cmVfc2luZ2xlOworKwkJcHVibGljIENsdXR0ZXIuUG9pbnRlckEx MXlEd2VsbERpcmVjdGlvbiBkd2VsbF9nZXN0dXJlX2RvdWJsZTsKKysJCXB1YmxpYyBDbHV0dGVy LlBvaW50ZXJBMTF5RHdlbGxEaXJlY3Rpb24gZHdlbGxfZ2VzdHVyZV9kcmFnOworKwkJcHVibGlj IENsdXR0ZXIuUG9pbnRlckExMXlEd2VsbERpcmVjdGlvbiBkd2VsbF9nZXN0dXJlX3NlY29uZGFy eTsKKysJCXB1YmxpYyBpbnQgc2Vjb25kYXJ5X2NsaWNrX2RlbGF5OworKwkJcHVibGljIGludCBk d2VsbF9kZWxheTsKKysJCXB1YmxpYyBpbnQgZHdlbGxfdGhyZXNob2xkOworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGhhc190eXBlX2lkID0g ZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yOCIpXQorKwlwdWJsaWMgc3RydWN0IFBy b3hpbWl0eUV2ZW50IHsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50VHlwZSB0eXBlOworKwkJcHVi bGljIHVpbnQzMiB0aW1lOworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRGbGFncyBmbGFnczsKKysJ CXB1YmxpYyB3ZWFrIENsdXR0ZXIuU3RhZ2Ugc3RhZ2U7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVy LkFjdG9yIHNvdXJjZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuSW5wdXREZXZpY2UgZGV2aWNl OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNvcHlfZnVuY3Rpb24gPSAiZ19ib3hlZF9jb3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVk X2ZyZWUiLCB0eXBlX2lkID0gIkNMVVRURVJfVFlQRV9VTklUUyIpXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCXB1YmxpYyBzdHJ1Y3QgVW5pdHMgeworKwkJcHVibGljIENsdXR0ZXIu VW5pdHM/IGNvcHkgKCk7CisrCQlwdWJsaWMgdm9pZCBmcmVlICgpOworKwkJW0NDb2RlIChjbmFt ZSA9ICJjbHV0dGVyX3VuaXRzX2Zyb21fY20iKV0KKysJCXB1YmxpYyBVbml0cy5mcm9tX2NtIChm bG9hdCBjbSk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfdW5pdHNfZnJvbV9lbSIpXQor KwkJcHVibGljIFVuaXRzLmZyb21fZW0gKGZsb2F0IGVtKTsKKysJCVtDQ29kZSAoY25hbWUgPSAi Y2x1dHRlcl91bml0c19mcm9tX2VtX2Zvcl9mb250IildCisrCQlwdWJsaWMgVW5pdHMuZnJvbV9l bV9mb3JfZm9udCAoc3RyaW5nIGZvbnRfbmFtZSwgZmxvYXQgZW0pOworKwkJW0NDb2RlIChjbmFt ZSA9ICJjbHV0dGVyX3VuaXRzX2Zyb21fbW0iKV0KKysJCXB1YmxpYyBVbml0cy5mcm9tX21tIChm bG9hdCBtbSk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfdW5pdHNfZnJvbV9waXhlbHMi KV0KKysJCXB1YmxpYyBVbml0cy5mcm9tX3BpeGVscyAoaW50IHB4KTsKKysJCVtDQ29kZSAoY25h bWUgPSAiY2x1dHRlcl91bml0c19mcm9tX3B0IildCisrCQlwdWJsaWMgVW5pdHMuZnJvbV9wdCAo ZmxvYXQgcHQpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX3VuaXRzX2Zyb21fc3RyaW5n IildCisrCQlwdWJsaWMgVW5pdHMuZnJvbV9zdHJpbmcgKHN0cmluZyBzdHIpOworKwkJcHVibGlj IENsdXR0ZXIuVW5pdFR5cGUgZ2V0X3VuaXRfdHlwZSAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRf dW5pdF92YWx1ZSAoKTsKKysJCXB1YmxpYyBmbG9hdCB0b19waXhlbHMgKCk7CisrCQlwdWJsaWMg c3RyaW5nIHRvX3N0cmluZyAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfQUNUT1JfQUxJR05fIiwgdHlw ZV9pZCA9ICJjbHV0dGVyX2FjdG9yX2FsaWduX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBlbnVtIEFjdG9yQWxpZ24geworKwkJRklMTCwKKysJ CVNUQVJULAorKwkJQ0VOVEVSLAorKwkJRU5ECisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0FDVE9SXyIsIHR5 cGVfaWQgPSAiY2x1dHRlcl9hY3Rvcl9mbGFnc19nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisr CXB1YmxpYyBlbnVtIEFjdG9yRmxhZ3MgeworKwkJTUFQUEVELAorKwkJUkVBTElaRUQsCisrCQlS RUFDVElWRSwKKysJCVZJU0lCTEUsCisrCQlOT19MQVlPVVQKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfQUxJ R05fIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2FsaWduX2F4aXNfZ2V0X3R5cGUgKCkiKV0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgZW51bSBBbGlnbkF4aXMgeworKwkJWF9B WElTLAorKwkJWV9BWElTLAorKwkJQk9USAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl8iLCB0eXBlX2lkID0g ImNsdXR0ZXJfYWxsb2NhdGlvbl9mbGFnc19nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGVudW0gQWxsb2NhdGlvbkZsYWdzIHsK KysJCUFMTE9DQVRJT05fTk9ORSwKKysJCUFCU09MVVRFX09SSUdJTl9DSEFOR0VELAorKwkJREVM RUdBVEVfTEFZT1VUCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9hbmlt YXRpb25fbW9kZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisr CXB1YmxpYyBlbnVtIEFuaW1hdGlvbk1vZGUgeworKwkJQ1VTVE9NX01PREUsCisrCQlMSU5FQVIs CisrCQlFQVNFX0lOX1FVQUQsCisrCQlFQVNFX09VVF9RVUFELAorKwkJRUFTRV9JTl9PVVRfUVVB RCwKKysJCUVBU0VfSU5fQ1VCSUMsCisrCQlFQVNFX09VVF9DVUJJQywKKysJCUVBU0VfSU5fT1VU X0NVQklDLAorKwkJRUFTRV9JTl9RVUFSVCwKKysJCUVBU0VfT1VUX1FVQVJULAorKwkJRUFTRV9J Tl9PVVRfUVVBUlQsCisrCQlFQVNFX0lOX1FVSU5ULAorKwkJRUFTRV9PVVRfUVVJTlQsCisrCQlF QVNFX0lOX09VVF9RVUlOVCwKKysJCUVBU0VfSU5fU0lORSwKKysJCUVBU0VfT1VUX1NJTkUsCisr CQlFQVNFX0lOX09VVF9TSU5FLAorKwkJRUFTRV9JTl9FWFBPLAorKwkJRUFTRV9PVVRfRVhQTywK KysJCUVBU0VfSU5fT1VUX0VYUE8sCisrCQlFQVNFX0lOX0NJUkMsCisrCQlFQVNFX09VVF9DSVJD LAorKwkJRUFTRV9JTl9PVVRfQ0lSQywKKysJCUVBU0VfSU5fRUxBU1RJQywKKysJCUVBU0VfT1VU X0VMQVNUSUMsCisrCQlFQVNFX0lOX09VVF9FTEFTVElDLAorKwkJRUFTRV9JTl9CQUNLLAorKwkJ RUFTRV9PVVRfQkFDSywKKysJCUVBU0VfSU5fT1VUX0JBQ0ssCisrCQlFQVNFX0lOX0JPVU5DRSwK KysJCUVBU0VfT1VUX0JPVU5DRSwKKysJCUVBU0VfSU5fT1VUX0JPVU5DRSwKKysJCVNURVBTLAor KwkJU1RFUF9TVEFSVCwKKysJCVNURVBfRU5ELAorKwkJQ1VCSUNfQkVaSUVSLAorKwkJRUFTRSwK KysJCUVBU0VfSU4sCisrCQlFQVNFX09VVCwKKysJCUVBU0VfSU5fT1VULAorKwkJQU5JTUFUSU9O X0xBU1QKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjcHJlZml4ID0gIkNMVVRURVJfQklOX0FMSUdOTUVOVF8iLCB0eXBlX2lkID0gImNsdXR0 ZXJfYmluX2FsaWdubWVudF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4y IildCisrCXB1YmxpYyBlbnVtIEJpbkFsaWdubWVudCB7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRl ZCA9IHRydWUpXQorKwkJRklYRUQsCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUpXQor KwkJRklMTCwKKysJCVNUQVJULAorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlKV0KKysJ CUVORCwKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSldCisrCQlDRU5URVIKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4 ID0gIkNMVVRURVJfQklORF8iLCB0eXBlX2lkID0gImNsdXR0ZXJfYmluZF9jb29yZGluYXRlX2dl dF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGVudW0g QmluZENvb3JkaW5hdGUgeworKwkJWCwKKysJCVksCisrCQlXSURUSCwKKysJCUhFSUdIVCwKKysJ CVBPU0lUSU9OLAorKwkJU0laRSwKKysJCUFMTAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9CT1hfQUxJR05N RU5UXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9ib3hfYWxpZ25tZW50X2dldF90eXBlICgpIildCisr CVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJcHVibGljIGVudW0gQm94QWxpZ25tZW50IHsK KysJCVNUQVJULAorKwkJRU5ELAorKwkJQ0VOVEVSCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0JVVFRPTl9T VEFURV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfYnV0dG9uX3N0YXRlX2dldF90eXBlICgpIildCisr CXB1YmxpYyBlbnVtIEJ1dHRvblN0YXRlIHsKKysJCVJFTEVBU0VELAorKwkJUFJFU1NFRAorKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVm aXggPSAiQ0xVVFRFUl9DT05URU5UX0dSQVZJVFlfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2NvbnRl bnRfZ3Jhdml0eV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQor KwlwdWJsaWMgZW51bSBDb250ZW50R3Jhdml0eSB7CisrCQlUT1BfTEVGVCwKKysJCVRPUCwKKysJ CVRPUF9SSUdIVCwKKysJCUxFRlQsCisrCQlDRU5URVIsCisrCQlSSUdIVCwKKysJCUJPVFRPTV9M RUZULAorKwkJQk9UVE9NLAorKwkJQk9UVE9NX1JJR0hULAorKwkJUkVTSVpFX0ZJTEwsCisrCQlS RVNJWkVfQVNQRUNUCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1JFUEVBVF8iLCB0eXBlX2lkID0gImNsdXR0 ZXJfY29udGVudF9yZXBlYXRfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMiIpXQorKwlwdWJsaWMgZW51bSBDb250ZW50UmVwZWF0IHsKKysJCU5PTkUs CisrCQlYX0FYSVMsCisrCQlZX0FYSVMsCisrCQlCT1RICisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0RFQlVH XyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9kZWJ1Z19mbGFnX2dldF90eXBlICgpIildCisrCVtGbGFn c10KKysJcHVibGljIGVudW0gRGVidWdGbGFnIHsKKysJCU1JU0MsCisrCQlBQ1RPUiwKKysJCVRF WFRVUkUsCisrCQlFVkVOVCwKKysJCVBBSU5ULAorKwkJUEFOR08sCisrCQlCQUNLRU5ELAorKwkJ U0NIRURVTEVSLAorKwkJU0NSSVBULAorKwkJU0hBREVSLAorKwkJTVVMVElTVEFHRSwKKysJCUFO SU1BVElPTiwKKysJCUxBWU9VVCwKKysJCVBJQ0ssCisrCQlFVkVOVExPT1AsCisrCQlDTElQUElO RywKKysJCU9PQl9UUkFOU0ZPUk1TCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0RSQUdfIiwgdHlwZV9pZCA9 ICJjbHV0dGVyX2RyYWdfYXhpc19nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAi MS40IildCisrCXB1YmxpYyBlbnVtIERyYWdBeGlzIHsKKysJCUFYSVNfTk9ORSwKKysJCVhfQVhJ UywKKysJCVlfQVhJUworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9ERUJVR18iLCB0eXBlX2lkID0gImNsdXR0 ZXJfZHJhd19kZWJ1Z19mbGFnX2dldF90eXBlICgpIildCisrCVtGbGFnc10KKysJcHVibGljIGVu dW0gRHJhd0RlYnVnRmxhZyB7CisrCQlESVNBQkxFX1NXQVBfRVZFTlRTLAorKwkJRElTQUJMRV9D TElQUEVEX1JFRFJBV1MsCisrCQlSRURSQVdTLAorKwkJUEFJTlRfVk9MVU1FUywKKysJCURJU0FC TEVfQ1VMTElORywKKysJCURJU0FCTEVfT0ZGU0NSRUVOX1JFRElSRUNULAorKwkJQ09OVElOVU9V U19SRURSQVcsCisrCQlQQUlOVF9ERUZPUk1fVElMRVMsCisrCQlQQUlOVF9EQU1BR0VfUkVHSU9O CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y3ByZWZpeCA9ICJDTFVUVEVSX0VGRkVDVF9QQUlOVF9BQ1RPUl8iLCB0eXBlX2lkID0gImNsdXR0 ZXJfZWZmZWN0X3BhaW50X2ZsYWdzX2dldF90eXBlICgpIildCisrCVtGbGFnc10KKysJcHVibGlj IGVudW0gRWZmZWN0UGFpbnRGbGFncyB7CisrCQlbQ0NvZGUgKGNuYW1lID0gIkNMVVRURVJfRUZG RUNUX1BBSU5UX0FDVE9SX0RJUlRZIildCisrCQlBQ1RPUl9ESVJUWQorKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRF Ul9FVkVOVF8iLCB0eXBlX2lkID0gImNsdXR0ZXJfZXZlbnRfZmxhZ3NfZ2V0X3R5cGUgKCkiKV0K KysJW0ZsYWdzXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCXB1YmxpYyBlbnVtIEV2 ZW50RmxhZ3MgeworKwkJTk9ORSwKKysJCUZMQUdfU1lOVEhFVElDLAorKwkJRkxBR19JTlBVVF9N RVRIT0QsCisrCQlGTEFHX1JFUEVBVEVECisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSXyIsIHR5cGVfaWQgPSAi Y2x1dHRlcl9ldmVudF90eXBlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIw LjQiKV0KKysJcHVibGljIGVudW0gRXZlbnRUeXBlIHsKKysJCU5PVEhJTkcsCisrCQlLRVlfUFJF U1MsCisrCQlLRVlfUkVMRUFTRSwKKysJCU1PVElPTiwKKysJCUVOVEVSLAorKwkJTEVBVkUsCisr CQlCVVRUT05fUFJFU1MsCisrCQlCVVRUT05fUkVMRUFTRSwKKysJCVNDUk9MTCwKKysJCVNUQUdF X1NUQVRFLAorKwkJREVTVFJPWV9OT1RJRlksCisrCQlDTElFTlRfTUVTU0FHRSwKKysJCURFTEVU RSwKKysJCVRPVUNIX0JFR0lOLAorKwkJVE9VQ0hfVVBEQVRFLAorKwkJVE9VQ0hfRU5ELAorKwkJ VE9VQ0hfQ0FOQ0VMLAorKwkJVE9VQ0hQQURfUElOQ0gsCisrCQlUT1VDSFBBRF9TV0lQRSwKKysJ CVBST1hJTUlUWV9JTiwKKysJCVBST1hJTUlUWV9PVVQsCisrCQlQQURfQlVUVE9OX1BSRVNTLAor KwkJUEFEX0JVVFRPTl9SRUxFQVNFLAorKwkJUEFEX1NUUklQLAorKwkJUEFEX1JJTkcsCisrCQlF VkVOVF9MQVNUCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0ZFQVRVUkVfIiwgdHlwZV9pZCA9ICJjbHV0dGVy X2ZlYXR1cmVfZmxhZ3NfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMC40IildCisrCXB1YmxpYyBlbnVtIEZlYXR1cmVGbGFncyB7CisrCQlURVhUVVJFX05Q T1QsCisrCQlTV0FQX1RIUk9UVExFLAorKwkJU1RBR0VfU1RBVElDLAorKwkJU1RBR0VfQ1VSU09S LAorKwkJU0hBREVSU19HTFNMLAorKwkJT0ZGU0NSRUVOLAorKwkJU1RBR0VfTVVMVElQTEUsCisr CQlTV0FQX0VWRU5UUzsKKysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl9mZWF0dXJlX2F2YWls YWJsZSIpXQorKwkJcHVibGljIGJvb2wgaXNfYXZhaWxhYmxlICgpOworKwkJW0NDb2RlIChjbmFt ZSA9ICJjbHV0dGVyX2ZlYXR1cmVfZ2V0X2FsbCIpXQorKwkJcHVibGljIHN0YXRpYyBDbHV0dGVy LkZlYXR1cmVGbGFncyBAZ2V0ICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9GTE9XXyIsIHR5cGVfaWQg PSAiY2x1dHRlcl9mbG93X29yaWVudGF0aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChz aW5jZSA9ICIxLjIiKV0KKysJcHVibGljIGVudW0gRmxvd09yaWVudGF0aW9uIHsKKysJCUhPUkla T05UQUwsCisrCQlWRVJUSUNBTAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9HRVNUVVJFX1RSSUdHRVJfRURH RV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfZ2VzdHVyZV90cmlnZ2VyX2VkZ2VfZ2V0X3R5cGUgKCki KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTgiKV0KKysJcHVibGljIGVudW0gR2VzdHVyZVRy aWdnZXJFZGdlIHsKKysJCU5PTkUsCisrCQlBRlRFUiwKKysJCUJFRk9SRQorKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xV VFRFUl9HUkFWSVRZXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9ncmF2aXR5X2dldF90eXBlICgpIild CisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjIy Iiwgc2luY2UgPSAiMC4yIildCisrCXB1YmxpYyBlbnVtIEdyYXZpdHkgeworKwkJTk9ORSwKKysJ CU5PUlRILAorKwkJTk9SVEhfRUFTVCwKKysJCUVBU1QsCisrCQlTT1VUSF9FQVNULAorKwkJU09V VEgsCisrCQlTT1VUSF9XRVNULAorKwkJV0VTVCwKKysJCU5PUlRIX1dFU1QsCisrCQlDRU5URVIK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj cHJlZml4ID0gIkNMVVRURVJfR1JJRF9QT1NJVElPTl8iLCB0eXBlX2lkID0gImNsdXR0ZXJfZ3Jp ZF9wb3NpdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQor KwlwdWJsaWMgZW51bSBHcmlkUG9zaXRpb24geworKwkJTEVGVCwKKysJCVJJR0hULAorKwkJVE9Q LAorKwkJQk9UVE9NCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0lOSVRfIiwgdHlwZV9pZCA9ICJjbHV0dGVy X2luaXRfZXJyb3JfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQor KwlwdWJsaWMgZW51bSBJbml0RXJyb3IgeworKwkJU1VDQ0VTUywKKysJCUVSUk9SX1VOS05PV04s CisrCQlFUlJPUl9USFJFQURTLAorKwkJRVJST1JfQkFDS0VORCwKKysJCUVSUk9SX0lOVEVSTkFM OworKwkJcHVibGljIHN0YXRpYyBHTGliLlF1YXJrIHF1YXJrICgpOworKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRF Ul9JTlBVVF9BWElTXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9pbnB1dF9heGlzX2dldF90eXBlICgp IildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJcHVibGljIGVudW0gSW5wdXRBeGlz IHsKKysJCUlHTk9SRSwKKysJCVgsCisrCQlZLAorKwkJUFJFU1NVUkUsCisrCQlYVElMVCwKKysJ CVlUSUxULAorKwkJV0hFRUwsCisrCQlESVNUQU5DRSwKKysJCVJPVEFUSU9OLAorKwkJU0xJREVS LAorKwkJTEFTVAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9JTlBVVF9DT05URU5UX0hJTlRfIiwgdHlwZV9p ZCA9ICJjbHV0dGVyX2lucHV0X2NvbnRlbnRfaGludF9mbGFnc19nZXRfdHlwZSAoKSIpXQorKwlb RmxhZ3NdCisrCXB1YmxpYyBlbnVtIElucHV0Q29udGVudEhpbnRGbGFncyB7CisrCQlDT01QTEVU SU9OLAorKwkJU1BFTExDSEVDSywKKysJCUFVVE9fQ0FQSVRBTElaQVRJT04sCisrCQlMT1dFUkNB U0UsCisrCQlVUFBFUkNBU0UsCisrCQlUSVRMRUNBU0UsCisrCQlISURERU5fVEVYVCwKKysJCVNF TlNJVElWRV9EQVRBLAorKwkJTEFUSU4sCisrCQlNVUxUSUxJTkUKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJf SU5QVVRfQ09OVEVOVF9QVVJQT1NFXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9pbnB1dF9jb250ZW50 X3B1cnBvc2VfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gSW5wdXRDb250ZW50UHVycG9z ZSB7CisrCQlOT1JNQUwsCisrCQlBTFBIQSwKKysJCURJR0lUUywKKysJCU5VTUJFUiwKKysJCVBI T05FLAorKwkJVVJMLAorKwkJRU1BSUwsCisrCQlOQU1FLAorKwkJUEFTU1dPUkQsCisrCQlEQVRF LAorKwkJVElNRSwKKysJCURBVEVUSU1FLAorKwkJVEVSTUlOQUwKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJf SU5QVVRfREVWSUNFX01BUFBJTkdfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2lucHV0X2RldmljZV9t YXBwaW5nX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIElucHV0RGV2aWNlTWFwcGluZyB7 CisrCQlBQlNPTFVURSwKKysJCVJFTEFUSVZFCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0lOUFVUX0RFVklD RV9QQURfU09VUkNFXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9pbnB1dF9kZXZpY2VfcGFkX3NvdXJj ZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBJbnB1dERldmljZVBhZFNvdXJjZSB7Cisr CQlVTktOT1dOLAorKwkJRklOR0VSCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0lOUFVUX0RFVklDRV9UT09M XyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9pbnB1dF9kZXZpY2VfdG9vbF90eXBlX2dldF90eXBlICgp IildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjI4IildCisrCXB1YmxpYyBlbnVtIElucHV0RGV2 aWNlVG9vbFR5cGUgeworKwkJTk9ORSwKKysJCVBFTiwKKysJCUVSQVNFUiwKKysJCUJSVVNILAor KwkJUEVOQ0lMLAorKwkJQUlSQlJVU0gsCisrCQlNT1VTRSwKKysJCUxFTlMKKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNM VVRURVJfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2lucHV0X2RldmljZV90eXBlX2dldF90eXBlICgp IildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGVudW0gSW5wdXREZXZp Y2VUeXBlIHsKKysJCVBPSU5URVJfREVWSUNFLAorKwkJS0VZQk9BUkRfREVWSUNFLAorKwkJRVhU RU5TSU9OX0RFVklDRSwKKysJCUpPWVNUSUNLX0RFVklDRSwKKysJCVRBQkxFVF9ERVZJQ0UsCisr CQlUT1VDSFBBRF9ERVZJQ0UsCisrCQlUT1VDSFNDUkVFTl9ERVZJQ0UsCisrCQlQRU5fREVWSUNF LAorKwkJRVJBU0VSX0RFVklDRSwKKysJCUNVUlNPUl9ERVZJQ0UsCisrCQlQQURfREVWSUNFLAor KwkJTl9ERVZJQ0VfVFlQRVMKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfSU5QVVRfTU9ERV8iLCB0eXBlX2lk ID0gImNsdXR0ZXJfaW5wdXRfbW9kZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2Ug PSAiMS42IildCisrCXB1YmxpYyBlbnVtIElucHV0TW9kZSB7CisrCQlNQVNURVIsCisrCQlTTEFW RSwKKysJCUZMT0FUSU5HCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0lOUFVUX1BBTkVMX1NUQVRFXyIsIHR5 cGVfaWQgPSAiY2x1dHRlcl9pbnB1dF9wYW5lbF9zdGF0ZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJs aWMgZW51bSBJbnB1dFBhbmVsU3RhdGUgeworKwkJT0ZGLAorKwkJT04sCisrCQlUT0dHTEUKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJl Zml4ID0gIkNMVVRURVJfSU5URVJQT0xBVElPTl8iLCB0eXBlX2lkID0gImNsdXR0ZXJfaW50ZXJw b2xhdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRl cHJlY2F0ZWRfc2luY2UgPSAiMS4yMiIsIHNpbmNlID0gIjEuMiIpXQorKwlwdWJsaWMgZW51bSBJ bnRlcnBvbGF0aW9uIHsKKysJCUxJTkVBUiwKKysJCUNVQklDCisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0tF WV9TVEFURV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfa2V5X3N0YXRlX2dldF90eXBlICgpIildCisr CXB1YmxpYyBlbnVtIEtleVN0YXRlIHsKKysJCVJFTEVBU0VELAorKwkJUFJFU1NFRAorKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXgg PSAiQ0xVVFRFUl9BMTFZXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9rZXlib2FyZF9hMTF5X2ZsYWdz X2dldF90eXBlICgpIildCisrCVtGbGFnc10KKysJcHVibGljIGVudW0gS2V5Ym9hcmRBMTF5Rmxh Z3MgeworKwkJS0VZQk9BUkRfRU5BQkxFRCwKKysJCVRJTUVPVVRfRU5BQkxFRCwKKysJCU1PVVNF X0tFWVNfRU5BQkxFRCwKKysJCVNMT1dfS0VZU19FTkFCTEVELAorKwkJU0xPV19LRVlTX0JFRVBf UFJFU1MsCisrCQlTTE9XX0tFWVNfQkVFUF9BQ0NFUFQsCisrCQlTTE9XX0tFWVNfQkVFUF9SRUpF Q1QsCisrCQlCT1VOQ0VfS0VZU19FTkFCTEVELAorKwkJQk9VTkNFX0tFWVNfQkVFUF9SRUpFQ1Qs CisrCQlUT0dHTEVfS0VZU19FTkFCTEVELAorKwkJU1RJQ0tZX0tFWVNfRU5BQkxFRCwKKysJCVNU SUNLWV9LRVlTX1RXT19LRVlfT0ZGLAorKwkJU1RJQ0tZX0tFWVNfQkVFUCwKKysJCUZFQVRVUkVf U1RBVEVfQ0hBTkdFX0JFRVAKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfTE9OR19QUkVTU18iLCB0eXBlX2lk ID0gImNsdXR0ZXJfbG9uZ19wcmVzc19zdGF0ZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMS44IildCisrCXB1YmxpYyBlbnVtIExvbmdQcmVzc1N0YXRlIHsKKysJCVFVRVJZ LAorKwkJQUNUSVZBVEUsCisrCQlDQU5DRUwKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfIiwgdHlwZV9pZCA9 ICJjbHV0dGVyX21vZGlmaWVyX3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMC40IildCisrCXB1YmxpYyBlbnVtIE1vZGlmaWVyVHlwZSB7CisrCQlT SElGVF9NQVNLLAorKwkJTE9DS19NQVNLLAorKwkJQ09OVFJPTF9NQVNLLAorKwkJTU9EMV9NQVNL LAorKwkJTU9EMl9NQVNLLAorKwkJTU9EM19NQVNLLAorKwkJTU9ENF9NQVNLLAorKwkJTU9ENV9N QVNLLAorKwkJQlVUVE9OMV9NQVNLLAorKwkJQlVUVE9OMl9NQVNLLAorKwkJQlVUVE9OM19NQVNL LAorKwkJQlVUVE9ONF9NQVNLLAorKwkJQlVUVE9ONV9NQVNLLAorKwkJTU9ESUZJRVJfUkVTRVJW RURfMTNfTUFTSywKKysJCU1PRElGSUVSX1JFU0VSVkVEXzE0X01BU0ssCisrCQlNT0RJRklFUl9S RVNFUlZFRF8xNV9NQVNLLAorKwkJTU9ESUZJRVJfUkVTRVJWRURfMTZfTUFTSywKKysJCU1PRElG SUVSX1JFU0VSVkVEXzE3X01BU0ssCisrCQlNT0RJRklFUl9SRVNFUlZFRF8xOF9NQVNLLAorKwkJ TU9ESUZJRVJfUkVTRVJWRURfMTlfTUFTSywKKysJCU1PRElGSUVSX1JFU0VSVkVEXzIwX01BU0ss CisrCQlNT0RJRklFUl9SRVNFUlZFRF8yMV9NQVNLLAorKwkJTU9ESUZJRVJfUkVTRVJWRURfMjJf TUFTSywKKysJCU1PRElGSUVSX1JFU0VSVkVEXzIzX01BU0ssCisrCQlNT0RJRklFUl9SRVNFUlZF RF8yNF9NQVNLLAorKwkJTU9ESUZJRVJfUkVTRVJWRURfMjVfTUFTSywKKysJCVNVUEVSX01BU0ss CisrCQlIWVBFUl9NQVNLLAorKwkJTUVUQV9NQVNLLAorKwkJTU9ESUZJRVJfUkVTRVJWRURfMjlf TUFTSywKKysJCVJFTEVBU0VfTUFTSywKKysJCU1PRElGSUVSX01BU0sKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRU RVJfT0ZGU0NSRUVOX1JFRElSRUNUXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9vZmZzY3JlZW5fcmVk aXJlY3RfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS44 IildCisrCXB1YmxpYyBlbnVtIE9mZnNjcmVlblJlZGlyZWN0IHsKKysJCUFVVE9NQVRJQ19GT1Jf T1BBQ0lUWSwKKysJCUFMV0FZUworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9PUklFTlRBVElPTl8iLCB0eXBl X2lkID0gImNsdXR0ZXJfb3JpZW50YXRpb25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTIiKV0KKysJcHVibGljIGVudW0gT3JpZW50YXRpb24geworKwkJSE9SSVpPTlRB TCwKKysJCVZFUlRJQ0FMCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1BBTl8iLCB0eXBlX2lkID0gImNsdXR0 ZXJfcGFuX2F4aXNfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0K KysJcHVibGljIGVudW0gUGFuQXhpcyB7CisrCQlBWElTX05PTkUsCisrCQlYX0FYSVMsCisrCQlZ X0FYSVMsCisrCQlBWElTX0FVVE8KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfUEFUSF8iLCB0eXBlX2lkID0g ImNsdXR0ZXJfcGF0aF9ub2RlX3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMCIpXQorKwlwdWJsaWMgZW51bSBQYXRoTm9kZVR5cGUgeworKwkJTU9WRV9UTywKKysJ CUxJTkVfVE8sCisrCQlDVVJWRV9UTywKKysJCUNMT1NFLAorKwkJUkVMX01PVkVfVE8sCisrCQlS RUxfTElORV9UTywKKysJCVJFTF9DVVJWRV9UTworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9ERUJVR19OT1Bf IiwgdHlwZV9pZCA9ICJjbHV0dGVyX3BpY2tfZGVidWdfZmxhZ19nZXRfdHlwZSAoKSIpXQorKwlb RmxhZ3NdCisrCXB1YmxpYyBlbnVtIFBpY2tEZWJ1Z0ZsYWcgeworKwkJUElDS0lORworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXgg PSAiQ0xVVFRFUl9QSUNLXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9waWNrX21vZGVfZ2V0X3R5cGUg KCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgZW51bSBQaWNrTW9k ZSB7CisrCQlOT05FLAorKwkJUkVBQ1RJVkUsCisrCQlBTEwKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfQTEx WV9EV0VMTF9DTElDS19UWVBFXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9wb2ludGVyX2ExMXlfZHdl bGxfY2xpY2tfdHlwZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBQb2ludGVyQTExeUR3 ZWxsQ2xpY2tUeXBlIHsKKysJCU5PTkUsCisrCQlQUklNQVJZLAorKwkJU0VDT05EQVJZLAorKwkJ TUlERExFLAorKwkJRE9VQkxFLAorKwkJRFJBRworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9BMTFZX0RXRUxM X0RJUkVDVElPTl8iLCB0eXBlX2lkID0gImNsdXR0ZXJfcG9pbnRlcl9hMTF5X2R3ZWxsX2RpcmVj dGlvbl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBQb2ludGVyQTExeUR3ZWxsRGlyZWN0 aW9uIHsKKysJCU5PTkUsCisrCQlMRUZULAorKwkJUklHSFQsCisrCQlVUCwKKysJCURPV04KKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJl Zml4ID0gIkNMVVRURVJfQTExWV9EV0VMTF9NT0RFXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9wb2lu dGVyX2ExMXlfZHdlbGxfbW9kZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBQb2ludGVy QTExeUR3ZWxsTW9kZSB7CisrCQlXSU5ET1csCisrCQlHRVNUVVJFCisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVS X0ExMVlfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3BvaW50ZXJfYTExeV9mbGFnc19nZXRfdHlwZSAo KSIpXQorKwlbRmxhZ3NdCisrCXB1YmxpYyBlbnVtIFBvaW50ZXJBMTF5RmxhZ3MgeworKwkJU0VD T05EQVJZX0NMSUNLX0VOQUJMRUQsCisrCQlEV0VMTF9FTkFCTEVECisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVS X0ExMVlfVElNRU9VVF9UWVBFXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9wb2ludGVyX2ExMXlfdGlt ZW91dF90eXBlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIFBvaW50ZXJBMTF5VGltZW91 dFR5cGUgeworKwkJU0VDT05EQVJZX0NMSUNLLAorKwkJRFdFTEwsCisrCQlHRVNUVVJFCisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZp eCA9ICJDTFVUVEVSX1JFUEFJTlRfRkxBR1NfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3JlcGFpbnRf ZmxhZ3NfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MCIpXQorKwlwdWJsaWMgZW51bSBSZXBhaW50RmxhZ3MgeworKwkJUFJFX1BBSU5ULAorKwkJUE9T VF9QQUlOVCwKKysJCVFVRVVFX1JFRFJBV19PTl9BREQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfUkVRVUVT VF8iLCB0eXBlX2lkID0gImNsdXR0ZXJfcmVxdWVzdF9tb2RlX2dldF90eXBlICgpIildCisrCVtW ZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJcHVibGljIGVudW0gUmVxdWVzdE1vZGUgeworKwkJ SEVJR0hUX0ZPUl9XSURUSCwKKysJCVdJRFRIX0ZPUl9IRUlHSFQsCisrCQlDT05URU5UX1NJWkUK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj cHJlZml4ID0gIkNMVVRURVJfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3JvdGF0ZV9heGlzX2dldF90 eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJcHVibGljIGVudW0gUm90 YXRlQXhpcyB7CisrCQlYX0FYSVMsCisrCQlZX0FYSVMsCisrCQlaX0FYSVMKKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNM VVRURVJfUk9UQVRFXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9yb3RhdGVfZGlyZWN0aW9uX2dldF90 eXBlICgpIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5j ZSA9ICIxLjIyIiwgc2luY2UgPSAiMC40IildCisrCXB1YmxpYyBlbnVtIFJvdGF0ZURpcmVjdGlv biB7CisrCQlDVywKKysJCUNDVworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9TQ0FMSU5HX0ZJTFRFUl8iLCB0 eXBlX2lkID0gImNsdXR0ZXJfc2NhbGluZ19maWx0ZXJfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGVudW0gU2NhbGluZ0ZpbHRlciB7CisrCQlM SU5FQVIsCisrCQlORUFSRVNULAorKwkJVFJJTElORUFSCisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1NDUk9M TF8iLCB0eXBlX2lkID0gImNsdXR0ZXJfc2Nyb2xsX2RpcmVjdGlvbl9nZXRfdHlwZSAoKSIpXQor KwlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCXB1YmxpYyBlbnVtIFNjcm9sbERpcmVjdGlv biB7CisrCQlVUCwKKysJCURPV04sCisrCQlMRUZULAorKwkJUklHSFQsCisrCQlTTU9PVEgKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJl Zml4ID0gIkNMVVRURVJfU0NST0xMX0ZJTklTSEVEXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zY3Jv bGxfZmluaXNoX2ZsYWdzX2dldF90eXBlICgpIildCisrCVtGbGFnc10KKysJW1ZlcnNpb24gKHNp bmNlID0gIjEuMjYiKV0KKysJcHVibGljIGVudW0gU2Nyb2xsRmluaXNoRmxhZ3MgeworKwkJTk9O RSwKKysJCUhPUklaT05UQUwsCisrCQlWRVJUSUNBTAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9TQ1JPTExf IiwgdHlwZV9pZCA9ICJjbHV0dGVyX3Njcm9sbF9tb2RlX2dldF90eXBlICgpIildCisrCVtGbGFn c10KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJcHVibGljIGVudW0gU2Nyb2xsTW9k ZSB7CisrCQlOT05FLAorKwkJSE9SSVpPTlRBTExZLAorKwkJVkVSVElDQUxMWSwKKysJCUJPVEgK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj cHJlZml4ID0gIkNMVVRURVJfU0NST0xMX1NPVVJDRV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfc2Ny b2xsX3NvdXJjZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yNiIpXQor KwlwdWJsaWMgZW51bSBTY3JvbGxTb3VyY2UgeworKwkJVU5LTk9XTiwKKysJCVdIRUVMLAorKwkJ RklOR0VSLAorKwkJQ09OVElOVU9VUworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl8iLCB0eXBlX2lkID0gImNs dXR0ZXJfc2hhZGVyX3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEu NCIpXQorKwlwdWJsaWMgZW51bSBTaGFkZXJUeXBlIHsKKysJCVZFUlRFWF9TSEFERVIsCisrCQlG UkFHTUVOVF9TSEFERVIKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfU05BUF9FREdFXyIsIHR5cGVfaWQgPSAi Y2x1dHRlcl9zbmFwX2VkZ2VfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEu NiIpXQorKwlwdWJsaWMgZW51bSBTbmFwRWRnZSB7CisrCQlUT1AsCisrCQlSSUdIVCwKKysJCUJP VFRPTSwKKysJCUxFRlQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfU1RBR0VfU1RBVEVfIiwgdHlwZV9pZCA9 ICJjbHV0dGVyX3N0YWdlX3N0YXRlX2dldF90eXBlICgpIildCisrCVtGbGFnc10KKysJW1ZlcnNp b24gKHNpbmNlID0gIjAuNCIpXQorKwlwdWJsaWMgZW51bSBTdGFnZVN0YXRlIHsKKysJCUFDVElW QVRFRAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9DT0xPUl8iLCB0eXBlX2lkID0gImNsdXR0ZXJfc3RhdGlj X2NvbG9yX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJcHVi bGljIGVudW0gU3RhdGljQ29sb3IgeworKwkJV0hJVEUsCisrCQlCTEFDSywKKysJCVJFRCwKKysJ CURBUktfUkVELAorKwkJR1JFRU4sCisrCQlEQVJLX0dSRUVOLAorKwkJQkxVRSwKKysJCURBUktf QkxVRSwKKysJCUNZQU4sCisrCQlEQVJLX0NZQU4sCisrCQlNQUdFTlRBLAorKwkJREFSS19NQUdF TlRBLAorKwkJWUVMTE9XLAorKwkJREFSS19ZRUxMT1csCisrCQlHUkFZLAorKwkJREFSS19HUkFZ LAorKwkJTElHSFRfR1JBWSwKKysJCUJVVFRFUiwKKysJCUJVVFRFUl9MSUdIVCwKKysJCUJVVFRF Ul9EQVJLLAorKwkJT1JBTkdFLAorKwkJT1JBTkdFX0xJR0hULAorKwkJT1JBTkdFX0RBUkssCisr CQlDSE9DT0xBVEUsCisrCQlDSE9DT0xBVEVfTElHSFQsCisrCQlDSE9DT0xBVEVfREFSSywKKysJ CUNIQU1FTEVPTiwKKysJCUNIQU1FTEVPTl9MSUdIVCwKKysJCUNIQU1FTEVPTl9EQVJLLAorKwkJ U0tZX0JMVUUsCisrCQlTS1lfQkxVRV9MSUdIVCwKKysJCVNLWV9CTFVFX0RBUkssCisrCQlQTFVN LAorKwkJUExVTV9MSUdIVCwKKysJCVBMVU1fREFSSywKKysJCVNDQVJMRVRfUkVELAorKwkJU0NB UkxFVF9SRURfTElHSFQsCisrCQlTQ0FSTEVUX1JFRF9EQVJLLAorKwkJQUxVTUlOSVVNXzEsCisr CQlBTFVNSU5JVU1fMiwKKysJCUFMVU1JTklVTV8zLAorKwkJQUxVTUlOSVVNXzQsCisrCQlBTFVN SU5JVU1fNSwKKysJCUFMVU1JTklVTV82LAorKwkJVFJBTlNQQVJFTlQKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRU RVJfU1RFUF9NT0RFXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zdGVwX21vZGVfZ2V0X3R5cGUgKCki KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJcHVibGljIGVudW0gU3RlcE1vZGUg eworKwkJU1RBUlQsCisrCQlFTkQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfU1dJUEVfRElSRUNUSU9OXyIs IHR5cGVfaWQgPSAiY2x1dHRlcl9zd2lwZV9kaXJlY3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJW0Zs YWdzXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCXB1YmxpYyBlbnVtIFN3aXBlRGly ZWN0aW9uIHsKKysJCVVQLAorKwkJRE9XTiwKKysJCUxFRlQsCisrCQlSSUdIVAorKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAi Q0xVVFRFUl9URVhUX0RJUkVDVElPTl8iLCB0eXBlX2lkID0gImNsdXR0ZXJfdGV4dF9kaXJlY3Rp b25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwlwdWJsaWMg ZW51bSBUZXh0RGlyZWN0aW9uIHsKKysJCURFRkFVTFQsCisrCQlMVFIsCisrCQlSVEwKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4 ID0gIkNMVVRURVJfVEVYVFVSRV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfdGV4dHVyZV9mbGFnc19n ZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwg ZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjIyIiwgc2luY2UgPSAiMC40IildCisrCXB1YmxpYyBlbnVt IFRleHR1cmVGbGFncyB7CisrCQlOT05FLAorKwkJUkdCX0ZMQUdfQkdSLAorKwkJUkdCX0ZMQUdf UFJFTVVMVCwKKysJCVlVVl9GTEFHX1lVVjIKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfVEVYVFVSRV9RVUFM SVRZXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl90ZXh0dXJlX3F1YWxpdHlfZ2V0X3R5cGUgKCkiKV0K KysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMjIi LCBzaW5jZSA9ICIwLjgiKV0KKysJcHVibGljIGVudW0gVGV4dHVyZVF1YWxpdHkgeworKwkJTE9X LAorKwkJTUVESVVNLAorKwkJSElHSAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9USU1FTElORV8iLCB0eXBl X2lkID0gImNsdXR0ZXJfdGltZWxpbmVfZGlyZWN0aW9uX2dldF90eXBlICgpIildCisrCVtWZXJz aW9uIChzaW5jZSA9ICIwLjYiKV0KKysJcHVibGljIGVudW0gVGltZWxpbmVEaXJlY3Rpb24gewor KwkJRk9SV0FSRCwKKysJCUJBQ0tXQVJECisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1RPVUNIUEFEX0dFU1RV UkVfUEhBU0VfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3RvdWNocGFkX2dlc3R1cmVfcGhhc2VfZ2V0 X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjQiKV0KKysJcHVibGljIGVudW0g VG91Y2hwYWRHZXN0dXJlUGhhc2UgeworKwkJQkVHSU4sCisrCQlVUERBVEUsCisrCQlFTkQsCisr CQlDQU5DRUwKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfVU5JVF8iLCB0eXBlX2lkID0gImNsdXR0ZXJfdW5p dF90eXBlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVi bGljIGVudW0gVW5pdFR5cGUgeworKwkJUElYRUwsCisrCQlFTSwKKysJCU1NLAorKwkJUE9JTlQs CisrCQlDTQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9WSVJUVUFMX0RFVklDRV9UWVBFXyIsIHR5cGVfaWQg PSAiY2x1dHRlcl92aXJ0dWFsX2RldmljZV90eXBlX2dldF90eXBlICgpIildCisrCVtGbGFnc10K KysJcHVibGljIGVudW0gVmlydHVhbERldmljZVR5cGUgeworKwkJTk9ORSwKKysJCUtFWUJPQVJE LAorKwkJUE9JTlRFUiwKKysJCVRPVUNIU0NSRUVOCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1pPT01fIiwg dHlwZV9pZCA9ICJjbHV0dGVyX3pvb21fYXhpc19nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMiIpXQorKwlwdWJsaWMgZW51bSBab29tQXhpcyB7CisrCQlYX0FYSVMsCisr CQlZX0FYSVMsCisrCQlCT1RICisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0lNQUdFX0VSUk9SX0lOVkFMSURf IildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBlcnJvcmRvbWFpbiBJ bWFnZUVycm9yIHsKKysJCURBVEE7CisrCQlwdWJsaWMgc3RhdGljIEdMaWIuUXVhcmsgcXVhcmsg KCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY3ByZWZpeCA9ICJDTFVUVEVSX1NDUklQVF9FUlJPUl9JTlZBTElEXyIpXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMC42IildCisrCXB1YmxpYyBlcnJvcmRvbWFpbiBTY3JpcHRFcnJvciB7Cisr CQlUWVBFX0ZVTkNUSU9OLAorKwkJUFJPUEVSVFksCisrCQlWQUxVRTsKKysJCXB1YmxpYyBzdGF0 aWMgR0xpYi5RdWFyayBxdWFyayAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBpbnN0YW5jZV9wb3MgPSAxLjkpXQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMS4yNCIpXQorKwlwdWJsaWMgZGVsZWdhdGUgQ2x1dHRlci5BY3RvciBBY3RvckNy ZWF0ZUNoaWxkRnVuYyAoR0xpYi5PYmplY3QgaXRlbSk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGluc3RhbmNlX3BvcyA9IDEuOSldCisrCVtWZXJz aW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2Ug PSAiMC4yIildCisrCXB1YmxpYyBkZWxlZ2F0ZSBkb3VibGUgQWxwaGFGdW5jIChDbHV0dGVyLkFs cGhhIGFscGhhKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgaW5zdGFuY2VfcG9zID0gNC45KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwlwdWJsaWMgZGVsZWdhdGUgYm9vbCBCaW5kaW5nQWN0aW9uRnVuYyAoR0xpYi5PYmplY3QgZ29i amVjdCwgc3RyaW5nIGFjdGlvbl9uYW1lLCB1aW50IGtleV92YWwsIENsdXR0ZXIuTW9kaWZpZXJU eXBlIG1vZGlmaWVycyk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGluc3RhbmNlX3BvcyA9IDEuOSldCisrCXB1YmxpYyBkZWxlZ2F0ZSB2b2lkIENh bGxiYWNrIChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3RhcmdldCA9IGZhbHNlKV0KKysJcHVibGljIGRl bGVnYXRlIHZvaWQgRW1pdElucHV0RGV2aWNlRXZlbnQgKENsdXR0ZXIuRXZlbnQgZXZlbnQsIENs dXR0ZXIuSW5wdXREZXZpY2UgZGV2aWNlKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgaW5zdGFuY2VfcG9zID0gMS45KV0KKysJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTgiKV0KKysJcHVibGljIGRlbGVnYXRlIGJvb2wgRXZlbnRGaWx0ZXJGdW5jIChD bHV0dGVyLkV2ZW50IGV2ZW50KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgaW5zdGFuY2VfcG9zID0gMS45KV0KKysJW1ZlcnNpb24gKHNpbmNlID0g IjEuMCIpXQorKwlwdWJsaWMgZGVsZWdhdGUgdm9pZCBQYXRoQ2FsbGJhY2sgKENsdXR0ZXIuUGF0 aE5vZGUgbm9kZSk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGhhc190YXJnZXQgPSBmYWxzZSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0K KysJcHVibGljIGRlbGVnYXRlIGJvb2wgUHJvZ3Jlc3NGdW5jIChHTGliLlZhbHVlIGEsIEdMaWIu VmFsdWUgYiwgZG91YmxlIHByb2dyZXNzLCBHTGliLlZhbHVlIHJldHZhbCk7CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGluc3RhbmNlX3BvcyA9IDYu OSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJcHVibGljIGRlbGVnYXRlIHZvaWQg U2NyaXB0Q29ubmVjdEZ1bmMgKENsdXR0ZXIuU2NyaXB0IHNjcmlwdCwgR0xpYi5PYmplY3Qgb2Jq ZWN0LCBzdHJpbmcgc2lnbmFsX25hbWUsIHN0cmluZyBoYW5kbGVyX25hbWUsIEdMaWIuT2JqZWN0 IGNvbm5lY3Rfb2JqZWN0LCBHTGliLkNvbm5lY3RGbGFncyBmbGFncyk7CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGluc3RhbmNlX3BvcyA9IDMuOSld CisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBkZWxlZ2F0ZSBkb3VibGUg VGltZWxpbmVQcm9ncmVzc0Z1bmMgKENsdXR0ZXIuVGltZWxpbmUgdGltZWxpbmUsIGRvdWJsZSBl bGFwc2VkLCBkb3VibGUgdG90YWwpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0NPR0wiKV0KKysJW1ZlcnNpb24gKGRl cHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIwLjQi KV0KKysJcHVibGljIGNvbnN0IHN0cmluZyBDT0dMOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0NVUlJFTlRfVElNRSIp XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCXB1YmxpYyBjb25zdCBpbnQgQ1VSUkVO VF9USU1FOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0ZMQVZPVVIiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0 cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIwLjQiKV0KKysJcHVibGlj IGNvbnN0IHN0cmluZyBGTEFWT1VSOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX1BBVEhfUkVMQVRJVkUiKV0KKysJcHVi bGljIGNvbnN0IGludCBQQVRIX1JFTEFUSVZFOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX1BSSU9SSVRZX1JFRFJBVyIp XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCXB1YmxpYyBjb25zdCBpbnQgUFJJT1JJ VFlfUkVEUkFXOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIGJhc2VfaW5pdCAoKTsKKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEyIildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBjYWlyb19jbGVhciAoQ2Fpcm8uQ29udGV4 dCBjcik7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIp XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBjYWly b19zZXRfc291cmNlX2NvbG9yIChDYWlyby5Db250ZXh0IGNyLCBDbHV0dGVyLkNvbG9yIGNvbG9y KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisr CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBzdGF0aWMgYm9vbCBjaGVja193 aW5kb3dpbmdfYmFja2VuZCAoc3RyaW5nIGJhY2tlbmRfdHlwZSk7CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQg Y29sb3JfZnJvbV9obHMgKG91dCBDbHV0dGVyLkNvbG9yIGNvbG9yLCBmbG9hdCBodWUsIGZsb2F0 IGx1bWluYW5jZSwgZmxvYXQgc2F0dXJhdGlvbik7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgY29sb3JfZnJv bV9waXhlbCAob3V0IENsdXR0ZXIuQ29sb3IgY29sb3IsIHVpbnQzMiBwaXhlbCk7CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBzdGF0aWMgYm9vbCBjb2xvcl9mcm9tX3N0cmluZyAo b3V0IENsdXR0ZXIuQ29sb3IgY29sb3IsIHN0cmluZyBzdHIpOworKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEu NiIpXQorKwlwdWJsaWMgc3RhdGljIHVub3duZWQgQ2x1dHRlci5Db2xvcj8gY29sb3JfZ2V0X3N0 YXRpYyAoQ2x1dHRlci5TdGF0aWNDb2xvciBjb2xvcik7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNCIp XQorKwlwdWJsaWMgc3RhdGljIHZvaWQgZGlzYWJsZV9hY2Nlc3NpYmlsaXR5ICgpOworKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24g KHNpbmNlID0gIjAuNCIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgZG9fZXZlbnQgKENsdXR0ZXIu RXZlbnQgZXZlbnQpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTgiKV0KKysJcHVibGljIHN0YXRpYyB1 aW50IGV2ZW50X2FkZF9maWx0ZXIgKENsdXR0ZXIuU3RhZ2U/IHN0YWdlLCBbQ0NvZGUgKGRlbGVn YXRlX3RhcmdldF9wb3MgPSAyLjIsIGRlc3Ryb3lfbm90aWZ5X3BvcyA9IDIuMSldIG93bmVkIENs dXR0ZXIuRXZlbnRGaWx0ZXJGdW5jIGZ1bmMpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwlw dWJsaWMgc3RhdGljIENsdXR0ZXIuRXZlbnQgZXZlbnRfZ2V0ICgpOworKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0g IjAuNCIpXQorKwlwdWJsaWMgc3RhdGljIHVub3duZWQgQ2x1dHRlci5FdmVudCBldmVudF9wZWVr ICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0K KysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTgiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIGV2ZW50 X3JlbW92ZV9maWx0ZXIgKHVpbnQgaWQpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwlwdWJs aWMgc3RhdGljIGJvb2wgZXZlbnRzX3BlbmRpbmcgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40Iild CisrCXB1YmxpYyBzdGF0aWMgYm9vbCBnZXRfYWNjZXNzaWJpbGl0eV9lbmFibGVkICgpOworKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjEuMiIpXQorKwlwdWJsaWMgc3RhdGljIHVub3duZWQgQ2x1dHRlci5FdmVu dCBnZXRfY3VycmVudF9ldmVudCAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGlj IHN0YXRpYyB1aW50MzIgZ2V0X2N1cnJlbnRfZXZlbnRfdGltZSAoKTsKKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9 ICIwLjQiKV0KKysJcHVibGljIHN0YXRpYyB1bm93bmVkIENsdXR0ZXIuQmFja2VuZCBnZXRfZGVm YXVsdF9iYWNrZW5kICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwlwdWJsaWMgc3RhdGlj IHVpbnQgZ2V0X2RlZmF1bHRfZnJhbWVfcmF0ZSAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0K KysJcHVibGljIHN0YXRpYyBDbHV0dGVyLlRleHREaXJlY3Rpb24gZ2V0X2RlZmF1bHRfdGV4dF9k aXJlY3Rpb24gKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBzdGF0aWMgdW5v d25lZCBQYW5nby5Gb250TWFwIGdldF9mb250X21hcCAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIi KV0KKysJcHVibGljIHN0YXRpYyBHTGliLk9wdGlvbkdyb3VwIGdldF9vcHRpb25fZ3JvdXAgKCk7 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlb VmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCXB1YmxpYyBzdGF0aWMgR0xpYi5PcHRpb25Hcm91 cCBnZXRfb3B0aW9uX2dyb3VwX3dpdGhvdXRfaW5pdCAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYi KV0KKysJcHVibGljIHN0YXRpYyB1bm93bmVkIHN0cmluZyBnZXRfc2NyaXB0X2lkIChHTGliLk9i amVjdCBnb2JqZWN0KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIildCisrCXB1YmxpYyBzdGF0aWMgQ2x1dHRlci5Jbml0RXJyb3IgaW5pdCAoW0NDb2Rl IChhcnJheV9sZW5ndGhfY25hbWUgPSAiYXJnYyIsIGFycmF5X2xlbmd0aF9wb3MgPSAwLjUpXSBy ZWYgdW5vd25lZCBzdHJpbmdbXT8gYXJndik7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCXB1 YmxpYyBzdGF0aWMgQ2x1dHRlci5Jbml0RXJyb3IgaW5pdF93aXRoX2FyZ3MgKFtDQ29kZSAoYXJy YXlfbGVuZ3RoX2NuYW1lID0gImFyZ2MiLCBhcnJheV9sZW5ndGhfcG9zID0gMC41KV0gcmVmIHVu b3duZWQgc3RyaW5nW10/IGFyZ3YsIHN0cmluZz8gcGFyYW1ldGVyX3N0cmluZywgW0NDb2RlIChh cnJheV9sZW5ndGggPSBmYWxzZSldIEdMaWIuT3B0aW9uRW50cnlbXT8gZW50cmllcywgc3RyaW5n PyB0cmFuc2xhdGlvbl9kb21haW4pIHRocm93cyBHTGliLkVycm9yOworKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJcHVibGljIHN0YXRpYyB1aW50 MzIga2V5c3ltX3RvX3VuaWNvZGUgKHVpbnQga2V5dmFsKTsKKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBtYWlu ICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0K KysJcHVibGljIHN0YXRpYyBpbnQgbWFpbl9sZXZlbCAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBtYWlu X3F1aXQgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgc2V0X2N1c3RvbV9iYWNrZW5kX2Z1bmMgKHZvaWQq IGZ1bmMpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIHN0YXRpYyB1aW50IHVu aWNvZGVfdG9fa2V5c3ltICh1aW50MzIgd2MpOworK30KK2RpZmYgLS1naXQgYS92YXBpL211dHRl ci1jb2dsLTYtY3VzdG9tLnZhbGEgYi92YXBpL211dHRlci1jb2dsLTYtY3VzdG9tLnZhbGEKK25l dyBmaWxlIG1vZGUgMTAwNjQ0CitpbmRleCAwMDAwMDAwMC4uYTJjMTA2NDUKKy0tLSAvZGV2L251 bGwKKysrKyBiL3ZhcGkvbXV0dGVyLWNvZ2wtNi1jdXN0b20udmFsYQorQEAgLTAsMCArMSwxMjUg QEAKKytuYW1lc3BhY2UgQ29nbCB7CisrCVtDb21wYWN0XQorKwlbQ0NvZGUgKGNuYW1lID0gIkNv Z2xIYW5kbGUiKV0KKysJcHVibGljIGNsYXNzIEJpdG1hcDogSGFuZGxlIHsKKysJCXB1YmxpYyBz dGF0aWMgQml0bWFwIG5ld19mcm9tX2ZpbGUgKHN0cmluZyBmaWxlbmFtZSkgdGhyb3dzIEdMaWIu RXJyb3I7CisrCX0KKysKKysJW0NvbXBhY3RdCisrCVtDQ29kZSAoY25hbWUgPSAiQ29nbEhhbmRs ZSIpXQorKwlwdWJsaWMgY2xhc3MgQnVmZmVyOiBIYW5kbGUgeworKwkJcHVibGljIHVpbnQgZ2V0 X3NpemUgKCk7CisrCQlwdWJsaWMgYm9vbCBzZXRfZGF0YSAoc2l6ZV90IG9mZnNldCwgW0NDb2Rl IChhcnJheV9sZW5ndGhfdHlwZSA9ICJzaXplX3QiKV0gdWludDhbXSBkYXRhKTsKKysJCXB1Ymxp YyB2b2lkIHVubWFwICgpOworKwl9CisrCisrCVtDQ29kZSAoaGFzX3R5cGVfaWQgPSBmYWxzZSld CisrCXB1YmxpYyBzdHJ1Y3QgQ29sb3IgeworKwkJcHVibGljIENvbG9yLmZyb21fNGYgKGZsb2F0 IHJlZCwgZmxvYXQgZ3JlZW4sIGZsb2F0IGJsdWUsIGZsb2F0IGFscGhhKTsKKysJCXB1YmxpYyBD b2xvci5mcm9tXzR1YiAodWludDggcmVkLCB1aW50OCBncmVlbiwgdWludDggYmx1ZSwgdWludDgg YWxwaGEpOworKwl9CisrCisrCVtDb21wYWN0XQorKwlbQ0NvZGUgKHJlZl9mdW5jdGlvbiA9ICJj b2dsX2hhbmRsZV9yZWYiLCB1bnJlZl9mdW5jdGlvbiA9ICJjb2dsX2hhbmRsZV91bnJlZiIpXQor KwlwdWJsaWMgY2xhc3MgSGFuZGxlIHsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9pc19iaXRt YXAiKV0KKysJCXB1YmxpYyBib29sIGlzX2JpdG1hcCAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAi Y29nbF9pc19idWZmZXIiKV0KKysJCXB1YmxpYyBib29sIGlzX2J1ZmZlciAoKTsKKysJCVtDQ29k ZSAoY25hbWUgPSAiY29nbF9pc19tYXRlcmlhbCIpXQorKwkJcHVibGljIGJvb2wgaXNfbWF0ZXJp YWwgKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfaXNfb2Zmc2NyZWVuIildCisrCQlwdWJs aWMgYm9vbCBpc19vZmZzY3JlZW4gKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfaXNfcGl4 ZWxfYnVmZmVyIildCisrCQlwdWJsaWMgYm9vbCBpc19waXhlbF9idWZmZXIgKCk7CisrCQlbQ0Nv ZGUgKGNuYW1lID0gImNvZ2xfaXNfcHJvZ3JhbSIpXQorKwkJcHVibGljIGJvb2wgaXNfcHJvZ3Jh bSAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9pc19zaGFkZXIiKV0KKysJCXB1YmxpYyBi b29sIGlzX3NoYWRlciAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9pc190ZXh0dXJlIild CisrCQlwdWJsaWMgYm9vbCBpc190ZXh0dXJlICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2ds X2lzX3ZlcnRleF9idWZmZXIiKV0KKysJCXB1YmxpYyBib29sIGlzX3ZlcnRleF9idWZmZXIgKCk7 CisrCX0KKysKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY29w eV9mdW5jdGlvbiA9ICJjb2dsX3BhdGhfY29weSIpXQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNs YXNzIFBhdGggeworKwkJcHVibGljIHN0YXRpYyB2b2lkIEBuZXcgKCk7CisrCX0KKysKKysJW0Nv bXBhY3RdCisrCXB1YmxpYyBjbGFzcyBQaXhlbEJ1ZmZlcjogSGFuZGxlIHsKKysJCXB1YmxpYyBQ aXhlbEJ1ZmZlciAodWludCBzaXplKTsKKysJCXB1YmxpYyBQaXhlbEJ1ZmZlci5mb3Jfc2l6ZSAo dWludCB3aWR0aCwgdWludCBoZWlnaHQsIENvZ2wuUGl4ZWxGb3JtYXQgZm9ybWF0LCB1aW50IHN0 cmlkZSk7CisrCX0KKysKKysJW0NvbXBhY3RdCisrCVtDQ29kZSAoY25hbWUgPSAiQ29nbEhhbmRs ZSIsIHJlZl9mdW5jdGlvbiA9ICJjb2dsX3Byb2dyYW1fcmVmIiwgdW5yZWZfZnVuY3Rpb24gPSAi Y29nbF9wcm9ncmFtX3VucmVmIildCisrCXB1YmxpYyBjbGFzcyBQcm9ncmFtOiBIYW5kbGUgewor KwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2NyZWF0ZV9wcm9ncmFtIiwgdHlwZSA9ICJDb2dsSGFu ZGxlKiIsIGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwdWJsaWMgUHJvZ3Jh bSAoKTsKKysJCXB1YmxpYyB2b2lkIGF0dGFjaF9zaGFkZXIgKENvZ2wuU2hhZGVyIHNoYWRlcl9o YW5kbGUpOworKwkJcHVibGljIGludCBnZXRfdW5pZm9ybV9sb2NhdGlvbiAoc3RyaW5nIHVuaWZv cm1fbmFtZSk7CisrCQlwdWJsaWMgdm9pZCBsaW5rICgpOworKwkJcHVibGljIHN0YXRpYyB2b2lk IHVuaWZvcm1fMWYgKGludCB1bmlmb3JtX25vLCBmbG9hdCB2YWx1ZSk7CisrCQlwdWJsaWMgc3Rh dGljIHZvaWQgdW5pZm9ybV8xaSAoaW50IHVuaWZvcm1fbm8sIGludCB2YWx1ZSk7CisrCQlwdWJs aWMgc3RhdGljIHZvaWQgdW5pZm9ybV9mbG9hdCAoaW50IHVuaWZvcm1fbm8sIGludCBzaXplLCBb Q0NvZGUgKGFycmF5X2xlbmd0aF9wb3MgPSAyLjkpXSBmbG9hdFtdIHZhbHVlKTsKKysJCXB1Ymxp YyBzdGF0aWMgdm9pZCB1bmlmb3JtX2ludCAoaW50IHVuaWZvcm1fbm8sIGludCBzaXplLCBbQ0Nv ZGUgKGFycmF5X2xlbmd0aF9wb3MgPSAyLjkpXSBpbnRbXSB2YWx1ZSk7CisrCQlwdWJsaWMgc3Rh dGljIHZvaWQgdW5pZm9ybV9tYXRyaXggKGludCB1bmlmb3JtX25vLCBpbnQgc2l6ZSwgYm9vbCB0 cmFuc3Bvc2UsIFtDQ29kZSAoYXJyYXlfbGVuZ3RoX3BvcyA9IDIuOSldIGZsb2F0W10gdmFsdWUp OworKwkJcHVibGljIHZvaWQgdXNlICgpOworKwl9CisrCisrCVtDb21wYWN0XQorKwlbQ0NvZGUg KGNuYW1lID0gIkNvZ2xIYW5kbGUiLCByZWZfZnVuY3Rpb24gPSAiY29nbF9zaGFkZXJfcmVmIiwg dW5yZWZfZnVuY3Rpb24gPSAiY29nbF9zaGFkZXJfdW5yZWYiKV0KKysJcHVibGljIGNsYXNzIFNo YWRlcjogSGFuZGxlIHsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9jcmVhdGVfc2hhZGVyIiwg dHlwZSA9ICJDb2dsSGFuZGxlKiIsIGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisr CQlwdWJsaWMgU2hhZGVyIChDb2dsLlNoYWRlclR5cGUgc2hhZGVyX3R5cGUpOworKwkJcHVibGlj IHZvaWQgY29tcGlsZSAoKTsKKysJCXB1YmxpYyBzdHJpbmcgZ2V0X2luZm9fbG9nICgpOworKwkJ cHVibGljIENvZ2wuU2hhZGVyVHlwZSBnZXRfdHlwZSAoKTsKKysJCXB1YmxpYyBib29sIGlzX2Nv bXBpbGVkICgpOworKwkJcHVibGljIHZvaWQgc291cmNlIChzdHJpbmcgc291cmNlKTsKKysJfQor KworKwlbQ29tcGFjdF0KKysJW0NDb2RlIChjbmFtZSA9ICJDb2dsSGFuZGxlIiwgcmVmX2Z1bmN0 aW9uID0gImNvZ2xfdmVydGV4X2J1ZmZlcl9yZWYiLCB1bnJlZl9mdW5jdGlvbiA9ICJjb2dsX3Zl cnRleF9idWZmZXJfdW5yZWYiKV0KKysJcHVibGljIGNsYXNzIFZlcnRleEJ1ZmZlcjogSGFuZGxl IHsKKysJCVtDQ29kZSAodHlwZSA9ICJDb2dsSGFuZGxlKiIsIGhhc19jb25zdHJ1Y3RfZnVuY3Rp b24gPSBmYWxzZSldCisrCQlwdWJsaWMgVmVydGV4QnVmZmVyICh1aW50IG5fdmVydGljZXMpOwor KwkJcHVibGljIHZvaWQgYWRkIChzdHJpbmcgYXR0cmlidXRlX25hbWUsIHVjaGFyIG5fY29tcG9u ZW50cywgQ29nbC5BdHRyaWJ1dGVUeXBlIHR5cGUsIGJvb2wgbm9ybWFsaXplZCwgdWludDE2IHN0 cmlkZSwgdm9pZCogcG9pbnRlcik7CisrCQlwdWJsaWMgdm9pZCBkZWxldGUgKHN0cmluZyBhdHRy aWJ1dGVfbmFtZSk7CisrCQlwdWJsaWMgdm9pZCBkaXNhYmxlIChzdHJpbmcgYXR0cmlidXRlX25h bWUpOworKwkJcHVibGljIHZvaWQgZHJhdyAoQ29nbC5WZXJ0aWNlc01vZGUgbW9kZSwgaW50IGZp cnN0LCBpbnQgY291bnQpOworKwkJcHVibGljIHZvaWQgZHJhd19lbGVtZW50cyAoQ29nbC5WZXJ0 aWNlc01vZGUgbW9kZSwgVmVydGV4QnVmZmVySW5kaWNlcyBpbmRpY2VzLCBpbnQgbWluX2luZGV4 LCBpbnQgbWF4X2luZGV4LCBpbnQgaW5kaWNlc19vZmZzZXQsIGludCBjb3VudCk7CisrCQlwdWJs aWMgdm9pZCBlbmFibGUgKHN0cmluZyBhdHRyaWJ1dGVfbmFtZSk7CisrCQlwdWJsaWMgdWludCBn ZXRfbl92ZXJ0aWNlcyAoKTsKKysJCXB1YmxpYyB2b2lkIHN1Ym1pdCAoKTsKKysJfQorKworKwlb Q29tcGFjdF0KKysJW0NDb2RlIChjbmFtZSA9ICJDb2dsSGFuZGxlIildCisrCXB1YmxpYyBjbGFz cyBWZXJ0ZXhCdWZmZXJJbmRpY2VzOiBIYW5kbGUgeworKwkJcHVibGljIFZlcnRleEJ1ZmZlcklu ZGljZXMgKENvZ2wuSW5kaWNlc1R5cGUgaW5kaWNlc190eXBlLCB2b2lkKiBpbmRpY2VzX2FycmF5 LCBpbnQgaW5kaWNlc19sZW4pOworKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIENvZ2wuVmVydGV4 QnVmZmVySW5kaWNlcyBnZXRfZm9yX3F1YWRzICh1aW50IG5faW5kaWNlcyk7CisrCQlwdWJsaWMg Q29nbC5JbmRpY2VzVHlwZSBnZXRfdHlwZSAoKTsKKysJfQorKworKwlbQ0NvZGUgKHR5cGVfaWQg PSAiQ09HTF9UWVBFX01BVFJJWCIsIGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0K KysJcHVibGljIHN0cnVjdCBNYXRyaXggeworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX21hdHJp eF9pbml0X2Zyb21fYXJyYXkiLCBhcnJheV9sZW5ndGggPSBmYWxzZSwgYXJyYXlfbnVsbF90ZXJt aW5hdGVkID0gZmFsc2UpXQorKwkJcHVibGljIE1hdHJpeC5mcm9tX2FycmF5IChbQ0NvZGUgKGFy cmF5X2xlbmd0aCA9IGZhbHNlKV0gZmxvYXRbXSBhcnJheSk7CisrCQlbQ0NvZGUgKGNuYW1lID0g ImNvZ2xfbWF0cml4X2luaXRfaWRlbnRpdHkiKV0KKysJCXB1YmxpYyBNYXRyaXguaWRlbnRpdHkg KCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfbWF0cml4X211bHRpcGx5IildCisrCQlwdWJs aWMgTWF0cml4Lm11bHRpcGx5IChDb2dsLk1hdHJpeCBhLCBDb2dsLk1hdHJpeCBiKTsKKysJfQor KworKwlbU2ltcGxlVHlwZV0KKysJW0dJUiAobmFtZSA9ICJCb29sIildCisrCVtCb29sZWFuVHlw ZV0KKysJcHVibGljIHN0cnVjdCBCb29sIDogYm9vbCB7CisrCX0KKysKKysJcHVibGljIHN0YXRp YyBHTGliLkNhbGxiYWNrIGdldF9wcm9jX2FkZHJlc3Moc3RyaW5nIHMpOworK30KK2RpZmYgLS1n aXQgYS92YXBpL211dHRlci1jb2dsLTYuZGVwcyBiL3ZhcGkvbXV0dGVyLWNvZ2wtNi5kZXBzCitu ZXcgZmlsZSBtb2RlIDEwMDY0NAoraW5kZXggMDAwMDAwMDAuLjk4Y2NhYzViCistLS0gL2Rldi9u dWxsCisrKysgYi92YXBpL211dHRlci1jb2dsLTYuZGVwcworQEAgLTAsMCArMSBAQAorK3Bhbmdv CitkaWZmIC0tZ2l0IGEvdmFwaS9tdXR0ZXItY29nbC02LnZhcGkgYi92YXBpL211dHRlci1jb2ds LTYudmFwaQorbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAwLi5jOWFiNWQ1Nwor LS0tIC9kZXYvbnVsbAorKysrIGIvdmFwaS9tdXR0ZXItY29nbC02LnZhcGkKK0BAIC0wLDAgKzEs MTA3NyBAQAorKy8qIG11dHRlci1jb2dsLTYudmFwaSBnZW5lcmF0ZWQgYnkgdmFwaWdlbiwgZG8g bm90IG1vZGlmeS4gKi8KKysKKytbQ0NvZGUgKGNwcmVmaXggPSAiQ29nbCIsIGdpcl9uYW1lc3Bh Y2UgPSAiQ29nbCIsIGdpcl92ZXJzaW9uID0gIjYiLCBsb3dlcl9jYXNlX2NwcmVmaXggPSAiY29n bF8iKV0KKytuYW1lc3BhY2UgQ29nbCB7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj b2dsL2NvZ2wuaCIsIGNuYW1lID0gIkNvZ2xIYW5kbGUiLCB0eXBlX2lkID0gImNvZ2xfYml0bWFw X2dldF9ndHlwZSAoKSIpXQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIEJpdG1hcCA6IENv Z2wuSGFuZGxlIHsKKysJCXB1YmxpYyBzdGF0aWMgdWludDMyIGVycm9yX3F1YXJrICgpOworKwkJ W0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ29nbEJpdG1h cCoiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBCaXRtYXAuZnJv bV9maWxlIChzdHJpbmcgZmlsZW5hbWUpIHRocm93cyBHTGliLkVycm9yOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDb2dsLlBpeGVsRm9ybWF0IGdldF9mb3JtYXQg KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGludCBnZXRfaGVp Z2h0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBpbnQgZ2V0 X3Jvd3N0cmlkZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBz dGF0aWMgYm9vbCBnZXRfc2l6ZV9mcm9tX2ZpbGUgKHN0cmluZyBmaWxlbmFtZSwgb3V0IGludCB3 aWR0aCwgb3V0IGludCBoZWlnaHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyBpbnQgZ2V0X3dpZHRoICgpOworKwkJcHVibGljIHN0YXRpYyBDb2dsLkJpdG1hcCBu ZXdfZnJvbV9maWxlIChzdHJpbmcgZmlsZW5hbWUpIHRocm93cyBHTGliLkVycm9yOworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNuYW1lID0gIkNvZ2xI YW5kbGUiKV0KKysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFzcyBCdWZmZXIgOiBDb2dsLkhhbmRs ZSB7CisrCQlwdWJsaWMgdWludCBnZXRfc2l6ZSAoKTsKKysJCXB1YmxpYyBib29sIHNldF9kYXRh IChzaXplX3Qgb2Zmc2V0LCBbQ0NvZGUgKGFycmF5X2xlbmd0aF90eXBlID0gInNpemVfdCIpXSB1 aW50OFtdIGRhdGEpOworKwkJcHVibGljIHZvaWQgdW5tYXAgKCk7CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgdHlwZV9pZCA9ICJjb2dsX2NvbnRleHRf Z2V0X2d0eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBDb250ZXh0IDogQ29nbC5PYmplY3Qgewor KwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVk IENvbnRleHQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29n bC5oIiwgY29weV9mdW5jdGlvbiA9ICJnX2JveGVkX2NvcHkiLCBmcmVlX2Z1bmN0aW9uID0gImdf Ym94ZWRfZnJlZSIsIHR5cGVfaWQgPSAiY29nbF9mcmFtZV9jbG9zdXJlX2dldF9ndHlwZSAoKSIp XQorKwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTQiKV0KKysJcHVibGljIGNs YXNzIEZyYW1lQ2xvc3VyZSB7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNv Z2wvY29nbC5oIiwgcmVmX2Z1bmN0aW9uID0gImNvZ2xfaGFuZGxlX3JlZiIsIHVucmVmX2Z1bmN0 aW9uID0gImNvZ2xfaGFuZGxlX3VucmVmIildCisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3Mg SGFuZGxlIHsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9pc19iaXRtYXAiKV0KKysJCXB1Ymxp YyBib29sIGlzX2JpdG1hcCAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9pc19idWZmZXIi KV0KKysJCXB1YmxpYyBib29sIGlzX2J1ZmZlciAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29n bF9pc19tYXRlcmlhbCIpXQorKwkJcHVibGljIGJvb2wgaXNfbWF0ZXJpYWwgKCk7CisrCQlbQ0Nv ZGUgKGNuYW1lID0gImNvZ2xfaXNfb2Zmc2NyZWVuIildCisrCQlwdWJsaWMgYm9vbCBpc19vZmZz Y3JlZW4gKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfaXNfcGl4ZWxfYnVmZmVyIildCisr CQlwdWJsaWMgYm9vbCBpc19waXhlbF9idWZmZXIgKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNv Z2xfaXNfcHJvZ3JhbSIpXQorKwkJcHVibGljIGJvb2wgaXNfcHJvZ3JhbSAoKTsKKysJCVtDQ29k ZSAoY25hbWUgPSAiY29nbF9pc19zaGFkZXIiKV0KKysJCXB1YmxpYyBib29sIGlzX3NoYWRlciAo KTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9pc190ZXh0dXJlIildCisrCQlwdWJsaWMgYm9v bCBpc190ZXh0dXJlICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2lzX3ZlcnRleF9idWZm ZXIiKV0KKysJCXB1YmxpYyBib29sIGlzX3ZlcnRleF9idWZmZXIgKCk7CisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY29weV9mdW5jdGlvbiA9ICJnX2Jv eGVkX2NvcHkiLCBmcmVlX2Z1bmN0aW9uID0gImdfYm94ZWRfZnJlZSIsIHR5cGVfaWQgPSAiY29n bF9tYXRlcmlhbF9nZXRfdHlwZSAoKSIpXQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIE1h dGVyaWFsIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJ CVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2Iild CisrCQlwdWJsaWMgTWF0ZXJpYWwgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUs IGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZv aWQgc2V0X2FscGhhX3Rlc3RfZnVuY3Rpb24gKENvZ2wuTWF0ZXJpYWxBbHBoYUZ1bmMgYWxwaGFf ZnVuYywgZmxvYXQgYWxwaGFfcmVmZXJlbmNlKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0g dHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJs aWMgYm9vbCBzZXRfYmxlbmQgKHN0cmluZyBibGVuZF9zdHJpbmcpIHRocm93cyBHTGliLkVycm9y OworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEu MTYiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9ibGVuZF9jb25zdGFudCAo Q29nbC5Db2xvciBjb25zdGFudF9jb2xvcik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRy dWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGlj IHZvaWQgc2V0X2NvbG9yIChDb2dsLkNvbG9yIGNvbG9yKTsKKysJCVtWZXJzaW9uIChkZXByZWNh dGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2UgPSAiMS4wIildCisr CQlwdWJsaWMgdm9pZCBzZXRfY29sb3I0dWIgKHVpbnQ4IHJlZCwgdWludDggZ3JlZW4sIHVpbnQ4 IGJsdWUsIHVpbnQ4IGFscGhhKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVw cmVjYXRlZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCBz ZXRfbGF5ZXIgKGludCBsYXllcl9pbmRleCwgQ29nbC5IYW5kbGUgdGV4dHVyZSk7CisrCQlbVmVy c2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIsIHNpbmNl ID0gIjEuMCIpXQorKwkJcHVibGljIGJvb2wgc2V0X2xheWVyX2NvbWJpbmUgKGludCBsYXllcl9p bmRleCwgc3RyaW5nIGJsZW5kX3N0cmluZykgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlbVmVyc2lv biAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIsIHNpbmNlID0g IjEuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2xheWVyX2NvbWJpbmVfY29uc3RhbnQgKGludCBs YXllcl9pbmRleCwgQ29nbC5Db2xvciBjb25zdGFudCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRl ZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIpXQorKwkJcHVibGljIHZvaWQgc2V0 X2xheWVyX2ZpbHRlcnMgKGludCBsYXllcl9pbmRleCwgQ29nbC5NYXRlcmlhbEZpbHRlciBtaW5f ZmlsdGVyLCBDb2dsLk1hdGVyaWFsRmlsdGVyIG1hZ19maWx0ZXIpOworKwkJW1ZlcnNpb24gKGRl cHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiKV0KKysJCXB1YmxpYyB2 b2lkIHNldF9sYXllcl9tYXRyaXggKGludCBsYXllcl9pbmRleCwgQ29nbC5NYXRyaXggbWF0cml4 KTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIx LjE2Iiwgc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgYm9vbCBzZXRfbGF5ZXJfcG9pbnRfc3By aXRlX2Nvb3Jkc19lbmFibGVkIChpbnQgbGF5ZXJfaW5kZXgsIGJvb2wgZW5hYmxlKSB0aHJvd3Mg R0xpYi5FcnJvcjsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9z aW5jZSA9ICIxLjE2Iiwgc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBzZXRfcG9pbnRf c2l6ZSAoZmxvYXQgcG9pbnRfc2l6ZSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUs IGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIsIHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZv aWQgc2V0X3VzZXJfcHJvZ3JhbSAoQ29nbC5IYW5kbGUgcHJvZ3JhbSk7CisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSld CisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3MgTWF0ZXJpYWxMYXllciB7CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgdHlwZV9pZCA9ICJjb2dsX29i amVjdF9nZXRfZ3R5cGUgKCkiKV0KKysJcHVibGljIGFic3RyYWN0IGNsYXNzIE9iamVjdCB7Cisr CQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQg T2JqZWN0ICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wu aCIsIHR5cGVfaWQgPSAiY29nbF9vZmZzY3JlZW5fZ2V0X2d0eXBlICgpIildCisrCXB1YmxpYyBj bGFzcyBPZmZzY3JlZW4gOiBDb2dsLk9iamVjdCwgQ29nbC5GcmFtZWJ1ZmZlciB7CisrCQlbQ0Nv ZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgT2Zmc2Ny ZWVuICgpOworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJ W1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiKV0K KysJCXB1YmxpYyBPZmZzY3JlZW4udG9fdGV4dHVyZSAoQ29nbC5UZXh0dXJlIHRleHR1cmUpOwor KwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHVibGljIE9m ZnNjcmVlbi53aXRoX3RleHR1cmUgKENvZ2wuVGV4dHVyZSB0ZXh0dXJlKTsKKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCB0eXBlX2lkID0gImNvZ2xfb25z Y3JlZW5fZ2V0X2d0eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBPbnNjcmVlbiA6IENvZ2wuT2Jq ZWN0LCBDb2dsLkZyYW1lYnVmZmVyIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlv biA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBPbnNjcmVlbiAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjE2IildCisrCQlwdWJsaWMgQ29nbC5PbnNjcmVlbkRpcnR5Q2xvc3VyZSBhZGRfZGly dHlfY2FsbGJhY2sgKFtDQ29kZSAoZGVsZWdhdGVfdGFyZ2V0X3BvcyA9IDEuNSldIENvZ2wuT25z Y3JlZW5EaXJ0eUNhbGxiYWNrIGNhbGxiYWNrLCBDb2dsLlVzZXJEYXRhRGVzdHJveUNhbGxiYWNr PyBkZXN0cm95KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyBDb2ds Lk9uc2NyZWVuUmVzaXplQ2xvc3VyZSBhZGRfcmVzaXplX2NhbGxiYWNrIChbQ0NvZGUgKGRlbGVn YXRlX3RhcmdldF9wb3MgPSAxLjUpXSBDb2dsLk9uc2NyZWVuUmVzaXplQ2FsbGJhY2sgY2FsbGJh Y2ssIENvZ2wuVXNlckRhdGFEZXN0cm95Q2FsbGJhY2s/IGRlc3Ryb3kpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTQiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X2J1ZmZlcl9hZ2UgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xNCIpXQorKwkJcHVibGljIGludDY0IGdldF9mcmFtZV9jb3Vu dGVyICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIGJvb2wgZ2V0 X3Jlc2l6YWJsZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2 b2lkIGhpZGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNiIpXQorKwkJcHVibGljIHZv aWQgcmVtb3ZlX2RpcnR5X2NhbGxiYWNrIChDb2dsLk9uc2NyZWVuRGlydHlDbG9zdXJlIGNsb3N1 cmUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTQiKV0KKysJCXB1YmxpYyB2b2lkIHJlbW92 ZV9mcmFtZV9jYWxsYmFjayAoQ29nbC5GcmFtZUNsb3N1cmUgY2xvc3VyZSk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCByZW1vdmVfcmVzaXplX2NhbGxiYWNr IChDb2dsLk9uc2NyZWVuUmVzaXplQ2xvc3VyZSBjbG9zdXJlKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9yZXNpemFibGUgKGJvb2wgcmVzaXphYmxl KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNob3cgKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc3dhcF9idWZm ZXJzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTYiKV0KKysJCXB1YmxpYyB2b2lkIHN3 YXBfYnVmZmVyc193aXRoX2RhbWFnZSAoaW50IHJlY3RhbmdsZXMsIGludCBuX3JlY3RhbmdsZXMp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHN3YXBfcmVn aW9uIChpbnQgcmVjdGFuZ2xlcywgaW50IG5fcmVjdGFuZ2xlcyk7CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY29weV9mdW5jdGlvbiA9ICJnX2JveGVk X2NvcHkiLCBmcmVlX2Z1bmN0aW9uID0gImdfYm94ZWRfZnJlZSIsIHR5cGVfaWQgPSAiY29nbF9v bnNjcmVlbl9kaXJ0eV9jbG9zdXJlX2dldF9ndHlwZSAoKSIpXQorKwlbQ29tcGFjdF0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTYiKV0KKysJcHVibGljIGNsYXNzIE9uc2NyZWVuRGlydHlDbG9z dXJlIHsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBj b3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24gPSAiZ19ib3hlZF9m cmVlIiwgdHlwZV9pZCA9ICJjb2dsX29uc2NyZWVuX3Jlc2l6ZV9jbG9zdXJlX2dldF9ndHlwZSAo KSIpXQorKwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwlwdWJsaWMg Y2xhc3MgT25zY3JlZW5SZXNpemVDbG9zdXJlIHsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjb3B5X2Z1bmN0aW9uID0gImNvZ2xfcGF0aF9jb3B5Iild CisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3MgUGF0aCB7CisrCQlwdWJsaWMgc3RhdGljIHZv aWQgQG5ldyAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2ds LmgiLCB0eXBlX2lkID0gImNvZ2xfcGlwZWxpbmVfZ2V0X2d0eXBlICgpIildCisrCXB1YmxpYyBj bGFzcyBQaXBlbGluZSA6IENvZ2wuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9m dW5jdGlvbiA9IGZhbHNlKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1Ymxp YyBQaXBlbGluZSAoQ29nbC5Db250ZXh0IGNvbnRleHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjIuMCIpXQorKwkJcHVibGljIENvZ2wuUGlwZWxpbmUgY29weSAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIGZvcmVhY2hfbGF5ZXIgKENvZ2wuUGlwZWxp bmVMYXllckNhbGxiYWNrIGNhbGxiYWNrKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0K KysJCXB1YmxpYyBDb2dsLlBpcGVsaW5lQWxwaGFGdW5jIGdldF9hbHBoYV90ZXN0X2Z1bmN0aW9u ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF9h bHBoYV90ZXN0X3JlZmVyZW5jZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJ CXB1YmxpYyBDb2dsLkNvbG9yIGdldF9jb2xvciAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIy LjAiKV0KKysJCXB1YmxpYyBDb2dsLlBpcGVsaW5lQ3VsbEZhY2VNb2RlIGdldF9jdWxsX2ZhY2Vf bW9kZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyBDb2dsLldp bmRpbmcgZ2V0X2Zyb250X2ZhY2Vfd2luZGluZyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEwIildCisrCQlwdWJsaWMgQ29nbC5QaXBlbGluZUZpbHRlciBnZXRfbGF5ZXJfbWFnX2ZpbHRl ciAoaW50IGxheWVyX2luZGV4KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlw dWJsaWMgQ29nbC5QaXBlbGluZUZpbHRlciBnZXRfbGF5ZXJfbWluX2ZpbHRlciAoaW50IGxheWVy X2luZGV4KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyBib29sIGdl dF9sYXllcl9wb2ludF9zcHJpdGVfY29vcmRzX2VuYWJsZWQgKGludCBsYXllcl9pbmRleCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHVub3duZWQgQ29nbC5UZXh0 dXJlIGdldF9sYXllcl90ZXh0dXJlIChpbnQgbGF5ZXJfaW5kZXgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuNiIpXQorKwkJcHVibGljIENvZ2wuUGlwZWxpbmVXcmFwTW9kZSBnZXRfbGF5ZXJf d3JhcF9tb2RlX3MgKGludCBsYXllcl9pbmRleCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42 IildCisrCQlwdWJsaWMgQ29nbC5QaXBlbGluZVdyYXBNb2RlIGdldF9sYXllcl93cmFwX21vZGVf dCAoaW50IGxheWVyX2luZGV4KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1 YmxpYyBpbnQgZ2V0X25fbGF5ZXJzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQor KwkJcHVibGljIGJvb2wgZ2V0X3Blcl92ZXJ0ZXhfcG9pbnRfc2l6ZSAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfcG9pbnRfc2l6ZSAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X3VuaWZvcm1fbG9j YXRpb24gKHN0cmluZyB1bmlmb3JtX25hbWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIp XQorKwkJcHVibGljIHVub3duZWQgQ29nbC5IYW5kbGUgZ2V0X3VzZXJfcHJvZ3JhbSAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCByZW1vdmVfbGF5ZXIg KGludCBsYXllcl9pbmRleCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJs aWMgdm9pZCBzZXRfYWxwaGFfdGVzdF9mdW5jdGlvbiAoQ29nbC5QaXBlbGluZUFscGhhRnVuYyBh bHBoYV9mdW5jLCBmbG9hdCBhbHBoYV9yZWZlcmVuY2UpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjIuMCIpXQorKwkJcHVibGljIGJvb2wgc2V0X2JsZW5kIChzdHJpbmcgYmxlbmRfc3RyaW5nKSB0 aHJvd3MgR0xpYi5FcnJvcjsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1Ymxp YyB2b2lkIHNldF9ibGVuZF9jb25zdGFudCAoQ29nbC5Db2xvciBjb25zdGFudF9jb2xvcik7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfY29sb3IgKENv Z2wuQ29sb3IgY29sb3IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGlj IHZvaWQgc2V0X2NvbG9yNGYgKGZsb2F0IHJlZCwgZmxvYXQgZ3JlZW4sIGZsb2F0IGJsdWUsIGZs b2F0IGFscGhhKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lk IHNldF9jb2xvcjR1YiAodWludDggcmVkLCB1aW50OCBncmVlbiwgdWludDggYmx1ZSwgdWludDgg YWxwaGEpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0 X2N1bGxfZmFjZV9tb2RlIChDb2dsLlBpcGVsaW5lQ3VsbEZhY2VNb2RlIGN1bGxfZmFjZV9tb2Rl KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9mcm9u dF9mYWNlX3dpbmRpbmcgKENvZ2wuV2luZGluZyBmcm9udF93aW5kaW5nKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyBib29sIHNldF9sYXllcl9jb21iaW5lIChpbnQg bGF5ZXJfaW5kZXgsIHN0cmluZyBibGVuZF9zdHJpbmcpIHRocm93cyBHTGliLkVycm9yOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2xheWVyX2NvbWJp bmVfY29uc3RhbnQgKGludCBsYXllcl9pbmRleCwgQ29nbC5Db2xvciBjb25zdGFudCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2xheWVyX2ZpbHRl cnMgKGludCBsYXllcl9pbmRleCwgQ29nbC5QaXBlbGluZUZpbHRlciBtaW5fZmlsdGVyLCBDb2ds LlBpcGVsaW5lRmlsdGVyIG1hZ19maWx0ZXIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAi KV0KKysJCXB1YmxpYyB2b2lkIHNldF9sYXllcl9tYXRyaXggKGludCBsYXllcl9pbmRleCwgQ29n bC5NYXRyaXggbWF0cml4KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJs aWMgdm9pZCBzZXRfbGF5ZXJfbnVsbF90ZXh0dXJlIChpbnQgbGF5ZXJfaW5kZXgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIGJvb2wgc2V0X2xheWVyX3BvaW50X3Nw cml0ZV9jb29yZHNfZW5hYmxlZCAoaW50IGxheWVyX2luZGV4LCBib29sIGVuYWJsZSkgdGhyb3dz IEdMaWIuRXJyb3I7CisrCQlwdWJsaWMgdm9pZCBzZXRfbGF5ZXJfdGV4dHVyZSAoaW50IGxheWVy X2luZGV4LCBDb2dsLlRleHR1cmUgdGV4dHVyZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4w IildCisrCQlwdWJsaWMgdm9pZCBzZXRfbGF5ZXJfd3JhcF9tb2RlIChpbnQgbGF5ZXJfaW5kZXgs IENvZ2wuUGlwZWxpbmVXcmFwTW9kZSBtb2RlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAi KV0KKysJCXB1YmxpYyB2b2lkIHNldF9sYXllcl93cmFwX21vZGVfcyAoaW50IGxheWVyX2luZGV4 LCBDb2dsLlBpcGVsaW5lV3JhcE1vZGUgbW9kZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4w IildCisrCQlwdWJsaWMgdm9pZCBzZXRfbGF5ZXJfd3JhcF9tb2RlX3QgKGludCBsYXllcl9pbmRl eCwgQ29nbC5QaXBlbGluZVdyYXBNb2RlIG1vZGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIu MCIpXQorKwkJcHVibGljIGJvb2wgc2V0X3Blcl92ZXJ0ZXhfcG9pbnRfc2l6ZSAoYm9vbCBlbmFi bGUpIHRocm93cyBHTGliLkVycm9yOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJ cHVibGljIHZvaWQgc2V0X3BvaW50X3NpemUgKGZsb2F0IHBvaW50X3NpemUpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3VuaWZvcm1fMWYgKGludCB1 bmlmb3JtX2xvY2F0aW9uLCBmbG9hdCB2YWx1ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4w IildCisrCQlwdWJsaWMgdm9pZCBzZXRfdW5pZm9ybV8xaSAoaW50IHVuaWZvcm1fbG9jYXRpb24s IGludCB2YWx1ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9p ZCBzZXRfdW5pZm9ybV9mbG9hdCAoaW50IHVuaWZvcm1fbG9jYXRpb24sIGludCBuX2NvbXBvbmVu dHMsIGludCBjb3VudCwgZmxvYXQgdmFsdWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIp XQorKwkJcHVibGljIHZvaWQgc2V0X3VuaWZvcm1faW50IChpbnQgdW5pZm9ybV9sb2NhdGlvbiwg aW50IG5fY29tcG9uZW50cywgaW50IGNvdW50LCBpbnQgdmFsdWUpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3VuaWZvcm1fbWF0cml4IChpbnQgdW5p Zm9ybV9sb2NhdGlvbiwgaW50IGRpbWVuc2lvbnMsIGludCBjb3VudCwgYm9vbCB0cmFuc3Bvc2Us IGZsb2F0IHZhbHVlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2 b2lkIHNldF91c2VyX3Byb2dyYW0gKENvZ2wuSGFuZGxlIHByb2dyYW0pOworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbQ29tcGFjdF0KKysJcHVi bGljIGNsYXNzIFBpeGVsQnVmZmVyIDogQ29nbC5IYW5kbGUgeworKwkJcHVibGljIFBpeGVsQnVm ZmVyICh1aW50IHNpemUpOworKwkJcHVibGljIFBpeGVsQnVmZmVyLmZvcl9zaXplICh1aW50IHdp ZHRoLCB1aW50IGhlaWdodCwgQ29nbC5QaXhlbEZvcm1hdCBmb3JtYXQsIHVpbnQgc3RyaWRlKTsK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjbmFtZSA9 ICJDb2dsSGFuZGxlIiwgcmVmX2Z1bmN0aW9uID0gImNvZ2xfcHJvZ3JhbV9yZWYiLCB1bnJlZl9m dW5jdGlvbiA9ICJjb2dsX3Byb2dyYW1fdW5yZWYiKV0KKysJW0NvbXBhY3RdCisrCXB1YmxpYyBj bGFzcyBQcm9ncmFtIDogQ29nbC5IYW5kbGUgeworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2Ny ZWF0ZV9wcm9ncmFtIiwgaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNv Z2xIYW5kbGUqIildCisrCQlwdWJsaWMgUHJvZ3JhbSAoKTsKKysJCXB1YmxpYyB2b2lkIGF0dGFj aF9zaGFkZXIgKENvZ2wuU2hhZGVyIHNoYWRlcl9oYW5kbGUpOworKwkJcHVibGljIGludCBnZXRf dW5pZm9ybV9sb2NhdGlvbiAoc3RyaW5nIHVuaWZvcm1fbmFtZSk7CisrCQlwdWJsaWMgdm9pZCBs aW5rICgpOworKwkJcHVibGljIHN0YXRpYyB2b2lkIHVuaWZvcm1fMWYgKGludCB1bmlmb3JtX25v LCBmbG9hdCB2YWx1ZSk7CisrCQlwdWJsaWMgc3RhdGljIHZvaWQgdW5pZm9ybV8xaSAoaW50IHVu aWZvcm1fbm8sIGludCB2YWx1ZSk7CisrCQlwdWJsaWMgc3RhdGljIHZvaWQgdW5pZm9ybV9mbG9h dCAoaW50IHVuaWZvcm1fbm8sIGludCBzaXplLCBbQ0NvZGUgKGFycmF5X2xlbmd0aF9wb3MgPSAy LjkpXSBmbG9hdFtdIHZhbHVlKTsKKysJCXB1YmxpYyBzdGF0aWMgdm9pZCB1bmlmb3JtX2ludCAo aW50IHVuaWZvcm1fbm8sIGludCBzaXplLCBbQ0NvZGUgKGFycmF5X2xlbmd0aF9wb3MgPSAyLjkp XSBpbnRbXSB2YWx1ZSk7CisrCQlwdWJsaWMgc3RhdGljIHZvaWQgdW5pZm9ybV9tYXRyaXggKGlu dCB1bmlmb3JtX25vLCBpbnQgc2l6ZSwgYm9vbCB0cmFuc3Bvc2UsIFtDQ29kZSAoYXJyYXlfbGVu Z3RoX3BvcyA9IDIuOSldIGZsb2F0W10gdmFsdWUpOworKwkJcHVibGljIHZvaWQgdXNlICgpOwor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNuYW1lID0g IkNvZ2xIYW5kbGUiLCByZWZfZnVuY3Rpb24gPSAiY29nbF9zaGFkZXJfcmVmIiwgdW5yZWZfZnVu Y3Rpb24gPSAiY29nbF9zaGFkZXJfdW5yZWYiKV0KKysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFz cyBTaGFkZXIgOiBDb2dsLkhhbmRsZSB7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfY3JlYXRl X3NoYWRlciIsIGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDb2dsSGFu ZGxlKiIpXQorKwkJcHVibGljIFNoYWRlciAoQ29nbC5TaGFkZXJUeXBlIHNoYWRlcl90eXBlKTsK KysJCXB1YmxpYyB2b2lkIGNvbXBpbGUgKCk7CisrCQlwdWJsaWMgc3RyaW5nIGdldF9pbmZvX2xv ZyAoKTsKKysJCXB1YmxpYyBDb2dsLlNoYWRlclR5cGUgZ2V0X3R5cGUgKCk7CisrCQlwdWJsaWMg Ym9vbCBpc19jb21waWxlZCAoKTsKKysJCXB1YmxpYyB2b2lkIHNvdXJjZSAoc3RyaW5nIHNvdXJj ZSk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgbG93 ZXJfY2FzZV9jc3VmZml4ID0gInRleHR1cmVfMmQiLCB0eXBlX2lkID0gImNvZ2xfdGV4dHVyZV8y ZF9nZXRfZ3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFRleHR1cmUyRCA6IENvZ2wuT2JqZWN0 LCBDb2dsLlRleHR1cmUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFs c2UpXQorKwkJcHJvdGVjdGVkIFRleHR1cmUyRCAoKTsKKysJCXB1YmxpYyB2b2lkIGVnbF9pbWFn ZV9leHRlcm5hbF9hbGxvY19maW5pc2ggKHZvaWQqIHVzZXJfZGF0YSwgR0xpYi5EZXN0cm95Tm90 aWZ5IGRlc3Ryb3kpOworKwkJcHVibGljIHZvaWQgZWdsX2ltYWdlX2V4dGVybmFsX2JpbmQgKCk7 CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlbVmVyc2lv biAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgVGV4dHVyZTJELmZyb21fYml0bWFwIChDb2ds LkJpdG1hcCBiaXRtYXApOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2ds L2NvZ2wuaCIsIGxvd2VyX2Nhc2VfY3N1ZmZpeCA9ICJ0ZXh0dXJlXzJkX3NsaWNlZCIsIHR5cGVf aWQgPSAiY29nbF90ZXh0dXJlXzJkX3NsaWNlZF9nZXRfZ3R5cGUgKCkiKV0KKysJcHVibGljIGNs YXNzIFRleHR1cmUyRFNsaWNlZCA6IENvZ2wuT2JqZWN0LCBDb2dsLlRleHR1cmUgeworKwkJW0ND b2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFRleHR1 cmUyRFNsaWNlZCAoKTsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNl KV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2IildCisrCQlwdWJsaWMgVGV4dHVyZTJEU2xp Y2VkLmZyb21fYml0bWFwIChDb2dsLkJpdG1hcCBibXAsIGludCBtYXhfd2FzdGUpOworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNuYW1lID0gIkNvZ2xI YW5kbGUiLCByZWZfZnVuY3Rpb24gPSAiY29nbF92ZXJ0ZXhfYnVmZmVyX3JlZiIsIHVucmVmX2Z1 bmN0aW9uID0gImNvZ2xfdmVydGV4X2J1ZmZlcl91bnJlZiIpXQorKwlbQ29tcGFjdF0KKysJcHVi bGljIGNsYXNzIFZlcnRleEJ1ZmZlciA6IENvZ2wuSGFuZGxlIHsKKysJCVtDQ29kZSAoaGFzX2Nv bnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNvZ2xIYW5kbGUqIildCisrCQlwdWJs aWMgVmVydGV4QnVmZmVyICh1aW50IG5fdmVydGljZXMpOworKwkJcHVibGljIHZvaWQgYWRkIChz dHJpbmcgYXR0cmlidXRlX25hbWUsIHVjaGFyIG5fY29tcG9uZW50cywgQ29nbC5BdHRyaWJ1dGVU eXBlIHR5cGUsIGJvb2wgbm9ybWFsaXplZCwgdWludDE2IHN0cmlkZSwgdm9pZCogcG9pbnRlcik7 CisrCQlwdWJsaWMgdm9pZCBAZGVsZXRlIChzdHJpbmcgYXR0cmlidXRlX25hbWUpOworKwkJcHVi bGljIHZvaWQgZGlzYWJsZSAoc3RyaW5nIGF0dHJpYnV0ZV9uYW1lKTsKKysJCXB1YmxpYyB2b2lk IGRyYXcgKENvZ2wuVmVydGljZXNNb2RlIG1vZGUsIGludCBmaXJzdCwgaW50IGNvdW50KTsKKysJ CXB1YmxpYyB2b2lkIGRyYXdfZWxlbWVudHMgKENvZ2wuVmVydGljZXNNb2RlIG1vZGUsIENvZ2wu VmVydGV4QnVmZmVySW5kaWNlcyBpbmRpY2VzLCBpbnQgbWluX2luZGV4LCBpbnQgbWF4X2luZGV4 LCBpbnQgaW5kaWNlc19vZmZzZXQsIGludCBjb3VudCk7CisrCQlwdWJsaWMgdm9pZCBlbmFibGUg KHN0cmluZyBhdHRyaWJ1dGVfbmFtZSk7CisrCQlwdWJsaWMgdWludCBnZXRfbl92ZXJ0aWNlcyAo KTsKKysJCXB1YmxpYyB2b2lkIHN1Ym1pdCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjbmFtZSA9ICJDb2dsSGFuZGxlIildCisrCVtDb21wYWN0 XQorKwlwdWJsaWMgY2xhc3MgVmVydGV4QnVmZmVySW5kaWNlcyA6IENvZ2wuSGFuZGxlIHsKKysJ CXB1YmxpYyBWZXJ0ZXhCdWZmZXJJbmRpY2VzIChDb2dsLkluZGljZXNUeXBlIGluZGljZXNfdHlw ZSwgdm9pZCogaW5kaWNlc19hcnJheSwgaW50IGluZGljZXNfbGVuKTsKKysJCXB1YmxpYyBzdGF0 aWMgdW5vd25lZCBDb2dsLlZlcnRleEJ1ZmZlckluZGljZXMgZ2V0X2Zvcl9xdWFkcyAodWludCBu X2luZGljZXMpOworKwkJcHVibGljIENvZ2wuSW5kaWNlc1R5cGUgZ2V0X3R5cGUgKCk7CisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgdHlwZV9pZCA9ICJj b2dsX2ZyYW1lYnVmZmVyX2dldF9ndHlwZSAoKSIpXQorKwlwdWJsaWMgaW50ZXJmYWNlIEZyYW1l YnVmZmVyIDogQ29nbC5PYmplY3QgeworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJ cHVibGljIGJvb2wgYWxsb2NhdGUgKCkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBjbGVhciAodWxvbmcgYnVmZmVycywgQ29n bC5Db2xvciBjb2xvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMg dm9pZCBjbGVhcjRmICh1bG9uZyBidWZmZXJzLCBmbG9hdCByZWQsIGZsb2F0IGdyZWVuLCBmbG9h dCBibHVlLCBmbG9hdCBhbHBoYSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlw dWJsaWMgdm9pZCBkaXNjYXJkX2J1ZmZlcnMgKHVsb25nIGJ1ZmZlcnMpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIGRyYXdfbXVsdGl0ZXh0dXJlZF9yZWN0 YW5nbGUgKENvZ2wuUGlwZWxpbmUgcGlwZWxpbmUsIGZsb2F0IHhfMSwgZmxvYXQgeV8xLCBmbG9h dCB4XzIsIGZsb2F0IHlfMiwgW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIGZsb2F0W10g dGV4X2Nvb3JkcywgaW50IHRleF9jb29yZHNfbGVuKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEwIildCisrCQlwdWJsaWMgdm9pZCBkcmF3X3JlY3RhbmdsZSAoQ29nbC5QaXBlbGluZSBwaXBl bGluZSwgZmxvYXQgeF8xLCBmbG9hdCB5XzEsIGZsb2F0IHhfMiwgZmxvYXQgeV8yKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBkcmF3X3JlY3RhbmdsZXMg KENvZ2wuUGlwZWxpbmUgcGlwZWxpbmUsIFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSBm bG9hdFtdIGNvb3JkaW5hdGVzLCB1aW50IG5fcmVjdGFuZ2xlcyk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgZHJhd190ZXh0dXJlZF9yZWN0YW5nbGUgKENv Z2wuUGlwZWxpbmUgcGlwZWxpbmUsIGZsb2F0IHhfMSwgZmxvYXQgeV8xLCBmbG9hdCB4XzIsIGZs b2F0IHlfMiwgZmxvYXQgc18xLCBmbG9hdCB0XzEsIGZsb2F0IHNfMiwgZmxvYXQgdF8yKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBkcmF3X3RleHR1cmVk X3JlY3RhbmdsZXMgKENvZ2wuUGlwZWxpbmUgcGlwZWxpbmUsIFtDQ29kZSAoYXJyYXlfbGVuZ3Ro ID0gZmFsc2UpXSBmbG9hdFtdIGNvb3JkaW5hdGVzLCB1aW50IG5fcmVjdGFuZ2xlcyk7CisrCQlw dWJsaWMgc3RhdGljIHVpbnQzMiBlcnJvcl9xdWFyayAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBmaW5pc2ggKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgZnJ1c3R1bSAoZmxvYXQgbGVmdCwgZmxvYXQgcmln aHQsIGZsb2F0IGJvdHRvbSwgZmxvYXQgdG9wLCBmbG9hdCB6X25lYXIsIGZsb2F0IHpfZmFyKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X2FscGhhX2Jp dHMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgaW50IGdldF9i bHVlX2JpdHMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdW5v d25lZCBDb2dsLkNvbnRleHQgZ2V0X2NvbnRleHQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi Mi4wIildCisrCQlwdWJsaWMgaW50IGdldF9kZXB0aF9iaXRzICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTgiKV0KKysJCXB1YmxpYyBib29sIGdldF9kZXB0aF93cml0ZV9lbmFibGVkICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIGJvb2wgZ2V0X2RpdGhl cl9lbmFibGVkICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIGlu dCBnZXRfZ3JlZW5fYml0cyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1 YmxpYyBpbnQgZ2V0X2hlaWdodCAoKTsKKysJCXB1YmxpYyBib29sIGdldF9pc19zdGVyZW8gKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENvZ2wuTWF0cml4IGdl dF9tb2RlbHZpZXdfbWF0cml4ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyBDb2dsLk1hdHJpeCBnZXRfcHJvamVjdGlvbl9tYXRyaXggKCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgaW50IGdldF9yZWRfYml0cyAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgaW50IGdldF9zYW1wbGVzX3Blcl9w aXhlbCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIwIildCisrCQlwdWJsaWMgQ29nbC5T dGVyZW9Nb2RlIGdldF9zdGVyZW9fbW9kZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgi KV0KKysJCXB1YmxpYyB2b2lkIGdldF92aWV3cG9ydDRmdiAoW0NDb2RlIChhcnJheV9sZW5ndGgg PSBmYWxzZSldIG91dCB1bm93bmVkIGZsb2F0IHZpZXdwb3J0WzRdKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfdmlld3BvcnRfaGVpZ2h0ICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIGZsb2F0IGdldF92aWV3cG9y dF93aWR0aCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBmbG9h dCBnZXRfdmlld3BvcnRfeCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1 YmxpYyBmbG9hdCBnZXRfdmlld3BvcnRfeSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgi KV0KKysJCXB1YmxpYyBpbnQgZ2V0X3dpZHRoICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTAiKV0KKysJCXB1YmxpYyB2b2lkIGlkZW50aXR5X21hdHJpeCAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBvcnRob2dyYXBoaWMgKGZsb2F0IHhfMSwg ZmxvYXQgeV8xLCBmbG9hdCB4XzIsIGZsb2F0IHlfMiwgZmxvYXQgbmVhciwgZmxvYXQgZmFyKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBwZXJzcGVjdGl2 ZSAoZmxvYXQgZm92X3ksIGZsb2F0IGFzcGVjdCwgZmxvYXQgel9uZWFyLCBmbG9hdCB6X2Zhcik7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgcG9wX2NsaXAg KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgcG9wX21h dHJpeCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBw dXNoX21hdHJpeCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMg dm9pZCBwdXNoX3JlY3RhbmdsZV9jbGlwIChmbG9hdCB4XzEsIGZsb2F0IHlfMSwgZmxvYXQgeF8y LCBmbG9hdCB5XzIpOworKwkJcHVibGljIHZvaWQgcHVzaF9yZWdpb25fY2xpcCAoQ2Fpcm8uUmVn aW9uIHJlZ2lvbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZv aWQgcHVzaF9zY2lzc29yX2NsaXAgKGludCB4LCBpbnQgeSwgaW50IHdpZHRoLCBpbnQgaGVpZ2h0 KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgYm9vbCByZWFkX3Bp eGVscyAoaW50IHgsIGludCB5LCBpbnQgd2lkdGgsIGludCBoZWlnaHQsIENvZ2wuUGl4ZWxGb3Jt YXQgZm9ybWF0LCB1aW50OCBwaXhlbHMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0K KysJCXB1YmxpYyBib29sIHJlYWRfcGl4ZWxzX2ludG9fYml0bWFwIChpbnQgeCwgaW50IHksIENv Z2wuUmVhZFBpeGVsc0ZsYWdzIHNvdXJjZSwgQ29nbC5CaXRtYXAgYml0bWFwKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIHJlc29sdmVfc2FtcGxlcyAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIHJlc29sdmVfc2Ft cGxlc19yZWdpb24gKGludCB4LCBpbnQgeSwgaW50IHdpZHRoLCBpbnQgaGVpZ2h0KTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCByb3RhdGUgKGZsb2F0IGFu Z2xlLCBmbG9hdCB4LCBmbG9hdCB5LCBmbG9hdCB6KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIy LjAiKV0KKysJCXB1YmxpYyB2b2lkIHJvdGF0ZV9ldWxlciAoR3JhcGhlbmUuRXVsZXIgZXVsZXIp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNjYWxlIChm bG9hdCB4LCBmbG9hdCB5LCBmbG9hdCB6KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE4Iild CisrCQlwdWJsaWMgdm9pZCBzZXRfZGVwdGhfd3JpdGVfZW5hYmxlZCAoYm9vbCBkZXB0aF93cml0 ZV9lbmFibGVkKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lk IHNldF9kaXRoZXJfZW5hYmxlZCAoYm9vbCBkaXRoZXJfZW5hYmxlZCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X21vZGVsdmlld19tYXRyaXggKENv Z2wuTWF0cml4IG1hdHJpeCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVi bGljIHZvaWQgc2V0X3Byb2plY3Rpb25fbWF0cml4IChDb2dsLk1hdHJpeCBtYXRyaXgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3NhbXBsZXNfcGVy X3BpeGVsIChpbnQgc2FtcGxlc19wZXJfcGl4ZWwpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9zdGVyZW9fbW9kZSAoQ29nbC5TdGVyZW9Nb2RlIHN0 ZXJlb19tb2RlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lk IHNldF92aWV3cG9ydCAoZmxvYXQgeCwgZmxvYXQgeSwgZmxvYXQgd2lkdGgsIGZsb2F0IGhlaWdo dCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgdHJhbnNm b3JtIChDb2dsLk1hdHJpeCBtYXRyaXgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0K KysJCXB1YmxpYyB2b2lkIHRyYW5zbGF0ZSAoZmxvYXQgeCwgZmxvYXQgeSwgZmxvYXQgeik7Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgdHlwZV9pZCA9 ICJjb2dsX3RleHR1cmVfZ2V0X2d0eXBlICgpIildCisrCXB1YmxpYyBpbnRlcmZhY2UgVGV4dHVy ZSA6IENvZ2wuT2JqZWN0IHsKKysJCXB1YmxpYyBib29sIGFsbG9jYXRlICgpIHRocm93cyBHTGli LkVycm9yOworKwkJcHVibGljIHN0YXRpYyB1aW50MzIgZXJyb3JfcXVhcmsgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xOCIpXQorKwkJcHVibGljIENvZ2wuVGV4dHVyZUNvbXBvbmVudHMg Z2V0X2NvbXBvbmVudHMgKCk7CisrCQlwdWJsaWMgaW50IGdldF9kYXRhIChDb2dsLlBpeGVsRm9y bWF0IGZvcm1hdCwgdWludCByb3dzdHJpZGUsIHVpbnQ4IGRhdGEpOworKwkJcHVibGljIGJvb2wg Z2V0X2dsX3RleHR1cmUgKG91dCB1aW50IG91dF9nbF9oYW5kbGUsIG91dCB1aW50IG91dF9nbF90 YXJnZXQpOworKwkJcHVibGljIHVpbnQgZ2V0X2hlaWdodCAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0 X21heF93YXN0ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE4IildCisrCQlwdWJsaWMg Ym9vbCBnZXRfcHJlbXVsdGlwbGllZCAoKTsKKysJCXB1YmxpYyB1aW50IGdldF93aWR0aCAoKTsK KysJCXB1YmxpYyBib29sIGlzX3NsaWNlZCAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0g dHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE4Iiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJs aWMgc3RhdGljIENvZ2wuVGV4dHVyZSBuZXdfZnJvbV9iaXRtYXAgKENvZ2wuQml0bWFwIGJpdG1h cCwgQ29nbC5UZXh0dXJlRmxhZ3MgZmxhZ3MsIENvZ2wuUGl4ZWxGb3JtYXQgaW50ZXJuYWxfZm9y bWF0KTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9 ICIxLjE4Iiwgc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgc3RhdGljIENvZ2wuVGV4dHVyZSBu ZXdfZnJvbV9kYXRhIChpbnQgd2lkdGgsIGludCBoZWlnaHQsIENvZ2wuVGV4dHVyZUZsYWdzIGZs YWdzLCBDb2dsLlBpeGVsRm9ybWF0IGZvcm1hdCwgQ29nbC5QaXhlbEZvcm1hdCBpbnRlcm5hbF9m b3JtYXQsIGludCByb3dzdHJpZGUsIHVpbnQ4IGRhdGEpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0 ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTgiLCBzaW5jZSA9ICIwLjgiKV0KKysJ CXB1YmxpYyBzdGF0aWMgQ29nbC5UZXh0dXJlIG5ld19mcm9tX2ZpbGUgKHN0cmluZyBmaWxlbmFt ZSwgQ29nbC5UZXh0dXJlRmxhZ3MgZmxhZ3MsIENvZ2wuUGl4ZWxGb3JtYXQgaW50ZXJuYWxfZm9y bWF0KSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwg ZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE4Iiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgQ29n bC5UZXh0dXJlIG5ld19mcm9tX3N1Yl90ZXh0dXJlIChpbnQgc3ViX3gsIGludCBzdWJfeSwgaW50 IHN1Yl93aWR0aCwgaW50IHN1Yl9oZWlnaHQpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0 cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTgiLCBzaW5jZSA9ICIwLjgiKV0KKysJCXB1Ymxp YyBzdGF0aWMgQ29nbC5UZXh0dXJlIG5ld193aXRoX3NpemUgKHVpbnQgd2lkdGgsIHVpbnQgaGVp Z2h0LCBDb2dsLlRleHR1cmVGbGFncyBmbGFncywgQ29nbC5QaXhlbEZvcm1hdCBpbnRlcm5hbF9m b3JtYXQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTgiKV0KKysJCXB1YmxpYyB2b2lkIHNl dF9jb21wb25lbnRzIChDb2dsLlRleHR1cmVDb21wb25lbnRzIGNvbXBvbmVudHMpOworKwkJcHVi bGljIGJvb2wgc2V0X2RhdGEgKENvZ2wuUGl4ZWxGb3JtYXQgZm9ybWF0LCBpbnQgcm93c3RyaWRl LCB1aW50OCBkYXRhLCBpbnQgbGV2ZWwpIHRocm93cyBHTGliLkVycm9yOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9wcmVtdWx0aXBsaWVkIChib29s IHByZW11bHRpcGxpZWQpOworKwkJcHVibGljIGJvb2wgc2V0X3JlZ2lvbiAoaW50IHNyY194LCBp bnQgc3JjX3ksIGludCBkc3RfeCwgaW50IGRzdF95LCB1aW50IGRzdF93aWR0aCwgdWludCBkc3Rf aGVpZ2h0LCBpbnQgd2lkdGgsIGludCBoZWlnaHQsIENvZ2wuUGl4ZWxGb3JtYXQgZm9ybWF0LCB1 aW50IHJvd3N0cmlkZSwgdWludDggZGF0YSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44Iild CisrCQlwdWJsaWMgYm9vbCBzZXRfcmVnaW9uX2Zyb21fYml0bWFwIChpbnQgc3JjX3gsIGludCBz cmNfeSwgaW50IGRzdF94LCBpbnQgZHN0X3ksIHVpbnQgZHN0X3dpZHRoLCB1aW50IGRzdF9oZWln aHQsIENvZ2wuQml0bWFwIGJpdG1hcCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNvZ2wvY29nbC5oIildCisrCVtTaW1wbGVUeXBlXQorKwlwdWJsaWMgc3RydWN0IEFuZ2xl IDogaW50MzIgeworKwl9CisrCVtCb29sZWFuVHlwZV0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNvZ2wvY29nbC5oIildCisrCVtHSVIgKG5hbWUgPSAiQm9vbCIpXQorKwlbU2ltcGxl VHlwZV0KKysJcHVibGljIHN0cnVjdCBCb29sIDogYm9vbCB7CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIHN0cnVjdCBDb2xvciB7CisrCQlwdWJs aWMgQ29nbC5Db2xvcj8gY29weSAoKTsKKysJCXB1YmxpYyBDb2xvci5mcm9tXzRmIChmbG9hdCBy ZWQsIGZsb2F0IGdyZWVuLCBmbG9hdCBibHVlLCBmbG9hdCBhbHBoYSk7CisrCQlwdWJsaWMgQ29s b3IuZnJvbV80dWIgKHVpbnQ4IHJlZCwgdWludDggZ3JlZW4sIHVpbnQ4IGJsdWUsIHVpbnQ4IGFs cGhhKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfYWxwaGEgKCk7CisrCQlwdWJsaWMgdWludDggZ2V0 X2FscGhhX2J5dGUgKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X2FscGhhX2Zsb2F0ICgpOworKwkJ cHVibGljIGZsb2F0IGdldF9ibHVlICgpOworKwkJcHVibGljIHVpbnQ4IGdldF9ibHVlX2J5dGUg KCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X2JsdWVfZmxvYXQgKCk7CisrCQlwdWJsaWMgZmxvYXQg Z2V0X2dyZWVuICgpOworKwkJcHVibGljIHVpbnQ4IGdldF9ncmVlbl9ieXRlICgpOworKwkJcHVi bGljIGZsb2F0IGdldF9ncmVlbl9mbG9hdCAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfcmVkICgp OworKwkJcHVibGljIHVpbnQ4IGdldF9yZWRfYnl0ZSAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRf cmVkX2Zsb2F0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZv aWQgaW5pdF9mcm9tXzRmIChmbG9hdCByZWQsIGZsb2F0IGdyZWVuLCBmbG9hdCBibHVlLCBmbG9h dCBhbHBoYSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBp bml0X2Zyb21fNGZ2IChmbG9hdCBjb2xvcl9hcnJheSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS40IildCisrCQlwdWJsaWMgdm9pZCBpbml0X2Zyb21fNHViICh1aW50OCByZWQsIHVpbnQ4IGdy ZWVuLCB1aW50OCBibHVlLCB1aW50OCBhbHBoYSk7CisrCQlwdWJsaWMgdm9pZCBwcmVtdWx0aXBs eSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9h bHBoYSAoZmxvYXQgYWxwaGEpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVi bGljIHZvaWQgc2V0X2FscGhhX2J5dGUgKHVpbnQ4IGFscGhhKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9hbHBoYV9mbG9hdCAoZmxvYXQgYWxwaGEp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2JsdWUg KGZsb2F0IGJsdWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZv aWQgc2V0X2JsdWVfYnl0ZSAodWludDggYmx1ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40 IildCisrCQlwdWJsaWMgdm9pZCBzZXRfYmx1ZV9mbG9hdCAoZmxvYXQgYmx1ZSk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBzZXRfZ3JlZW4gKGZsb2F0IGdy ZWVuKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9n cmVlbl9ieXRlICh1aW50OCBncmVlbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisr CQlwdWJsaWMgdm9pZCBzZXRfZ3JlZW5fZmxvYXQgKGZsb2F0IGdyZWVuKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9yZWQgKGZsb2F0IHJlZCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBzZXRfcmVkX2J5dGUg KHVpbnQ4IHJlZCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9p ZCBzZXRfcmVkX2Zsb2F0IChmbG9hdCByZWQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTYi KV0KKysJCXB1YmxpYyB2b2lkIHRvX2hzbCAob3V0IGZsb2F0IGh1ZSwgb3V0IGZsb2F0IHNhdHVy YXRpb24sIG91dCBmbG9hdCBsdW1pbmFuY2UpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIp XQorKwkJcHVibGljIHZvaWQgdW5wcmVtdWx0aXBseSAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwlwdWJsaWMgc3RydWN0IERlYnVnT2JqZWN0VHlwZUlu Zm8geworKwkJcHVibGljIHdlYWsgc3RyaW5nIG5hbWU7CisrCQlwdWJsaWMgdWxvbmcgaW5zdGFu Y2VfY291bnQ7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5o IiwgY29weV9mdW5jdGlvbiA9ICJnX2JveGVkX2NvcHkiLCBmcmVlX2Z1bmN0aW9uID0gImdfYm94 ZWRfZnJlZSIsIHR5cGVfaWQgPSAiQ09HTF9UWVBFX01BVFJJWCIpXQorKwlwdWJsaWMgc3RydWN0 IE1hdHJpeCB7CisrCQlwdWJsaWMgZmxvYXQgeHg7CisrCQlwdWJsaWMgZmxvYXQgeXg7CisrCQlw dWJsaWMgZmxvYXQgeng7CisrCQlwdWJsaWMgZmxvYXQgd3g7CisrCQlwdWJsaWMgZmxvYXQgeHk7 CisrCQlwdWJsaWMgZmxvYXQgeXk7CisrCQlwdWJsaWMgZmxvYXQgenk7CisrCQlwdWJsaWMgZmxv YXQgd3k7CisrCQlwdWJsaWMgZmxvYXQgeHo7CisrCQlwdWJsaWMgZmxvYXQgeXo7CisrCQlwdWJs aWMgZmxvYXQgeno7CisrCQlwdWJsaWMgZmxvYXQgd3o7CisrCQlwdWJsaWMgZmxvYXQgeHc7Cisr CQlwdWJsaWMgZmxvYXQgeXc7CisrCQlwdWJsaWMgZmxvYXQgenc7CisrCQlwdWJsaWMgZmxvYXQg d3c7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgQ29nbC5NYXRyaXg/ IGNvcHkgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgdm9pZCBm cmVlICgpOworKwkJW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSwgYXJyYXlfbnVsbF90ZXJt aW5hdGVkID0gZmFsc2UsIGNuYW1lID0gImNvZ2xfbWF0cml4X2luaXRfZnJvbV9hcnJheSIpXQor KwkJcHVibGljIE1hdHJpeC5mcm9tX2FycmF5IChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNl KV0gZmxvYXRbXSBhcnJheSk7CisrCQlwdWJsaWMgdm9pZCBmcnVzdHVtIChmbG9hdCBsZWZ0LCBm bG9hdCByaWdodCwgZmxvYXQgYm90dG9tLCBmbG9hdCB0b3AsIGZsb2F0IHpfbmVhciwgZmxvYXQg el9mYXIpOworKwkJcHVibGljIHVub3duZWQgZmxvYXRbXSBnZXRfYXJyYXkgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgYm9vbCBnZXRfaW52ZXJzZSAob3V0IENv Z2wuTWF0cml4IGludmVyc2UpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX21hdHJpeF9pbml0 X2lkZW50aXR5IildCisrCQlwdWJsaWMgTWF0cml4LmlkZW50aXR5ICgpOworKwkJcHVibGljIHZv aWQgaW5pdF9mcm9tX2V1bGVyIChHcmFwaGVuZS5FdWxlciBldWxlcik7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBpbml0X3RyYW5zbGF0aW9uIChmbG9hdCB0 eCwgZmxvYXQgdHksIGZsb2F0IHR6KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJ CXB1YmxpYyBib29sIGlzX2lkZW50aXR5ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIp XQorKwkJcHVibGljIHZvaWQgbG9va19hdCAoZmxvYXQgZXllX3Bvc2l0aW9uX3gsIGZsb2F0IGV5 ZV9wb3NpdGlvbl95LCBmbG9hdCBleWVfcG9zaXRpb25feiwgZmxvYXQgb2JqZWN0X3gsIGZsb2F0 IG9iamVjdF95LCBmbG9hdCBvYmplY3RfeiwgZmxvYXQgd29ybGRfdXBfeCwgZmxvYXQgd29ybGRf dXBfeSwgZmxvYXQgd29ybGRfdXBfeik7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfbWF0cml4 X211bHRpcGx5IildCisrCQlwdWJsaWMgTWF0cml4Lm11bHRpcGx5IChDb2dsLk1hdHJpeCBhLCBD b2dsLk1hdHJpeCBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMg dm9pZCBvcnRob2dyYXBoaWMgKGZsb2F0IHhfMSwgZmxvYXQgeV8xLCBmbG9hdCB4XzIsIGZsb2F0 IHlfMiwgZmxvYXQgbmVhciwgZmxvYXQgZmFyKTsKKysJCXB1YmxpYyB2b2lkIHBlcnNwZWN0aXZl IChmbG9hdCBmb3ZfeSwgZmxvYXQgYXNwZWN0LCBmbG9hdCB6X25lYXIsIGZsb2F0IHpfZmFyKTsK KysJCXB1YmxpYyB2b2lkIHByb2plY3RfcG9pbnRzIChpbnQgbl9jb21wb25lbnRzLCBzaXplX3Qg c3RyaWRlX2luLCB2b2lkKiBwb2ludHNfaW4sIHNpemVfdCBzdHJpZGVfb3V0LCB2b2lkKiBwb2lu dHNfb3V0LCBpbnQgbl9wb2ludHMpOworKwkJcHVibGljIHZvaWQgcm90YXRlIChmbG9hdCBhbmds ZSwgZmxvYXQgeCwgZmxvYXQgeSwgZmxvYXQgeik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4w IildCisrCQlwdWJsaWMgdm9pZCByb3RhdGVfZXVsZXIgKEdyYXBoZW5lLkV1bGVyIGV1bGVyKTsK KysJCXB1YmxpYyB2b2lkIHNjYWxlIChmbG9hdCBzeCwgZmxvYXQgc3ksIGZsb2F0IHN6KTsKKysJ CXB1YmxpYyBzdGF0aWMgdm9pZCB0cmFuc2Zvcm1fcG9pbnQgKHJlZiBDb2dsLk1hdHJpeCBtYXRy aXgsIHJlZiBmbG9hdCB4LCByZWYgZmxvYXQgeSwgcmVmIGZsb2F0IHosIHJlZiBmbG9hdCB3KTsK KysJCXB1YmxpYyB2b2lkIHRyYW5zZm9ybV9wb2ludHMgKGludCBuX2NvbXBvbmVudHMsIHNpemVf dCBzdHJpZGVfaW4sIHZvaWQqIHBvaW50c19pbiwgc2l6ZV90IHN0cmlkZV9vdXQsIHZvaWQqIHBv aW50c19vdXQsIGludCBuX3BvaW50cyk7CisrCQlwdWJsaWMgdm9pZCB0cmFuc2xhdGUgKGZsb2F0 IHgsIGZsb2F0IHksIGZsb2F0IHopOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyB2b2lkIHRyYW5zcG9zZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0K KysJCXB1YmxpYyB2b2lkIHZpZXdfMmRfaW5fZnJ1c3R1bSAoZmxvYXQgbGVmdCwgZmxvYXQgcmln aHQsIGZsb2F0IGJvdHRvbSwgZmxvYXQgdG9wLCBmbG9hdCB6X25lYXIsIGZsb2F0IHpfMmQsIGZs b2F0IHdpZHRoXzJkLCBmbG9hdCBoZWlnaHRfMmQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu OCIpXQorKwkJcHVibGljIHZvaWQgdmlld18yZF9pbl9wZXJzcGVjdGl2ZSAoZmxvYXQgZm92X3ks IGZsb2F0IGFzcGVjdCwgZmxvYXQgel9uZWFyLCBmbG9hdCB6XzJkLCBmbG9hdCB3aWR0aF8yZCwg ZmxvYXQgaGVpZ2h0XzJkKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29n bC9jb2dsLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTYiKV0KKysJcHVibGljIHN0cnVjdCBPbnNjcmVlbkRpcnR5SW5mbyB7CisrCQlwdWJsaWMgaW50 IHg7CisrCQlwdWJsaWMgaW50IHk7CisrCQlwdWJsaWMgaW50IHdpZHRoOworKwkJcHVibGljIGlu dCBoZWlnaHQ7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5o IiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgVGV4dHVyZVZlcnRleCB7 CisrCQlwdWJsaWMgZmxvYXQgeDsKKysJCXB1YmxpYyBmbG9hdCB5OworKwkJcHVibGljIGZsb2F0 IHo7CisrCQlwdWJsaWMgZmxvYXQgdHg7CisrCQlwdWJsaWMgZmxvYXQgdHk7CisrCQlwdWJsaWMg Q29nbC5Db2xvciBjb2xvcjsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29n bC9jb2dsLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEu NCIpXQorKwlwdWJsaWMgc3RydWN0IFVzZXJEYXRhS2V5IHsKKysJCXB1YmxpYyBpbnQgdW51c2Vk OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNuYW1l ID0gIl9Db2dsQ29sb3JTaXplQ2hlY2siLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGlj IHN0cnVjdCBfQ29sb3JTaXplQ2hlY2sgeworKwkJW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxz ZSldCisrCQlwdWJsaWMgd2VhayBjaGFyW10gY29tcGlsZV90aW1lX2Fzc2VydF9Db2dsQ29sb3Jf c2l6ZTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBj bmFtZSA9ICJfQ29nbE1hdHJpeFNpemVDaGVjayIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlw dWJsaWMgc3RydWN0IF9NYXRyaXhTaXplQ2hlY2sgeworKwkJW0NDb2RlIChhcnJheV9sZW5ndGgg PSBmYWxzZSldCisrCQlwdWJsaWMgd2VhayBjaGFyW10gY29tcGlsZV90aW1lX2Fzc2VydF9Db2ds TWF0cml4X3NpemU7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29n bC5oIiwgY25hbWUgPSAiX0NvZ2xUZXh0dXJlVmVydGV4U2l6ZUNoZWNrIiwgaGFzX3R5cGVfaWQg PSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgX1RleHR1cmVWZXJ0ZXhTaXplQ2hlY2sgeworKwkJ W0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldCisrCQlwdWJsaWMgd2VhayBjaGFyW10gY29t cGlsZV90aW1lX2Fzc2VydF9Db2dsVGV4dHVyZVZlcnRleF9zaXplOworKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9BVFRSSUJV VEVfVFlQRV8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEu MCIpXQorKwlwdWJsaWMgZW51bSBBdHRyaWJ1dGVUeXBlIHsKKysJCUJZVEUsCisrCQlVTlNJR05F RF9CWVRFLAorKwkJU0hPUlQsCisrCQlVTlNJR05FRF9TSE9SVCwKKysJCUZMT0FUCisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dM X0JJVE1BUF9FUlJPUl8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNpbmNl ID0gIjEuNCIpXQorKwlwdWJsaWMgZW51bSBCaXRtYXBFcnJvciB7CisrCQlGQUlMRUQsCisrCQlV TktOT1dOX1RZUEUsCisrCQlDT1JSVVBUX0lNQUdFCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX0JMRU5EX1NUUklOR19FUlJP Ul8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwlwdWJsaWMgZW51bSBCbGVuZFN0cmluZ0Vycm9yIHsKKysJCVBBUlNFX0VSUk9SLAorKwkJQVJH VU1FTlRfUEFSU0VfRVJST1IsCisrCQlJTlZBTElEX0VSUk9SLAorKwkJR1BVX1VOU1VQUE9SVEVE X0VSUk9SOworKwkJcHVibGljIHN0YXRpYyB1aW50MzIgcXVhcmsgKCk7CisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX0JVRkZF Ul9CSVRfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtGbGFnc10KKysJW1ZlcnNpb24gKHNp bmNlID0gIjEuMCIpXQorKwlwdWJsaWMgZW51bSBCdWZmZXJCaXQgeworKwkJQ09MT1IsCisrCQlE RVBUSCwKKysJCVNURU5DSUwKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29n bC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtG bGFnc10KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwlwdWJsaWMgZW51bSBCdWZmZXJU YXJnZXQgeworKwkJV0lORE9XX0JVRkZFUiwKKysJCU9GRlNDUkVFTl9CVUZGRVIKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xf REVQVEhfVEVTVF9GVU5DVElPTl8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIGVu dW0gRGVwdGhUZXN0RnVuY3Rpb24geworKwkJTkVWRVIsCisrCQlMRVNTLAorKwkJRVFVQUwsCisr CQlMRVFVQUwsCisrCQlHUkVBVEVSLAorKwkJTk9URVFVQUwsCisrCQlHRVFVQUwsCisrCQlBTFdB WVMKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJl Zml4ID0gIkNPR0xfRUdMX0lNQUdFX0ZMQUdfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtG bGFnc10KKysJcHVibGljIGVudW0gRWdsSW1hZ2VGbGFncyB7CisrCQlOT05FLAorKwkJTk9fR0VU X0RBVEEKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBj cHJlZml4ID0gIkNPR0xfRkVBVFVSRV9JRF8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGVudW0gRmVhdHVyZUlEIHsKKysJCVtD Q29kZSAoY25hbWUgPSAiQ09HTF9GRUFUVVJFX0lEX1VOU0lHTkVEX0lOVF9JTkRJQ0VTIildCisr CQlPR0xfRkVBVFVSRV9JRF9VTlNJR05FRF9JTlRfSU5ESUNFUywKKysJCVtDQ29kZSAoY25hbWUg PSAiQ09HTF9GRUFUVVJFX0lEX01BUF9CVUZGRVJfRk9SX1JFQUQiKV0KKysJCU9HTF9GRUFUVVJF X0lEX01BUF9CVUZGRVJfRk9SX1JFQUQsCisrCQlbQ0NvZGUgKGNuYW1lID0gIkNPR0xfRkVBVFVS RV9JRF9NQVBfQlVGRkVSX0ZPUl9XUklURSIpXQorKwkJT0dMX0ZFQVRVUkVfSURfTUFQX0JVRkZF Ul9GT1JfV1JJVEUsCisrCQlbQ0NvZGUgKGNuYW1lID0gIkNPR0xfRkVBVFVSRV9JRF9TV0FQX0JV RkZFUlNfRVZFTlQiKV0KKysJCU9HTF9GRUFUVVJFX0lEX1NXQVBfQlVGRkVSU19FVkVOVCwKKysJ CVtDQ29kZSAoY25hbWUgPSAiQ09HTF9GRUFUVVJFX0lEX1BSRVNFTlRBVElPTl9USU1FIildCisr CQlPR0xfRkVBVFVSRV9JRF9QUkVTRU5UQVRJT05fVElNRSwKKysJCVtDQ29kZSAoY25hbWUgPSAi Q09HTF9GRUFUVVJFX0lEX0ZFTkNFIildCisrCQlPR0xfRkVBVFVSRV9JRF9GRU5DRSwKKysJCVtD Q29kZSAoY25hbWUgPSAiQ09HTF9GRUFUVVJFX0lEX1RFWFRVUkVfUkciKV0KKysJCU9HTF9GRUFU VVJFX0lEX1RFWFRVUkVfUkcsCisrCQlbQ0NvZGUgKGNuYW1lID0gIkNPR0xfRkVBVFVSRV9JRF9C VUZGRVJfQUdFIildCisrCQlPR0xfRkVBVFVSRV9JRF9CVUZGRVJfQUdFLAorKwkJW0NDb2RlIChj bmFtZSA9ICJDT0dMX0ZFQVRVUkVfSURfVEVYVFVSRV9FR0xfSU1BR0VfRVhURVJOQUwiKV0KKysJ CU9HTF9GRUFUVVJFX0lEX1RFWFRVUkVfRUdMX0lNQUdFX0VYVEVSTkFMCisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX0ZJTFRF Ul8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIGVudW0gRmlsdGVyUmV0dXJuIHsK KysJCUNPTlRJTlVFLAorKwkJUkVNT1ZFCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX0ZSQU1FX0VWRU5UXyIsIGhhc190eXBl X2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNCIpXQorKwlwdWJsaWMgZW51 bSBGcmFtZUV2ZW50IHsKKysJCVNZTkMsCisrCQlDT01QTEVURQorKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9GUkFNRUJVRkZF Ul9FUlJPUl8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIGVudW0gRnJhbWVidWZm ZXJFcnJvciB7CisrCQlbQ0NvZGUgKGNuYW1lID0gIkNPR0xfRlJBTUVCVUZGRVJfRVJST1JfQUxM T0NBVEUiKV0KKysJCUZSQU1FQlVGRkVSX0VSUk9SX0FMTE9DQVRFOworKwkJcHVibGljIHN0YXRp YyB1aW50MzIgcXVhcmsgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNv Z2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX0dSQVBISUNTX1JFU0VUX1NUQVRVU18iLCBoYXNf dHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIGVudW0gR3JhcGhpY3NSZXNldFN0YXR1cyB7Cisr CQlOT19FUlJPUiwKKysJCUdVSUxUWV9DT05URVhUX1JFU0VULAorKwkJSU5OT0NFTlRfQ09OVEVY VF9SRVNFVCwKKysJCVVOS05PV05fQ09OVEVYVF9SRVNFVCwKKysJCVBVUkdFRF9DT05URVhUX1JF U0VUCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3By ZWZpeCA9ICJDT0dMX0lORElDRVNfVFlQRV9VTlNJR05FRF8iLCBoYXNfdHlwZV9pZCA9IGZhbHNl KV0KKysJcHVibGljIGVudW0gSW5kaWNlc1R5cGUgeworKwkJQllURSwKKysJCVNIT1JULAorKwkJ SU5UCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3By ZWZpeCA9ICJDT0dMX01BVEVSSUFMX0FMUEhBX0ZVTkNfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSld CisrCXB1YmxpYyBlbnVtIE1hdGVyaWFsQWxwaGFGdW5jIHsKKysJCU5FVkVSLAorKwkJTEVTUywK KysJCUVRVUFMLAorKwkJTEVRVUFMLAorKwkJR1JFQVRFUiwKKysJCU5PVEVRVUFMLAorKwkJR0VR VUFMLAorKwkJQUxXQVlTCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wv Y29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX01BVEVSSUFMX0ZJTFRFUl8iLCBoYXNfdHlwZV9pZCA9 IGZhbHNlKV0KKysJcHVibGljIGVudW0gTWF0ZXJpYWxGaWx0ZXIgeworKwkJTkVBUkVTVCwKKysJ CUxJTkVBUiwKKysJCU5FQVJFU1RfTUlQTUFQX05FQVJFU1QsCisrCQlMSU5FQVJfTUlQTUFQX05F QVJFU1QsCisrCQlORUFSRVNUX01JUE1BUF9MSU5FQVIsCisrCQlMSU5FQVJfTUlQTUFQX0xJTkVB UgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVm aXggPSAiQ09HTF9NQVRFUklBTF9XUkFQX01PREVfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisr CVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGVudW0gTWF0ZXJpYWxXcmFwTW9k ZSB7CisrCQlSRVBFQVQsCisrCQlDTEFNUF9UT19FREdFLAorKwkJQVVUT01BVElDCisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dM X1BJUEVMSU5FX0FMUEhBX0ZVTkNfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBl bnVtIFBpcGVsaW5lQWxwaGFGdW5jIHsKKysJCU5FVkVSLAorKwkJTEVTUywKKysJCUVRVUFMLAor KwkJTEVRVUFMLAorKwkJR1JFQVRFUiwKKysJCU5PVEVRVUFMLAorKwkJR0VRVUFMLAorKwkJQUxX QVlTCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3By ZWZpeCA9ICJDT0dMX1BJUEVMSU5FX0NVTExfRkFDRV9NT0RFXyIsIGhhc190eXBlX2lkID0gZmFs c2UpXQorKwlwdWJsaWMgZW51bSBQaXBlbGluZUN1bGxGYWNlTW9kZSB7CisrCQlOT05FLAorKwkJ RlJPTlQsCisrCQlCQUNLLAorKwkJQk9USAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9QSVBFTElORV9GSUxURVJfIiwgaGFz X3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBlbnVtIFBpcGVsaW5lRmlsdGVyIHsKKysJCU5F QVJFU1QsCisrCQlMSU5FQVIsCisrCQlORUFSRVNUX01JUE1BUF9ORUFSRVNULAorKwkJTElORUFS X01JUE1BUF9ORUFSRVNULAorKwkJTkVBUkVTVF9NSVBNQVBfTElORUFSLAorKwkJTElORUFSX01J UE1BUF9MSU5FQVIKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2ds LmgiLCBjcHJlZml4ID0gIkNPR0xfUElQRUxJTkVfV1JBUF9NT0RFXyIsIGhhc190eXBlX2lkID0g ZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCXB1YmxpYyBlbnVtIFBpcGVs aW5lV3JhcE1vZGUgeworKwkJUkVQRUFULAorKwkJTUlSUk9SRURfUkVQRUFULAorKwkJQ0xBTVBf VE9fRURHRSwKKysJCUFVVE9NQVRJQworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9QSVhFTF9GT1JNQVRfIiwgaGFzX3R5cGVf aWQgPSBmYWxzZSldCisrCVtGbGFnc10KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwlw dWJsaWMgZW51bSBQaXhlbEZvcm1hdCB7CisrCQlBTlksCisrCQlBXzgsCisrCQlSR0JfNTY1LAor KwkJUkdCQV80NDQ0LAorKwkJUkdCQV81NTUxLAorKwkJWVVWLAorKwkJR184LAorKwkJUkdfODgs CisrCQlSR0JfODg4LAorKwkJQkdSXzg4OCwKKysJCVJHQkFfODg4OCwKKysJCUJHUkFfODg4OCwK KysJCUFSR0JfODg4OCwKKysJCUFCR1JfODg4OCwKKysJCVJHQkFfMTAxMDEwMiwKKysJCUJHUkFf MTAxMDEwMiwKKysJCUFSR0JfMjEwMTAxMCwKKysJCUFCR1JfMjEwMTAxMCwKKysJCVJHQkFfODg4 OF9QUkUsCisrCQlCR1JBXzg4ODhfUFJFLAorKwkJQVJHQl84ODg4X1BSRSwKKysJCUFCR1JfODg4 OF9QUkUsCisrCQlSR0JBXzQ0NDRfUFJFLAorKwkJUkdCQV81NTUxX1BSRSwKKysJCVJHQkFfMTAx MDEwMl9QUkUsCisrCQlCR1JBXzEwMTAxMDJfUFJFLAorKwkJQVJHQl8yMTAxMDEwX1BSRSwKKysJ CUFCR1JfMjEwMTAxMF9QUkUsCisrCQlERVBUSF8xNiwKKysJCURFUFRIXzMyLAorKwkJREVQVEhf MjRfU1RFTkNJTF84OworKwkJcHVibGljIGludCBnZXRfYnl0ZXNfcGVyX3BpeGVsIChpbnQgcGxh bmUpOworKwkJcHVibGljIGludCBnZXRfbl9wbGFuZXMgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBz dHJpbmcgdG9fc3RyaW5nICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj b2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9SRUFEX1BJWEVMU19DT0xPUl8iLCBoYXNfdHlw ZV9pZCA9IGZhbHNlKV0KKysJW0ZsYWdzXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisr CXB1YmxpYyBlbnVtIFJlYWRQaXhlbHNGbGFncyB7CisrCQlbQ0NvZGUgKGNuYW1lID0gIkNPR0xf UkVBRF9QSVhFTFNfQ09MT1JfQlVGRkVSIildCisrCQlSRUFEX1BJWEVMU19DT0xPUl9CVUZGRVIK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4 ID0gIkNPR0xfUkVOREVSRVJfRVJST1JfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1Ymxp YyBlbnVtIFJlbmRlcmVyRXJyb3IgeworKwkJWExJQl9ESVNQTEFZX09QRU4sCisrCQlCQURfQ09O U1RSQUlOVAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIs IGNwcmVmaXggPSAiQ09HTF9TSEFERVJfVFlQRV8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgZW51bSBTaGFkZXJUeXBlIHsKKysJ CVZFUlRFWCwKKysJCUZSQUdNRU5UCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX1NURVJFT18iLCBoYXNfdHlwZV9pZCA9IGZh bHNlKV0KKysJcHVibGljIGVudW0gU3RlcmVvTW9kZSB7CisrCQlCT1RILAorKwkJTEVGVCwKKysJ CVJJR0hUCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwg Y3ByZWZpeCA9ICJDT0dMX1NZU1RFTV9FUlJPUl8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgZW51bSBTeXN0ZW1FcnJvciB7Cisr CQlVTlNVUFBPUlRFRCwKKysJCU5PX01FTU9SWQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9URVhUVVJFX0NPTVBPTkVOVFNf IiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE4IildCisr CXB1YmxpYyBlbnVtIFRleHR1cmVDb21wb25lbnRzIHsKKysJCUEsCisrCQlSRywKKysJCVJHQiwK KysJCVJHQkEsCisrCQlERVBUSAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj b2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9URVhUVVJFX0VSUk9SXyIsIGhhc190eXBlX2lk ID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCXB1YmxpYyBlbnVtIFRl eHR1cmVFcnJvciB7CisrCQlTSVpFLAorKwkJRk9STUFULAorKwkJQkFEX1BBUkFNRVRFUiwKKysJ CVRZUEU7CisrCQlwdWJsaWMgc3RhdGljIHVpbnQzMiBxdWFyayAoKTsKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfVEVYVFVS RV8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0ZsYWdzXQorKwlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCXB1YmxpYyBlbnVtIFRleHR1cmVGbGFncyB7CisrCQlOT05FLAorKwkJTk9f QVVUT19NSVBNQVAsCisrCQlOT19TTElDSU5HLAorKwkJTk9fQVRMQVMKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfVkVSVElD RVNfTU9ERV8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEu MCIpXQorKwlwdWJsaWMgZW51bSBWZXJ0aWNlc01vZGUgeworKwkJUE9JTlRTLAorKwkJTElORVMs CisrCQlMSU5FX0xPT1AsCisrCQlMSU5FX1NUUklQLAorKwkJVFJJQU5HTEVTLAorKwkJVFJJQU5H TEVfU1RSSVAsCisrCQlUUklBTkdMRV9GQU4KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfV0lORElOR18iLCBoYXNfdHlwZV9p ZCA9IGZhbHNlKV0KKysJcHVibGljIGVudW0gV2luZGluZyB7CisrCQlDTE9DS1dJU0UsCisrCQlD T1VOVEVSX0NMT0NLV0lTRQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2ds L2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9XSU5TWVNfRkVBVFVSRV8iLCBoYXNfdHlwZV9pZCA9 IGZhbHNlKV0KKysJcHVibGljIGVudW0gV2luc3lzRmVhdHVyZSB7CisrCQlNVUxUSVBMRV9PTlND UkVFTiwKKysJCVNXQVBfVEhST1RUTEUsCisrCQlWQkxBTktfQ09VTlRFUiwKKysJCVZCTEFOS19X QUlULAorKwkJVEVYVFVSRV9GUk9NX1BJWE1BUCwKKysJCVNXQVBfQlVGRkVSU19FVkVOVCwKKysJ CVNXQVBfUkVHSU9OLAorKwkJU1dBUF9SRUdJT05fVEhST1RUTEUsCisrCQlTV0FQX1JFR0lPTl9T WU5DSFJPTklaRUQsCisrCQlCVUZGRVJfQUdFLAorKwkJU1lOQ19BTkRfQ09NUExFVEVfRVZFTlQs CisrCQlOX0ZFQVRVUkVTCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wv Y29nbC5oIiwgaW5zdGFuY2VfcG9zID0gMS45KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIp XQorKwlwdWJsaWMgZGVsZWdhdGUgdm9pZCBEZWJ1Z09iamVjdEZvcmVhY2hUeXBlQ2FsbGJhY2sg KENvZ2wuRGVidWdPYmplY3RUeXBlSW5mbyBpbmZvKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNvZ2wvY29nbC5oIiwgaW5zdGFuY2VfcG9zID0gMS45KV0KKysJW1ZlcnNpb24gKHNp bmNlID0gIjAuMTAiKV0KKysJcHVibGljIGRlbGVnYXRlIHZvaWQgRmVhdHVyZUNhbGxiYWNrIChD b2dsLkZlYXR1cmVJRCBmZWF0dXJlKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNv Z2wvY29nbC5oIiwgaW5zdGFuY2VfcG9zID0gMi45KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTYiKV0KKysJcHVibGljIGRlbGVnYXRlIHZvaWQgT25zY3JlZW5EaXJ0eUNhbGxiYWNrIChDb2ds Lk9uc2NyZWVuIG9uc2NyZWVuLCBDb2dsLk9uc2NyZWVuRGlydHlJbmZvIGluZm8pOworKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBpbnN0YW5jZV9wb3MgPSAzLjkp XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCXB1YmxpYyBkZWxlZ2F0ZSB2b2lkIE9u c2NyZWVuUmVzaXplQ2FsbGJhY2sgKENvZ2wuT25zY3JlZW4gb25zY3JlZW4sIGludCB3aWR0aCwg aW50IGhlaWdodCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIs IGluc3RhbmNlX3BvcyA9IDIuOSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJcHVi bGljIGRlbGVnYXRlIGJvb2wgUGlwZWxpbmVMYXllckNhbGxiYWNrIChDb2dsLlBpcGVsaW5lIHBp cGVsaW5lLCBpbnQgbGF5ZXJfaW5kZXgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y29nbC9jb2dsLmgiLCBpbnN0YW5jZV9wb3MgPSAxLjkpXQorKwlwdWJsaWMgZGVsZWdhdGUgYm9v bCBUZXh0dXJlMkRFR0xJbWFnZUV4dGVybmFsQWxsb2MgKENvZ2wuVGV4dHVyZTJEIHRleF8yZCkg dGhyb3dzIEdMaWIuRXJyb3I7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2Nv Z2wuaCIsIGhhc190YXJnZXQgPSBmYWxzZSldCisrCXB1YmxpYyBkZWxlZ2F0ZSB2b2lkIFVzZXJE YXRhRGVzdHJveUNhbGxiYWNrICh2b2lkKiBkYXRhKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNvZ2wvY29nbC5oIiwgY25hbWUgPSAiQ09HTF9BRklSU1RfQklUIildCisrCXB1Ymxp YyBjb25zdCBpbnQgQUZJUlNUX0JJVDsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNv Z2wvY29nbC5oIiwgY25hbWUgPSAiQ09HTF9BX0JJVCIpXQorKwlwdWJsaWMgY29uc3QgaW50IEFf QklUOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjbmFtZSA9 ICJDT0dMX0JHUl9CSVQiKV0KKysJcHVibGljIGNvbnN0IGludCBCR1JfQklUOworKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjbmFtZSA9ICJDT0dMX0RFUFRIX0JJ VCIpXQorKwlwdWJsaWMgY29uc3QgaW50IERFUFRIX0JJVDsKKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY25hbWUgPSAiQ09HTF9QSVhFTF9GT1JNQVRfTUFYX1BM QU5FUyIpXQorKwlwdWJsaWMgY29uc3QgaW50IFBJWEVMX0ZPUk1BVF9NQVhfUExBTkVTOworKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjbmFtZSA9ICJDT0dMX1BS RU1VTFRfQklUIildCisrCXB1YmxpYyBjb25zdCBpbnQgUFJFTVVMVF9CSVQ7CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNuYW1lID0gIkNPR0xfU1RFTkNJTF9C SVQiKV0KKysJcHVibGljIGNvbnN0IGludCBTVEVOQ0lMX0JJVDsKKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY25hbWUgPSAiQ09HTF9URVhUVVJFX01BWF9XQVNU RSIpXQorKwlwdWJsaWMgY29uc3QgaW50IFRFWFRVUkVfTUFYX1dBU1RFOworKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGJs aXRfZnJhbWVidWZmZXIgKENvZ2wuRnJhbWVidWZmZXIgc3JjLCBDb2dsLkZyYW1lYnVmZmVyIGRl c3QsIGludCBzcmNfeCwgaW50IHNyY195LCBpbnQgZHN0X3gsIGludCBkc3RfeSwgaW50IHdpZHRo LCBpbnQgaGVpZ2h0KSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNvZ2wvY29nbC5oIildCisrCXB1YmxpYyBzdGF0aWMgYm9vbCBjbHV0dGVyX3dpbnN5 c19oYXNfZmVhdHVyZV9DTFVUVEVSIChDb2dsLldpbnN5c0ZlYXR1cmUgZmVhdHVyZSk7CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCXB1YmxpYyBzdGF0aWMgYm9vbCBjb2xvcl9lcXVhbCAodm9pZCogdjEs IHZvaWQqIHYyKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIild CisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2IildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBjb2xv cl9pbml0X2Zyb21faHNsIChvdXQgQ29nbC5Db2xvciBjb2xvciwgZmxvYXQgaHVlLCBmbG9hdCBz YXR1cmF0aW9uLCBmbG9hdCBsdW1pbmFuY2UpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwlwdWJsaWMg c3RhdGljIHZvaWQgZGVidWdfbWF0cml4X3ByaW50IChDb2dsLk1hdHJpeCBtYXRyaXgpOworKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKHNp bmNlID0gIjEuOCIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgZGVidWdfb2JqZWN0X2ZvcmVhY2hf dHlwZSAoQ29nbC5EZWJ1Z09iamVjdEZvcmVhY2hUeXBlQ2FsbGJhY2sgZnVuYyk7CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoc2luY2Ug PSAiMS44IildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBkZWJ1Z19vYmplY3RfcHJpbnRfaW5zdGFu Y2VzICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgZmx1c2ggKCk7 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgZm9yZWFjaF9mZWF0dXJl IChDb2dsLkNvbnRleHQgY29udGV4dCwgQ29nbC5GZWF0dXJlQ2FsbGJhY2sgY2FsbGJhY2spOwor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24g KGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiKV0KKysJcHVibGlj IHN0YXRpYyBib29sIGdldF9iYWNrZmFjZV9jdWxsaW5nX2VuYWJsZWQgKCk7CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAi MS4xNCIpXQorKwlwdWJsaWMgc3RhdGljIGludDY0IGdldF9jbG9ja190aW1lIChDb2dsLkNvbnRl eHQgY29udGV4dCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIp XQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4x NiIpXQorKwlwdWJsaWMgc3RhdGljIGJvb2wgZ2V0X2RlcHRoX3Rlc3RfZW5hYmxlZCAoKTsKKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCXB1YmxpYyBzdGF0 aWMgQ29nbC5HcmFwaGljc1Jlc2V0U3RhdHVzIGdldF9ncmFwaGljc19yZXNldF9zdGF0dXMgKENv Z2wuQ29udGV4dCBjb250ZXh0KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wv Y29nbC5oIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5j ZSA9ICIxLjE2Iiwgc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBzdGF0aWMgR0xpYi5PcHRpb25H cm91cCBnZXRfb3B0aW9uX2dyb3VwICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y29nbC9jb2dsLmgiKV0KKysJcHVibGljIHN0YXRpYyBHTGliLkNhbGxiYWNrIGdldF9wcm9jX2Fk ZHJlc3MgKHN0cmluZyBzKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29n bC5oIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9 ICIxLjE4IildCisrCXB1YmxpYyBzdGF0aWMgR0xpYi5UeXBlIGd0eXBlX21hdHJpeF9nZXRfdHlw ZSAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBzdGF0aWMgYm9vbCBoYXNfZmVhdHVy ZSAoQ29nbC5Db250ZXh0IGNvbnRleHQsIENvZ2wuRmVhdHVyZUlEIGZlYXR1cmUpOworKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTAiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGlzX2NvbnRleHQgKHZvaWQqIG9iamVj dCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgc3RhdGljIGJvb2wgaXNfZnJhbWVidWZm ZXIgKHZvaWQqIG9iamVjdCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2Nv Z2wuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgc3RhdGljIGJv b2wgaXNfb25zY3JlZW4gKHZvaWQqIG9iamVjdCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCXB1Ymxp YyBzdGF0aWMgYm9vbCBpc19waXBlbGluZSAodm9pZCogb2JqZWN0KTsKKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCXB1YmxpYyBzdGF0aWMgYm9vbCBpc190 ZXh0dXJlXzJkICh2b2lkKiBvYmplY3QpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIHN0 YXRpYyBib29sIGlzX3RleHR1cmVfMmRfc2xpY2VkICh2b2lkKiBvYmplY3QpOworKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0g IjEuNCIpXQorKwlwdWJsaWMgc3RhdGljIGJvb2wgbWF0cml4X2VxdWFsICh2b2lkKiB2MSwgdm9p ZCogdjIpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJ W1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiKV0K KysJcHVibGljIHN0YXRpYyB2b2lkIHNldF9iYWNrZmFjZV9jdWxsaW5nX2VuYWJsZWQgKGJvb2wg c2V0dGluZyk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQor KwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIp XQorKwlwdWJsaWMgc3RhdGljIHZvaWQgc2V0X2RlcHRoX3Rlc3RfZW5hYmxlZCAoYm9vbCBzZXR0 aW5nKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtW ZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2IildCisr CXB1YmxpYyBzdGF0aWMgdm9pZCBzaGFkZXJfY29tcGlsZSAoQ29nbC5IYW5kbGUgaGFuZGxlKTsK KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9u IChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2IildCisrCXB1Ymxp YyBzdGF0aWMgc3RyaW5nIHNoYWRlcl9nZXRfaW5mb19sb2cgKENvZ2wuSGFuZGxlIGhhbmRsZSk7 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lv biAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIpXQorKwlwdWJs aWMgc3RhdGljIENvZ2wuU2hhZGVyVHlwZSBzaGFkZXJfZ2V0X3R5cGUgKENvZ2wuSGFuZGxlIGhh bmRsZSk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlb VmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIpXQor KwlwdWJsaWMgc3RhdGljIGJvb2wgc2hhZGVyX2lzX2NvbXBpbGVkIChDb2dsLkhhbmRsZSBoYW5k bGUpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1Zl cnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiKV0KKysJ cHVibGljIHN0YXRpYyB2b2lkIHNoYWRlcl9zb3VyY2UgKENvZ2wuSGFuZGxlIHNoYWRlciwgc3Ry aW5nIHNvdXJjZSk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIp XQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4x OCIsIHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgc3RhdGljIENvZ2wuVGV4dHVyZSB0ZXh0dXJl X25ld19mcm9tX2JpdG1hcCAoQ29nbC5CaXRtYXAgYml0bWFwLCBDb2dsLlRleHR1cmVGbGFncyBm bGFncywgQ29nbC5QaXhlbEZvcm1hdCBpbnRlcm5hbF9mb3JtYXQpOworKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0 cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTgiLCBzaW5jZSA9ICIwLjgiKV0KKysJcHVibGlj IHN0YXRpYyBDb2dsLlRleHR1cmUgdGV4dHVyZV9uZXdfZnJvbV9kYXRhIChpbnQgd2lkdGgsIGlu dCBoZWlnaHQsIENvZ2wuVGV4dHVyZUZsYWdzIGZsYWdzLCBDb2dsLlBpeGVsRm9ybWF0IGZvcm1h dCwgQ29nbC5QaXhlbEZvcm1hdCBpbnRlcm5hbF9mb3JtYXQsIGludCByb3dzdHJpZGUsIHVpbnQ4 IGRhdGEpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJ W1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTgiLCBz aW5jZSA9ICIwLjgiKV0KKysJcHVibGljIHN0YXRpYyBDb2dsLlRleHR1cmUgdGV4dHVyZV9uZXdf ZnJvbV9maWxlIChzdHJpbmcgZmlsZW5hbWUsIENvZ2wuVGV4dHVyZUZsYWdzIGZsYWdzLCBDb2ds LlBpeGVsRm9ybWF0IGludGVybmFsX2Zvcm1hdCkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoZGVwcmVj YXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xOCIsIHNpbmNlID0gIjAuOCIpXQor KwlwdWJsaWMgc3RhdGljIENvZ2wuVGV4dHVyZSB0ZXh0dXJlX25ld193aXRoX3NpemUgKHVpbnQg d2lkdGgsIHVpbnQgaGVpZ2h0LCBDb2dsLlRleHR1cmVGbGFncyBmbGFncywgQ29nbC5QaXhlbEZv cm1hdCBpbnRlcm5hbF9mb3JtYXQpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29n bC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIHN0YXRp YyB1aW50MzIgeDExX29uc2NyZWVuX2dldF93aW5kb3dfeGlkIChDb2dsLk9uc2NyZWVuIG9uc2Ny ZWVuKTsKKyt9CistLSAKKzIuMjUuMAorCmRpZmYgLS1naXQgYS9zcmNwa2dzL2J1ZGdpZS1kZXNr dG9wL3RlbXBsYXRlIGIvc3JjcGtncy9idWRnaWUtZGVza3RvcC90ZW1wbGF0ZQppbmRleCBiMzJl NzczNGQzYi4uMTgwY2RjMDJmMWYgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvYnVkZ2llLWRlc2t0b3Av dGVtcGxhdGUKKysrIGIvc3JjcGtncy9idWRnaWUtZGVza3RvcC90ZW1wbGF0ZQpAQCAtMSwyMSAr MSwyMiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnYnVkZ2llLWRlc2t0b3AnCiBwa2duYW1lPWJ1 ZGdpZS1kZXNrdG9wCiB2ZXJzaW9uPTEwLjUuMQotcmV2aXNpb249MworcmV2aXNpb249NAogYnVp bGRfc3R5bGU9bWVzb24KIGJ1aWxkX2hlbHBlcj1naXIKIGNvbmZpZ3VyZV9hcmdzPSItRHdpdGgt Z3RrLWRvYz1mYWxzZSAtRHdpdGgtZGVza3RvcC1pY29ucz1ub25lIgogaG9zdG1ha2VkZXBlbmRz PSJwa2ctY29uZmlnIGludGx0b29sIHZhbGEgZ2xpYi1kZXZlbCBnb2JqZWN0LWludHJvc3BlY3Rp b24gc2Fzc2MiCiBtYWtlZGVwZW5kcz0iYWxzYS1saWItZGV2ZWwgbGlibm90aWZ5LWRldmVsIGFj Y291bnRzc2VydmljZS1kZXZlbCBsaWJwZWFzLWRldmVsIGxpYnduY2stZGV2ZWwKLW11dHRlci1k ZXZlbCBpYnVzLWRldmVsIGdub21lLWRlc2t0b3AtZGV2ZWwgcHVsc2VhdWRpby1kZXZlbCB1cG93 ZXItZGV2ZWwgZ3RrKzMtZGV2ZWwgcG9sa2l0LWRldmVsCi1nbm9tZS1ibHVldG9vdGgtZGV2ZWwg Z25vbWUtbWVudXMtZGV2ZWwgZ25vbWUtc2V0dGluZ3MtZGFlbW9uLWRldmVsIHZhbGEgbGlidXVp ZC1kZXZlbCBsaWJ1cG93ZXItZ2xpYjMiCi1kZXBlbmRzPSJnbm9tZS1zZXNzaW9uIGdub21lLXNl dHRpbmdzLWRhZW1vbiBnbm9tZS1jb250cm9sLWNlbnRlciBlbG9naW5kIgorIG11dHRlci1kZXZl bCBpYnVzLWRldmVsIGdub21lLWRlc2t0b3AtZGV2ZWwgcHVsc2VhdWRpby1kZXZlbCB1cG93ZXIt ZGV2ZWwgZ3RrKzMtZGV2ZWwgcG9sa2l0LWRldmVsCisgZ25vbWUtYmx1ZXRvb3RoLWRldmVsIGdu b21lLW1lbnVzLWRldmVsIGdub21lLXNldHRpbmdzLWRhZW1vbi1kZXZlbCB2YWxhIGxpYnV1aWQt ZGV2ZWwgbGlidXBvd2VyLWdsaWIzIgorZGVwZW5kcz0iZ25vbWUtc2Vzc2lvbiBnbm9tZS1zZXR0 aW5ncy1kYWVtb24gZ25vbWUtY29udHJvbC1jZW50ZXIgZ25vbWUtdGhlbWVzLWV4dHJhIGVsb2dp bmQiCiBzaG9ydF9kZXNjPSJNb2Rlcm4gZGVza3RvcCBlbnZpcm9ubWVudCBmcm9tIHRoZSBTb2x1 cyBQcm9qZWN0IgogbWFpbnRhaW5lcj0iTG9yZW0gPG5vdGxvcmVtaXBzdW1AcHJvdG9ubWFpbC5j b20+IgogbGljZW5zZT0iR1BMLTIuMC1vbmx5LCBMR1BMLTIuMS1vbmx5IgogaG9tZXBhZ2U9Imh0 dHBzOi8vZ2l0aHViLmNvbS9zb2x1cy1wcm9qZWN0L2J1ZGdpZS1kZXNrdG9wIgogZGlzdGZpbGVz PSJodHRwczovL2dpdGh1Yi5jb20vc29sdXMtcHJvamVjdC9idWRnaWUtZGVza3RvcC9yZWxlYXNl cy9kb3dubG9hZC92JHt2ZXJzaW9ufS9idWRnaWUtZGVza3RvcC0ke3ZlcnNpb259LnRhci54eiIK IGNoZWNrc3VtPWQwMzVlYzc2NGUwMDkzNzIyYTgzMjQxMWFlYjZhYmEyOTZjMDk5NWQ5MjdlYTA2 OWIyMDViMTljODVhYWU1NjUKK3BhdGNoX2FyZ3M9Ii1OcDEiCiAKIHByZV9jb25maWd1cmUoKSB7 CiAJdnNlZCAtaSAncy9leGVjIGdub21lLXNlc3Npb24vZXhlYyBnbm9tZS1zZXNzaW9uIC0tYnVp bHRpbi8nIHNyYy9zZXNzaW9uL2J1ZGdpZS1kZXNrdG9wLmluCgpGcm9tIGQxYTcyNTExNDZmM2Y3 OTRjMWZiMTA0MWIyMjE0NzFlZDk4YjNiZmIgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206 IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFRodSwgMzAgQXByIDIwMjAgMTM6 NDY6MTYgKzA2MDAKU3ViamVjdDogW1BBVENIIDQzLzUyXSB4ZGctZGVza3RvcC1wb3J0YWwtZ3Rr OiByZWJ1aWxkIGFnYWluc3QKIGxpYmdub21lLWRlc2t0b3AtMy5zby4xOQoKLS0tCiBzcmNwa2dz L3hkZy1kZXNrdG9wLXBvcnRhbC1ndGsvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwg MSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3hkZy1k ZXNrdG9wLXBvcnRhbC1ndGsvdGVtcGxhdGUgYi9zcmNwa2dzL3hkZy1kZXNrdG9wLXBvcnRhbC1n dGsvdGVtcGxhdGUKaW5kZXggZGVlMGU0NjMzODYuLjU1OGM3NWY1MzlkIDEwMDY0NAotLS0gYS9z cmNwa2dzL3hkZy1kZXNrdG9wLXBvcnRhbC1ndGsvdGVtcGxhdGUKKysrIGIvc3JjcGtncy94ZGct ZGVza3RvcC1wb3J0YWwtZ3RrL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBm aWxlIGZvciAneGRnLWRlc2t0b3AtcG9ydGFsLWd0aycKIHBrZ25hbWU9eGRnLWRlc2t0b3AtcG9y dGFsLWd0awogdmVyc2lvbj0xLjYuMAotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5 bGU9Z251LWNvbmZpZ3VyZQogaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIGxpYnhzbHQgZ2xp Yi1kZXZlbCB4ZGctZGVza3RvcC1wb3J0YWwgZ2V0dGV4dCIKIG1ha2VkZXBlbmRzPSJmbGF0cGFr LWRldmVsIGd0ayszLWRldmVsIGxpYnhzbHQtZGV2ZWwgbGliZ2xpYi1kZXZlbAoKRnJvbSBkMjM4 NWJmMmMxODljODdhODE1OTA5MmU3MzBiNjcwMmZlN2I1M2MxIE1vbiBTZXAgMTcgMDA6MDA6MDAg MjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUaHUsIDMwIEFw ciAyMDIwIDAyOjQ5OjEzICswNjAwClN1YmplY3Q6IFtQQVRDSCA0NC81Ml0gY2hlZXNlOiByZWJ1 aWxkIGFnYWluc3QgbGliZ25vbWUtZGVza3RvcC0zLnNvLjE5CgotLS0KIHNyY3BrZ3MvY2hlZXNl L3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0 aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9jaGVlc2UvdGVtcGxhdGUgYi9zcmNwa2dzL2No ZWVzZS90ZW1wbGF0ZQppbmRleCA3YTU2YmEwMzlmYi4uMDM3Y2RhNDljOTggMTAwNjQ0Ci0tLSBh L3NyY3BrZ3MvY2hlZXNlL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvY2hlZXNlL3RlbXBsYXRlCkBA IC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnY2hlZXNlJwogcGtnbmFtZT1jaGVl c2UKIHZlcnNpb249My4zNC4wCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1t ZXNvbgogYnVpbGRfaGVscGVyPSJnaXIiCiBjb25maWd1cmVfYXJncz0iLURndGtfZG9jPSQodm9w dF9pZiBndGtfZG9jICd0cnVlJyAnZmFsc2UnKQoKRnJvbSBmNmZlNWNlOWZmNmEzOTVjNTQzMGRk Y2YwMjYyZTYxNmNlMGU5NWI3IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8 bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUaHUsIDMwIEFwciAyMDIwIDAyOjM0OjU0ICsw NjAwClN1YmplY3Q6IFtQQVRDSCA0NS81Ml0gZ25vbWUtYm9va3M6IHJlYnVpbGQgYWdhaW5zdCBs aWJnbm9tZS1kZXNrdG9wLTMuc28uMTkKCi0tLQogc3JjcGtncy9nbm9tZS1ib29rcy90ZW1wbGF0 ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoK ZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtYm9va3MvdGVtcGxhdGUgYi9zcmNwa2dzL2dub21l LWJvb2tzL3RlbXBsYXRlCmluZGV4IDExNGI5ZTAzNGMyLi4xZDQ5NzRmZTE4MyAxMDA2NDQKLS0t IGEvc3JjcGtncy9nbm9tZS1ib29rcy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dub21lLWJvb2tz L3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ25vbWUtYm9v a3MnCiBwa2duYW1lPWdub21lLWJvb2tzCiB2ZXJzaW9uPTMuMzQuMAotcmV2aXNpb249MQorcmV2 aXNpb249MgogYnVpbGRfaGVscGVyPSJnaXIiCiBidWlsZF9zdHlsZT1tZXNvbgogaG9zdG1ha2Vk ZXBlbmRzPSJwa2ctY29uZmlnIHZhbGEgZ2xpYi1kZXZlbCBsaWJyc3ZnIGRvY2Jvb2steHNsIGxp YnhzbHQKCkZyb20gYzdkMDgyZTBjYWZmZDU1MDMzYmZkMTUwM2UyY2E5ODFkM2JlYzllMiBNb24g U2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4K RGF0ZTogVGh1LCAzMCBBcHIgMjAyMCAwMjo0NzozMSArMDYwMApTdWJqZWN0OiBbUEFUQ0ggNDYv NTJdIGdub21lLWNoYXJhY3RlcnM6IHJlYnVpbGQgYWdhaW5zdAogbGliZ25vbWUtZGVza3RvcC0z LnNvLjE5CgotLS0KIHNyY3BrZ3MvZ25vbWUtY2hhcmFjdGVycy90ZW1wbGF0ZSB8IDIgKy0KIDEg ZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBh L3NyY3BrZ3MvZ25vbWUtY2hhcmFjdGVycy90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25vbWUtY2hhcmFj dGVycy90ZW1wbGF0ZQppbmRleCA4OTg2OGY0YmMwNC4uYWMyNjRlNTFhNmEgMTAwNjQ0Ci0tLSBh L3NyY3BrZ3MvZ25vbWUtY2hhcmFjdGVycy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dub21lLWNo YXJhY3RlcnMvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdn bm9tZS1jaGFyYWN0ZXJzJwogcGtnbmFtZT1nbm9tZS1jaGFyYWN0ZXJzCiB2ZXJzaW9uPTMuMzQu MAotcmV2aXNpb249MgorcmV2aXNpb249MwogYnVpbGRfc3R5bGU9bWVzb24KIGJ1aWxkX2hlbHBl cj0iZ2lyIgogaG9zdG1ha2VkZXBlbmRzPSJnZXR0ZXh0IGdqcyBnbGliLWRldmVsIGl0c3Rvb2wg cGtnLWNvbmZpZyIKCkZyb20gODNlYjVlM2RmY2RlNjQxOGQzZjI1NTAxY2ZjYTAwNWJiY2U0ZTQx NiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29r LmNvbT4KRGF0ZTogVGh1LCAzMCBBcHIgMjAyMCAwMjo1NToxOCArMDYwMApTdWJqZWN0OiBbUEFU Q0ggNDcvNTJdIGdub21lLWRvY3VtZW50czogcmVidWlsZCBhZ2FpbnN0CiBsaWJnbm9tZS1kZXNr dG9wLTMuc28uMTkKCi0tLQogc3JjcGtncy9nbm9tZS1kb2N1bWVudHMvdGVtcGxhdGUgfCAyICst CiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1n aXQgYS9zcmNwa2dzL2dub21lLWRvY3VtZW50cy90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25vbWUtZG9j dW1lbnRzL3RlbXBsYXRlCmluZGV4IDk3YjUzZDYzNWQ3Li43ZTQ1YjgyNWU3MSAxMDA2NDQKLS0t IGEvc3JjcGtncy9nbm9tZS1kb2N1bWVudHMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS1k b2N1bWVudHMvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdn bm9tZS1kb2N1bWVudHMnCiBwa2duYW1lPWdub21lLWRvY3VtZW50cwogdmVyc2lvbj0zLjM0LjAK LXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX2hlbHBlcj0iZ2lyIgogYnVpbGRfc3R5bGU9 bWVzb24KIGhvc3RtYWtlZGVwZW5kcz0iZG9jYm9vay14c2wgZ2V0dGV4dCBpdHN0b29sIHBrZy1j b25maWcgZ2xpYi1kZXZlbCBsaWJ4c2x0IGdkay1waXhidWYKCkZyb20gOTFlYWFiOWJmZGEyNTRh MGI1NWEyMDgwYjA5ODhmYmJmMmFkN2ZkNyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTog TmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogVGh1LCAzMCBBcHIgMjAyMCAwMjo1 Njo1NiArMDYwMApTdWJqZWN0OiBbUEFUQ0ggNDgvNTJdIGdub21lLWZvbnQtdmlld2VyOiByZWJ1 aWxkIGFnYWluc3QKIGxpYmdub21lLWRlc2t0b3AtMy5zby4xOQoKLS0tCiBzcmNwa2dzL2dub21l LWZvbnQtdmlld2VyL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9u KCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1mb250LXZpZXdl ci90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25vbWUtZm9udC12aWV3ZXIvdGVtcGxhdGUKaW5kZXggNmQw MzUzNjZkNDQuLmY3NGZjYmNiMDAwIDEwMDY0NAotLS0gYS9zcmNwa2dzL2dub21lLWZvbnQtdmll d2VyL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtZm9udC12aWV3ZXIvdGVtcGxhdGUKQEAg LTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbm9tZS1mb250LXZpZXdlcicKIHBr Z25hbWU9Z25vbWUtZm9udC12aWV3ZXIKIHZlcnNpb249My4zNC4wCi1yZXZpc2lvbj0xCityZXZp c2lvbj0yCiBidWlsZF9zdHlsZT1tZXNvbgogaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIGds aWItZGV2ZWwiCiBtYWtlZGVwZW5kcz0iZm9udGNvbmZpZy1kZXZlbCBmcmVldHlwZS1kZXZlbCBn bGliLWRldmVsIGd0ayszLWRldmVsCgpGcm9tIGU0MDFhMmI2ZjVhMTMxOGQ4YmE2YjYxN2I3OWZk NGIzYjFhMjM1NTQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQu MjVAb3V0bG9vay5jb20+CkRhdGU6IFN1biwgMyBNYXkgMjAyMCAwMjoyNzoxNyArMDYwMApTdWJq ZWN0OiBbUEFUQ0ggNDkvNTJdIGdub21lLXNjcmVlbnNhdmVyOiByZWJ1aWxkIGFnYWluc3QKIGxp Ymdub21lLWRlc2t0b3AtMy5zby4xOQoKLS0tCiAuLi4vcGF0Y2hlcy9nbm9tZS1kZXNrdG9wLTMu MzYucGF0Y2ggICAgICAgICAgICAgICAgfCAxMyArKysrKysrKysrKysrCiBzcmNwa2dzL2dub21l LXNjcmVlbnNhdmVyL3RlbXBsYXRlICAgICAgICAgICAgICAgICAgfCAgNSArKystLQogMiBmaWxl cyBjaGFuZ2VkLCAxNiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUg MTAwNjQ0IHNyY3BrZ3MvZ25vbWUtc2NyZWVuc2F2ZXIvcGF0Y2hlcy9nbm9tZS1kZXNrdG9wLTMu MzYucGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLXNjcmVlbnNhdmVyL3BhdGNoZXMv Z25vbWUtZGVza3RvcC0zLjM2LnBhdGNoIGIvc3JjcGtncy9nbm9tZS1zY3JlZW5zYXZlci9wYXRj aGVzL2dub21lLWRlc2t0b3AtMy4zNi5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw MDAwMDAwMDAwMC4uNThkOTJlNDYzYTMKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2dub21l LXNjcmVlbnNhdmVyL3BhdGNoZXMvZ25vbWUtZGVza3RvcC0zLjM2LnBhdGNoCkBAIC0wLDAgKzEs MTMgQEAKK2RpZmYgLU5hdXIgZ25vbWUtc2NyZWVuc2F2ZXItMy42LjEub3JpZy9zcmMvZ3MtbWFu YWdlci5jIGdub21lLXNjcmVlbnNhdmVyLTMuNi4xL3NyYy9ncy1tYW5hZ2VyLmMKKy0tLSBnbm9t ZS1zY3JlZW5zYXZlci0zLjYuMS5vcmlnL3NyYy9ncy1tYW5hZ2VyLmMJMjAyMC0wMy0wOCAwODo1 Mzo0Ni40MDg0MzE1NzggKzAwMDAKKysrKyBnbm9tZS1zY3JlZW5zYXZlci0zLjYuMS9zcmMvZ3Mt bWFuYWdlci5jCTIwMjAtMDMtMDggMDg6NTQ6MzEuODc1NzM4NzMyICswMDAwCitAQCAtNzg4LDgg Kzc4OCw3IEBACisgICAgICAgICBzdXJmYWNlID0gZ25vbWVfYmdfY3JlYXRlX3N1cmZhY2UgKG1h bmFnZXItPnByaXYtPmJnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBnZGtfd2luZG93LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICB3aWR0aCwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg aGVpZ2h0LAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBGQUxT RSk7CisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodCk7 CisgICAgICAgICBnc193aW5kb3dfc2V0X2JhY2tncm91bmRfc3VyZmFjZSAod2luZG93LCBzdXJm YWNlKTsKKyAgICAgICAgIGNhaXJvX3N1cmZhY2VfZGVzdHJveSAoc3VyZmFjZSk7CisgfQpkaWZm IC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1zY3JlZW5zYXZlci90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25v bWUtc2NyZWVuc2F2ZXIvdGVtcGxhdGUKaW5kZXggMzYzZmNmMTJlMTAuLjU0YTlhMzVlY2NiIDEw MDY0NAotLS0gYS9zcmNwa2dzL2dub21lLXNjcmVlbnNhdmVyL3RlbXBsYXRlCisrKyBiL3NyY3Br Z3MvZ25vbWUtc2NyZWVuc2F2ZXIvdGVtcGxhdGUKQEAgLTEsMTUgKzEsMTYgQEAKICMgVGVtcGxh dGUgZmlsZSBmb3IgJ2dub21lLXNjcmVlbnNhdmVyJwogcGtnbmFtZT1nbm9tZS1zY3JlZW5zYXZl cgogdmVyc2lvbj0zLjYuMQotcmV2aXNpb249MgorcmV2aXNpb249MwogYnVpbGRfc3R5bGU9Z251 LWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9Ii0tZW5hYmxlLWNvbXBpbGUtd2FybmluZ3M9bWlu aW11bSIKIGhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyBhdXRvbWFrZSBpbnRsdG9vbCBnbGli LWRldmVsIgogbWFrZWRlcGVuZHM9Imdub21lLWRlc2t0b3AtZGV2ZWwgZGJ1cy1nbGliLWRldmVs IHBhbS1kZXZlbCIKIGRlcGVuZHM9Imdub21lLWRlc2t0b3AgbGliZ25vbWVrYmQgZGJ1cyIKLXNo b3J0X2Rlc2M9IkEgbmV3IHNjcmVlbnNhdmVyIHRoYXQgY2FuIHJlcGxhY2UgeHNjcmVlbnNhdmVy Igorc2hvcnRfZGVzYz0iTmV3IHNjcmVlbnNhdmVyIHRoYXQgY2FuIHJlcGxhY2UgeHNjcmVlbnNh dmVyIgogbWFpbnRhaW5lcj0ic2hpem9uaWMgPHJlYWx0aWF6QGdtYWlsLmNvbT4iCiBsaWNlbnNl PSJHUEwtMy4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcvUHJv amVjdHMvR25vbWVTY3JlZW5zYXZlciIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25h bWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKIGNoZWNrc3Vt PWYzOWI3OGQ0ZjdmZWQ3NDhjN2YwYTMxZDY5NDExMmZiOTA3YzZkM2M0ZTYzZGIyMmViODU4ZGYw N2U5NjJjZDAKK3BhdGNoX2FyZ3M9Ii1OcDEiCgpGcm9tIDYyY2QyZGViMmQ5YTEwNzljMjViNjUz OTBlMTU3NGU1NjBhOGVmM2IgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxt bmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFN1biwgMyBNYXkgMjAyMCAxMTo0MzoxOSArMDYw MApTdWJqZWN0OiBbUEFUQ0ggNTAvNTJdIGdub21lLXdlYXRoZXI6IHJlYnVpbGQgYWdhaW5zdCBs aWJnbm9tZS1kZXNrdG9wLTMuc28uMTkKCi0tLQogc3JjcGtncy9nbm9tZS13ZWF0aGVyL3RlbXBs YXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0p CgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS13ZWF0aGVyL3RlbXBsYXRlIGIvc3JjcGtncy9n bm9tZS13ZWF0aGVyL3RlbXBsYXRlCmluZGV4IGQzMGJlOWJmMTkyLi5jMDI4ZTQ2YmE2NSAxMDA2 NDQKLS0tIGEvc3JjcGtncy9nbm9tZS13ZWF0aGVyL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25v bWUtd2VhdGhlci90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3Ig J2dub21lLXdlYXRoZXInCiBwa2duYW1lPWdub21lLXdlYXRoZXIKIHZlcnNpb249My4zNi4xCi1y ZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9oZWxwZXI9ImdpciIKIGJ1aWxkX3N0eWxlPW1l c29uCiBob3N0bWFrZWRlcGVuZHM9ImdldHRleHQgcGtnLWNvbmZpZyBpdHN0b29sIGdsaWItZGV2 ZWwgZ2pzIgoKRnJvbSAyNmFhNmYwNmU4YjExZGQzYjRkYmM5NTY4Y2MzYzdiMDg0NzljNWU1IE1v biBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29t PgpEYXRlOiBUaHUsIDMwIEFwciAyMDIwIDAyOjU3OjU3ICswNjAwClN1YmplY3Q6IFtQQVRDSCA1 MS81Ml0gdG90ZW06IHJlYnVpbGQgYWdhaW5zdCBsaWJnbm9tZS1kZXNrdG9wLTMuc28uMTkKCi0t LQogc3JjcGtncy90b3RlbS90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2Vy dGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvdG90ZW0vdGVtcGxh dGUgYi9zcmNwa2dzL3RvdGVtL3RlbXBsYXRlCmluZGV4IDgxNTIyYjMxNDg4Li5lNDE4NjYzMjE1 MyAxMDA2NDQKLS0tIGEvc3JjcGtncy90b3RlbS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3RvdGVt L3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAndG90ZW0nCiBw a2duYW1lPXRvdGVtCiB2ZXJzaW9uPTMuMzQuMQotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVp bGRfc3R5bGU9bWVzb24KIGJ1aWxkX2hlbHBlcj0iZ2lyIgogY29uZmlndXJlX2FyZ3M9Ii1EZW5h YmxlLXB5dGhvbj1ubyAtRGVuYWJsZS1uYXV0aWx1cz15ZXMKCkZyb20gOWExZjYxMmY1MjZjMmNj MjEzMWQ4ZjVjZTJjNGE5ODA4ZjRhZWVkOSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTog TmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogVGh1LCAzMCBBcHIgMjAyMCAwMzow NDowNyArMDYwMApTdWJqZWN0OiBbUEFUQ0ggNTIvNTJdIGx1dHJpczogcmVidWlsZCBhZ2FpbnN0 IGxpYmdub21lLWRlc2t0b3AtMy5zby4xOQoKW2NpIHNraXBdCi0tLQogc3JjcGtncy9sdXRyaXMv dGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRp b24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2x1dHJpcy90ZW1wbGF0ZSBiL3NyY3BrZ3MvbHV0 cmlzL3RlbXBsYXRlCmluZGV4IGMzYzQ3MzkyZmY2Li43ZWU3NGNjNzk5MCAxMDA2NDQKLS0tIGEv c3JjcGtncy9sdXRyaXMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9sdXRyaXMvdGVtcGxhdGUKQEAg LTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdsdXRyaXMnCiBwa2duYW1lPWx1dHJp cwogdmVyc2lvbj0wLjUuNgotcmV2aXNpb249MQorcmV2aXNpb249MgogYXJjaHM9bm9hcmNoCiBi dWlsZF9zdHlsZT1weXRob24zLW1vZHVsZQogYnVpbGRfaGVscGVyPSJnaXIiCg== --===============0986225898709114706==--