From mboxrd@z Thu Jan 1 00:00:00 1970 Received: (qmail 4265 invoked from network); 29 May 2020 13:30:39 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 29 May 2020 13:30:39 -0000 Content-Type: multipart/mixed; boundary="===============2098308799546709752==" 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 15:30:36 +0200 List-Id: Message-ID: <20200529133036.FNnbbC39uyyJ0ANW8PVH3dovSt-VaYDHEYNVDTppVFw@z> GitHub notification mails are now in MIME to allow UTF8. --===============2098308799546709752== 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= --===============2098308799546709752== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-gedit-21382.patch" RnJvbSAxMzI3NzkyY2JkYWMyMWM0NmUwNmI1MDBmNzU3MmMwYTczNmM5MmFjIE1vbiBTZXAgMTcg 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 Z2lyIgogYnVpbGRfb3B0aW9uc19kZWZhdWx0PSJnaXIiCgpGcm9tIDQ1MzljNzlkNTc0ZjY4Y2Yy OWQ4ZWZhNWI0MDI0NzBkMDgxODM4NzMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5h ZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFN1biwgMyBNYXkgMjAyMCAxMzoxNzow NyArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMDIvNTJdIGdub21lLXNlc3Npb246IHVwZGF0ZSB0byAz LjM2LjAuCgotLS0KIHNyY3BrZ3MvZ25vbWUtc2Vzc2lvbi90ZW1wbGF0ZSB8IDEwICsrKysrKyst LS0KIDEgZmlsZSBjaGFuZ2VkLCA3IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpkaWZm IC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1zZXNzaW9uL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1z ZXNzaW9uL3RlbXBsYXRlCmluZGV4IDQ0NDRmMTYyYmYxLi44OGRlZTIwZWI2ZSAxMDA2NDQKLS0t IGEvc3JjcGtncy9nbm9tZS1zZXNzaW9uL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtc2Vz c2lvbi90ZW1wbGF0ZQpAQCAtMSw5ICsxLDkgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21l LXNlc3Npb24nCiBwa2duYW1lPWdub21lLXNlc3Npb24KLXZlcnNpb249My4zNC4xCit2ZXJzaW9u PTMuMzYuMAogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9bWVzb24KLWNvbmZpZ3VyZV9hcmdzPSIt RHN5c3RlbWRfam91cm5hbD1mYWxzZSIKK2NvbmZpZ3VyZV9hcmdzPSItRHN5c3RlbWRfc2Vzc2lv bj1kaXNhYmxlIC1Ec3lzdGVtZF9qb3VybmFsPWZhbHNlIgogaG9zdG1ha2VkZXBlbmRzPSJnbGli LWRldmVsIGludGx0b29sIHBrZy1jb25maWcgeG1sdG8iCiBtYWtlZGVwZW5kcz0iZWxvZ2luZC1k ZXZlbCBnbm9tZS1kZXNrdG9wLWRldmVsIGd0ayszLWRldmVsIGpzb24tZ2xpYi1kZXZlbAogIGxp YmdsaWItZGV2ZWwgbGliSUNFLWRldmVsIGxpYlNNLWRldmVsIGxpYlh0c3QtZGV2ZWwgc3RhcnR1 cC1ub3RpZmljYXRpb24tZGV2ZWwKQEAgLTE1LDQgKzE1LDggQEAgbWFpbnRhaW5lcj0iRW5ubyBC b2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIs IExHUEwtMi4xLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9H Tk9NRS9nbm9tZS1zZXNzaW9uIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0v JHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09ZDc4 MDFmZTJkNWE3NTFiMTljYjU4MDgxNzcxMzE2YTc2YWFiZDVjNTUwY2Q1OGQ0ZTRjNmE1YTRlZDM1 NjY2MAorY2hlY2tzdW09ZDU0YjM4YjgxOGM4MTJmNjRiODJjYzZhMTI3OWUzY2E1YTZlMzkxZWU2 NjI3OTMzMjJhMzhjYWI1NjcwYmI3YQorCitwb3N0X2luc3RhbGwoKSB7CisJcm0gLXJmICR7REVT VERJUn0vdXNyL2xpYi9zeXN0ZW1kCit9CgpGcm9tIDk4YWFhNDEyYjkzN2VmNTBiMzBjNjZmZmZh MTA2Nzg4ZDJhNDFiYmUgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFi aWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IE1vbiwgMjcgQXByIDIwMjAgMTI6MjA6MTUgKzA2MDAK U3ViamVjdDogW1BBVENIIDAzLzUyXSBuYXV0aWx1czogdXBkYXRlIHRvIDMuMzYuMi4KCi0tLQog c3JjcGtncy9uYXV0aWx1cy90ZW1wbGF0ZSB8IDYgKysrLS0tCiAxIGZpbGUgY2hhbmdlZCwgMyBp bnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbmF1dGls dXMvdGVtcGxhdGUgYi9zcmNwa2dzL25hdXRpbHVzL3RlbXBsYXRlCmluZGV4IDUzN2E4NTE5NzNm Li4xMDEwODczZjRmMCAxMDA2NDQKLS0tIGEvc3JjcGtncy9uYXV0aWx1cy90ZW1wbGF0ZQorKysg Yi9zcmNwa2dzL25hdXRpbHVzL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBm aWxlIGZvciAnbmF1dGlsdXMnCiBwa2duYW1lPW5hdXRpbHVzCi12ZXJzaW9uPTMuMzYuMS4xCit2 ZXJzaW9uPTMuMzYuMgogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9bWVzb24KIGJ1aWxkX2hlbHBl cj0iZ2lyIgpAQCAtMTYsOCArMTYsOCBAQCBzaG9ydF9kZXNjPSJHTk9NRSBmaWxlIG1hbmFnZXIi CiBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5z ZT0iR1BMLTIuMC1vci1sYXRlciwgTEdQTC0yLjEtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6 Ly93aWtpLmdub21lLm9yZy9OYXV0aWx1cyIKLWRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3Br Z25hbWV9LyR7dmVyc2lvbjo6NH0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNr c3VtPWY5MjUyZjUwODIxMWQ5ZjM2OGE0OWRiNjk3ODkwZjg5NWQwODBmMDk1OTBhZWNhZjMzODAz YTUxOWRlZjdiZGUKK2Rpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lv biUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKK2NoZWNrc3VtPTI2NjczYzk1OTk1 MDI0NTJjZjI5OTM1ODcyOWJlOGI1NTQwNjZhOWI2NzBkODliMjRlMjQ1MTYwZDE1Nzc2ZmEKIAog YnVpbGRfb3B0aW9ucz0iZ2lyIgogYnVpbGRfb3B0aW9uc19kZWZhdWx0PSJnaXIiCgpGcm9tIGFm ZjEyMWNmYTdiODYwMGFjNzkyYTEwZTAxMWJiYWRkOWI3NDUxOGIgTW9uIFNlcCAxNyAwMDowMDow MCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IE1vbiwgMjcg QXByIDIwMjAgMTI6MjY6MDQgKzA2MDAKU3ViamVjdDogW1BBVENIIDA0LzUyXSBnbm9tZS0yMDQ4 OiB1cGRhdGUgdG8gMy4zNi4yLgoKLS0tCiBzcmNwa2dzL2dub21lLTIwNDgvdGVtcGxhdGUgfCA0 ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpk aWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS0yMDQ4L3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS0y MDQ4L3RlbXBsYXRlCmluZGV4IGI1OWNjZjZkZTQ2Li45ODliNmZmMTI1YiAxMDA2NDQKLS0tIGEv c3JjcGtncy9nbm9tZS0yMDQ4L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtMjA0OC90ZW1w bGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLTIwNDgnCiBw a2duYW1lPWdub21lLTIwNDgKLXZlcnNpb249My4zNi4wCit2ZXJzaW9uPTMuMzYuMgogcmV2aXNp b249MQogYnVpbGRfc3R5bGU9bWVzb24KIGhvc3RtYWtlZGVwZW5kcz0iZ2V0dGV4dCBnbGliLWRl dmVsIGl0c3Rvb2wgcGtnLWNvbmZpZyB2YWxhIgpAQCAtMTEsNCArMTEsNCBAQCBtYWludGFpbmVy PSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTMuMC1v ci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL0FwcHMvMjA0OCIKIGRp c3RmaWxlcz0iJHtHTk9NRV9TSVRFfS9nbm9tZS0yMDQ4LyR7dmVyc2lvbiUuKn0vZ25vbWUtMjA0 OC0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTFiNzkwZjE0NWQwYmQ2N2E1MzM5YzE2YTcw Njc0ODA3MzQ0ZWQxMTgzMWU4YzAyNDVlZDMxOTU2YjRiMzgyODEKK2NoZWNrc3VtPTI5ZGE3NDk5 Yzg5ZWU3NGY5ODM0ZThkZTJiODU2MzMyMzlhNjZlNWM1M2Q5NTZhOGU5NWE5ODdiZGI0YjMzMjEK CkZyb20gMjQxOTk0NmZmNDc2NjA0OWE2YmZkZjYzOWY1ODc2OWRkODM4Y2U1MiBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTog TW9uLCAyNyBBcHIgMjAyMCAxMjo0MzowMiArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMDUvNTJdIGdu b21lLW11c2ljOiB1cGRhdGUgdG8gMy4zNi4yLgoKLS0tCiBzcmNwa2dzL2dub21lLW11c2ljL3Rl bXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0 aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtbXVzaWMvdGVtcGxhdGUgYi9zcmNw a2dzL2dub21lLW11c2ljL3RlbXBsYXRlCmluZGV4IDEyNTExNzM2NDA3Li44MDJiY2VhODkxZiAx MDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1tdXNpYy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2du b21lLW11c2ljL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAn Z25vbWUtbXVzaWMnCiBwa2duYW1lPWdub21lLW11c2ljCi12ZXJzaW9uPTMuMzYuMQordmVyc2lv bj0zLjM2LjIKIHJldmlzaW9uPTEKIGJ1aWxkX2hlbHBlcj0iZ2lyIgogYnVpbGRfc3R5bGU9bWVz b24KQEAgLTE1LDUgKzE1LDUgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lk bGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6 Ly93aWtpLmdub21lLm9yZy9BcHBzL011c2ljIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7 cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hl Y2tzdW09N2I4MGY2MzBkMTU4MzM0OTM1YTg3NjAyOTY1NTBjYzkxYjUwZDYwNGZhNjhiNDAyZmU1 MTY1YjE1MzFlYzMzMgorY2hlY2tzdW09YWJhZDQxM2FlYmZhOGY4MTQxYWJjNzE2NDgwOWU4YzQ2 NzdmOGI2NTM4Zjg5MjEyODE5M2UwOTdlMGU5ODJhNQogbGliMzJkaXNhYmxlZD15ZXMKCkZyb20g YTliYzQ5NzNkMTJhNTE1OTE0MWZjZjNmM2E0OTNkYzJhNGFlODA3MCBNb24gU2VwIDE3IDAwOjAw OjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogTW9uLCAy NyBBcHIgMjAyMCAxMzowMjo0NyArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMDYvNTJdIGRldmhlbHA6 IHVwZGF0ZSB0byAzLjM2LjIuCgotLS0KIHNyY3BrZ3MvZGV2aGVscC90ZW1wbGF0ZSB8IDQgKyst LQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYg LS1naXQgYS9zcmNwa2dzL2RldmhlbHAvdGVtcGxhdGUgYi9zcmNwa2dzL2RldmhlbHAvdGVtcGxh dGUKaW5kZXggYTFjMmRjYmI3NjIuLmJhNzVkZmZkY2U3IDEwMDY0NAotLS0gYS9zcmNwa2dzL2Rl dmhlbHAvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9kZXZoZWxwL3RlbXBsYXRlCkBAIC0xLDYgKzEs NiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZGV2aGVscCcKIHBrZ25hbWU9ZGV2aGVscAotdmVy c2lvbj0zLjM2LjEKK3ZlcnNpb249My4zNi4yCiByZXZpc2lvbj0xCiBidWlsZF9oZWxwZXI9Imdp ciIKIGJ1aWxkX3N0eWxlPW1lc29uCkBAIC0xMSw3ICsxMSw3IEBAIG1haW50YWluZXI9IkVubm8g Qm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVy IgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcvQXBwcy9EZXZoZWxwIgogZGlzdGZp bGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7 dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09NGNmOGVjOTMwMmJjNGE3OWUwMWFjNTNiZDljOGI5 NWE1OTZmNzFmMzUzNTFmNDhiNjMyNjMyMjdmMDlhOGEzZAorY2hlY2tzdW09OGI1YTg0MzE5ZWZi YjJlZjFiYzQwMjJlZTNlZDJkNjY3ODc5NGViYTJkZmE5OTNlNTBlMDNkNmU3YjkzMGM1ZQogCiBk ZXZoZWxwLWRldmVsX3BhY2thZ2UoKSB7CiAJc2hvcnRfZGVzYys9IiAtIGRldmVsb3BtZW50IGZp bGVzIgoKRnJvbSA1N2I1Mzg4ZDJkN2UyYTE4NjcyMmQ1ODk3MjAwNWU2M2E3MmNlNWFkIE1vbiBT ZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpE YXRlOiBNb24sIDI3IEFwciAyMDIwIDEzOjE3OjQyICswNjAwClN1YmplY3Q6IFtQQVRDSCAwNy81 Ml0gZW9nOiB1cGRhdGUgdG8gMy4zNi4yLgoKLS0tCiBzcmNwa2dzL2VvZy90ZW1wbGF0ZSB8IDQg KystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRp ZmYgLS1naXQgYS9zcmNwa2dzL2VvZy90ZW1wbGF0ZSBiL3NyY3BrZ3MvZW9nL3RlbXBsYXRlCmlu ZGV4IGY1MzQwMDAwZWI1Li4yNzYzOTljYTJjYyAxMDA2NDQKLS0tIGEvc3JjcGtncy9lb2cvdGVt cGxhdGUKKysrIGIvc3JjcGtncy9lb2cvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBs YXRlIGZpbGUgZm9yICdlb2cnCiBwa2duYW1lPWVvZwotdmVyc2lvbj0zLjM2LjEKK3ZlcnNpb249 My4zNi4yCiByZXZpc2lvbj0xCiBidWlsZF9oZWxwZXI9ImdpciIKIGJ1aWxkX3N0eWxlPW1lc29u CkBAIC0xNCw3ICsxNCw3IEBAIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxp bnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8v d2lraS5nbm9tZS5vcmcvQXBwcy9FeWVPZkdub21lIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9 L2VvZy8ke3ZlcnNpb24lLip9L2VvZy0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPWU0NTRh MWE3YWE1ZTNhMzMyMWVhYjAxMTY3NzgxMTBlNWE3YTdiNjNiY2YyMTY3NmVkYTFhN2JlMTg3Yzlj OTUKK2NoZWNrc3VtPTVjMDU2YjAyOTVhOGUwNmQwOTNiOGZjNjBiMTBlMmE4YzE5YWJkYjdiZWFl MWM3ZTdlMDU5NWVjZTJlMWI3OGMKIHNobGliX3Byb3ZpZGVzPSJsaWJlb2cuc28iCiBsaWIzMmRp c2FibGVkPXllcwogCgpGcm9tIDU4M2JmODNkNGNmYzE0MDc3YjBkZjhhOTFiNjE1N2ZkOTZlNGQ1 ZDkgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9v ay5jb20+CkRhdGU6IFdlZCwgMjkgQXByIDIwMjAgMTY6MDg6MjMgKzA2MDAKU3ViamVjdDogW1BB VENIIDA4LzUyXSBldmluY2U6IHVwZGF0ZSB0byAzLjM2LjEuCgotLS0KIHNyY3BrZ3MvZXZpbmNl L3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRl bGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZXZpbmNlL3RlbXBsYXRlIGIvc3JjcGtn cy9ldmluY2UvdGVtcGxhdGUKaW5kZXggYzMzN2EyNjZjZTAuLmY1ZGZkZGFiMzZhIDEwMDY0NAot LS0gYS9zcmNwa2dzL2V2aW5jZS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2V2aW5jZS90ZW1wbGF0 ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2V2aW5jZScKIHBrZ25hbWU9 ZXZpbmNlCi12ZXJzaW9uPTMuMzYuMAordmVyc2lvbj0zLjM2LjEKIHJldmlzaW9uPTEKIGJ1aWxk X2hlbHBlcj0iZ2lyIgogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQpAQCAtMTksNyArMTksNyBA QCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5z ZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL0Fw cHMvRXZpbmNlIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9u JS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09ODUxZDliNTIzNGQ0 NzlhYjRjOGY3YzVjYmFjZWIwZTkxYWQ3OWNjYmExYTdiNzMzY2RlNzJkYWNjOTI4ZmJhOAorY2hl Y2tzdW09OGNiOGJmZDM1OGEwMmQ4ZWRiYTUxMTE0NTQ4ZTk4MTU0MzIxZTA4OTViZjM3OWE1YmIz MzZhNDU4ZDU5NGJkNwogCiBidWlsZF9vcHRpb25zPSJnaXIiCiBidWlsZF9vcHRpb25zX2RlZmF1 bHQ9ImdpciIKCkZyb20gYTUxNjgzOTVkNmNjNzFiOWE4OGZkMGRmOWNlZjBhYmNiYmVjMDc2ZSBN b24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNv bT4KRGF0ZTogTW9uLCAyNyBBcHIgMjAyMCAxMzozMDo1NiArMDYwMApTdWJqZWN0OiBbUEFUQ0gg MDkvNTJdIGdub21lLW1hcHM6IHVwZGF0ZSB0byAzLjM2LjIuCgotLS0KIHNyY3BrZ3MvZ25vbWUt bWFwcy90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwg MiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLW1hcHMvdGVtcGxhdGUg Yi9zcmNwa2dzL2dub21lLW1hcHMvdGVtcGxhdGUKaW5kZXggMDMwMGJlNjA1OTkuLjlmZGQyN2Ri M2JkIDEwMDY0NAotLS0gYS9zcmNwa2dzL2dub21lLW1hcHMvdGVtcGxhdGUKKysrIGIvc3JjcGtn cy9nbm9tZS1tYXBzL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZv ciAnZ25vbWUtbWFwcycKIHBrZ25hbWU9Z25vbWUtbWFwcwotdmVyc2lvbj0zLjM2LjEKK3ZlcnNp b249My4zNi4yCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1tZXNvbgogaG9zdG1ha2VkZXBlbmRz PSJnbGliLWRldmVsIGdvYmplY3QtaW50cm9zcGVjdGlvbiBpbnRsdG9vbCBwa2ctY29uZmlnIEFw cFN0cmVhbSIKQEAgLTEyLDUgKzEyLDUgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRv eEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0i aHR0cHM6Ly93aWtpLmdub21lLm9yZy9BcHBzL01hcHMiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lU RX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoi Ci1jaGVja3N1bT0xYTMyZWZkOTZhZDg5OGY3N2E2MzZkMmQwNDYzZDc1NzAwOWI0YjgxMjI1OWM4 OWZmZGNiOTFkNmFmYzA1MmY5CitjaGVja3N1bT01YmEyMTliOWRlOTg2NzhjZWZhNTg0OGY2NTM4 ZGI4ZGJkMDdmNmM3NDdmZDQzYTk5MTY3YTI2Njg3OGE5Nzg0CiBub2Nyb3NzPSJldm9sdXRpb24t ZGF0YXNlcnZlciBjcm9zcyBnaXIgZG9lc24ndCB3b3JrIgoKRnJvbSBiYzJlZDMzMThkYmEzZjBl ZTVmNTZmNDJmYWZjMGRlMDExZTRmOTU0IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBO YWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBNb24sIDI3IEFwciAyMDIwIDE0OjI3 OjEwICswNjAwClN1YmplY3Q6IFtQQVRDSCAxMC81Ml0gZ2VkaXQ6IHVwZGF0ZSB0byAzLjM2LjIu CgotLS0KIHNyY3BrZ3MvZ2VkaXQvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAy IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nZWRp dC90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ2VkaXQvdGVtcGxhdGUKaW5kZXggNGUyNzNhYWYxODIuLmUz ZWJlYTA1ZWE3IDEwMDY0NAotLS0gYS9zcmNwa2dzL2dlZGl0L3RlbXBsYXRlCisrKyBiL3NyY3Br Z3MvZ2VkaXQvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdn ZWRpdCcKIHBrZ25hbWU9Z2VkaXQKLXZlcnNpb249My4zNi4xCit2ZXJzaW9uPTMuMzYuMgogcmV2 aXNpb249MQogYnVpbGRfaGVscGVyPSJnaXIiCiBidWlsZF9zdHlsZT1tZXNvbgpAQCAtMTcsNyAr MTcsNyBAQCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+Igog bGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUu b3JnL0FwcHMvR2VkaXQiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3Zl cnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT02ZGMzOGVk YTIyN2QxYzM2OGUwMzllOWJmZjQ4NWQwYmVlOWE0OWQ1Zjk1NjBjMzg3ZWUwOGY1ODE4YTRlMzg3 CitjaGVja3N1bT02ODg3NTU0NjQzYzViMWIzODYyYWMzNjRkOTdiN2I1MDIyNGJmZjk1ZTY3NThh ZWFhMDhmNGE0ODJiNTU0MTk3CiBzaGxpYl9wcm92aWRlcz0ibGliZ2VkaXQtMy4zNi5zbyIKIHB5 dGhvbl92ZXJzaW9uPTMKIAoKRnJvbSBmYzg2M2NlNmYyNjdkNDQzOTM2MjhhMDI1YzViMzM2NzA0 MTc1YmU0IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91 dGxvb2suY29tPgpEYXRlOiBNb24sIDI3IEFwciAyMDIwIDE1OjAyOjE0ICswNjAwClN1YmplY3Q6 IFtQQVRDSCAxMS81Ml0gZ25vbWUtY29udGFjdHM6IHVwZGF0ZSB0byAzLjM2LjEuCgotLS0KIHNy Y3BrZ3MvZ25vbWUtY29udGFjdHMvdGVtcGxhdGUgfCA4ICsrKystLS0tCiAxIGZpbGUgY2hhbmdl ZCwgNCBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mv Z25vbWUtY29udGFjdHMvdGVtcGxhdGUgYi9zcmNwa2dzL2dub21lLWNvbnRhY3RzL3RlbXBsYXRl CmluZGV4IDJhODIxM2E3MjQwLi4wMWZiODJiNzgyNiAxMDA2NDQKLS0tIGEvc3JjcGtncy9nbm9t ZS1jb250YWN0cy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dub21lLWNvbnRhY3RzL3RlbXBsYXRl CkBAIC0xLDEwICsxLDEwIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbm9tZS1jb250YWN0cycK IHBrZ25hbWU9Z25vbWUtY29udGFjdHMKLXZlcnNpb249My4zNC4wCi1yZXZpc2lvbj0yCit2ZXJz aW9uPTMuMzYuMQorcmV2aXNpb249MQogd3Jrc3JjPSJnbm9tZS1jb250YWN0cy0ke3ZlcnNpb24l Lip9IgogYnVpbGRfc3R5bGU9bWVzb24KLWhvc3RtYWtlZGVwZW5kcz0iZG9jYm9vay14c2wgZ2V0 dGV4dCBnbGliLWRldmVsIGxpYnhzbHQgcGtnLWNvbmZpZyB2YWxhIgoraG9zdG1ha2VkZXBlbmRz PSJkb2Nib29rLXhzbCBmb2xrcy1kZXZlbCBnZXR0ZXh0IGdsaWItZGV2ZWwgbGlieHNsdCBwa2ct Y29uZmlnIHZhbGEiCiBtYWtlZGVwZW5kcz0iY2hlZXNlLWRldmVsIGZvbGtzLWRldmVsIGdlb2Nv ZGUtZ2xpYi1kZXZlbCBnbm9tZS1kZXNrdG9wLWRldmVsCiAgbGliY2hhbXBsYWluLWRldmVsIGxp Ym5vdGlmeS1kZXZlbCB2YWxhLWRldmVsIGxpYmhhbmR5LWRldmVsIgogZGVwZW5kcz0iZGVza3Rv cC1maWxlLXV0aWxzIgpAQCAtMTMsNCArMTMsNCBAQCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8 Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVw YWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL0FwcHMvQ29udGFjdHMiCiBkaXN0ZmlsZXM9IiR7 R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9u JS4qfS50YXIueHoiCi1jaGVja3N1bT05OTYwMmVjOGQ2NjBjMWYzYzkyY2FlNjM1NmY2NGY3MmZi NmRiNThlNTViY2UyN2E1OTkzMzBiZjdiNjIyZjEyCitjaGVja3N1bT1lZWNiZDIyMDlkOTNjOGQz MWRmOTJmNmNjZjc5MTgzYjQ1NmM2ZTA3YTI4YWUwMTU1Y2JkYTE4YWFiZDM2ZjdiCgpGcm9tIDRj NzY5YWFlOGQ1YWMzOWM1YTZkOWUwYWU2ZGFjMTMwMzhmMDBkOTggTW9uIFNlcCAxNyAwMDowMDow MCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFRodSwgMzAg QXByIDIwMjAgMDI6NTI6MTIgKzA2MDAKU3ViamVjdDogW1BBVENIIDEyLzUyXSBnbm9tZS1jbG9j a3M6IHVwZGF0ZSB0byAzLjM2LjIuCgotLS0KIHNyY3BrZ3MvZ25vbWUtY2xvY2tzL3RlbXBsYXRl IHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygt KQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtY2xvY2tzL3RlbXBsYXRlIGIvc3JjcGtncy9n bm9tZS1jbG9ja3MvdGVtcGxhdGUKaW5kZXggM2UwNDliNDJmYjEuLjM0YjE1OWFlNmE2IDEwMDY0 NAotLS0gYS9zcmNwa2dzL2dub21lLWNsb2Nrcy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dub21l LWNsb2Nrcy90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2du b21lLWNsb2NrcycKIHBrZ25hbWU9Z25vbWUtY2xvY2tzCi12ZXJzaW9uPTMuMzYuMAordmVyc2lv bj0zLjM2LjIKIHJldmlzaW9uPTEKIGJ1aWxkX2hlbHBlcj0iZ2lyIgogYnVpbGRfc3R5bGU9bWVz b24KQEAgLTE1LDQgKzE1LDQgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lk bGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6 Ly93aWtpLmdub21lLm9yZy9BcHBzL0Nsb2NrcyIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8k e3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNo ZWNrc3VtPTRjOTc4YjBjN2Y3YjlkYWViZDI3MmQwMTc1ZjhhNTQ0MTVlMjA3OGYxMzRmNDhhZGQ1 Y2YyNDM2MmVlZjQ5YzYKK2NoZWNrc3VtPWYxMWIxYjIyZWMxZjI4NWU1MDk4ODM2ODRjMGIxZjRh NTE0OTZhZWExMDU1OTEyMzllNWIyNmY4OTg2NzUxZTYKCkZyb20gMDhmYzg2YjAyNDEyODA2MGE1 ODA0ZmE0ZjU4ZTg2ZDgxOTE3NzlmOSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFm aXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogTW9uLCAyNyBBcHIgMjAyMCAxNToyOToz MCArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMTMvNTJdIGdub21lLWVwdWItdGh1bWJuYWlsZXI6IHVw ZGF0ZSB0byAxLjYuCgotLS0KIHNyY3BrZ3MvZ25vbWUtZXB1Yi10aHVtYm5haWxlci90ZW1wbGF0 ZSB8IDYgKysrLS0tCiAxIGZpbGUgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9u cygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtZXB1Yi10aHVtYm5haWxlci90ZW1wbGF0 ZSBiL3NyY3BrZ3MvZ25vbWUtZXB1Yi10aHVtYm5haWxlci90ZW1wbGF0ZQppbmRleCBiMTZlNzA1 NDc1Zi4uZDY3Yjc3ZjFlNDMgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtZXB1Yi10aHVtYm5h aWxlci90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dub21lLWVwdWItdGh1bWJuYWlsZXIvdGVtcGxh dGUKQEAgLTEsMTMgKzEsMTMgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLWVwdWItdGh1 bWJuYWlsZXInCiBwa2duYW1lPWdub21lLWVwdWItdGh1bWJuYWlsZXIKLXZlcnNpb249MS41Cit2 ZXJzaW9uPTEuNgogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogaG9zdG1h a2VkZXBlbmRzPSJwa2ctY29uZmlnIgogbWFrZWRlcGVuZHM9Imdkay1waXhidWYtZGV2ZWwgbGli YXJjaGl2ZS1kZXZlbCBsaWJ4bWwyLWRldmVsIgogc2hvcnRfZGVzYz0iVGh1bWJuYWlsZXIgZm9y IEVQdWIgYW5kIE1PQkkgYm9va3MiCiBtYWludGFpbmVyPSJBbGlmIFJhY2htYXdhZGkgPGFyY2hA c3Vib3NpdG8uY29tPiIKLWxpY2Vuc2U9IkdQTC0zIgorbGljZW5zZT0iR1BMLTIuMC1vci1sYXRl ciIKIGhvbWVwYWdlPSJodHRwczovL2dpdC5nbm9tZS5vcmcvYnJvd3NlL2dub21lLWVwdWItdGh1 bWJuYWlsZXIiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb259 LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT0zMDgyMTBmNTgwMDIxOWY2 NGNhZTQ4MjhlNTliYjhlNmU0YzUzYjg4ODA0OGNmNDg3MjIxYWViNDMzN2Q3OTFhCitjaGVja3N1 bT1iNTAyNDIwZDliMDJlYTBiMGZjNzk4NmVmNWEwOTFhMTJiMjI4NmJlMTRmZWQ5ZTQ3NTk0ZmU5 ZmEwYzU4OThlCgpGcm9tIGMxMjU3YzJhZTU1MzkzZWQwOGIzMjBiNmU5NWY3MzRkYjBhN2IzZWMg TW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5j b20+CkRhdGU6IE1vbiwgMjcgQXByIDIwMjAgMTY6MjM6NDYgKzA2MDAKU3ViamVjdDogW1BBVENI IDE0LzUyXSBnbm9tZS10ZXJtaW5hbDogdXBkYXRlIHRvIDMuMzYuMi4KCi0tLQogc3JjcGtncy9n bm9tZS10ZXJtaW5hbC90ZW1wbGF0ZSB8IDYgKysrLS0tCiAxIGZpbGUgY2hhbmdlZCwgMyBpbnNl cnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtdGVy bWluYWwvdGVtcGxhdGUgYi9zcmNwa2dzL2dub21lLXRlcm1pbmFsL3RlbXBsYXRlCmluZGV4IGJm M2Q1YmNkZDQyLi4yMmRiYzExYmFkYSAxMDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS10ZXJtaW5h bC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dub21lLXRlcm1pbmFsL3RlbXBsYXRlCkBAIC0xLDYg KzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ25vbWUtdGVybWluYWwnCiBwa2duYW1lPWdu b21lLXRlcm1pbmFsCi12ZXJzaW9uPTMuMzYuMS4xCit2ZXJzaW9uPTMuMzYuMgogcmV2aXNpb249 MQogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9Ii0tZGlzYWJsZS1z dGF0aWMgLS13aXRoLW5hdXRpbHVzLWV4dGVuc2lvbiIKQEAgLTEzLDggKzEzLDggQEAgc2hvcnRf ZGVzYz0iR05PTUUgdGVybWluYWwgZW11bGF0b3IgYXBwbGljYXRpb24iCiBtYWludGFpbmVyPSJF bm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTIuMC1vci1s YXRlciwgR0ZETC0xLjMtb25seSIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL0Fw cHMvVGVybWluYWwiCi1kaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNp b246MDo0fS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09ZjNkNzA4YTFl NzZkNzdjMWM4NWIxMjZmNmUwMDMyMjBhMTVkNGE0NmE1MGZkODA3MGUxYTNhYWJlNjc4YTM3Ngor ZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25h bWV9LSR7dmVyc2lvbn0udGFyLnh6IgorY2hlY2tzdW09NDFkMWI2YTNkYzk3YzA2NmUyOTRhY2Ri N2YzNjkzMWU4MTY2ODYzOGRjYzkyZmZhMjViY2EzZGRlYmFjZGY0NgogbGliMzJkaXNhYmxlZD15 ZXMKIAogaWYgWyAiJENST1NTX0JVSUxEIiBdOyB0aGVuCgpGcm9tIGYzNTljOWNmNDBiZjQ2YmU3 YzBmNTM1YTIxYTg3NGQ0MjU5YWMxMDMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5h 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 X0hPTUUvZCcKKwl9CitmaQoKRnJvbSBjNTU5NGFhMGQwZDY2MTAxOGU0N2Q4YzA1NTk3MWQ4ZTlj ODMyZWFiIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91 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 ZF9vcHRpb25zX2RlZmF1bHQrPSIgY2hlZXNlIgogZmkKCkZyb20gMTEzMDE1NTZhNTI2MTE3MDQ5 MmMwOGUzYmQzOWEwOGI2M2JlZGM0MyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFm 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 b3N0bWFrZWRlcGVuZHMrPSIgcG9sa2l0IgoKRnJvbSAxOWFiZTk2NWIyYTZjZmYwNmM2M2VjMmNm NTJkYTExZDczNWVhYzk2IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5h YmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBGcmksIDEgTWF5IDIwMjAgMTA6MTE6NTQgKzA2MDAK U3ViamVjdDogW1BBVENIIDE4LzUyXSBnbm9tZS11c2VyLWRvY3M6IHVwZGF0ZSB0byAzLjM2LjIu CgotLS0KIHNyY3BrZ3MvZ25vbWUtdXNlci1kb2NzL3RlbXBsYXRlIHwgOCArKysrLS0tLQogMSBm aWxlIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQg YS9zcmNwa2dzL2dub21lLXVzZXItZG9jcy90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25vbWUtdXNlci1k b2NzL3RlbXBsYXRlCmluZGV4IDRjYjU1Mzk2ZTM3Li5jYTk5MzM0NmUzYSAxMDA2NDQKLS0tIGEv c3JjcGtncy9nbm9tZS11c2VyLWRvY3MvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS11c2Vy LWRvY3MvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbm9t ZS11c2VyLWRvY3MnCiBwa2duYW1lPWdub21lLXVzZXItZG9jcwotdmVyc2lvbj0zLjM0LjAKK3Zl cnNpb249My4zNi4yCiByZXZpc2lvbj0xCiBhcmNocz1ub2FyY2gKIGJ1aWxkX3N0eWxlPWdudS1j b25maWd1cmUKQEAgLTEwLDcgKzEwLDcgQEAgZGVwZW5kcz0ieWVscCIKIHNob3J0X2Rlc2M9IlVz ZXIgZG9jdW1lbnRhdGlvbiBmb3IgR05PTUUiCiBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290 dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iQ0MtQlktMy4wIgotaG9tZXBhZ2U9Imh0dHBz Oi8vZ2l0aHViLmNvbS9HTk9NRS9nbm9tZS11c2VyLWRvY3MiCi0jY2hhbmdlbG9nPSJodHRwczov L3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vR05PTUUvZ25vbWUtdXNlci1kb2NzL21hc3Rlci9O RVdTIgoraG9tZXBhZ2U9Imh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS11c2Vy LWRvY3MiCitjaGFuZ2Vsb2c9Imh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS11 c2VyLWRvY3MvLS9yYXcvMy4zNi4yL05FV1MiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtw a2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVj a3N1bT04Zjk5MDdmZjE1ZmZmOTdkYTc1ZWNlNjQ1Y2M4Njc2NjcwM2FjNTRkNzE2ZDI1NTYzYmE2 N2ZmZWQxYWYyNGVkCitjaGVja3N1bT0xOThmZTRjODM2Nzc1YTVkYzI1NDNhNmE1MjBkZmIwYWM1 YmYyOTJjZGNiMzU4YTU3Yzg2ZjM1ZjcwNWU5OTU4CgpGcm9tIGU3NWVmZmE5MDg4NDY4YzRmNTlm MDI4YTc4MTUxZmEzZjU5ZmM2MTcgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlz 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 MWUyMzU0ZDJkMWFjMDVjZjFjNzlhMDFjYzk3NWM2YWE4OTE0NTc1NgoKRnJvbSAwNDkzZmZiNWEw ZjdmYTRhOWU4ZTIzODVlZTg1NWIzMjliMWUwZWJkIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpG cm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBGcmksIDEgTWF5IDIwMjAg MDg6Mzg6MTUgKzA2MDAKU3ViamVjdDogW1BBVENIIDIwLzUyXSBldm9sdXRpb24tZGF0YS1zZXJ2 ZXI6IHVwZGF0ZSB0byAzLjM2LjIuCgotLS0KIHNyY3BrZ3MvZXZvbHV0aW9uLWRhdGEtc2VydmVy L3RlbXBsYXRlIHwgNiArKystLS0KIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMg ZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9ldm9sdXRpb24tZGF0YS1zZXJ2ZXIv dGVtcGxhdGUgYi9zcmNwa2dzL2V2b2x1dGlvbi1kYXRhLXNlcnZlci90ZW1wbGF0ZQppbmRleCA0 YWU4MjBiZTA2OC4uZGVjNzJlN2M0MjQgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZXZvbHV0aW9uLWRh dGEtc2VydmVyL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZXZvbHV0aW9uLWRhdGEtc2VydmVyL3Rl bXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZXZvbHV0aW9uLWRh dGEtc2VydmVyJwogcGtnbmFtZT1ldm9sdXRpb24tZGF0YS1zZXJ2ZXIKLXZlcnNpb249My4zNi4x Ci1yZXZpc2lvbj0yCit2ZXJzaW9uPTMuMzYuMgorcmV2aXNpb249MQogYnVpbGRfc3R5bGU9Y21h a2UKIGJ1aWxkX2hlbHBlcj1naXIKIGNvbmZpZ3VyZV9hcmdzPSItREVOQUJMRV9VT0E9T0ZGCkBA IC0xNyw3ICsxNyw3IEBAIGxpY2Vuc2U9IkxHUEwtMi4xLW9ubHkiCiBob21lcGFnZT0iaHR0cHM6 Ly93aWtpLmdub21lLm9yZy9BcHBzL0V2b2x1dGlvbiIKIGNoYW5nZWxvZz0iaHR0cHM6Ly9yYXcu Z2l0aHVidXNlcmNvbnRlbnQuY29tL0dOT01FL2V2b2x1dGlvbi1kYXRhLXNlcnZlci9nbm9tZS0z LTM2L05FV1MiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24l Lip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT0xMzEyMmIyZWRkZGI5 ODMwNjIwN2QyYTM1ZDVjY2FlMjVhOTA3MDI3NjljYTBhMGI1MTY1M2I1OTg0OTg2Nzk2CitjaGVj a3N1bT05OGUyNzRjZmVjMTZjZWU2YTRiM2I5Yzc4OTdmNmUxMTM2ZDAwZTRmMzFhMGQ2NjIxNDky NWFiYmFjNzZlOTdiCiAKIGJ1aWxkX29wdGlvbnM9ImdpciIKIGlmIFsgLXogIiRDUk9TU19CVUlM RCIgXTsgdGhlbgoKRnJvbSA0MGYyMTdkZjYxZWRmNDE3YTYyYzQ4MDU2M2RiMTYxMWEyOGRjNTNk IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2su Y29tPgpEYXRlOiBGcmksIDEgTWF5IDIwMjAgMDg6Mzg6MjMgKzA2MDAKU3ViamVjdDogW1BBVENI IDIxLzUyXSBldm9sdXRpb246IHVwZGF0ZSB0byAzLjM2LjIuCgotLS0KIHNyY3BrZ3MvZXZvbHV0 aW9uL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAy IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZXZvbHV0aW9uL3RlbXBsYXRlIGIv c3JjcGtncy9ldm9sdXRpb24vdGVtcGxhdGUKaW5kZXggNTYwZWQ5M2RhMDIuLmM5YzNhZmI3ZjZm IDEwMDY0NAotLS0gYS9zcmNwa2dzL2V2b2x1dGlvbi90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2V2 b2x1dGlvbi90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2V2 b2x1dGlvbicKIHBrZ25hbWU9ZXZvbHV0aW9uCi12ZXJzaW9uPTMuMzYuMQordmVyc2lvbj0zLjM2 LjIKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPWNtYWtlCiBjb25maWd1cmVfYXJncz0iLURFTkFC TEVfQVVUT0FSPU9GRiAtREVOQUJMRV9MSUJDUllQVFVJPU9GRiAtREVOQUJMRV9HVEtTUEVMTD1P RkYKQEAgLTE5LDcgKzE5LDcgQEAgbGljZW5zZT0iTEdQTC0yLjEtb3ItbGF0ZXIsIExHUEwtMy4w LW9yLWxhdGVyLCBHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9t ZS5vcmcvQXBwcy9Fdm9sdXRpb24iCiBjaGFuZ2Vsb2c9Imh0dHBzOi8vcmF3LmdpdGh1YnVzZXJj b250ZW50LmNvbS9HTk9NRS9ldm9sdXRpb24vZ25vbWUtMy0zNi9ORVdTIgogZGlzdGZpbGVzPSIk e0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lv bn0udGFyLnh6IgotY2hlY2tzdW09ODczYWNmMWRiZWMzOGU2N2UxNjkwNjQ2NDVhYzNhOWI5YTk0 NGJkMmI2MzMxNjFkZjZlNWYwNTcwMGUzNmNiOAorY2hlY2tzdW09YzUwOTQ4YzFhM2RkYjM5Yjcy YWNkOTNkZTc3Zjk0Nzg3Y2RjMWJlZjMzMGI5NjdiYmI4YjZjNzIzMzQzMzE4YQogc2hsaWJfcHJv dmlkZXM9ImxpYmV2b2x1dGlvbi1jYWxlbmRhci5zbyBsaWJldm9sdXRpb24tdXRpbC5zbyBsaWJl bWFpbC1lbmdpbmUuc28KICBsaWJldm9sdXRpb24tbWFpbC5zbyBsaWJldm9sdXRpb24tc2hlbGwu c28iCiAKCkZyb20gMDRmNDc3Yzg0NGQxY2VjYjdmNDQ2MjFiYjgzZDhkM2Q2ZDhmNzk1ZSBNb24g U2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4K RGF0ZTogRnJpLCAxIE1heSAyMDIwIDA4OjM4OjI3ICswNjAwClN1YmplY3Q6IFtQQVRDSCAyMi81 Ml0gZXZvbHV0aW9uLWV3czogdXBkYXRlIHRvIDMuMzYuMi4KCi0tLQogc3JjcGtncy9ldm9sdXRp b24tZXdzL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCsp LCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZXZvbHV0aW9uLWV3cy90ZW1w bGF0ZSBiL3NyY3BrZ3MvZXZvbHV0aW9uLWV3cy90ZW1wbGF0ZQppbmRleCA0ZmY4MTE2NDY2Yy4u YTE3MWY0YzRhMDggMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZXZvbHV0aW9uLWV3cy90ZW1wbGF0ZQor KysgYi9zcmNwa2dzL2V2b2x1dGlvbi1ld3MvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRl bXBsYXRlIGZpbGUgZm9yICdldm9sdXRpb24tZXdzJwogcGtnbmFtZT1ldm9sdXRpb24tZXdzCi12 ZXJzaW9uPTMuMzYuMQordmVyc2lvbj0zLjM2LjIKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPWNt YWtlCiBjb25maWd1cmVfYXJncz0iLURMSUJFWEVDX0lOU1RBTExfRElSPS91c3IvbGliL2V2b2x1 dGlvbiIKQEAgLTEyLDQgKzEyLDQgQEAgbGljZW5zZT0iTEdQTC0yLjEtb3ItbGF0ZXIiCiBob21l cGFnZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9BcHBzL0V2b2x1dGlvbiIKIGNoYW5nZWxvZz0i aHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNvbnRlbnQuY29tL0dOT01FL2V2b2x1dGlvbi1ld3MvZ25v bWUtMy0zNi9ORVdTIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJz aW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09ZDA4ODNjN2Qy Mjc4MjdjYzVjNDQ2OGI3ZTMxYTNlZTM3MGJjZDdkNDFhNGRiYjk1MGFiNWRiMzZjOTU1MWFjMQor Y2hlY2tzdW09MmU0MmU0ODkwNDg3ZjhjN2Y5ZDc3NmE0NDQ0ZGY2ZWZkNTI5OWNhMDAzYTMwMDAy ZWI1ZjAyMjA5MWRjMzU5ZAoKRnJvbSAzNDk1YjY1YTY0ZjY2MjEwMGFjYjkzZGNlYjVmMjc3MjJk OTgwMDFkIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91 dGxvb2suY29tPgpEYXRlOiBUdWUsIDUgTWF5IDIwMjAgMTE6MjA6MjMgKzA2MDAKU3ViamVjdDog W1BBVENIIDIzLzUyXSBhdGs6IHVwZGF0ZSB0byAyLjM2LjAuCgotLS0KIHNyY3BrZ3MvYXRrL3Rl bXBsYXRlIHwgNiArKystLS0KIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVs ZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9hdGsvdGVtcGxhdGUgYi9zcmNwa2dzL2F0 ay90ZW1wbGF0ZQppbmRleCA3YzE0YjExNjU5OC4uY2EyMmQzNjYxOTggMTAwNjQ0Ci0tLSBhL3Ny Y3BrZ3MvYXRrL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvYXRrL3RlbXBsYXRlCkBAIC0xLDE4ICsx LDE4IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdhdGsnCiBwa2duYW1lPWF0awotdmVyc2lvbj0y LjM0LjEKK3ZlcnNpb249Mi4zNi4wCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1tZXNvbgogYnVp bGRfaGVscGVyPSJnaXIiCiBjb25maWd1cmVfYXJncz0iLURpbnRyb3NwZWN0aW9uPSQodm9wdF9p ZiBnaXIgdHJ1ZSBmYWxzZSkiCi1ob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcgZ2xpYi1kZXZl bCIKK2hvc3RtYWtlZGVwZW5kcz0iZ2V0dGV4dCBwa2ctY29uZmlnIGdsaWItZGV2ZWwiCiBtYWtl ZGVwZW5kcz0ibGliZ2xpYi1kZXZlbCIKIHNob3J0X2Rlc2M9IlNldCBvZiBpbnRlcmZhY2VzIGZv ciBhY2Nlc3NpYmlsaXR5IgogbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGlu dXgub3JnPiIKIGxpY2Vuc2U9IkxHUEwtMi4xLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8v ZGV2ZWxvcGVyLmdub21lLm9yZy9hdGsvIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9L2F0ay8k e3ZlcnNpb24lLip9L2F0ay0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPWQ0ZjBlM2IzZDIx MjY1ZmNmMmJjMzcxZTExN2RhNTFjNDJlZGUxYTcxZjZkYjFjODM0ZTY5NzZiYjIwOTk3Y2IKK2No ZWNrc3VtPWZiNzYyNDdlMzY5NDAyYmUyM2YxZjVjNjVkMzhhOTYzOWMxMTY0ZDkzNGU0MGY2YTlj ZjNjOWU5NmI2NTI3ODgKIAogIyBQYWNrYWdlIGJ1aWxkIG9wdGlvbnMKIGJ1aWxkX29wdGlvbnM9 ImdpciIKCkZyb20gZTkyOTRiZTQyNmViNjZhMjBjMjkzY2Y3NmU4ZGMzZDI1ZjNmODYzMyBNb24g U2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4K RGF0ZTogVHVlLCA1IE1heSAyMDIwIDEyOjQzOjUyICswNjAwClN1YmplY3Q6IFtQQVRDSCAyNC81 Ml0gYXQtc3BpMi1jb3JlOiB1cGRhdGUgdG8gMi4zNi4wLgoKLS0tCiBzcmNwa2dzL2F0LXNwaTIt Y29yZS90ZW1wbGF0ZSB8IDkgKysrKy0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgNCBpbnNlcnRpb25z KCspLCA1IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvYXQtc3BpMi1jb3JlL3Rl bXBsYXRlIGIvc3JjcGtncy9hdC1zcGkyLWNvcmUvdGVtcGxhdGUKaW5kZXggYjM4M2ZlOTliZWQu LmZiNzk5YWY3ZTUyIDEwMDY0NAotLS0gYS9zcmNwa2dzL2F0LXNwaTItY29yZS90ZW1wbGF0ZQor KysgYi9zcmNwa2dzL2F0LXNwaTItY29yZS90ZW1wbGF0ZQpAQCAtMSwxOCArMSwxNyBAQAogIyBU ZW1wbGF0ZSBmaWxlIGZvciAnYXQtc3BpMi1jb3JlJwogcGtnbmFtZT1hdC1zcGkyLWNvcmUKLXZl cnNpb249Mi4zNC4wCit2ZXJzaW9uPTIuMzYuMAogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9bWVz b24KIGJ1aWxkX2hlbHBlcj0iZ2lyIgotaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIGRidXMg Z2xpYi1kZXZlbCIKLW1ha2VkZXBlbmRzPSJsaWJnbGliLWRldmVsIGxpYlhleHQtZGV2ZWwgbGli U00tZGV2ZWwgbGliWHRzdC1kZXZlbAotIGxpYlhldmllLWRldmVsIGRidXMtZGV2ZWwiCitob3N0 bWFrZWRlcGVuZHM9ImdldHRleHQgcGtnLWNvbmZpZyBkYnVzIGdsaWItZGV2ZWwiCittYWtlZGVw ZW5kcz0ibGliZ2xpYi1kZXZlbCBsaWJTTS1kZXZlbCBsaWJYdHN0LWRldmVsIGRidXMtZGV2ZWwi CiBzaG9ydF9kZXNjPSJBc3Npc3RpdmUgVGVjaG5vbG9neSBTZXJ2aWNlIFByb3ZpZGVyIEludGVy ZmFjZSIKIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBs aWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vZ2l0bGFiLmdub21l Lm9yZy9HTk9NRS9hdC1zcGkyLWNvcmUiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2du YW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1 bT1kNjI5Y2RiZDY3NGU1MzlmODkxMjAyODUxMmFmNTgzOTkwOTM4YzdiNDllMjUxODRjMTI2YjAw MTIxZWYxMWM2CitjaGVja3N1bT04OGRhNTdkZTBhN2UzYzYwYmMzNDFhOTc0YTgwZmRiYTA5MTYx MmRiMzU0N2M0MTBkNmRlYWIwMzljYTVjMDVhCiAKICMgUGFja2FnZSBidWlsZCBvcHRpb25zCiBi dWlsZF9vcHRpb25zPSJnaXIiCgpGcm9tIGMxODE4NzM0MDkzMTI1ZWVlOWJiY2IzODlkMDAzYzky NmU4MDY0ZWQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVA b3V0bG9vay5jb20+CkRhdGU6IFR1ZSwgNSBNYXkgMjAyMCAxMjo0NDowMCArMDYwMApTdWJqZWN0 OiBbUEFUQ0ggMjUvNTJdIGF0LXNwaTItYXRrOiB1cGRhdGUgdG8gMi4zNC4yLgoKLS0tCiBzcmNw a2dzL2F0LXNwaTItYXRrL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNl cnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvYXQtc3BpMi1h dGsvdGVtcGxhdGUgYi9zcmNwa2dzL2F0LXNwaTItYXRrL3RlbXBsYXRlCmluZGV4IDQzNTFiNzk5 NmYzLi5hYTdiODgzOWM5ZiAxMDA2NDQKLS0tIGEvc3JjcGtncy9hdC1zcGkyLWF0ay90ZW1wbGF0 ZQorKysgYi9zcmNwa2dzL2F0LXNwaTItYXRrL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBU ZW1wbGF0ZSBmaWxlIGZvciAnYXQtc3BpMi1hdGsnCiBwa2duYW1lPWF0LXNwaTItYXRrCi12ZXJz aW9uPTIuMzQuMQordmVyc2lvbj0yLjM0LjIKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPW1lc29u CiBob3N0bWFrZWRlcGVuZHM9ImxpYnRvb2wgcGtnLWNvbmZpZyBpbnRsdG9vbCBnbGliLWRldmVs IgpAQCAtMTAsNyArMTAsNyBAQCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRs aW51eC5vcmc+IgogbGljZW5zZT0iTEdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cDov L3d3dy5nbm9tZS5vcmciCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3Zl cnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT03NzZkZjkz MDc0OGZkZTcxYzEyOGJlNmMzNjZhOTg3Yjk4YjZlZTY2ZDUwOGVkOWM4ZGIyMzU1YmY0YjljYzE2 CitjaGVja3N1bT05MDEzMjNjZWUwZWVmMDVjMDFlYzRkZWUwNmM3MDFhZWVjYTgxYTMxNGE3ZDYw MjE2ZmEzNjMwMDVlMjdmNGYwCiAKIGF0LXNwaTItYXRrLWRldmVsX3BhY2thZ2UoKSB7CiAJZGVw ZW5kcz0iJHttYWtlZGVwZW5kc30gJHtzb3VyY2Vwa2d9Pj0ke3ZlcnNpb259XyR7cmV2aXNpb259 IgoKRnJvbSA3YmEyYWY5M2EyYTZjZjgzZjM0YTNhN2MzMDU4MjVhMGY3NjU1MDcxIE1vbiBTZXAg 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 UHl0aG9uMi9QeXRob24zfSIKIAlwa2dfaW5zdGFsbCgpIHsKCkZyb20gNTc4YTUzMDQ1ZTZkYzZk YTQ5OGYwM2NlMDU0ZDcwYWQyOWFjMWU1ZiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTog 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+PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0iCgpGcm9tIGEzNzMxMDAzODNlODQ4YmZkY2U2MzI4 ZGI2NDUwNTVlNWRkYmFiZTMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxt bmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IEZyaSwgMSBNYXkgMjAyMCAwODo0MTo1NiArMDYw MApTdWJqZWN0OiBbUEFUQ0ggMjgvNTJdIGZpbGUtcm9sbGVyOiB1cGRhdGUgdG8gMy4zNi4yLgoK LS0tCiBzcmNwa2dzL2ZpbGUtcm9sbGVyL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdl ZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mv ZmlsZS1yb2xsZXIvdGVtcGxhdGUgYi9zcmNwa2dzL2ZpbGUtcm9sbGVyL3RlbXBsYXRlCmluZGV4 IDVmYjc2ZDk3MzA3Li42YTBjMjgwZjBkNSAxMDA2NDQKLS0tIGEvc3JjcGtncy9maWxlLXJvbGxl ci90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2ZpbGUtcm9sbGVyL3RlbXBsYXRlCkBAIC0xLDYgKzEs NiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZmlsZS1yb2xsZXInCiBwa2duYW1lPWZpbGUtcm9s bGVyCi12ZXJzaW9uPTMuMzYuMAordmVyc2lvbj0zLjM2LjIKIHJldmlzaW9uPTEKIGJ1aWxkX3N0 eWxlPW1lc29uCiBob3N0bWFrZWRlcGVuZHM9ImdldHRleHQgZ2xpYi1kZXZlbCBpdHN0b29sIHBr Zy1jb25maWciCkBAIC0xMiw0ICsxMiw0IEBAIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0 b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9 Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcvQXBwcy9GaWxlUm9sbGVyIgogZGlzdGZpbGVzPSIke0dO T01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0u dGFyLnh6IgotY2hlY2tzdW09YjkxNDRkZThmNTM2ZjU4M2VjMjlkNzAzYzJjMTcwYmYyZDAwYzZj MTY2Y2Q1ZTNmN2VmYWJkYTU1MWYxMDQ3OAorY2hlY2tzdW09MjY4ZjdmZGFkOGQyYTc4ZGZlZDVl ODJlYjg3MTBiYWQzODljMzExYjcyMDY2NmQ2ZjA3YTA0ZWQ1MTA1NmJkMgoKRnJvbSBkMjY2NWI0 M2M0ZjI4Yzk4N2IzYzI0ZDdmYTMzMWU0NWM2NjAxNzg2IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAw MQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUdWUsIDUgTWF5IDIw MjAgMDc6NTg6MDIgKzA2MDAKU3ViamVjdDogW1BBVENIIDI5LzUyXSBkY29uZi1lZGl0b3I6IHVw ZGF0ZSB0byAzLjM2LjIuCgotLS0KIHNyY3BrZ3MvZGNvbmYtZWRpdG9yL3RlbXBsYXRlIHwgNCAr Ky0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlm ZiAtLWdpdCBhL3NyY3BrZ3MvZGNvbmYtZWRpdG9yL3RlbXBsYXRlIGIvc3JjcGtncy9kY29uZi1l ZGl0b3IvdGVtcGxhdGUKaW5kZXggZGUyNTBiYmM4YTkuLjNiOGNkOGNiNzJmIDEwMDY0NAotLS0g YS9zcmNwa2dzL2Rjb25mLWVkaXRvci90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2Rjb25mLWVkaXRv ci90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2Rjb25mLWVk aXRvcicKIHBrZ25hbWU9ZGNvbmYtZWRpdG9yCi12ZXJzaW9uPTMuMzYuMAordmVyc2lvbj0zLjM2 LjIKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPW1lc29uCiBob3N0bWFrZWRlcGVuZHM9ImRvY2Jv b2steHNsIGdsaWItZGV2ZWwgbGlieHNsdCBwa2ctY29uZmlnIHZhbGEiCkBAIC0xMCw0ICsxMCw0 IEBAIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNl bnNlPSJHUEwtMy4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcv UHJvamVjdHMvZGNvbmYiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3Zl cnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT03MmVlZDA1 NjcwOTE3ZjhlNDMyMDBlNDBjY2M2YmU2MDIxMWYwYTg3YjAxNzUzNGVhYzFmZDZjNzE3M2EwNjkz CitjaGVja3N1bT1lZGNlYzg4NjdmMDE4NTg5MTI1ZjE3NzQwNzc2MGM2NDJiYmJiNTJmZTUxMjJk YWFjNTkwNTIyM2Q2YjNlMWM3CgpGcm9tIDkyMWRmNTZlMDU5ZDdjNDJmYjRhYmQ0ZmE4ZWY1NWZl NDBmZDczNzggTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVA b3V0bG9vay5jb20+CkRhdGU6IFR1ZSwgNSBNYXkgMjAyMCAxMDoyMDo1NiArMDYwMApTdWJqZWN0 OiBbUEFUQ0ggMzAvNTJdIHRyYWNrZXI6IHVwZGF0ZSB0byAyLjMuNC4KCi0tLQogc3JjcGtncy90 cmFja2VyL3RlbXBsYXRlIHwgOCArKysrLS0tLQogMSBmaWxlIGNoYW5nZWQsIDQgaW5zZXJ0aW9u cygrKSwgNCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3RyYWNrZXIvdGVtcGxh dGUgYi9zcmNwa2dzL3RyYWNrZXIvdGVtcGxhdGUKaW5kZXggMzcwNzRjYjM0OGQuLmU4MTRmNzdj NzExIDEwMDY0NAotLS0gYS9zcmNwa2dzL3RyYWNrZXIvdGVtcGxhdGUKKysrIGIvc3JjcGtncy90 cmFja2VyL3RlbXBsYXRlCkBAIC0xLDEzICsxLDEzIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICd0 cmFja2VyJwogcGtnbmFtZT10cmFja2VyCi12ZXJzaW9uPTIuMy4xCi1yZXZpc2lvbj0yCit2ZXJz aW9uPTIuMy40CityZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1tZXNvbgogYnVpbGRfaGVscGVyPSJn aXIiCiBjb25maWd1cmVfYXJncz0iLURkb2NzPWZhbHNlIC1EZnRzPXRydWUgLURmdW5jdGlvbmFs X3Rlc3RzPWZhbHNlCiAgLURqb3VybmFsPXRydWUgLURtYW49dHJ1ZSAtRG5ldHdvcmtfbWFuYWdl cj1lbmFibGVkIC1Ec3RlbW1lcj1kaXNhYmxlZAogIC1Ec3lzdGVtZF91c2VyX3NlcnZpY2VzPW5v IgotaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIGdsaWItZGV2ZWwgdmFsYSIKK2hvc3RtYWtl ZGVwZW5kcz0iZ2V0dGV4dCBwa2ctY29uZmlnIGdsaWItZGV2ZWwgdmFsYSIKIG1ha2VkZXBlbmRz PSJkYnVzLWRldmVsIGxpYmdsaWItZGV2ZWwgaWN1LWRldmVsIGpzb24tZ2xpYi1kZXZlbAogIGxp YnNvdXAtZGV2ZWwgbGlieG1sMi1kZXZlbCBzcWxpdGUtZGV2ZWwgTmV0d29ya01hbmFnZXItZGV2 ZWwKICBiYXNoLWNvbXBsZXRpb24iCkBAIC0xNiw3ICsxNiw3IEBAIG1haW50YWluZXI9Ik9ycGhh bmVkIDxvcnBoYW5Adm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgog aG9tZXBhZ2U9Imh0dHBzOi8vbGl2ZS5nbm9tZS5vcmcvVHJhY2tlciIKIGRpc3RmaWxlcz0iJHtH Tk9NRV9TSVRFfS90cmFja2VyLyR7dmVyc2lvbiUuKn0vdHJhY2tlci0ke3ZlcnNpb259LnRhci54 eiIKLWNoZWNrc3VtPWI2NzQ4NzI2ZTQ2NWFkMmY0ZDk5MTU2MDYzNGIxZmQwZGY4ODQxZjNkOTgx YjNiODM3YzQxNjJhYmVkZjA4YTEKK2NoZWNrc3VtPTU3Nzk1MjI0NGFiOTc3Yzc4YjBiODhlMmY2 M2M0MTk3ZWFiYTE2ZTRkNjZiZmY2OTJiN2Y1ODk5M2UwNjUxNmQKIAogaWYgWyAiJENST1NTX0JV SUxEIiBdOyB0aGVuCiAJaG9zdG1ha2VkZXBlbmRzKz0iIGRidXMiCgpGcm9tIDEwM2Y1ZDVjYTZh MjkwZDNlNWJiZjI2OTljNDc5OWJlMTc1OGY5NjQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZy b206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFdlZCwgNiBNYXkgMjAyMCAx OTo1NjoxNCArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMzEvNTJdIG9yY2E6IHVwZGF0ZSB0byAzLjM2 LjIuCgotLS0KIHNyY3BrZ3Mvb3JjYS90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQs IDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL29y Y2EvdGVtcGxhdGUgYi9zcmNwa2dzL29yY2EvdGVtcGxhdGUKaW5kZXggZjcwMjAyZTZkNzYuLjhh NzBjODQ5ZjZkIDEwMDY0NAotLS0gYS9zcmNwa2dzL29yY2EvdGVtcGxhdGUKKysrIGIvc3JjcGtn cy9vcmNhL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnb3Jj YScKIHBrZ25hbWU9b3JjYQotdmVyc2lvbj0zLjM2LjEKK3ZlcnNpb249My4zNi4yCiByZXZpc2lv bj0xCiBhcmNocz1ub2FyY2gKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKQEAgLTEzLDcgKzEz LDcgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxp Y2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21lLm9y Zy9Qcm9qZWN0cy9PcmNhIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2 ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09YzFhYzY0 OGI2YmUzMTQ4OGMyNmZmOTU5MTE0Mjg3ODY5ZGY5Y2UzY2EyMTk5OWU0MGRlZDg3NzQxYzk4ODMx ZgorY2hlY2tzdW09Y2YwMDU1Yjc2ZjIxNTljMzNjOWQ5ZjdkZWJiNzY5NDM1YzIwMWJiZmE2ZGNm MGYwMWZkYzU4ZTkyOTQ3YmY0MwogCiBpZiBbICIkQ1JPU1NfQlVJTEQiIF07IHRoZW4KIAlob3N0 bWFrZWRlcGVuZHMrPSIgcHl0aG9uMy1nb2JqZWN0LWRldmVsIgoKRnJvbSAxMzJmZGNkNTg1YTQy ZWIzZGNiZjM4YmZmMjg1MDEyMzc4MjQzMjQ5IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9t OiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUdWUsIDUgTWF5IDIwMjAgMTE6 MDM6MjkgKzA2MDAKU3ViamVjdDogW1BBVENIIDMyLzUyXSBnbm9tZS1nZXR0aW5nLXN0YXJ0ZWQt ZG9jczogdXBkYXRlIHRvIDMuMzYuMi4KCi0tLQogc3JjcGtncy9nbm9tZS1nZXR0aW5nLXN0YXJ0 ZWQtZG9jcy90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygr KSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLWdldHRpbmctc3Rh cnRlZC1kb2NzL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1nZXR0aW5nLXN0YXJ0ZWQtZG9jcy90 ZW1wbGF0ZQppbmRleCA1YmVjOTM0OTBiYS4uYmVkOWI2OTYxNjIgMTAwNjQ0Ci0tLSBhL3NyY3Br Z3MvZ25vbWUtZ2V0dGluZy1zdGFydGVkLWRvY3MvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9t ZS1nZXR0aW5nLXN0YXJ0ZWQtZG9jcy90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxh dGUgZmlsZSBmb3IgJ2dub21lLWdldHRpbmctc3RhcnRlZC1kb2NzJwogcGtnbmFtZT1nbm9tZS1n ZXR0aW5nLXN0YXJ0ZWQtZG9jcwotdmVyc2lvbj0zLjM0LjAKK3ZlcnNpb249My4zNi4yCiByZXZp c2lvbj0xCiBhcmNocz1ub2FyY2gKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKQEAgLTExLDQg KzExLDQgQEAgbGljZW5zZT0iQ0MtQlktU0EtMy4wIgogaG9tZXBhZ2U9Imh0dHBzOi8vZ2l0bGFi Lmdub21lLm9yZy9HTk9NRS9nbm9tZS1nZXR0aW5nLXN0YXJ0ZWQtZG9jcyIKICNjaGFuZ2Vsb2c9 Imh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS1nZXR0aW5nLXN0YXJ0ZWQtZG9j cy9yYXcvbWFzdGVyL05FV1MiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8k e3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT1mNzBj ZTJjYTIzYWQ3ODYyMTVmM2M5MmVjODU3ODNlM2FhYmVkMDdlNGY3ODcwMGZhMjdmOWIyY2Y3NmUw M2RiCitjaGVja3N1bT0wNDk0Yjg5MTNhOTQ2YjY0NTA1MzZlMTIwYzE1NGFiZDI5MjM4ZWJiYTJm NTI3MzQ1OTJiMWY2NDVlNTIxZGM2CgpGcm9tIGJjM2E5MjMyNTZiZjg1ZjlmNzcwY2MzMWM3Mjgz ZWUyZDQwMWY1OTggTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQu 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 ZXZlbF9wYWNrYWdlKCkgewoKRnJvbSA1ZWRlN2FjNWZmYTM2MjUyZGUzZjIzNjlhMzY3YWU0OTU0 M2FmMzQwIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91 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 NTkwNjNhNGJjODA3MzQ2MDcwZThlN2ZlYzhmNTNjZDA3NTdmNjY2MmMxYjMyMwoKRnJvbSAzOWU0 M2JjZmEzN2YyMjYxNjJhNzg5Mjc5NTNhM2YyNDY0NzcxZjczIE1vbiBTZXAgMTcgMDA6MDA6MDAg MjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBXZWQsIDI5IEFw ciAyMDIwIDA1OjMyOjEwICswNjAwClN1YmplY3Q6IFtQQVRDSCAzNS81Ml0gZ25vbWUtbWVudXM6 IHVwZGF0ZSB0byAzLjM2LjAuCgotLS0KIHNyY3BrZ3MvZ25vbWUtbWVudXMvdGVtcGxhdGUgfCA2 ICsrKy0tLQogMSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkK CmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLW1lbnVzL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9t ZS1tZW51cy90ZW1wbGF0ZQppbmRleCAyOTEwMjEyOWMzOC4uZTc4N2ZiOGRlNmIgMTAwNjQ0Ci0t LSBhL3NyY3BrZ3MvZ25vbWUtbWVudXMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS1tZW51 cy90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLW1l bnVzJwogcGtnbmFtZT1nbm9tZS1tZW51cwotdmVyc2lvbj0zLjMyLjAKLXJldmlzaW9uPTIKK3Zl cnNpb249My4zNi4wCityZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBidWls ZF9oZWxwZXI9ImdpciIKIGNvbmZpZ3VyZV9hcmdzPSItLWRpc2FibGUtc3RhdGljIgpAQCAtMTIs NyArMTIsNyBAQCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+ IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciwgTEdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFn ZT0iaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLW1lbnVzIgogZGlzdGZpbGVz PSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVy c2lvbn0udGFyLnh6IgotY2hlY2tzdW09Yzg1MGM2NGIyMDc0MjY1ZmU1OWUwOTlhMzQwYjg2ODlj ZjNkZDQ2NThkYzlmZWRkZDJhYjVlOTVmMWE3NGI3NAorY2hlY2tzdW09ZDkzNDhmMzhiZGU5NTZm YzMyNzUzYjI4YzFjZGUxOWMxNzViZmRiZjFmNGQ1YjA2MDAzYjNhYTA5MTUzYmIxZgogCiBidWls ZF9vcHRpb25zPSJnaXIiCiBidWlsZF9vcHRpb25zX2RlZmF1bHQ9ImdpciIKCkZyb20gOWE1MjVk NjZmOTA0YmJkOGRkZmE0YzM4OGQxODQzOWE5MmEzZWVmYyBNb24gU2VwIDE3IDAwOjAwOjAwIDIw MDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogRnJpLCAxIE1heSAy MDIwIDA2OjAzOjU1ICswNjAwClN1YmplY3Q6IFtQQVRDSCAzNi81Ml0gZ25vbWUtZmxhc2hiYWNr OiB1cGRhdGUgdG8gMy4zNi4zLgoKQWRkZWQgUEFNIGNvbmZpZyB0byBlbmFibGUgc2NyZWVuIGxv Y2tpbmcuCi0tLQogLi4uL2dub21lLWZsYXNoYmFjay9maWxlcy9nbm9tZS1mbGFzaGJhY2sucGFt IHwgIDYgKysrKwogLi4uL2dub21lLWZsYXNoYmFjay9wYXRjaGVzL2NvbXBpei0wLjgucGF0Y2gg IHwgMjggKysrKysrKysrKysrKysrKysrKwogc3JjcGtncy9nbm9tZS1mbGFzaGJhY2svdGVtcGxh dGUgICAgICAgICAgICAgIHwgMjcgKysrKysrKysrKysrLS0tLS0tCiAzIGZpbGVzIGNoYW5nZWQs IDUyIGluc2VydGlvbnMoKyksIDkgZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3Jj cGtncy9nbm9tZS1mbGFzaGJhY2svZmlsZXMvZ25vbWUtZmxhc2hiYWNrLnBhbQogY3JlYXRlIG1v ZGUgMTAwNjQ0IHNyY3BrZ3MvZ25vbWUtZmxhc2hiYWNrL3BhdGNoZXMvY29tcGl6LTAuOC5wYXRj aAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtZmxhc2hiYWNrL2ZpbGVzL2dub21lLWZsYXNo YmFjay5wYW0gYi9zcmNwa2dzL2dub21lLWZsYXNoYmFjay9maWxlcy9nbm9tZS1mbGFzaGJhY2su cGFtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi5lYmJiNTFkZDBlOAot LS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvZ25vbWUtZmxhc2hiYWNrL2ZpbGVzL2dub21lLWZs YXNoYmFjay5wYW0KQEAgLTAsMCArMSw2IEBACisjJVBBTS0xLjAKK2F1dGggICAgICAgaW5jbHVk ZQlzeXN0ZW0tYXV0aAorYXV0aCAgICAgICBvcHRpb25hbCAgICAgcGFtX2dub21lX2tleXJpbmcu c28KK2FjY291bnQgICAgaW5jbHVkZQlzeXN0ZW0tYXV0aAorcGFzc3dvcmQgICBpbmNsdWRlCXN5 c3RlbS1hdXRoCitzZXNzaW9uICAgIGluY2x1ZGUJc3lzdGVtLWF1dGgKZGlmZiAtLWdpdCBhL3Ny Y3BrZ3MvZ25vbWUtZmxhc2hiYWNrL3BhdGNoZXMvY29tcGl6LTAuOC5wYXRjaCBiL3NyY3BrZ3Mv Z25vbWUtZmxhc2hiYWNrL3BhdGNoZXMvY29tcGl6LTAuOC5wYXRjaApuZXcgZmlsZSBtb2RlIDEw MDY0NAppbmRleCAwMDAwMDAwMDAwMC4uZThhMmE1Yzg3ZmQKLS0tIC9kZXYvbnVsbAorKysgYi9z cmNwa2dzL2dub21lLWZsYXNoYmFjay9wYXRjaGVzL2NvbXBpei0wLjgucGF0Y2gKQEAgLTAsMCAr MSwyOCBAQAorZGlmZiAtLWdpdCBjb25maWd1cmUgY29uZmlndXJlCitpbmRleCAyNmNlYTUxLi5k MjQ2M2NjIDEwMDc1NQorLS0tIGNvbmZpZ3VyZQorKysrIGNvbmZpZ3VyZQorQEAgLTIwODQyLDgg KzIwODQyLDggQEAgZmkKKyBpZiB0ZXN0ICJ4JHdpdGhfY29tcGl6X3Nlc3Npb24iICE9ICJ4bm8i OyB0aGVuIDoKKyAKKyAgIGlmIHRlc3QgLW4gIiRQS0dfQ09ORklHIiAmJiBcCistICAgIHsgeyAk YXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBcJFBLR19DT05GSUcgLS1leGlz dHMgLS1wcmludC1lcnJvcnMgXCJsaWJjb21waXpjb25maWcgPj0gMC45LjE0LjBcIiI7IH0gPiY1 CistICAoJFBLR19DT05GSUcgLS1leGlzdHMgLS1wcmludC1lcnJvcnMgImxpYmNvbXBpemNvbmZp ZyA+PSAwLjkuMTQuMCIpIDI+JjUKKysgICAgeyB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5l bm8tJExJTkVOT306IFwkUEtHX0NPTkZJRyAtLWV4aXN0cyAtLXByaW50LWVycm9ycyBcImxpYmNv bXBpemNvbmZpZyA+PSAwLjguMTYuMFwiIjsgfSA+JjUKKysgICgkUEtHX0NPTkZJRyAtLWV4aXN0 cyAtLXByaW50LWVycm9ycyAibGliY29tcGl6Y29uZmlnID49IDAuOC4xNi4wIikgMj4mNQorICAg YWNfc3RhdHVzPSQ/CisgICAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBc JD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgIHRlc3QgJGFjX3N0YXR1cyA9IDA7IH07IHRoZW4KK2Rp ZmYgLS1naXQgY29uZmlndXJlLmFjIGNvbmZpZ3VyZS5hYworaW5kZXggYjZlMTQ3MC4uZDI4YTcw YiAxMDA2NDQKKy0tLSBjb25maWd1cmUuYWMKKysrKyBjb25maWd1cmUuYWMKK0BAIC0zNDAsNyAr MzQwLDcgQEAgQUNfQVJHX1dJVEgoW2NvbXBpei1zZXNzaW9uXSwKKyAgICAgICAgICAgICBbd2l0 aF9jb21waXpfc2Vzc2lvbj0iJHdpdGh2YWwiXSwgW3dpdGhfY29tcGl6X3Nlc3Npb249ImF1dG8i XSkKKyAKKyBBU19JRihbdGVzdCAieCR3aXRoX2NvbXBpel9zZXNzaW9uIiAhPSAieG5vIl0sIFsK Ky0gIFBLR19DSEVDS19FWElTVFMoW2xpYmNvbXBpemNvbmZpZyA+PSAwLjkuMTQuMF0sCisrICBQ S0dfQ0hFQ0tfRVhJU1RTKFtsaWJjb21waXpjb25maWcgPj0gMC44LjE2LjBdLAorICAgICAgICAg ICAgICAgICAgICBbZm91bmRfY29tcGl6PSJ5ZXMiXSwgW2ZvdW5kX2NvbXBpej0ibm8iXSkKKyAK KyAgIEFTX0lGKFt0ZXN0ICJ4JGZvdW5kX2NvbXBpeiIgPSAieHllcyJdLCBbCmRpZmYgLS1naXQg YS9zcmNwa2dzL2dub21lLWZsYXNoYmFjay90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25vbWUtZmxhc2hi YWNrL3RlbXBsYXRlCmluZGV4IGQzMjEyMGNhYjZmLi4wODU2NmRmNWZkNCAxMDA2NDQKLS0tIGEv c3JjcGtncy9nbm9tZS1mbGFzaGJhY2svdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS1mbGFz aGJhY2svdGVtcGxhdGUKQEAgLTEsMjAgKzEsMjkgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2du b21lLWZsYXNoYmFjaycKIHBrZ25hbWU9Z25vbWUtZmxhc2hiYWNrCi12ZXJzaW9uPTMuMzQuMgor dmVyc2lvbj0zLjM2LjMKIHJldmlzaW9uPTEKIGJ1aWxkX2hlbHBlcj1naXIKIGJ1aWxkX3N0eWxl PWdudS1jb25maWd1cmUKLWNvbmZpZ3VyZV9hcmdzPSItLWVuYWJsZS1jb21waWxlLXdhcm5pbmdz PW1pbmltdW0iCi1ob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcgYXV0b21ha2UgZ2xpYi1kZXZl bCBnZXR0ZXh0IgotbWFrZWRlcGVuZHM9Imd0ayszLWRldmVsIGdzZXR0aW5ncy1kZXNrdG9wLXNj aGVtYXMtZGV2ZWwKLSBsaWJnbGliLWRldmVsIGdkay1waXhidWYtZGV2ZWwgdXBvd2VyLWRldmVs IGlidXMtZGV2ZWwgcG9sa2l0LWRldmVsCi0gcHVsc2VhdWRpby1kZXZlbCBsaWJjYW5iZXJyYS1k ZXZlbCBsaWJ4Y2ItZGV2ZWwgbGliWDExLWRldmVsIHBhbmdvLWRldmVsCi0gbGlieGtiZmlsZS1k ZXZlbCBnbm9tZS1ibHVldG9vdGgtZGV2ZWwgZ25vbWUtZGVza3RvcC1kZXZlbCIKK2NvbmZpZ3Vy ZV9hcmdzPSItLXdpdGgtY29tcGl6LXNlc3Npb24gLS1lbmFibGUtY29tcGlsZS13YXJuaW5ncz1t aW5pbXVtIgoraG9zdG1ha2VkZXBlbmRzPSJnZXR0ZXh0LWRldmVsIHBrZy1jb25maWcgYXV0b21h a2UgZ2xpYi1kZXZlbCBnZXR0ZXh0IGxpYnRvb2wiCittYWtlZGVwZW5kcz0iZ3RrKzMtZGV2ZWwg cGFtLWRldmVsIGdzZXR0aW5ncy1kZXNrdG9wLXNjaGVtYXMtZGV2ZWwgZWxvZ2luZC1kZXZlbAor IGdkbS1kZXZlbCBsaWJjb21waXpjb25maWctZGV2ZWwgbGliZ2xpYi1kZXZlbCBnZGstcGl4YnVm LWRldmVsIHVwb3dlci1kZXZlbCBpYnVzLWRldmVsCisgcG9sa2l0LWRldmVsIHB1bHNlYXVkaW8t ZGV2ZWwgbGliY2FuYmVycmEtZGV2ZWwgbGlieGNiLWRldmVsIGxpYlgxMS1kZXZlbCBwYW5nby1k ZXZlbAorIGxpYnhrYmZpbGUtZGV2ZWwgZ25vbWUtYmx1ZXRvb3RoLWRldmVsIGdub21lLWRlc2t0 b3AtZGV2ZWwgZ25vbWUtcGFuZWwtZGV2ZWwiCiBkZXBlbmRzPSJnbm9tZS1ibHVldG9vdGggZ25v bWUtc2Vzc2lvbiBnbm9tZS1zZXR0aW5ncy1kYWVtb24KLSBnbm9tZS1wYW5lbCBnbm9tZS10aGVt ZXMtc3RhbmRhcmQgbWV0YWNpdHkiCisgZ25vbWUtcGFuZWwgZ25vbWUtdGhlbWVzLWV4dHJhIG1l dGFjaXR5Igogc2hvcnRfZGVzYz0iR05PTUUgMyBzZXNzaW9uIHdpdGggc2ltaWxhciB1c2VyIGV4 cGVyaWVuY2UgdG8gdGhlIEdOT01FIDIueCBzZXJpZXMiCiBtYWludGFpbmVyPSJzaGl6b25pYyA8 cmVhbHRpYXpAZ21haWwuY29tPiIKIGxpY2Vuc2U9IkdQTC0zLjAtb3ItbGF0ZXIiCiBob21lcGFn ZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9Qcm9qZWN0cy9Hbm9tZUZsYXNoYmFjayIKIGRpc3Rm aWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0k e3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTNiZTY1Mzg4Y2QyYzhmMzk3NDFiY2MwNWRhODdl ZjQwMDM1MTgzYTlhMzk1MDJkNjc2OTYyNDJjMmFlYjQ2OWMKK2NoZWNrc3VtPTJkYmE5ZWE0MGYy ZGE4MWMyMjk1NGE4Y2NjMjlmOGYxZmE0Y2E4Mzk1YTZiYjU1MjUwNjYzNTgzMjc1MWMxYTcKKwor cHJlX2NvbmZpZ3VyZSgpIHsKKwlhdXRvcmVjb25mIC12ZmkKK30KKworcG9zdF9pbnN0YWxsKCkg eworCXZpbnN0YWxsICR7RklMRVNESVJ9L2dub21lLWZsYXNoYmFjay5wYW0gNjQ0IC9ldGMvcGFt LmQgZ25vbWUtZmxhc2hiYWNrCisJdnNlZCAtaSAtZSAicy8gLS1zeXN0ZW1kLy9nIiAke0RFU1RE SVJ9L3Vzci9saWJleGVjL2dub21lLWZsYXNoYmFjay17Y29tcGl6LG1ldGFjaXR5fQorfQoKRnJv bSA4YWQ1NjMxNWYzNDgxZmZkZjAxNGJiMDI2OGRlMzViOGExZWRlMDQ0IE1vbiBTZXAgMTcgMDA6 MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBXZWQs IDI5IEFwciAyMDIwIDA2OjU5OjQwICswNjAwClN1YmplY3Q6IFtQQVRDSCAzNy81Ml0gZ3JhcGhl bmU6IHVwZGF0ZSB0byAxLjEwLjAuCgotLS0KIHNyY3BrZ3MvZ3JhcGhlbmUvdGVtcGxhdGUgfCAx MCArKysrKy0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9u cygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ3JhcGhlbmUvdGVtcGxhdGUgYi9zcmNwa2dzL2dy YXBoZW5lL3RlbXBsYXRlCmluZGV4IGYyZmU4MWEzZjQ3Li5jYjczODVmZWRiNyAxMDA2NDQKLS0t IGEvc3JjcGtncy9ncmFwaGVuZS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dyYXBoZW5lL3RlbXBs YXRlCkBAIC0xLDEwICsxLDEwIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdncmFwaGVuZScKIHBr Z25hbWU9Z3JhcGhlbmUKLXZlcnNpb249MS44LjIKLXJldmlzaW9uPTIKK3ZlcnNpb249MS4xMC4w CityZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1tZXNvbgogYnVpbGRfaGVscGVyPSJnaXIiCi1jb25m aWd1cmVfYXJncz0iLUR0ZXN0cz1mYWxzZSAtRGJlbmNobWFya3M9ZmFsc2UKK2NvbmZpZ3VyZV9h cmdzPSItRHRlc3RzPWZhbHNlIC1EYXJtX25lb249ZmFsc2UKICAtRGludHJvc3BlY3Rpb249JCh2 b3B0X2lmIGdpciB0cnVlIGZhbHNlKSIKIGhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyIKIG1h a2VkZXBlbmRzPSJsaWJnbGliLWRldmVsIgpAQCAtMTMsMTMgKzEzLDEzIEBAIG1haW50YWluZXI9 IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJNSVQiCiBob21l cGFnZT0iaHR0cHM6Ly9naXRodWIuY29tL2ViYXNzaS9ncmFwaGVuZSIKIGRpc3RmaWxlcz0iJHtH Tk9NRV9TSVRFfS9ncmFwaGVuZS8ke3ZlcnNpb24lLip9L2dyYXBoZW5lLSR7dmVyc2lvbn0udGFy Lnh6IgotY2hlY2tzdW09YjNmY2YyMDk5NmU1N2IxZjRkZjM5NDFjYWFjMTBmMTQzYmIyOTg5MGE0 MmY3YTY1NDA3Y2QxOTI3MWZjODlmNworY2hlY2tzdW09NDA2ZDk3ZjUxZGQ0Y2E2MWU5MWY4NDY2 NmEwMGMzZTk3NmQzZTY2N2NkMjQ4Yjc2ZDkyZmRiMzVjZTg3NjQ5OQogCiBidWlsZF9vcHRpb25z PSJnaXIiCiBidWlsZF9vcHRpb25zX2RlZmF1bHQ9ImdpciIKIAogcG9zdF9pbnN0YWxsKCkgewot CXZsaWNlbnNlIExJQ0VOU0UKKwl2bGljZW5zZSBMSUNFTlNFLnR4dCBMSUNFTlNFCiB9CiAKIGdy YXBoZW5lLWRldmVsX3BhY2thZ2UoKSB7CgpGcm9tIDIxODE5MWEwNzQzYzcyNGFmNmQ1MzZmZGI4 NmRmNWEyOGMyNWM1N2IgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFi aWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFRodSwgMzAgQXByIDIwMjAgMTE6NTM6MjkgKzA2MDAK U3ViamVjdDogW1BBVENIIDM4LzUyXSBtdXR0ZXI6IHVwZGF0ZSB0byAzLjM2LjIuCgotLS0KIGNv bW1vbi9zaGxpYnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IDE4ICsrKysrKy0t LS0tLQogLi4uL3BhdGNoZXMvZml4LWNvZ2wtZWdsLWluY2x1ZGVzLnBhdGNoICAgICAgIHwgMTEg LS0tLS0tLS0KIHNyY3BrZ3MvbXV0dGVyL3RlbXBsYXRlICAgICAgICAgICAgICAgICAgICAgICB8 IDI4ICsrKysrKysrKy0tLS0tLS0tLS0KIDMgZmlsZXMgY2hhbmdlZCwgMjMgaW5zZXJ0aW9ucygr KSwgMzQgZGVsZXRpb25zKC0pCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9tdXR0ZXIvcGF0 Y2hlcy9maXgtY29nbC1lZ2wtaW5jbHVkZXMucGF0Y2gKCmRpZmYgLS1naXQgYS9jb21tb24vc2hs aWJzIGIvY29tbW9uL3NobGlicwppbmRleCA0YmU1YmYwMDYyNC4uNTM5Y2M4MWNlM2YgMTAwNjQ0 Ci0tLSBhL2NvbW1vbi9zaGxpYnMKKysrIGIvY29tbW9uL3NobGlicwpAQCAtMzAxMiwxNSArMzAx MiwxNSBAQCBsaWJkZWNvcmF0aW9uLnNvLjAgY29tcGl6LWNvcmUtMC44LjE0XzEKIGxpYmNvbXBp emNvbmZpZy5zby4wIGxpYmNvbXBpemNvbmZpZy0wLjguMTRfMQogbGliZW1lcmFsZGVuZ2luZS5z by4wIGVtZXJhbGQtMC44LjE0XzEKIGxpYmhhbmd1bC5zby4xIGxpYmhhbmd1bC0wLjEuMF8xCi1s aWJtdXR0ZXItNS5zby4wIG11dHRlci0zLjM0LjFfMQotbGlibXV0dGVyLWNsdXR0ZXItNS5zbyBt dXR0ZXItMy4zNC4xXzEKLWxpYm11dHRlci1jbHV0dGVyLTUuc28uMCBtdXR0ZXItMy4zNC4xXzEK LWxpYm11dHRlci1jb2dsLXBhdGgtNS5zbyBtdXR0ZXItMy4zNC4xXzEKLWxpYm11dHRlci1jb2ds LXBhdGgtNS5zby4wIG11dHRlci0zLjM0LjFfMQotbGlibXV0dGVyLWNvZ2wtNS5zbyBtdXR0ZXIt My4zNC4xXzEKLWxpYm11dHRlci1jb2dsLTUuc28uMCBtdXR0ZXItMy4zNC4xXzEKLWxpYm11dHRl ci1jb2dsLXBhbmdvLTUuc28gbXV0dGVyLTMuMzQuMV8xCi1saWJtdXR0ZXItY29nbC1wYW5nby01 LnNvLjAgbXV0dGVyLTMuMzQuMV8xCitsaWJtdXR0ZXItNi5zby4wIG11dHRlci0zLjM2LjFfMQor bGlibXV0dGVyLWNsdXR0ZXItNi5zbyBtdXR0ZXItMy4zNi4xXzEKK2xpYm11dHRlci1jbHV0dGVy LTYuc28uMCBtdXR0ZXItMy4zNi4xXzEKK2xpYm11dHRlci1jb2dsLXBhdGgtNi5zbyBtdXR0ZXIt My4zNi4xXzEKK2xpYm11dHRlci1jb2dsLXBhdGgtNi5zby4wIG11dHRlci0zLjM2LjFfMQorbGli bXV0dGVyLWNvZ2wtNi5zbyBtdXR0ZXItMy4zNi4xXzEKK2xpYm11dHRlci1jb2dsLTYuc28uMCBt dXR0ZXItMy4zNi4xXzEKK2xpYm11dHRlci1jb2dsLXBhbmdvLTYuc28gbXV0dGVyLTMuMzYuMV8x CitsaWJtdXR0ZXItY29nbC1wYW5nby02LnNvLjAgbXV0dGVyLTMuMzYuMV8xCiBsaWJnZW9jbHVl LTIuc28uMCBnZW9jbHVlMi0yLjQuNF8xCiBsaWJnZXB1Yi5zby4wIGxpYmdlcHViLTAuNF8xCiBs aWJzbG9weS5zby43LjUgc2xvcC03LjVfMQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9tdXR0ZXIvcGF0 Y2hlcy9maXgtY29nbC1lZ2wtaW5jbHVkZXMucGF0Y2ggYi9zcmNwa2dzL211dHRlci9wYXRjaGVz L2ZpeC1jb2dsLWVnbC1pbmNsdWRlcy5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k ZXggZDkwOTg4ODg3YzMuLjAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvbXV0dGVyL3BhdGNoZXMv Zml4LWNvZ2wtZWdsLWluY2x1ZGVzLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMTEgKzAsMCBA QAotLS0tIGNvZ2wvY29nbC9tZXNvbi5idWlsZAkyMDE5LTEwLTA4IDE5OjE1OjEwLjAwMDAwMDAw MCArMDIwMAotKysrIGNvZ2wvY29nbC9tZXNvbi5idWlsZAkyMDE5LTEyLTE2IDE1OjQ1OjQ0LjAz NzY0MDU0OCArMDEwMAotQEAgLTQ4LDcgKzQ4LDcgQEAKLSBidWlsdF9oZWFkZXJzICs9IFtjb2ds X2dsX2hlYWRlcl9oXQotIAotIGlmIGhhdmVfZWdsCi0tICBjb2dsX2VnbF9pbmNsdWRlc19zdHJp bmcgPSAnI2luY2x1ZGUgPEVHTC9lZ2wuaD5cbiNpbmNsdWRlIDxFR0wvZWdsZXh0Lmg+JwotKyAg Y29nbF9lZ2xfaW5jbHVkZXNfc3RyaW5nID0gJyNpbmNsdWRlIDxFR0wvZWdsLmg+XG4jaW5jbHVk ZSA8RUdML2VnbGV4dC5oPlxuI2luY2x1ZGUgPEVHTC9lZ2xtZXNhZXh0Lmg+JwotIGVsc2UKLSAg IGNvZ2xfZWdsX2luY2x1ZGVzX3N0cmluZyA9ICcnCi0gZW5kaWYKZGlmZiAtLWdpdCBhL3NyY3Br Z3MvbXV0dGVyL3RlbXBsYXRlIGIvc3JjcGtncy9tdXR0ZXIvdGVtcGxhdGUKaW5kZXggNGUwYmQz MmI2N2QuLjdjMTQ4MjlhZjllIDEwMDY0NAotLS0gYS9zcmNwa2dzL211dHRlci90ZW1wbGF0ZQor KysgYi9zcmNwa2dzL211dHRlci90ZW1wbGF0ZQpAQCAtMSwzNCArMSwzNCBAQAogIyBUZW1wbGF0 ZSBmaWxlIGZvciAnbXV0dGVyJwogcGtnbmFtZT1tdXR0ZXIKLXZlcnNpb249My4zNC4xCi1yZXZp c2lvbj0yCit2ZXJzaW9uPTMuMzYuMgorcmV2aXNpb249MQogYnVpbGRfaGVscGVyPSJnaXIiCiBi dWlsZF9zdHlsZT1tZXNvbgotY29uZmlndXJlX2FyZ3M9Ii1EZWdsX2RldmljZT10cnVlIC1EdWRl dj10cnVlIC1EbmF0aXZlX2JhY2tlbmQ9dHJ1ZQotIC1EcHJvZmlsZXI9ZmFsc2UgLURpbnRyb3Nw ZWN0aW9uPXRydWUgLUR4d2F5bGFuZF9wYXRoPS91c3IvYmluL1h3YXlsYW5kIgorY29uZmlndXJl X2FyZ3M9Ii1EZWdsX2RldmljZT10cnVlIC1EdWRldj10cnVlIC1EbmF0aXZlX2JhY2tlbmQ9dHJ1 ZSAtRHByb2ZpbGVyPWZhbHNlCisgLURpbnRyb3NwZWN0aW9uPXRydWUgLUR4d2F5bGFuZF9pbml0 ZmQ9ZGlzYWJsZWQgLUR4d2F5bGFuZF9wYXRoPS91c3IvYmluL1h3YXlsYW5kIgogaG9zdG1ha2Vk ZXBlbmRzPSJnZXR0ZXh0IGdsaWItZGV2ZWwgcGtnLWNvbmZpZyB6ZW5pdHkgd2F5bGFuZC1kZXZl bCB4b3JnLXNlcnZlciIKLW1ha2VkZXBlbmRzPSJlbG9naW5kLWRldmVsIGdsaWItZGV2ZWwgZ25v bWUtZGVza3RvcC1kZXZlbCBqc29uLWdsaWItZGV2ZWwKLSBsaWJnbGliLWRldmVsIGxpYlNNLWRl dmVsIGxpYlh0c3QtZGV2ZWwgbGliY2FuYmVycmEtZGV2ZWwgbGliaW5wdXQtZGV2ZWwKLSBNZXNh TGliLWRldmVsIHBpcGV3aXJlLWRldmVsIHN0YXJ0dXAtbm90aWZpY2F0aW9uLWRldmVsIHdheWxh bmQtcHJvdG9jb2xzCi0gZ25vbWUtc2V0dGluZ3MtZGFlbW9uLWRldmVsIgorbWFrZWRlcGVuZHM9 ImVsb2dpbmQtZGV2ZWwgZ2xpYi1kZXZlbCBnbm9tZS1kZXNrdG9wLWRldmVsIGdyYXBoZW5lLWRl dmVsCisganNvbi1nbGliLWRldmVsIGxpYmdsaWItZGV2ZWwgbGliU00tZGV2ZWwgbGliWHRzdC1k ZXZlbCBsaWJjYW5iZXJyYS1kZXZlbAorIGxpYmlucHV0LWRldmVsIE1lc2FMaWItZGV2ZWwgcGlw ZXdpcmUtZGV2ZWwgc3RhcnR1cC1ub3RpZmljYXRpb24tZGV2ZWwKKyB3YXlsYW5kLXByb3RvY29s cyBnbm9tZS1zZXR0aW5ncy1kYWVtb24tZGV2ZWwiCiBkZXBlbmRzPSJkZXNrdG9wLWZpbGUtdXRp bHMgemVuaXR5Igogc2hvcnRfZGVzYz0iTGlnaHR3ZWlnaHQgR1RLKzMgd2luZG93IG1hbmFnZXIi CiBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5z ZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL1By b2plY3RzL011dHRlci8iCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3Zl cnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT1iYTE4MjZj Zjg4YmRiODFlNjM5NDNjYWMwMTRhOGU4YmNmMzVlYzE3OGM1MzI2NDQwMWY5YzcyZmRlYWI3NThl Ci1zaGxpYl9wcm92aWRlcz0ibGlibXV0dGVyLWNsdXR0ZXItNS5zbyBsaWJtdXR0ZXItY29nbC01 LnNvCi0gbGlibXV0dGVyLWNvZ2wtcGFuZ28tNS5zbyBsaWJtdXR0ZXItY29nbC1wYXRoLTUuc28i CitjaGVja3N1bT03NWIzNzY0ZWIwNTlmYzkzNWE1NDUyM2E2MmJlYzFiZWRiOTM1Mjg0MDQ2YjZk YWE1MDg2OWIxOTVhZGRkYWY0CitzaGxpYl9wcm92aWRlcz0ibGlibXV0dGVyLWNsdXR0ZXItNi5z byBsaWJtdXR0ZXItY29nbC02LnNvCisgbGlibXV0dGVyLWNvZ2wtcGFuZ28tNi5zbyBsaWJtdXR0 ZXItY29nbC1wYXRoLTYuc28iCiAKIG11dHRlci1kZXZlbF9wYWNrYWdlKCkgewotCWRlcGVuZHM9 ImdzZXR0aW5ncy1kZXNrdG9wLXNjaGVtYXMgZ3RrKzMtZGV2ZWwgY2x1dHRlci1kZXZlbCBsaWJY MTEtZGV2ZWwKLQkgbGliWHRzdC1kZXZlbCBtdXR0ZXItJHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIK KwlkZXBlbmRzPSJnc2V0dGluZ3MtZGVza3RvcC1zY2hlbWFzIGdyYXBoZW5lLWRldmVsIGd0aysz LWRldmVsIGNsdXR0ZXItZGV2ZWwKKwkgbGliWDExLWRldmVsIGxpYlh0c3QtZGV2ZWwgbXV0dGVy LSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0iCiAJc2hvcnRfZGVzYys9IiAtIGRldmVsb3BtZW50IGZp bGVzIgogCXBrZ19pbnN0YWxsKCkgewogCQl2bW92ZSB1c3IvaW5jbHVkZQogCQl2bW92ZSB1c3Iv bGliL3BrZ2NvbmZpZwotCQl2bW92ZSAidXNyL2xpYi9tdXR0ZXItNS8qLmdpciIKKwkJdm1vdmUg InVzci9saWIvbXV0dGVyLTYvKi5naXIiCiAJCXZtb3ZlICJ1c3IvbGliLyouc28iCiAJfQogfQoK RnJvbSAxNjY4ZGVlZjBhZmUwNmMwOGQ0NDIxNmYxNzQxNDMzYTI4YjRjYzQxIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBN b24sIDQgTWF5IDIwMjAgMTQ6Mzg6MjMgKzA2MDAKU3ViamVjdDogW1BBVENIIDM5LzUyXSBnbm9t ZS1zaGVsbDogdXBkYXRlIHRvIDMuMzYuMi4KCi0tLQogc3JjcGtncy9nbm9tZS1zaGVsbC90ZW1w bGF0ZSB8IDggKysrKy0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDQgZGVs ZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1zaGVsbC90ZW1wbGF0ZSBiL3Ny Y3BrZ3MvZ25vbWUtc2hlbGwvdGVtcGxhdGUKaW5kZXggOTZjNWI4MGExOTQuLmI2N2FjNjUzZDkw IDEwMDY0NAotLS0gYS9zcmNwa2dzL2dub21lLXNoZWxsL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mv Z25vbWUtc2hlbGwvdGVtcGxhdGUKQEAgLTEsMTIgKzEsMTIgQEAKICMgVGVtcGxhdGUgZmlsZSBm b3IgJ2dub21lLXNoZWxsJwogcGtnbmFtZT1nbm9tZS1zaGVsbAotdmVyc2lvbj0zLjM0LjEKK3Zl cnNpb249My4zNi4yCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1tZXNvbgogYnVpbGRfaGVscGVy PWdpcgogY29uZmlndXJlX2FyZ3M9Ii1Ec3lzdGVtZD1mYWxzZSIKLWhvc3RtYWtlZGVwZW5kcz0i Z29iamVjdC1pbnRyb3NwZWN0aW9uIGd0ay1kb2MgbGlieHNsdCBwa2ctY29uZmlnIHB5dGhvbjMg c2Fzc2MKLSBhc2NpaWRvYyBwZXJsIGdsaWItZGV2ZWwgbXV0dGVyLWRldmVsIgoraG9zdG1ha2Vk ZXBlbmRzPSJnZXR0ZXh0IGdvYmplY3QtaW50cm9zcGVjdGlvbiBndGstZG9jIGxpYnhzbHQgcGtn LWNvbmZpZyBweXRob24zIHNhc3NjCisgYXNjaWlkb2MgcGVybCBnanMtZGV2ZWwgZ2xpYi1kZXZl bCBtdXR0ZXItZGV2ZWwiCiBtYWtlZGVwZW5kcz0iYXQtc3BpMi1hdGsgY2FyaWJvdS1kZXZlbCBl dm9sdXRpb24tZGF0YS1zZXJ2ZXItZGV2ZWwgZm9sa3MtZGV2ZWwKICBnY3ItZGV2ZWwgZ2pzLWRl dmVsIGdub21lLWJsdWV0b290aC1kZXZlbCBnbm9tZS1jb250cm9sLWNlbnRlci1kZXZlbCBnbm9t ZS1kZXNrdG9wLWRldmVsCiAgZ25vbWUtbWVudXMtZGV2ZWwgZ3NldHRpbmdzLWRlc2t0b3Atc2No ZW1hcy1kZXZlbCBnc3RyZWFtZXIxLWRldmVsIGd0ayszLWRldmVsCkBAIC0yMSw0ICsyMSw0IEBA IGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21l Lm9yZy9Qcm9qZWN0cy9Hbm9tZVNoZWxsIgogY2hhbmdlbG9nPSJodHRwczovL3Jhdy5naXRodWJ1 c2VyY29udGVudC5jb20vR05PTUUvZ25vbWUtc2hlbGwvZ25vbWUtMy0zMC9ORVdTIgogZGlzdGZp bGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7 dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09Y2NkODY1NTliOWM4OTdjMjE5ZDJkMmViZmRiODQx M2VmYTRjMWJlZTg0NjQyN2M3NTBjYjhhMzAxYjNmNmQxZQorY2hlY2tzdW09M2IxMjliMmExZjFm MTY1NGExMDEwOThlYThiOTFhNzNhODM2YWFkN2QxNjZmNTJkZDQ2YjFjNjAzN2VjMTc1MwoKRnJv bSAyZTg3YmQzNWU4YzNlZTgzMGIxMWM3YzRjYTBiZjk1NTk4YzAwNWJjIE1vbiBTZXAgMTcgMDA6 MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBNb24s IDQgTWF5IDIwMjAgMTQ6Mzg6MzIgKzA2MDAKU3ViamVjdDogW1BBVENIIDQwLzUyXSBnbm9tZS1z aGVsbC1leHRlbnNpb25zOiB1cGRhdGUgdG8gMy4zNi4yLgoKLS0tCiBzcmNwa2dzL2dub21lLXNo ZWxsLWV4dGVuc2lvbnMvdGVtcGxhdGUgfCA2ICsrKy0tLQogMSBmaWxlIGNoYW5nZWQsIDMgaW5z ZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLXNo ZWxsLWV4dGVuc2lvbnMvdGVtcGxhdGUgYi9zcmNwa2dzL2dub21lLXNoZWxsLWV4dGVuc2lvbnMv dGVtcGxhdGUKaW5kZXggOTcxNjhiNDBmNjYuLmUxZGQ0M2JiMTUyIDEwMDY0NAotLS0gYS9zcmNw a2dzL2dub21lLXNoZWxsLWV4dGVuc2lvbnMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS1z aGVsbC1leHRlbnNpb25zL3RlbXBsYXRlCkBAIC0xLDE1ICsxLDE1IEBACiAjIFRlbXBsYXRlIGZp bGUgZm9yICdnbm9tZS1zaGVsbC1leHRlbnNpb25zJwogcGtnbmFtZT1nbm9tZS1zaGVsbC1leHRl bnNpb25zCi12ZXJzaW9uPTMuMzQuMQordmVyc2lvbj0zLjM2LjIKIHJldmlzaW9uPTEKIGFyY2hz PW5vYXJjaAogYnVpbGRfc3R5bGU9bWVzb24KIGNvbmZpZ3VyZV9hcmdzPSItRGV4dGVuc2lvbl9z ZXQ9YWxsIgotaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIgoraG9zdG1ha2VkZXBlbmRzPSJn ZXR0ZXh0IHBrZy1jb25maWciCiBkZXBlbmRzPSJnbm9tZS1zaGVsbD49JHt2ZXJzaW9ufSBuYXV0 aWx1cyB1bnppcCIKIHNob3J0X2Rlc2M9IkV4dGVuc2lvbnMgZm9yIEdOT01FIHNoZWxsLCBpbmNs dWRpbmcgY2xhc3NpYyBtb2RlIgogbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lk bGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6 Ly93aWtpLmdub21lLm9yZy9Qcm9qZWN0cy9Hbm9tZVNoZWxsL0V4dGVuc2lvbnMiCiBkaXN0Zmls ZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2 ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT1iMGFkNTExNDNiMWJmNDBkZWY0YTEwZjhmZDBhYjBm ZmI0NzIxODMwNDgwMDc5NGU2MmNhZGQyOWQwYWNjNzViCitjaGVja3N1bT05NzgyMDJkZTUxNWNk YjAzYTU4ODU4NTljNTM4MzY2YmNhOGZkNzg3NjJjZTk4YjE3MmFjMmMwMTI2ZjgwMDNmCgpGcm9t IGY1NTgyOWRhMzVhOWIyM2YwMTZhMGUwYWQ3MDk5MzU3OGQ2ZjY3NTEgTW9uIFNlcCAxNyAwMDow MDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFRodSwg NyBNYXkgMjAyMCAxMjoyNzo1NSArMDYwMApTdWJqZWN0OiBbUEFUQ0ggNDEvNTJdIGdkbTogdXBk YXRlIHRvIDMuMzYuMi4KCi0tLQogc3JjcGtncy9nZG0vdGVtcGxhdGUgfCA4ICsrKystLS0tCiAx IGZpbGUgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdp dCBhL3NyY3BrZ3MvZ2RtL3RlbXBsYXRlIGIvc3JjcGtncy9nZG0vdGVtcGxhdGUKaW5kZXggYmI1 YjQ4NjkyZDQuLjA5OWM0Y2M5ZDRkIDEwMDY0NAotLS0gYS9zcmNwa2dzL2dkbS90ZW1wbGF0ZQor KysgYi9zcmNwa2dzL2dkbS90ZW1wbGF0ZQpAQCAtMSwxMSArMSwxMSBAQAogIyBUZW1wbGF0ZSBm aWxlIGZvciAnZ2RtJwogcGtnbmFtZT1nZG0KLXZlcnNpb249My4zNC4xCit2ZXJzaW9uPTMuMzYu MgogcmV2aXNpb249MQogYnVpbGRfaGVscGVyPSJnaXIiCiBidWlsZF9zdHlsZT1nbnUtY29uZmln dXJlCiBjb25maWd1cmVfYXJncz0iJCh2b3B0X2VuYWJsZSBnaXIgaW50cm9zcGVjdGlvbikKLSAt LWRpc2FibGUtc2NoZW1hcy1jb21waWxlIC0tZGlzYWJsZS1zdGF0aWMgLS13aXRoLWRlZmF1bHQt cGFtLWNvbmZpZz1hcmNoCisgLS1kaXNhYmxlLXN0YXRpYyAtLXdpdGgtZGVmYXVsdC1wYW0tY29u ZmlnPWFyY2gKICAtLXdpdGgtYXQtc3BpLXJlZ2lzdHJ5ZC1kaXJlY3Rvcnk9L3Vzci9saWJleGVj IC0td2l0aG91dC10Y3Atd3JhcHBlcnMKICAtLXdpdGgtc2NyZWVuc2hvdC1kaXI9L3Zhci9saWIv Z2RtL2dyZWV0ZXIgLS1zYmluZGlyPS91c3IvYmluIC0td2l0aG91dC1wbHltb3V0aAogIC0td2l0 aC14YXV0aC1kaXI9L3J1bi9nZG0gLS13aXRoLXBpZC1maWxlPS9ydW4vZ2RtL2dkbS5waWQKQEAg LTE0LDE0ICsxNCwxNCBAQCBob3N0bWFrZWRlcGVuZHM9ImRjb25mIGdldHRleHQgaXRzdG9vbCBw a2ctY29uZmlnIgogbWFrZWRlcGVuZHM9ImFjY291bnRzc2VydmljZS1kZXZlbCBlbG9naW5kLWRl dmVsIGdldHRleHQtZGV2ZWwgZ2xpYi1kZXZlbAogIGlzby1jb2RlcyBsaWJTTS1kZXZlbCBsaWJj YW5iZXJyYS1kZXZlbCBuc3MtZGV2ZWwgcGFtLWRldmVsIHVwb3dlci1kZXZlbCIKIGRlcGVuZHM9 Imdub21lLXNldHRpbmdzLWRhZW1vbiBnbm9tZS1zaGVsbCB4b3JnLXNlcnZlciB4b3JnLXNlcnZl ci14d2F5bGFuZAotIHhyZGIiCisgeHJkYiBnc2V0dGluZ3MtZGVza3RvcC1zY2hlbWFzIgogY2hl Y2tkZXBlbmRzPSJjaGVjay1kZXZlbCIKIHNob3J0X2Rlc2M9IkdOT01FIERpc3BsYXkgTWFuYWdl ciIKIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNl bnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcv UHJvamVjdHMvR0RNIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJz aW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09ZTg1ZGY2NTdh YThkOTM2MWFmNGZiMTIyMDE0ZDhmMTIzYTkzYmZlNDVhNzY2MmZiYTJiMzczZDgzOWRiZDhkMwor Y2hlY2tzdW09M2Y1NjFjMTBhZTJlNTk0MmIwMzAyNmYwMmMwYWE3ZDg3MTJlMzgyNzA4YjE3YTA5 NzA4NzRkZjgxNzViODNhOAogCiBjb25mX2ZpbGVzPSIKIAkvZXRjL2dkbS9jdXN0b20uY29uZgoK RnJvbSAxMzhmM2RlYzcwYzhmMTk1MjFkZWNkOGViMTNjZWRiYjYyYWM5ZmZmIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBG cmksIDEgTWF5IDIwMjAgMTg6MjQ6MDIgKzA1MzAKU3ViamVjdDogW1BBVENIIDQyLzUyXSBidWRn aWUtZGVza3RvcDogcmVidWlsZCBhZ2FpbnN0CiBsaWJnbm9tZS1kZXNrdG9wLTMuc28uMTkKCi0t LQogLi4uL3BhdGNoZXMvTXV0dGVyLTMuMzUuOTAtc3VwcG9ydC0xOTE4LnBhdGNoIHwgMTI3MTMg KysrKysrKysrKysrKysrKwogc3JjcGtncy9idWRnaWUtZGVza3RvcC90ZW1wbGF0ZSAgICAgICAg ICAgICAgIHwgICAgIDkgKy0KIDIgZmlsZXMgY2hhbmdlZCwgMTI3MTggaW5zZXJ0aW9ucygrKSwg NCBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2J1ZGdpZS1kZXNrdG9w L3BhdGNoZXMvTXV0dGVyLTMuMzUuOTAtc3VwcG9ydC0xOTE4LnBhdGNoCgpkaWZmIC0tZ2l0IGEv c3JjcGtncy9idWRnaWUtZGVza3RvcC9wYXRjaGVzL011dHRlci0zLjM1LjkwLXN1cHBvcnQtMTkx OC5wYXRjaCBiL3NyY3BrZ3MvYnVkZ2llLWRlc2t0b3AvcGF0Y2hlcy9NdXR0ZXItMy4zNS45MC1z dXBwb3J0LTE5MTgucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAu LmJmZjFiYWQwMzlmCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9idWRnaWUtZGVza3RvcC9w YXRjaGVzL011dHRlci0zLjM1LjkwLXN1cHBvcnQtMTkxOC5wYXRjaApAQCAtMCwwICsxLDEyNzEz IEBACitGcm9tIDlkMDlhMWIxNWJiZjY2NzgwY2M4OWVmZjNjNGI4NGU2NjZiMGJmZGEgTW9uIFNl cCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBEYXZpZCBNb2hhbW1lZCA8Zm9zc2ZyZWVkb21AdXNl cnMubm9yZXBseS5naXRodWIuY29tPgorRGF0ZTogVHVlLCAxOCBGZWIgMjAyMCAwNjo0MDoxMiAr MDAwMAorU3ViamVjdDogW1BBVENIXSBNdXR0ZXIgMy4zNiBzdXBwb3J0ICgjMTkxOCkKKworKiBB ZGQgbXV0dGVyIDMuMzUuMiBzdXBwb3J0CisKKyogTXV0dGVyIGNvbXBpbGVyIGZsYWdzIG5lZWRz IHRvIGJlIHNwZWNpZmllZCBiZWZvcmUgZGVwZW5kZW5jeSBjaGVja3MKKworKiBSZWdlbmVyYXRl IHZhcGkgZm9yIDMuMzUuOTAKKworT3JpZ2luOiBodHRwczovL2dpdGh1Yi5jb20vc29sdXMtcHJv amVjdC9idWRnaWUtZGVza3RvcC9jb21taXRzLzlkMDlhMWIxNWIKKy0tLQorIHNyYy93bS9tZXNv bi5idWlsZCAgICAgICAgICAgICAgICB8ICAgMTIgKy0KKyBzcmMvd20vd20udmFsYSAgICAgICAg ICAgICAgICAgICAgfCAgIDE2ICstCisgdmFwaS9DbHV0dGVyLTYubWV0YWRhdGEgICAgICAgICAg IHwgIDIwNCArCisgdmFwaS9Db2dsLTYubWV0YWRhdGEgICAgICAgICAgICAgIHwgICAyNyArCisg dmFwaS9NZXRhLTYubWV0YWRhdGEgICAgICAgICAgICAgIHwgICA4MCArCisgdmFwaS9ncmFwaGVu ZS1nb2JqZWN0LTEuMC52YXBpICAgIHwgIDY5MSArKysKKyB2YXBpL2xpYm11dHRlci02LmRlcHMg ICAgICAgICAgICAgfCAgICA2ICsKKyB2YXBpL2xpYm11dHRlci02LnZhcGkgICAgICAgICAgICAg fCAxNDc1ICsrKysrCisgdmFwaS9tdXR0ZXItY2x1dHRlci02LWN1c3RvbS52YWxhIHwgIDE0NyAr CisgdmFwaS9tdXR0ZXItY2x1dHRlci02LmRlcHMgICAgICAgIHwgICAgNCArCisgdmFwaS9tdXR0 ZXItY2x1dHRlci02LnZhcGkgICAgICAgIHwgODY4NyArKysrKysrKysrKysrKysrKysrKysrKysr KysrKworIHZhcGkvbXV0dGVyLWNvZ2wtNi1jdXN0b20udmFsYSAgICB8ICAxMjUgKworIHZhcGkv bXV0dGVyLWNvZ2wtNi5kZXBzICAgICAgICAgICB8ICAgIDEgKworIHZhcGkvbXV0dGVyLWNvZ2wt Ni52YXBpICAgICAgICAgICB8IDEwNzcgKysrKworIDE0IGZpbGVzIGNoYW5nZWQsIDEyNTQ5IGlu c2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisgY3JlYXRlIG1vZGUgMTAwNjQ0IHZhcGkvQ2x1 dHRlci02Lm1ldGFkYXRhCisgY3JlYXRlIG1vZGUgMTAwNjQ0IHZhcGkvQ29nbC02Lm1ldGFkYXRh CisgY3JlYXRlIG1vZGUgMTAwNjQ0IHZhcGkvTWV0YS02Lm1ldGFkYXRhCisgY3JlYXRlIG1vZGUg MTAwNjQ0IHZhcGkvZ3JhcGhlbmUtZ29iamVjdC0xLjAudmFwaQorIGNyZWF0ZSBtb2RlIDEwMDY0 NCB2YXBpL2xpYm11dHRlci02LmRlcHMKKyBjcmVhdGUgbW9kZSAxMDA2NDQgdmFwaS9saWJtdXR0 ZXItNi52YXBpCisgY3JlYXRlIG1vZGUgMTAwNjQ0IHZhcGkvbXV0dGVyLWNsdXR0ZXItNi1jdXN0 b20udmFsYQorIGNyZWF0ZSBtb2RlIDEwMDY0NCB2YXBpL211dHRlci1jbHV0dGVyLTYuZGVwcwor IGNyZWF0ZSBtb2RlIDEwMDY0NCB2YXBpL211dHRlci1jbHV0dGVyLTYudmFwaQorIGNyZWF0ZSBt b2RlIDEwMDY0NCB2YXBpL211dHRlci1jb2dsLTYtY3VzdG9tLnZhbGEKKyBjcmVhdGUgbW9kZSAx MDA2NDQgdmFwaS9tdXR0ZXItY29nbC02LmRlcHMKKyBjcmVhdGUgbW9kZSAxMDA2NDQgdmFwaS9t dXR0ZXItY29nbC02LnZhcGkKKworZGlmZiAtLWdpdCBhL3NyYy93bS9tZXNvbi5idWlsZCBiL3Ny Yy93bS9tZXNvbi5idWlsZAoraW5kZXggZTM5Yjg2NzguLjRiY2MwZjllIDEwMDY0NAorLS0tIGEv c3JjL3dtL21lc29uLmJ1aWxkCisrKysgYi9zcmMvd20vbWVzb24uYnVpbGQKK0BAIC0yNSwxMSAr MjUsMTkgQEAgaWYgbm90IGRlcF9tdXR0ZXIuZm91bmQoKQorICAgICAgICAgbWVzc2FnZSgnVXNp bmcgbmV3IGxpYm11dHRlci00IEFCSSBmcm9tIEdOT01FIDMuMzInKQorICAgICAgICAgdmFwaV9t dXR0ZXIgPSAnbGlibXV0dGVyLTQnCisgICAgIGVsc2UKKy0gICAgICAgIGRlcF9tdXR0ZXIgPSBk ZXBlbmRlbmN5KCdsaWJtdXR0ZXItNScsIHZlcnNpb246IGdub21lX21pbmltdW1fdmVyc2lvbikK KysgICAgICAgIGRlcF9tdXR0ZXIgPSBkZXBlbmRlbmN5KCdsaWJtdXR0ZXItNScsIHZlcnNpb246 IGdub21lX21pbmltdW1fdmVyc2lvbiwgcmVxdWlyZWQ6IGZhbHNlKQorKyAgICAgICAgYnVkZ2ll X3dtX3N0YXR1c192YWxhX2FyZ3MgKz0gWyctRCcsICdIQVZFX01VVFRFUl81J10KKyAgICAgICAg IGlmIGRlcF9tdXR0ZXIuZm91bmQoKQorICAgICAgICAgICAgIG1lc3NhZ2UoJ1VzaW5nIG5ldyBs aWJtdXR0ZXItNSBBQkkgZnJvbSBHTk9NRSAzLjM0JykKKyAgICAgICAgICAgICB2YXBpX211dHRl ciA9ICdsaWJtdXR0ZXItNScKKy0gICAgICAgICAgICBidWRnaWVfd21fc3RhdHVzX3ZhbGFfYXJn cyArPSBbJy1EJywgJ0hBVkVfTVVUVEVSXzUnXQorKyAgICAgICAgZWxzZQorKyAgICAgICAgICAg IGRlcF9tdXR0ZXIgPSBkZXBlbmRlbmN5KCdsaWJtdXR0ZXItNicsIHZlcnNpb246IGdub21lX21p bmltdW1fdmVyc2lvbikKKysgICAgICAgICAgICBidWRnaWVfd21fc3RhdHVzX3ZhbGFfYXJncyAr PSBbJy1EJywgJ0hBVkVfTVVUVEVSXzYnXQorKyAgICAgICAgICAgIGlmIGRlcF9tdXR0ZXIuZm91 bmQoKQorKyAgICAgICAgICAgICAgICBkZXBfZ3JhcGhlbmUgPSBkZXBlbmRlbmN5KCdncmFwaGVu ZS1nb2JqZWN0LTEuMCcsIHZlcnNpb246ICc+PSAxLjEwJykKKysgICAgICAgICAgICAgICAgbWVz c2FnZSgnVXNpbmcgbmV3IGxpYm11dHRlci02IEFCSSBmcm9tIEdOT01FIDMuMzYnKQorKyAgICAg ICAgICAgICAgICB2YXBpX211dHRlciA9ICdsaWJtdXR0ZXItNicKKysgICAgICAgICAgICBlbmRp ZgorICAgICAgICAgZW5kaWYKKyAgICAgZW5kaWYKKyBlbmRpZgorZGlmZiAtLWdpdCBhL3NyYy93 bS93bS52YWxhIGIvc3JjL3dtL3dtLnZhbGEKK2luZGV4IGZlZTg5NDQzLi5iYjQ2Y2QwNiAxMDA2 NDQKKy0tLSBhL3NyYy93bS93bS52YWxhCisrKysgYi9zcmMvd20vd20udmFsYQorQEAgLTEzNyw4 ICsxMzcsMTMgQEAgcHVibGljIGNsYXNzIEJ1ZGdpZVdNIDogTWV0YS5QbHVnaW4KKyAgICAgcHVi bGljIHN0YXRpYyBzdHJpbmdbXT8gb2xkX2FyZ3M7CisgICAgIHB1YmxpYyBzdGF0aWMgYm9vbCB3 YXlsYW5kID0gZmFsc2U7CisgCisrI2lmIEhBVkVfTVVUVEVSXzYKKysgICAgc3RhdGljIEdyYXBo ZW5lLlBvaW50IFBWX0NFTlRFUjsKKysgICAgc3RhdGljIEdyYXBoZW5lLlBvaW50IFBWX05PUk07 CisrI2Vsc2UKKyAgICAgc3RhdGljIENsdXR0ZXIuUG9pbnQgUFZfQ0VOVEVSOworICAgICBzdGF0 aWMgQ2x1dHRlci5Qb2ludCBQVl9OT1JNOworKyNlbmRpZgorIAorICAgICBwcml2YXRlIE1ldGEu QmFja2dyb3VuZEdyb3VwPyBiYWNrZ3JvdW5kX2dyb3VwOworIAorQEAgLTE3MSwxMCArMTc2LDE1 IEBAIHB1YmxpYyBjbGFzcyBCdWRnaWVXTSA6IE1ldGEuUGx1Z2luCisgICAgICAgICAgICAgbGlj ZW5zZSA9ICJHUEwtMi4wIiwKKyAgICAgICAgICAgICBkZXNjcmlwdGlvbiA9ICJCdWRnaWUgV2lu ZG93IE1hbmFnZXIiCisgICAgICAgICB9OworKyNpZiBIQVZFX01VVFRFUl82CisrICAgICAgICBQ Vl9DRU5URVIgPSBHcmFwaGVuZS5Qb2ludCgpOworKyAgICAgICAgUFZfTk9STSA9IEdyYXBoZW5l LlBvaW50KCk7CisrI2Vsc2UKKyAgICAgICAgIFBWX0NFTlRFUiA9IENsdXR0ZXIuUG9pbnQuYWxs b2MoKTsKKysgICAgICAgIFBWX05PUk0gPSBDbHV0dGVyLlBvaW50LmFsbG9jKCk7CisrI2VuZGlm CisgICAgICAgICBQVl9DRU5URVIueCA9IDAuNWY7CisgICAgICAgICBQVl9DRU5URVIueSA9IDAu NWY7CistICAgICAgICBQVl9OT1JNID0gQ2x1dHRlci5Qb2ludC5hbGxvYygpOworICAgICAgICAg UFZfTk9STS54ID0gMC4wZjsKKyAgICAgICAgIFBWX05PUk0ueSA9IDAuMGY7CisgICAgIH0KK0BA IC0xMDAxLDcgKzEwMTEsMTEgQEAgcHVibGljIGNsYXNzIEJ1ZGdpZVdNIDogTWV0YS5QbHVnaW4K KyAgICAgICAgIHRpbGVfcHJldmlldy5zZXQoInNjYWxlLXgiLCBOT1RJRklDQVRJT05fTUFQX1ND QUxFX1gsICJzY2FsZS15IiwgTk9USUZJQ0FUSU9OX01BUF9TQ0FMRV9ZLAorICAgICAgICAgICAg ICJwaXZvdC1wb2ludCIsIFBWX0NFTlRFUik7CisgCisrI2lmIEhBVkVfTVVUVEVSXzYKKysgICAg ICAgIC8vdGlsZV9wcmV2aWV3Lmxvd2VyKHdpbl9hY3Rvcik7CisrI2Vsc2UKKyAgICAgICAgIHRp bGVfcHJldmlldy5sb3dlcih3aW5fYWN0b3IpOworKyNlbmRpZgorICAgICAgICAgdGlsZV9wcmV2 aWV3LnRpbGVfcmVjdCA9IHRpbGVfcmVjdDsKKyAKKyAgICAgICAgIHRpbGVfcHJldmlldy5zaG93 KCk7CitkaWZmIC0tZ2l0IGEvdmFwaS9DbHV0dGVyLTYubWV0YWRhdGEgYi92YXBpL0NsdXR0ZXIt Ni5tZXRhZGF0YQorbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAwLi44YzI2YTEy MgorLS0tIC9kZXYvbnVsbAorKysrIGIvdmFwaS9DbHV0dGVyLTYubWV0YWRhdGEKK0BAIC0wLDAg KzEsMjA0IEBACisrLy8gTm9uIG1pbmktb2JqZWN0CisrQWN0b3JCb3ggc3RydWN0CisrQ29sb3Ig c3RydWN0CisrRm9nIHN0cnVjdAorK0dlb21ldHJ5IHN0cnVjdAorK0tub3Qgc3RydWN0CisrUGF0 aE5vZGUgc3RydWN0CisrUGVyc3BlY3RpdmUgc3RydWN0CisrVW5pdHMgc3RydWN0CisrVmVydGV4 IHN0cnVjdAorKworKyoucmVmIHVub3duZWQKKysKKytpbml0LmFyZ3YgdW5vd25lZAorK2luaXRf d2l0aF9hcmdzCisrCS5hcmd2IHVub3duZWQKKytBY3RvcgorKwkuYXBwbHlfdHJhbnNmb3JtLm1h dHJpeCByZWYKKysJLmdldF9hYnNfYWxsb2NhdGlvbl92ZXJ0aWNlcy52ZXJ0cyBvdXQ9ZmFsc2UK KysJLmdldF9hbGxvY2F0aW9uX3ZlcnRpY2VzLnZlcnRzIG91dD1mYWxzZQorK0NhbnZhcworKwku bmV3IHN5bWJvbF90eXBlPSJjb25zdHJ1Y3RvciIKKytFdmVudC50eXBlI21ldGhvZCBuYW1lPSJn ZXRfdHlwZSIKKytJbWFnZQorKwkubmV3IHN5bWJvbF90eXBlPSJjb25zdHJ1Y3RvciIKKysKKysv LyA/Pz8KKytBY3Rvci5oYXNfcG9pbnRlciNtZXRob2QgbmFtZT0iZ2V0X2hhc19wb2ludGVyIgor K0luaXRFcnJvciBlcnJvcmRvbWFpbj1mYWxzZQorKworKy8vIE5vdCBhbGwgYmFja2luZyBzeW1i b2xzIGFyZSBkZXByZWNhdGVkCisrQWN0b3IucGljayBkZXByZWNhdGVkPWZhbHNlCisrCisrLy8g TnVsbGFibGUgcmV0dXJuIHZhbHVlcworK0FjdG9yCisrCS5nZXRfcGFyZW50IG51bGxhYmxlCisr dmFsdWVfZ2V0X2NvbG9yIG51bGxhYmxlCisrCisrLy8gbWV0aG9kL3ZpcnR1YWwtbWV0aG9kL3Np Z25hbCBkb24ndCBtYXRjaAorK0FjdG9yCisrCS5ldmVudCNtZXRob2QgbmFtZT0iZW1pdF9ldmVu dCIKKysJLmdldF9wYWludF92b2x1bWUjbWV0aG9kIHNraXAKKysJLnF1ZXVlX3JlZHJhdyNzaWdu YWwgc2tpcAorKwkucXVldWVfcmVkcmF3I3ZpcnR1YWxfbWV0aG9kIHNraXAKKytDb250YWluZXIK KysJLmFkZF9hY3RvciBza2lwPWZhbHNlCisrVGV4dAorKwkuYWN0aXZhdGUjbWV0aG9kIG5hbWU9 InRyeV9hY3RpdmF0ZSIKKysJLmluc2VydF90ZXh0I3NpZ25hbCBza2lwCisrVGV4dEJ1ZmZlci5n ZXRfdGV4dCN2aXJ0dWFsX21ldGhvZCBuYW1lPSJnZXRfdGV4dF93aXRoX2xlbmd0aCIKKysKKysv LyB2aXJ0dWFsL2Fic3RyYWN0IGRpc3RpbmN0aW9uCisrQ29udGFpbmVyCisrCS5sb3dlciB2aXJ0 dWFsCisrCS5yYWlzZSB2aXJ0dWFsCisrCS4qX2NoaWxkX21ldGEjdmlydHVhbF9tZXRob2Qgdmly dHVhbAorKwkuZm9yZWFjaF93aXRoX2ludGVybmFscyN2aXJ0dWFsX21ldGhvZCB2aXJ0dWFsCisr CisrLy8gRGVmYXVsdCB2YWx1ZXMKKytDb250YWluZXIKKysJLmxvd2VyLnNpYmxpbmcgbnVsbGFi bGUgZGVmYXVsdD1udWxsCisrCS5yYWlzZS5zaWJsaW5nIG51bGxhYmxlIGRlZmF1bHQ9bnVsbAor K1N0YWdlLnJlYWRfcGl4ZWxzCisrCS53aWR0aCBkZWZhdWx0PS0xCisrCS5oZWlnaHQgZGVmYXVs dD0tMQorK1RleHQKKysJLnBvc2l0aW9uX3RvX2Nvb3Jkcy5saW5lX2hlaWdodCBkZWZhdWx0PW51 bGwKKysKKysvLyBSZXBhcmVudGVkIGZ1bmNzIG1ldGhvZHMgY2FuJ3QgYmUgaW5zdGFuY2UgbWV0 aG9kcworK2ZlYXR1cmVfYXZhaWxhYmxlIHNraXAKKytmZWF0dXJlX2dldF9hbGwgc2tpcAorKwor Ky8vIFNraXBwZWQgYnkgZy1pIGZvciB1bmtub3duIHJlYXNvbnMKKytMYXlvdXRNYW5hZ2VyCisr CS5jcmVhdGVfY2hpbGRfbWV0YSBza2lwPWZhbHNlCisrCisrLy8gVmFyaWFkaWMgYXJndW1lbnRz CisrQWN0b3IKKysJLmFuaW1hdGUgc2tpcD1mYWxzZQorKwkuYW5pbWF0ZV93aXRoX2FscGhhIHNr aXA9ZmFsc2UKKysJLmFuaW1hdGVfd2l0aF90aW1lbGluZSBza2lwPWZhbHNlCisrQm94CisrCS5w YWNrIHNraXA9ZmFsc2UKKysJLnBhY2tfYWZ0ZXIgc2tpcD1mYWxzZQorKwkucGFja19hdCBza2lw PWZhbHNlCisrCS5wYWNrX2JlZm9yZSBza2lwPWZhbHNlCisrQ29udGFpbmVyCisrCS5hZGRfdmFs aXN0IHNraXA9ZmFsc2UKKysJLmNoaWxkX2dldCBza2lwPWZhbHNlCisrCS5jaGlsZF9zZXQgc2tp cD1mYWxzZQorKwkucmVtb3ZlIHNraXA9ZmFsc2UKKysJLnJlbW92ZV92YWxpc3Qgc2tpcD1mYWxz ZQorK0ludGVydmFsCisrCS5uZXcgc2tpcD1mYWxzZQorKwkuZ2V0X2ludGVydmFsIHNraXA9ZmFs c2UKKysJLnNldF9maW5hbCBza2lwPWZhbHNlCisrCS5zZXRfaW5pdGlhbCBza2lwPWZhbHNlCisr CS5zZXRfaW50ZXJ2YWwgc2tpcD1mYWxzZQorK0xheW91dE1hbmFnZXIKKysJLmNoaWxkX2dldCBz a2lwPWZhbHNlCisrCS5jaGlsZF9zZXQgc2tpcD1mYWxzZQorK1NjcmlwdAorKwkuZ2V0X29iamVj dHMgc2tpcD1mYWxzZQorKworKy8vIENoYW5naW5nIGVycm9yIGRvbWFpbnMKKytUZXh0dXJlCisr CS5uZXdfZnJvbV9maWxlIHRocm93cz0iQ2x1dHRlci5UZXh0dXJlRXJyb3IiCisrCisrLy8gU2tp cHBlZCB1cHN0cmVhbSBmb3IgdW5rbm93biByZWFzb25zCisrQWxwaGEucmVnaXN0ZXJfZnVuYyBz a2lwPWZhbHNlCisrSW50ZXJ2YWwucmVnaXN0ZXJfcHJvZ3Jlc3NfZnVuYyBza2lwPWZhbHNlCisr Z2V0X29wdGlvbl9ncm91cCBza2lwPWZhbHNlCisrZ2V0X29wdGlvbl9ncm91cF93aXRob3V0X2lu aXQgc2tpcD1mYWxzZQorK3RocmVhZHNfYWRkX2lkbGUgc2tpcD1mYWxzZQorK3RocmVhZHNfYWRk X2lkbGVfZnVsbCBza2lwPWZhbHNlCisrdGhyZWFkc19hZGRfdGltZW91dCBza2lwPWZhbHNlCisr dGhyZWFkc19hZGRfdGltZW91dF9mdWxsIHNraXA9ZmFsc2UKKysKKysvLyBzdHJ1Y3QvY2xhc3Mg Y29uZnVzaW9uCisrQWN0b3JCb3gKKysJLm5ldyBza2lwCisrCS5mcm9tX3ZlcnRpY2VzIHNraXAK KytVbml0cy5mcm9tXyogc2tpcAorK0NvbG9yCisrCS5uZXcgc2tpcAorK1ZlcnRleC5uZXcgc2tp cAorKworKy8vIENsYXNzIG1ldGhvZHMKKytjb250YWluZXJfY2xhc3NfZmluZF9jaGlsZF9wcm9w ZXJ0eSBza2lwCisrY29udGFpbmVyX2NsYXNzX2xpc3RfY2hpbGRfcHJvcGVydGllcyBza2lwCisr CisrLy8gTW92ZSBzeW1ib2xzCisrZ2V0X2FjdG9yX2J5X2dpZCBwYXJlbnQ9IkNsdXR0ZXIuQWN0 b3IiIG5hbWU9ImdldF9ieV9naWQiCisrdW5pdHNfZnJvbV8qIHNraXAKKysKKysvLyBDbGFzc2Vz IG1hcmtlZCBhcyBvdXQgYnV0IG5vdCBkb3VibGUgcHRyCisrQWN0b3IKKysJLmdldF9tYXJnaW4u bWFyZ2luIG91dD1mYWxzZQorK0RyYWdBY3Rpb24KKysJLmdldF9kcmFnX2FyZWEuZHJhZ19hcmVh IG91dD1mYWxzZQorK0lucHV0RGV2aWNlCisrCS5nZXRfY29vcmRzLnBvaW50IG91dD1mYWxzZQor K1JlY3QKKysJLmdldF9jZW50ZXIuY2VudGVyIG91dD1mYWxzZQorKwkuaW50ZXJzZWN0aW9uLnJl cyBvdXQ9ZmFsc2UKKysJLnVuaW9uLnJlcyBvdXQ9ZmFsc2UKKytUaW1lbGluZQorKwkuZ2V0X2N1 YmljX2Jlemllcl9wcm9ncmVzcy5jXyogb3V0PWZhbHNlCisrWm9vbUFjdGlvbgorKwkuZ2V0X2Zv Y2FsX3BvaW50LnBvaW50IG91dD1mYWxzZQorKwkuZ2V0X3RyYW5zZm9ybWVkX2ZvY2FsX3BvaW50 LnBvaW50IG91dD1mYWxzZQorKworKy8vIFN0cnVjdCByZXR1cm4gdmFsdWVzCisrY29sb3JfZ2V0 X3N0YXRpYyBudWxsYWJsZQorKworKy8vIFJlbW92ZSBmb3IgY2x1dHRlci0yLjAKKysvLy8vLy8v Ly8vLy8vLy8vLy8vLy8vLy8vCisrCisrU3RhZ2UKKysgCS5ldmVudCBuYW1lPSJlbWl0X2V2ZW50 IgorKworKy8vICpFdmVudCBzaG91bGQgYmUgY29tcGFjdCBjbGFzc2VzIGRlcml2ZWQgZnJvbSBD bHV0dGVyLkV2ZW50CisrRXZlbnQudHlwZSBza2lwPWZhbHNlCisrQW55RXZlbnQgc3RydWN0PWZh bHNlIGJhc2VfdHlwZT0iQ2x1dHRlci5FdmVudCIKKytCdXR0b25FdmVudCBzdHJ1Y3Q9ZmFsc2Ug YmFzZV90eXBlPSJDbHV0dGVyLkV2ZW50IgorK0Nyb3NzaW5nRXZlbnQgc3RydWN0PWZhbHNlIGJh c2VfdHlwZT0iQ2x1dHRlci5FdmVudCIKKytLZXlFdmVudCBzdHJ1Y3Q9ZmFsc2UgYmFzZV90eXBl PSJDbHV0dGVyLkV2ZW50IgorK01vdGlvbkV2ZW50IHN0cnVjdD1mYWxzZSBiYXNlX3R5cGU9IkNs dXR0ZXIuRXZlbnQiCisrU2Nyb2xsRXZlbnQgc3RydWN0PWZhbHNlIGJhc2VfdHlwZT0iQ2x1dHRl ci5FdmVudCIKKytTdGFnZVN0YXRlRXZlbnQgc3RydWN0PWZhbHNlIGJhc2VfdHlwZT0iQ2x1dHRl ci5FdmVudCIKKytUb3VjaEV2ZW50IHN0cnVjdD1mYWxzZSBiYXNlX3R5cGU9IkNsdXR0ZXIuRXZl bnQiCisrVG91Y2hwYWRQaW5jaEV2ZW50IHN0cnVjdD1mYWxzZSBiYXNlX3R5cGU9IkNsdXR0ZXIu RXZlbnQiCisrVG91Y2hwYWRTd2lwZUV2ZW50IHN0cnVjdD1mYWxzZSBiYXNlX3R5cGU9IkNsdXR0 ZXIuRXZlbnQiCisrCisrLy8gS2V5c3ltcyB1c2VkIHRvIGJlIENMVVRURVJfWCBpbnN0ZWFkIG9m IENMVVRURVJfS0VZX1gKKysqI2NvbnN0YW50IHNraXAKKytDT0dMIHNraXA9ZmFsc2UKKytDVVJS RU5UX1RJTUUgc2tpcD1mYWxzZQorK0ZMQVZPVVIgc2tpcD1mYWxzZQorK1BBVEhfUkVMQVRJVkUg c2tpcD1mYWxzZQorK1BSSU9SSVRZX1JFRFJBVyBza2lwPWZhbHNlCisrCisrLy8gQ2x1dHRlciBk ZXZzIGRvbid0IGxpa2UgdXMgY3JlYXRpbmcgbmVzdGVkIG5hbWVzcGFjZXMKKyt2YWx1ZV8qIG5h bWU9InZhbHVlXyguKykiIHBhcmVudD0iQ2x1dHRlci5WYWx1ZSIKKyt0aHJlYWRzXyogbmFtZT0i dGhyZWFkc18oLispIiBwYXJlbnQ9IkNsdXR0ZXIuVGhyZWFkcyIKKyt0aHJlYWRzX2FkZF9pZGxl IG5hbWU9ImFkZCIgcGFyZW50PSJDbHV0dGVyLlRocmVhZHMuSWRsZSIKKyt0aHJlYWRzX2FkZF9p ZGxlX2Z1bGwgbmFtZT0iYWRkX2Z1bGwiIHBhcmVudD0iQ2x1dHRlci5UaHJlYWRzLklkbGUiCisr dGhyZWFkc19hZGRfdGltZW91dCBuYW1lPSJhZGQiIHBhcmVudD0iQ2x1dHRlci5UaHJlYWRzLlRp bWVvdXQiCisrdGhyZWFkc19hZGRfdGltZW91dF9mdWxsIG5hbWU9ImFkZF9mdWxsIiBwYXJlbnQ9 IkNsdXR0ZXIuVGhyZWFkcy5UaW1lb3V0IgorKworKy8vIEJhY2t3YXJkcyBjb21wYXRpYmlsaXR5 CisrQ29sb3IuYWxsb2Mgc3ltYm9sX3R5cGU9ImZ1bmN0aW9uIgorK1BvaW50LmFsbG9jIHN5bWJv bF90eXBlPSJmdW5jdGlvbiIKKytSZWN0LmFsbG9jIHN5bWJvbF90eXBlPSJmdW5jdGlvbiIKKytT aXplLmFsbG9jIHN5bWJvbF90eXBlPSJmdW5jdGlvbiIKKytWZXJ0ZXguYWxsb2Mgc3ltYm9sX3R5 cGU9ImZ1bmN0aW9uIgorKworK0JpbkFsaWdubWVudCBkZXByZWNhdGVkPWZhbHNlIGRlcHJlY2F0 ZWRfc2luY2U9bnVsbAorK0JpbkFsaWdubWVudC4qIGRlcHJlY2F0ZWQKKytCaW5BbGlnbm1lbnQu c3RhcnQgZGVwcmVjYXRlZD1mYWxzZQorK0JpbkxheW91dC5uZXcuKl9hbGlnbiBkZWZhdWx0PUNs dXR0ZXIuQmluQWxpZ25tZW50LlNUQVJUCisrCisrLy8gUG9zc2libHkga2VlcAorK0tFWV8qIHNr aXA9ZmFsc2UgbmFtZT0iS0VZXyguKykiIHR5cGU9InVpbnQiIHBhcmVudD0iQ2x1dHRlci5LZXki CitkaWZmIC0tZ2l0IGEvdmFwaS9Db2dsLTYubWV0YWRhdGEgYi92YXBpL0NvZ2wtNi5tZXRhZGF0 YQorbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAwLi4wOTJiNWUyOQorLS0tIC9k ZXYvbnVsbAorKysrIGIvdmFwaS9Db2dsLTYubWV0YWRhdGEKK0BAIC0wLDAgKzEsMjcgQEAKKytD b2dsIGNoZWFkZXJfZmlsZW5hbWU9ImNvZ2wvY29nbC5oIgorKworK0NvbG9yIHN0cnVjdAorKyAg Lm5ldyBza2lwCisrICAuZnJlZSBza2lwCisrCisrY3JlYXRlX3Byb2dyYW0gc2tpcAorK2NyZWF0 ZV9zaGFkZXIgc2tpcAorKworKworK2lzX2JpdG1hcCBza2lwCisraXNfbWF0ZXJpYWwgc2tpcAor K2lzX29mZnNjcmVlbiBza2lwCisraXNfcHJvZ3JhbSBza2lwCisraXNfc2hhZGVyIHNraXAKKytp c190ZXh0dXJlIHNraXAKKytpc192ZXJ0ZXhfYnVmZmVyIHNraXAKKysKKytNYXRyaXggc3RydWN0 CisrICAuZ2V0X2FycmF5IGFycmF5PXRydWUgYXJyYXlfbGVuZ3RoX2lkeD0tMQorKyAgLmdldF9p bnZlcnNlLmludmVyc2Ugb3V0PXRydWUKKysgIC5tdWx0aXBseSBza2lwCisrICAuaW5pdF9mcm9t X2FycmF5IHNraXAKKysgIC5pbml0X2lkZW50aXR5IHNraXAKKysgIC50cmFuc2Zvcm1fcG9pbnQu KiByZWY9dHJ1ZQorKworK3Byb2dyYW1fKiBza2lwCitkaWZmIC0tZ2l0IGEvdmFwaS9NZXRhLTYu bWV0YWRhdGEgYi92YXBpL01ldGEtNi5tZXRhZGF0YQorbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2lu ZGV4IDAwMDAwMDAwLi4xZDk4NDc3OAorLS0tIC9kZXYvbnVsbAorKysrIGIvdmFwaS9NZXRhLTYu bWV0YWRhdGEKK0BAIC0wLDAgKzEsODAgQEAKKytCYWNrZW5kIGNoZWFkZXJfZmlsZW5hbWU9Im1l dGEvbWV0YS1iYWNrZW5kLmgiCisrQmFja2dyb3VuZCBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21l dGEtYmFja2dyb3VuZC5oIgorK0JhY2tncm91bmRBY3RvciBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRh L21ldGEtYmFja2dyb3VuZC1hY3Rvci5oIgorK0JhY2tncm91bmRHcm91cCBjaGVhZGVyX2ZpbGVu YW1lPSJtZXRhL21ldGEtYmFja2dyb3VuZC1ncm91cC5oIgorK0JhY2tncm91bmRJbWFnZSBjaGVh ZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtYmFja2dyb3VuZC1pbWFnZS5oIgorK0JhY2tncm91bmRJ bWFnZUNhY2hlIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1iYWNrZ3JvdW5kLWltYWdlLmgi CisrQmFycmllciBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL2JhcnJpZXIuaCIKKytCYXJyaWVyRXZl bnQgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9iYXJyaWVyLmgiCisrQ2xvc2VEaWFsb2cgY2hlYWRl cl9maWxlbmFtZT0ibWV0YS9tZXRhLWNsb3NlLWRpYWxvZy5oIgorK0N1cnNvclRyYWNrZXIgY2hl YWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLWN1cnNvci10cmFja2VyLmgiCisrRGlzcGxheSBjaGVh ZGVyX2ZpbGVuYW1lPSJtZXRhL2Rpc3BsYXkuaCIKKytEbmQgY2hlYWRlcl9maWxlbmFtZT0ibWV0 YS9tZXRhLWRuZC5oIgorK0lkbGVNb25pdG9yIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1p ZGxlLW1vbml0b3IuaCIKKytJbmhpYml0U2hvcnRjdXRzRGlhbG9nIGNoZWFkZXJfZmlsZW5hbWU9 Im1ldGEvbWV0YS1pbmhpYml0LXNob3J0Y3V0cy1kaWFsb2cuaCIKKytMYXVuY2hDb250ZXh0IGNo ZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1sYXVuY2gtY29udGV4dC5oIgorK01ldGEgY2hlYWRl cl9maWxlbmFtZT0ibWV0YS9tYWluLmgiCisrTW9uaXRvck1hbmFnZXIgY2hlYWRlcl9maWxlbmFt ZT0ibWV0YS9tZXRhLW1vbml0b3ItbWFuYWdlci5oIgorK1ByZWZlcmVuY2UgY2hlYWRlcl9maWxl bmFtZT0ibWV0YS9wcmVmcy5oIgorK1JlbW90ZUFjY2Vzc0NvbnRyb2xsZXIgY2hlYWRlcl9maWxl bmFtZT0ibWV0YS9tZXRhLXJlbW90ZS1hY2Nlc3MtY29udHJvbGxlci5oIgorK1JlbW90ZUFjY2Vz c0hhbmRsZSBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtcmVtb3RlLWFjY2Vzcy1jb250cm9s bGVyLmgiCisrU2V0dGluZ3MgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLXNldHRpbmdzLmgi CisrU2hhZG93RmFjdG9yeSBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtc2hhZG93LWZhY3Rv cnkuaCIKKytTaGFwZWRUZXh0dXJlIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1zaGFwZWQt dGV4dHVyZS5oIgorK1NvdW5kUGxheWVyIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1zb3Vu ZC1wbGF5ZXIuaCIKKytTdGFnZSBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtc3RhZ2UuaCIK KytTdGFydHVwTm90aWZpY2F0aW9uIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1zdGFydHVw LW5vdGlmaWNhdGlvbi5oIgorK1RoZW1lIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvdGhlbWUuaCIK KytXaW5kb3cgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS93aW5kb3cuaCIKKytXaW5kb3dBY3RvciBj aGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtd2luZG93LWFjdG9yLmgiCisrV2luZG93R3JvdXAg Y2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLXdpbmRvdy1ncm91cC5oIgorK1dpbmRvd1NoYXBl IGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS13aW5kb3ctc2hhcGUuaCIKKytXb3Jrc3BhY2Ug Y2hlYWRlcl9maWxlbmFtZT0ibWV0YS93b3Jrc3BhY2UuaCIKKytXb3Jrc3BhY2VNYW5hZ2VyIGNo ZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS13b3Jrc3BhY2UtbWFuYWdlci5oIgorK1gxMURpc3Bs YXkgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLXgxMS1kaXNwbGF5LmgiCisrUmVjdGFuZ2xl IHN0cnVjdAorK1BsdWdpbiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtcGx1Z2luLmgiCisr UGx1Z2luSW5mbyBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtcGx1Z2luLmgiCisrcHJlZnNf KiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3ByZWZzLmgiIHBhcmVudD0iTWV0YS5QcmVmcyIKKyth ZGRfdmVyYm9zZV90b3BpYyBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hlYWRlcl9maWxlbmFtZT0ibWV0 YS91dGlsLmgiCisreDExX2Vycm9yX3RyYXBfcG9wIHBhcmVudD0iTWV0YS5VdGlsIiBjaGVhZGVy X2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIKKyt4MTFfZXJyb3JfdHJhcF9wdXNoIHBhcmVudD0iTWV0 YS5VdGlsIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIKKyt4MTFfZXJyb3JfdHJhcF9w b3Bfd2l0aF9yZXR1cm4gcGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEv dXRpbC5oIgorK2V4dGVybmFsX2JpbmRpbmdfbmFtZV9mb3JfYWN0aW9uIHBhcmVudD0iTWV0YS5V dGlsIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIKKytnZXRfbG9jYWxlX2RpcmVjdGlv biBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS91dGlsLmgiCisrZ3Jh dml0eV90b19zdHJpbmcgcGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEv dXRpbC5oIgorK2lzX2RlYnVnZ2luZyBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hlYWRlcl9maWxlbmFt ZT0ibWV0YS91dGlsLmgiCisraXNfc3luY2luZyBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hlYWRlcl9m aWxlbmFtZT0ibWV0YS91dGlsLmgiCisraXNfdmVyYm9zZSBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hl YWRlcl9maWxlbmFtZT0ibWV0YS91dGlsLmgiCisraXNfd2F5bGFuZF9jb21wb3NpdG9yIHBhcmVu dD0iTWV0YS5VdGlsIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIKKytsYXRlcl9hZGQg cGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvdXRpbC5oIgorK2xhdGVy X3JlbW92ZSBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS91dGlsLmgi CisrcG9wX25vX21zZ19wcmVmaXggcGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9 Im1ldGEvdXRpbC5oIgorK3B1c2hfbm9fbXNnX3ByZWZpeCBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hl YWRlcl9maWxlbmFtZT0ibWV0YS91dGlsLmgiCisrcmVjdCBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hl YWRlcl9maWxlbmFtZT0ibWV0YS91dGlsLmgiCisrcmVtb3ZlX3ZlcmJvc2VfdG9waWMgcGFyZW50 PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvdXRpbC5oIgorK3Vuc2lnbmVkX2xv bmdfZXF1YWwgcGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvdXRpbC5o IgorK3Vuc2lnbmVkX2xvbmdfaGFzaCBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hlYWRlcl9maWxlbmFt ZT0ibWV0YS91dGlsLmgiCisrc2hvd19kaWFsb2cgcGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJf ZmlsZW5hbWU9Im1ldGEvdXRpbC5oIgorK2dldF9zdGFnZV9mb3JfZGlzcGxheSBwYXJlbnQ9Ik1l dGEuQ29tcG9zaXRvciIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9jb21wb3NpdG9yLW11dHRlci5o IgorK2dldF93aW5kb3dfYWN0b3JzIHBhcmVudD0iTWV0YS5Db21wb3NpdG9yIiBjaGVhZGVyX2Zp bGVuYW1lPSJtZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgiCisrZ2V0X3dpbmRvd19ncm91cF9mb3Jf ZGlzcGxheSBwYXJlbnQ9Ik1ldGEuQ29tcG9zaXRvciIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9j b21wb3NpdG9yLW11dHRlci5oIgorK2dldF90b3Bfd2luZG93X2dyb3VwX2Zvcl9kaXNwbGF5IHBh cmVudD0iTWV0YS5Db21wb3NpdG9yIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL2NvbXBvc2l0b3It bXV0dGVyLmgiCisrZ2V0X2ZlZWRiYWNrX2dyb3VwX2Zvcl9kaXNwbGF5IHBhcmVudD0iTWV0YS5D b21wb3NpdG9yIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgiCisr ZGlzYWJsZV91bnJlZGlyZWN0X2Zvcl9kaXNwbGF5IHBhcmVudD0iTWV0YS5Db21wb3NpdG9yIiBj aGVhZGVyX2ZpbGVuYW1lPSJtZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgiCisrZW5hYmxlX3VucmVk aXJlY3RfZm9yX2Rpc3BsYXkgcGFyZW50PSJNZXRhLkNvbXBvc2l0b3IiIGNoZWFkZXJfZmlsZW5h bWU9Im1ldGEvY29tcG9zaXRvci1tdXR0ZXIuaCIKKytzZXRfc3RhZ2VfaW5wdXRfcmVnaW9uIHBh cmVudD0iTWV0YS5Db21wb3NpdG9yIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL2NvbXBvc2l0b3It bXV0dGVyLmgiCisrZW1wdHlfc3RhZ2VfaW5wdXRfcmVnaW9uIHBhcmVudD0iTWV0YS5Db21wb3Np dG9yIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgiCisrZm9jdXNf c3RhZ2Vfd2luZG93IHBhcmVudD0iTWV0YS5Db21wb3NpdG9yIiBjaGVhZGVyX2ZpbGVuYW1lPSJt ZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgiCisra2V5YmluZGluZ3Nfc2V0X2N1c3RvbV9oYW5kbGVy IHBhcmVudD0iTWV0YS5LZXlCaW5kaW5nIiBuYW1lPSJzZXRfY3VzdG9tX2hhbmRsZXIiCisrS2V5 SGFuZGxlckZ1bmMuZXZlbnQgdHlwZT0iQ2x1dHRlci5LZXlFdmVudD8iCisrZ2V0X2JhY2tlbmQg cGFyZW50PSJNZXRhLkJhY2tlbmQiCisrV2luZG93LmZvY3VzI3NpZ25hbCBza2lwPXRydWUKKytX aW5kb3cuZ2V0X3h3aW5kb3cgc2tpcD1mYWxzZQorK2dldF9vcHRpb25fY29udGV4dCBza2lwPWZh bHNlCisrc2V0X2dub21lX3dtX2tleWJpbmRpbmdzIHNraXA9ZmFsc2UKKytzZXRfd21fbmFtZSBz a2lwPWZhbHNlCisraW5pdCBza2lwPWZhbHNlCisrcnVuIHNraXA9ZmFsc2UKKytzaG93X2RpYWxv ZyBza2lwPWZhbHNlCisrZ2V0X2JhY2tlbmQgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLWJh Y2tlbmQuaCIKK2RpZmYgLS1naXQgYS92YXBpL2dyYXBoZW5lLWdvYmplY3QtMS4wLnZhcGkgYi92 YXBpL2dyYXBoZW5lLWdvYmplY3QtMS4wLnZhcGkKK25ldyBmaWxlIG1vZGUgMTAwNjQ0CitpbmRl eCAwMDAwMDAwMC4uNjk4MDE1MzUKKy0tLSAvZGV2L251bGwKKysrKyBiL3ZhcGkvZ3JhcGhlbmUt Z29iamVjdC0xLjAudmFwaQorQEAgLTAsMCArMSw2OTEgQEAKKysvKiBncmFwaGVuZS1nb2JqZWN0 LTEuMC52YXBpIGdlbmVyYXRlZCBieSB2YXBpZ2VuLCBkbyBub3QgbW9kaWZ5LiAqLworKworK1tD Q29kZSAoY3ByZWZpeCA9ICJHcmFwaGVuZSIsIGdpcl9uYW1lc3BhY2UgPSAiR3JhcGhlbmUiLCBn aXJfdmVyc2lvbiA9ICIxLjAiLCBsb3dlcl9jYXNlX2NwcmVmaXggPSAiZ3JhcGhlbmVfIildCisr bmFtZXNwYWNlIEdyYXBoZW5lIHsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBo ZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdyYXBoZW5lX2JveF90IiwgdHlwZV9pZCA9ICJncmFw aGVuZV9ib3hfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwlw dWJsaWMgc3RydWN0IEJveCB7CisrCQlwdWJsaWMgYm9vbCBjb250YWluc19ib3ggKEdyYXBoZW5l LkJveCBiKTsKKysJCXB1YmxpYyBib29sIGNvbnRhaW5zX3BvaW50IChHcmFwaGVuZS5Qb2ludDNE IHBvaW50KTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5Cb3g/IGVtcHR5ICgp OworKwkJcHVibGljIGJvb2wgZXF1YWwgKEdyYXBoZW5lLkJveCBiKTsKKysJCXB1YmxpYyBHcmFw aGVuZS5Cb3ggZXhwYW5kIChHcmFwaGVuZS5Qb2ludDNEIHBvaW50KTsKKysJCXB1YmxpYyBHcmFw aGVuZS5Cb3ggZXhwYW5kX3NjYWxhciAoZmxvYXQgc2NhbGFyKTsKKysJCXB1YmxpYyBHcmFwaGVu ZS5Cb3ggZXhwYW5kX3ZlYzMgKEdyYXBoZW5lLlZlYzMgdmVjKTsKKysJCXB1YmxpYyBHcmFwaGVu ZS5TcGhlcmUgZ2V0X2JvdW5kaW5nX3NwaGVyZSAoKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2lu dDNEIGdldF9jZW50ZXIgKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X2RlcHRoICgpOworKwkJcHVi bGljIGZsb2F0IGdldF9oZWlnaHQgKCk7CisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQzRCBnZXRf bWF4ICgpOworKwkJcHVibGljIEdyYXBoZW5lLlBvaW50M0QgZ2V0X21pbiAoKTsKKysJCXB1Ymxp YyBHcmFwaGVuZS5WZWMzIGdldF9zaXplICgpOworKwkJcHVibGljIHZvaWQgZ2V0X3ZlcnRpY2Vz IChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gcmVmIEdyYXBoZW5lLlZlYzMgdmVydGlj ZXNbOF0pOworKwkJcHVibGljIGZsb2F0IGdldF93aWR0aCAoKTsKKysJCXB1YmxpYyBzdGF0aWMg dW5vd25lZCBHcmFwaGVuZS5Cb3g/IGluZmluaXRlICgpOworKwkJcHVibGljIHVub3duZWQgR3Jh cGhlbmUuQm94PyBpbml0IChHcmFwaGVuZS5Qb2ludDNEPyBtaW4sIEdyYXBoZW5lLlBvaW50M0Q/ IG1heCk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5Cb3g/IGluaXRfZnJvbV9ib3ggKEdy YXBoZW5lLkJveCBzcmMpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuQm94PyBpbml0X2Zy b21fcG9pbnRzIChbQ0NvZGUgKGFycmF5X2xlbmd0aF9jbmFtZSA9ICJuX3BvaW50cyIsIGFycmF5 X2xlbmd0aF9wb3MgPSAwLjUsIGFycmF5X2xlbmd0aF90eXBlID0gImd1aW50IildIEdyYXBoZW5l LlBvaW50M0RbXSBwb2ludHMpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuQm94PyBpbml0 X2Zyb21fdmVjMyAoR3JhcGhlbmUuVmVjMz8gbWluLCBHcmFwaGVuZS5WZWMzPyBtYXgpOworKwkJ cHVibGljIHVub3duZWQgR3JhcGhlbmUuQm94PyBpbml0X2Zyb21fdmVjdG9ycyAoW0NDb2RlIChh cnJheV9sZW5ndGhfY25hbWUgPSAibl92ZWN0b3JzIiwgYXJyYXlfbGVuZ3RoX3BvcyA9IDAuNSwg YXJyYXlfbGVuZ3RoX3R5cGUgPSAiZ3VpbnQiKV0gR3JhcGhlbmUuVmVjM1tdIHZlY3RvcnMpOwor KwkJcHVibGljIGJvb2wgaW50ZXJzZWN0aW9uIChHcmFwaGVuZS5Cb3ggYiwgb3V0IEdyYXBoZW5l LkJveCByZXMpOworKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLkJveD8gbWludXNf b25lICgpOworKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLkJveD8gb25lICgpOwor KwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLkJveD8gb25lX21pbnVzX29uZSAoKTsK KysJCXB1YmxpYyBHcmFwaGVuZS5Cb3ggdW5pb24gKEdyYXBoZW5lLkJveCBiKTsKKysJCXB1Ymxp YyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5Cb3g/IHplcm8gKCk7CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdyYXBoZW5l X2V1bGVyX3QiLCB0eXBlX2lkID0gImdyYXBoZW5lX2V1bGVyX2dldF90eXBlICgpIildCisrCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJcHVibGljIHN0cnVjdCBFdWxlciB7CisrCQlwdWJs aWMgYm9vbCBlcXVhbCAoR3JhcGhlbmUuRXVsZXIgYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF9hbHBoYSAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEwIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X2JldGEgKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF9nYW1tYSAoKTsKKysJCXB1Ymxp YyBHcmFwaGVuZS5FdWxlck9yZGVyIGdldF9vcmRlciAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRf eCAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfeSAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfeiAo KTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLkV1bGVyPyBpbml0IChmbG9hdCB4LCBmbG9h dCB5LCBmbG9hdCB6KTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLkV1bGVyPyBpbml0X2Zy b21fZXVsZXIgKEdyYXBoZW5lLkV1bGVyPyBzcmMpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhl bmUuRXVsZXI/IGluaXRfZnJvbV9tYXRyaXggKEdyYXBoZW5lLk1hdHJpeD8gbSwgR3JhcGhlbmUu RXVsZXJPcmRlciBvcmRlcik7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5FdWxlcj8gaW5p dF9mcm9tX3F1YXRlcm5pb24gKEdyYXBoZW5lLlF1YXRlcm5pb24/IHEsIEdyYXBoZW5lLkV1bGVy T3JkZXIgb3JkZXIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1 bm93bmVkIEdyYXBoZW5lLkV1bGVyPyBpbml0X2Zyb21fcmFkaWFucyAoZmxvYXQgeCwgZmxvYXQg eSwgZmxvYXQgeiwgR3JhcGhlbmUuRXVsZXJPcmRlciBvcmRlcik7CisrCQlwdWJsaWMgdW5vd25l ZCBHcmFwaGVuZS5FdWxlcj8gaW5pdF9mcm9tX3ZlYzMgKEdyYXBoZW5lLlZlYzM/IHYsIEdyYXBo ZW5lLkV1bGVyT3JkZXIgb3JkZXIpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuRXVsZXI/ IGluaXRfd2l0aF9vcmRlciAoZmxvYXQgeCwgZmxvYXQgeSwgZmxvYXQgeiwgR3JhcGhlbmUuRXVs ZXJPcmRlciBvcmRlcik7CisrCQlwdWJsaWMgR3JhcGhlbmUuRXVsZXIgcmVvcmRlciAoR3JhcGhl bmUuRXVsZXJPcmRlciBvcmRlcik7CisrCQlwdWJsaWMgR3JhcGhlbmUuTWF0cml4IHRvX21hdHJp eCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgR3JhcGhlbmUu UXVhdGVybmlvbiB0b19xdWF0ZXJuaW9uICgpOworKwkJcHVibGljIEdyYXBoZW5lLlZlYzMgdG9f dmVjMyAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29i amVjdC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfZnJ1c3R1bV90IiwgdHlwZV9pZCA9ICJncmFwaGVu ZV9mcnVzdHVtX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJ cHVibGljIHN0cnVjdCBGcnVzdHVtIHsKKysJCXB1YmxpYyBib29sIGNvbnRhaW5zX3BvaW50IChH cmFwaGVuZS5Qb2ludDNEIHBvaW50KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJ CXB1YmxpYyBib29sIGVxdWFsIChHcmFwaGVuZS5GcnVzdHVtIGIpOworKwkJcHVibGljIHZvaWQg Z2V0X3BsYW5lcyAoW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIHJlZiBHcmFwaGVuZS5Q bGFuZSBwbGFuZXNbNl0pOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuRnJ1c3R1bT8gaW5p dCAoR3JhcGhlbmUuUGxhbmUgcDAsIEdyYXBoZW5lLlBsYW5lIHAxLCBHcmFwaGVuZS5QbGFuZSBw MiwgR3JhcGhlbmUuUGxhbmUgcDMsIEdyYXBoZW5lLlBsYW5lIHA0LCBHcmFwaGVuZS5QbGFuZSBw NSk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5GcnVzdHVtPyBpbml0X2Zyb21fZnJ1c3R1 bSAoR3JhcGhlbmUuRnJ1c3R1bSBzcmMpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuRnJ1 c3R1bT8gaW5pdF9mcm9tX21hdHJpeCAoR3JhcGhlbmUuTWF0cml4IG1hdHJpeCk7CisrCQlwdWJs aWMgYm9vbCBpbnRlcnNlY3RzX2JveCAoR3JhcGhlbmUuQm94IGJveCk7CisrCQlwdWJsaWMgYm9v bCBpbnRlcnNlY3RzX3NwaGVyZSAoR3JhcGhlbmUuU3BoZXJlIHNwaGVyZSk7CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdy YXBoZW5lX21hdHJpeF90IiwgdHlwZV9pZCA9ICJncmFwaGVuZV9tYXRyaXhfZ2V0X3R5cGUgKCki KV0KKysJcHVibGljIHN0cnVjdCBNYXRyaXggeworKwkJcHVibGljIGJvb2wgZGVjb21wb3NlIChv dXQgR3JhcGhlbmUuVmVjMyB0cmFuc2xhdGUsIG91dCBHcmFwaGVuZS5WZWMzIHNjYWxlLCBvdXQg R3JhcGhlbmUuUXVhdGVybmlvbiByb3RhdGUsIG91dCBHcmFwaGVuZS5WZWMzIHNoZWFyLCBvdXQg R3JhcGhlbmUuVmVjNCBwZXJzcGVjdGl2ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIild CisrCQlwdWJsaWMgZmxvYXQgZGV0ZXJtaW5hbnQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMCIpXQorKwkJcHVibGljIGJvb2wgZXF1YWwgKEdyYXBoZW5lLk1hdHJpeCBiKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgYm9vbCBlcXVhbF9mYXN0IChHcmFw aGVuZS5NYXRyaXggYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg R3JhcGhlbmUuVmVjNCBnZXRfcm93ICh1aW50IGluZGV4Xyk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3ZhbHVlICh1aW50IHJvdywgdWludCBjb2wp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF94X3Nj YWxlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBmbG9hdCBn ZXRfeF90cmFuc2xhdGlvbiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyBmbG9hdCBnZXRfeV9zY2FsZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIild CisrCQlwdWJsaWMgZmxvYXQgZ2V0X3lfdHJhbnNsYXRpb24gKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3pfc2NhbGUgKCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF96X3RyYW5zbGF0aW9uICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhl bmUuTWF0cml4PyBpbml0X2Zyb21fMmQgKGRvdWJsZSB4eCwgZG91YmxlIHl4LCBkb3VibGUgeHks IGRvdWJsZSB5eSwgZG91YmxlIHhfMCwgZG91YmxlIHlfMCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5NYXRyaXg/IGluaXRfZnJvbV9m bG9hdCAoW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIGZsb2F0IHZbMTZdKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLk1hdHJp eD8gaW5pdF9mcm9tX21hdHJpeCAoR3JhcGhlbmUuTWF0cml4IHNyYyk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5NYXRyaXg/IGluaXRf ZnJvbV92ZWM0IChHcmFwaGVuZS5WZWM0IHYwLCBHcmFwaGVuZS5WZWM0IHYxLCBHcmFwaGVuZS5W ZWM0IHYyLCBHcmFwaGVuZS5WZWM0IHYzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0K KysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLk1hdHJpeD8gaW5pdF9mcnVzdHVtIChmbG9hdCBs ZWZ0LCBmbG9hdCByaWdodCwgZmxvYXQgYm90dG9tLCBmbG9hdCB0b3AsIGZsb2F0IHpfbmVhciwg ZmxvYXQgel9mYXIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVu b3duZWQgR3JhcGhlbmUuTWF0cml4PyBpbml0X2lkZW50aXR5ICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuTWF0cml4PyBpbml0X2xv b2tfYXQgKEdyYXBoZW5lLlZlYzMgZXllLCBHcmFwaGVuZS5WZWMzIGNlbnRlciwgR3JhcGhlbmUu VmVjMyB1cCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25l ZCBHcmFwaGVuZS5NYXRyaXg/IGluaXRfb3J0aG8gKGZsb2F0IGxlZnQsIGZsb2F0IHJpZ2h0LCBm bG9hdCB0b3AsIGZsb2F0IGJvdHRvbSwgZmxvYXQgel9uZWFyLCBmbG9hdCB6X2Zhcik7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5NYXRy aXg/IGluaXRfcGVyc3BlY3RpdmUgKGZsb2F0IGZvdnksIGZsb2F0IGFzcGVjdCwgZmxvYXQgel9u ZWFyLCBmbG9hdCB6X2Zhcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJs aWMgdW5vd25lZCBHcmFwaGVuZS5NYXRyaXg/IGluaXRfcm90YXRlIChmbG9hdCBhbmdsZSwgR3Jh cGhlbmUuVmVjMyBheGlzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1Ymxp YyB1bm93bmVkIEdyYXBoZW5lLk1hdHJpeD8gaW5pdF9zY2FsZSAoZmxvYXQgeCwgZmxvYXQgeSwg ZmxvYXQgeik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25l ZCBHcmFwaGVuZS5NYXRyaXg/IGluaXRfc2tldyAoZmxvYXQgeF9za2V3LCBmbG9hdCB5X3NrZXcp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhl bmUuTWF0cml4PyBpbml0X3RyYW5zbGF0ZSAoR3JhcGhlbmUuUG9pbnQzRCBwKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5NYXRyaXggaW50ZXJwb2xh dGUgKEdyYXBoZW5lLk1hdHJpeCBiLCBkb3VibGUgZmFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBib29sIGludmVyc2UgKG91dCBHcmFwaGVuZS5NYXRyaXgg cmVzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBib29sIGlzXzJk ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGJvb2wgaXNfYmFj a2ZhY2VfdmlzaWJsZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1Ymxp YyBib29sIGlzX2lkZW50aXR5ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJ cHVibGljIGJvb2wgaXNfc2luZ3VsYXIgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIild CisrCQlwdWJsaWMgR3JhcGhlbmUuTWF0cml4IG11bHRpcGx5IChHcmFwaGVuZS5NYXRyaXggYik7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGJvb2wgbmVhciAoR3Jh cGhlbmUuTWF0cml4IGIsIGZsb2F0IGVwc2lsb24pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MCIpXQorKwkJcHVibGljIEdyYXBoZW5lLk1hdHJpeCBub3JtYWxpemUgKCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuTWF0cml4IHBlcnNwZWN0aXZl IChmbG9hdCBkZXB0aCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg dm9pZCBwcmludCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBH cmFwaGVuZS5Qb2ludCBwcm9qZWN0X3BvaW50IChHcmFwaGVuZS5Qb2ludCBwKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5RdWFkIHByb2plY3RfcmVj dCAoR3JhcGhlbmUuUmVjdCByKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyBHcmFwaGVuZS5SZWN0IHByb2plY3RfcmVjdF9ib3VuZHMgKEdyYXBoZW5lLlJlY3Qgcik7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCByb3RhdGUgKGZs b2F0IGFuZ2xlLCBHcmFwaGVuZS5WZWMzIGF4aXMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MiIpXQorKwkJcHVibGljIHZvaWQgcm90YXRlX2V1bGVyIChHcmFwaGVuZS5FdWxlciBlKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHJvdGF0ZV9xdWF0ZXJu aW9uIChHcmFwaGVuZS5RdWF0ZXJuaW9uIHEpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIp XQorKwkJcHVibGljIHZvaWQgcm90YXRlX3ggKGZsb2F0IGFuZ2xlKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHJvdGF0ZV95IChmbG9hdCBhbmdsZSk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCByb3RhdGVfeiAoZmxv YXQgYW5nbGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQg c2NhbGUgKGZsb2F0IGZhY3Rvcl94LCBmbG9hdCBmYWN0b3JfeSwgZmxvYXQgZmFjdG9yX3opOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgc2tld194eSAoZmxv YXQgZmFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lk IHNrZXdfeHogKGZsb2F0IGZhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisr CQlwdWJsaWMgdm9pZCBza2V3X3l6IChmbG9hdCBmYWN0b3IpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMCIpXQorKwkJcHVibGljIGJvb2wgdG9fMmQgKG91dCBkb3VibGUgeHgsIG91dCBkb3Vi bGUgeXgsIG91dCBkb3VibGUgeHksIG91dCBkb3VibGUgeXksIG91dCBkb3VibGUgeF8wLCBvdXQg ZG91YmxlIHlfMCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9p ZCB0b19mbG9hdCAoW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIHJlZiBmbG9hdCB2WzE2 XSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuUmVj dCB0cmFuc2Zvcm1fYm91bmRzIChHcmFwaGVuZS5SZWN0IHIpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMiIpXQorKwkJcHVibGljIEdyYXBoZW5lLkJveCB0cmFuc2Zvcm1fYm94IChHcmFwaGVu ZS5Cb3ggYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhl bmUuUG9pbnQgdHJhbnNmb3JtX3BvaW50IChHcmFwaGVuZS5Qb2ludCBwKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludDNEIHRyYW5zZm9ybV9w b2ludDNkIChHcmFwaGVuZS5Qb2ludDNEIHApOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIp XQorKwkJcHVibGljIEdyYXBoZW5lLlJheSB0cmFuc2Zvcm1fcmF5IChHcmFwaGVuZS5SYXkgcik7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuUXVhZCB0 cmFuc2Zvcm1fcmVjdCAoR3JhcGhlbmUuUmVjdCByKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjIiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5TcGhlcmUgdHJhbnNmb3JtX3NwaGVyZSAoR3JhcGhl bmUuU3BoZXJlIHMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdy YXBoZW5lLlZlYzMgdHJhbnNmb3JtX3ZlYzMgKEdyYXBoZW5lLlZlYzMgdik7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjNCB0cmFuc2Zvcm1fdmVj NCAoR3JhcGhlbmUuVmVjNCB2KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyB2b2lkIHRyYW5zbGF0ZSAoR3JhcGhlbmUuUG9pbnQzRCBwb3MpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLk1hdHJpeCB0cmFuc3Bvc2UgKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQz RCB1bnByb2plY3RfcG9pbnQzZCAoR3JhcGhlbmUuTWF0cml4IG1vZGVsdmlldywgR3JhcGhlbmUu UG9pbnQzRCBwb2ludCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg R3JhcGhlbmUuUmVjdCB1bnRyYW5zZm9ybV9ib3VuZHMgKEdyYXBoZW5lLlJlY3QgciwgR3JhcGhl bmUuUmVjdCBib3VuZHMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGlj IGJvb2wgdW50cmFuc2Zvcm1fcG9pbnQgKEdyYXBoZW5lLlBvaW50IHAsIEdyYXBoZW5lLlJlY3Qg Ym91bmRzLCBvdXQgR3JhcGhlbmUuUG9pbnQgcmVzKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfcGxhbmVf dCIsIHR5cGVfaWQgPSAiZ3JhcGhlbmVfcGxhbmVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24g KHNpbmNlID0gIjEuMiIpXQorKwlwdWJsaWMgc3RydWN0IFBsYW5lIHsKKysJCXB1YmxpYyBmbG9h dCBkaXN0YW5jZSAoR3JhcGhlbmUuUG9pbnQzRCBwb2ludCk7CisrCQlwdWJsaWMgYm9vbCBlcXVh bCAoR3JhcGhlbmUuUGxhbmUgYik7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X2NvbnN0YW50ICgpOwor KwkJcHVibGljIEdyYXBoZW5lLlZlYzMgZ2V0X25vcm1hbCAoKTsKKysJCXB1YmxpYyB1bm93bmVk IEdyYXBoZW5lLlBsYW5lPyBpbml0IChHcmFwaGVuZS5WZWMzPyBub3JtYWwsIGZsb2F0IGNvbnN0 YW50KTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlBsYW5lPyBpbml0X2Zyb21fcGxhbmUg KEdyYXBoZW5lLlBsYW5lIHNyYyk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5QbGFuZT8g aW5pdF9mcm9tX3BvaW50IChHcmFwaGVuZS5WZWMzIG5vcm1hbCwgR3JhcGhlbmUuUG9pbnQzRCBw b2ludCk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5QbGFuZT8gaW5pdF9mcm9tX3BvaW50 cyAoR3JhcGhlbmUuUG9pbnQzRCBhLCBHcmFwaGVuZS5Qb2ludDNEIGIsIEdyYXBoZW5lLlBvaW50 M0QgYyk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5QbGFuZT8gaW5pdF9mcm9tX3ZlYzQg KEdyYXBoZW5lLlZlYzQgc3JjKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5QbGFuZSBuZWdhdGUgKCk7 CisrCQlwdWJsaWMgR3JhcGhlbmUuUGxhbmUgbm9ybWFsaXplICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5QbGFuZSB0cmFuc2Zvcm0gKEdyYXBo ZW5lLk1hdHJpeCBtYXRyaXgsIEdyYXBoZW5lLk1hdHJpeD8gbm9ybWFsX21hdHJpeCk7CisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1l ID0gImdyYXBoZW5lX3BvaW50X3QiLCB0eXBlX2lkID0gImdyYXBoZW5lX3BvaW50X2dldF90eXBl ICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIHN0cnVjdCBQb2lu dCB7CisrCQlwdWJsaWMgZmxvYXQgeDsKKysJCXB1YmxpYyBmbG9hdCB5OworKwkJcHVibGljIGZs b2F0IGRpc3RhbmNlIChHcmFwaGVuZS5Qb2ludCBiLCBvdXQgZmxvYXQgZF94LCBvdXQgZmxvYXQg ZF95KTsKKysJCXB1YmxpYyBib29sIGVxdWFsIChHcmFwaGVuZS5Qb2ludCBiKTsKKysJCXB1Ymxp YyB1bm93bmVkIEdyYXBoZW5lLlBvaW50PyBpbml0IChmbG9hdCB4LCBmbG9hdCB5KTsKKysJCXB1 YmxpYyB1bm93bmVkIEdyYXBoZW5lLlBvaW50PyBpbml0X2Zyb21fcG9pbnQgKEdyYXBoZW5lLlBv aW50IHNyYyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdW5vd25l ZCBHcmFwaGVuZS5Qb2ludD8gaW5pdF9mcm9tX3ZlYzIgKEdyYXBoZW5lLlZlYzIgc3JjKTsKKysJ CXB1YmxpYyBHcmFwaGVuZS5Qb2ludCBpbnRlcnBvbGF0ZSAoR3JhcGhlbmUuUG9pbnQgYiwgZG91 YmxlIGZhY3Rvcik7CisrCQlwdWJsaWMgYm9vbCBuZWFyIChHcmFwaGVuZS5Qb2ludCBiLCBmbG9h dCBlcHNpbG9uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBHcmFw aGVuZS5WZWMyIHRvX3ZlYzIgKCk7CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUu UG9pbnQ/IHplcm8gKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBo ZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdyYXBoZW5lX3BvaW50M2RfdCIsIGxvd2VyX2Nhc2Vf Y3N1ZmZpeCA9ICJwb2ludDNkIiwgdHlwZV9pZCA9ICJncmFwaGVuZV9wb2ludDNkX2dldF90eXBl ICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIHN0cnVjdCBQb2lu dDNEIHsKKysJCXB1YmxpYyBmbG9hdCB4OworKwkJcHVibGljIGZsb2F0IHk7CisrCQlwdWJsaWMg ZmxvYXQgejsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludDNEIGNyb3NzIChHcmFwaGVuZS5Qb2lu dDNEIGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIGZsb2F0IGRp c3RhbmNlIChHcmFwaGVuZS5Qb2ludDNEIGIsIG91dCBHcmFwaGVuZS5WZWMzIGRlbHRhKTsKKysJ CXB1YmxpYyBmbG9hdCBkb3QgKEdyYXBoZW5lLlBvaW50M0QgYik7CisrCQlwdWJsaWMgYm9vbCBl cXVhbCAoR3JhcGhlbmUuUG9pbnQzRCBiKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlBv aW50M0Q/IGluaXQgKGZsb2F0IHgsIGZsb2F0IHksIGZsb2F0IHopOworKwkJcHVibGljIHVub3du ZWQgR3JhcGhlbmUuUG9pbnQzRD8gaW5pdF9mcm9tX3BvaW50IChHcmFwaGVuZS5Qb2ludDNEIHNy Yyk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5Qb2ludDNEPyBpbml0X2Zyb21fdmVjMyAo R3JhcGhlbmUuVmVjMyB2KTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludDNEIGludGVycG9sYXRl IChHcmFwaGVuZS5Qb2ludDNEIGIsIGRvdWJsZSBmYWN0b3IpOworKwkJcHVibGljIGZsb2F0IGxl bmd0aCAoKTsKKysJCXB1YmxpYyBib29sIG5lYXIgKEdyYXBoZW5lLlBvaW50M0QgYiwgZmxvYXQg ZXBzaWxvbik7CisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQzRCBub3JtYWxpemUgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQzRCBub3Jt YWxpemVfdmlld3BvcnQgKEdyYXBoZW5lLlJlY3Qgdmlld3BvcnQsIGZsb2F0IHpfbmVhciwgZmxv YXQgel9mYXIpOworKwkJcHVibGljIEdyYXBoZW5lLlBvaW50M0Qgc2NhbGUgKGZsb2F0IGZhY3Rv cik7CisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMyB0b192ZWMzICgpOworKwkJcHVibGljIHN0YXRp YyB1bm93bmVkIEdyYXBoZW5lLlBvaW50M0Q/IHplcm8gKCk7CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdyYXBoZW5lX3F1 YWRfdCIsIHR5cGVfaWQgPSAiZ3JhcGhlbmVfcXVhZF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBzdHJ1Y3QgUXVhZCB7CisrCQlwdWJsaWMgR3Jh cGhlbmUuUmVjdCBib3VuZHMgKCk7CisrCQlwdWJsaWMgYm9vbCBjb250YWlucyAoR3JhcGhlbmUu UG9pbnQgcCk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5Qb2ludD8gZ2V0X3BvaW50ICh1 aW50IGluZGV4Xyk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5RdWFkPyBpbml0IChHcmFw aGVuZS5Qb2ludCBwMSwgR3JhcGhlbmUuUG9pbnQgcDIsIEdyYXBoZW5lLlBvaW50IHAzLCBHcmFw aGVuZS5Qb2ludCBwNCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMg dW5vd25lZCBHcmFwaGVuZS5RdWFkPyBpbml0X2Zyb21fcG9pbnRzIChbQ0NvZGUgKGFycmF5X2xl bmd0aCA9IGZhbHNlKV0gR3JhcGhlbmUuUG9pbnQgcG9pbnRzWzRdKTsKKysJCXB1YmxpYyB1bm93 bmVkIEdyYXBoZW5lLlF1YWQ/IGluaXRfZnJvbV9yZWN0IChHcmFwaGVuZS5SZWN0IHIpOworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFt ZSA9ICJncmFwaGVuZV9xdWF0ZXJuaW9uX3QiLCB0eXBlX2lkID0gImdyYXBoZW5lX3F1YXRlcm5p b25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMg c3RydWN0IFF1YXRlcm5pb24geworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1 YmxpYyBHcmFwaGVuZS5RdWF0ZXJuaW9uIGFkZCAoR3JhcGhlbmUuUXVhdGVybmlvbiBiKTsKKysJ CXB1YmxpYyBmbG9hdCBkb3QgKEdyYXBoZW5lLlF1YXRlcm5pb24gYik7CisrCQlwdWJsaWMgYm9v bCBlcXVhbCAoR3JhcGhlbmUuUXVhdGVybmlvbiBiKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBo ZW5lLlF1YXRlcm5pb24/IGluaXQgKGZsb2F0IHgsIGZsb2F0IHksIGZsb2F0IHosIGZsb2F0IHcp OworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUXVhdGVybmlvbj8gaW5pdF9mcm9tX2FuZ2xl X3ZlYzMgKGZsb2F0IGFuZ2xlLCBHcmFwaGVuZS5WZWMzIGF4aXMpOworKwkJcHVibGljIHVub3du ZWQgR3JhcGhlbmUuUXVhdGVybmlvbj8gaW5pdF9mcm9tX2FuZ2xlcyAoZmxvYXQgZGVnX3gsIGZs b2F0IGRlZ195LCBmbG9hdCBkZWdfeik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisr CQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5RdWF0ZXJuaW9uPyBpbml0X2Zyb21fZXVsZXIgKEdy YXBoZW5lLkV1bGVyIGUpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUXVhdGVybmlvbj8g aW5pdF9mcm9tX21hdHJpeCAoR3JhcGhlbmUuTWF0cml4IG0pOworKwkJcHVibGljIHVub3duZWQg R3JhcGhlbmUuUXVhdGVybmlvbj8gaW5pdF9mcm9tX3F1YXRlcm5pb24gKEdyYXBoZW5lLlF1YXRl cm5pb24gc3JjKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlF1YXRlcm5pb24/IGluaXRf ZnJvbV9yYWRpYW5zIChmbG9hdCByYWRfeCwgZmxvYXQgcmFkX3ksIGZsb2F0IHJhZF96KTsKKysJ CXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlF1YXRlcm5pb24/IGluaXRfZnJvbV92ZWM0IChHcmFw aGVuZS5WZWM0IHNyYyk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5RdWF0ZXJuaW9uPyBp bml0X2lkZW50aXR5ICgpOworKwkJcHVibGljIEdyYXBoZW5lLlF1YXRlcm5pb24gaW52ZXJ0ICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5RdWF0 ZXJuaW9uIG11bHRpcGx5IChHcmFwaGVuZS5RdWF0ZXJuaW9uIGIpOworKwkJcHVibGljIEdyYXBo ZW5lLlF1YXRlcm5pb24gbm9ybWFsaXplICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAi KV0KKysJCXB1YmxpYyBHcmFwaGVuZS5RdWF0ZXJuaW9uIHNjYWxlIChmbG9hdCBmYWN0b3IpOwor KwkJcHVibGljIEdyYXBoZW5lLlF1YXRlcm5pb24gc2xlcnAgKEdyYXBoZW5lLlF1YXRlcm5pb24g YiwgZmxvYXQgZmFjdG9yKTsKKysJCXB1YmxpYyB2b2lkIHRvX2FuZ2xlX3ZlYzMgKG91dCBmbG9h dCBhbmdsZSwgb3V0IEdyYXBoZW5lLlZlYzMgYXhpcyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4yIildCisrCQlwdWJsaWMgdm9pZCB0b19hbmdsZXMgKG91dCBmbG9hdCBkZWdfeCwgb3V0IGZs b2F0IGRlZ195LCBvdXQgZmxvYXQgZGVnX3opOworKwkJcHVibGljIEdyYXBoZW5lLk1hdHJpeCB0 b19tYXRyaXggKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9p ZCB0b19yYWRpYW5zIChvdXQgZmxvYXQgcmFkX3gsIG91dCBmbG9hdCByYWRfeSwgb3V0IGZsb2F0 IHJhZF96KTsKKysJCXB1YmxpYyBHcmFwaGVuZS5WZWM0IHRvX3ZlYzQgKCk7CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdy YXBoZW5lX3JheV90IiwgdHlwZV9pZCA9ICJncmFwaGVuZV9yYXlfZ2V0X3R5cGUgKCkiKV0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgc3RydWN0IFJheSB7CisrCQlwdWJs aWMgYm9vbCBlcXVhbCAoR3JhcGhlbmUuUmF5IGIpOworKwkJcHVibGljIEdyYXBoZW5lLlBvaW50 M0QgZ2V0X2Nsb3Nlc3RfcG9pbnRfdG9fcG9pbnQgKEdyYXBoZW5lLlBvaW50M0QgcCk7CisrCQlw dWJsaWMgR3JhcGhlbmUuVmVjMyBnZXRfZGlyZWN0aW9uICgpOworKwkJcHVibGljIGZsb2F0IGdl dF9kaXN0YW5jZV90b19wbGFuZSAoR3JhcGhlbmUuUGxhbmUgcCk7CisrCQlwdWJsaWMgZmxvYXQg Z2V0X2Rpc3RhbmNlX3RvX3BvaW50IChHcmFwaGVuZS5Qb2ludDNEIHApOworKwkJcHVibGljIEdy YXBoZW5lLlBvaW50M0QgZ2V0X29yaWdpbiAoKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludDNE IGdldF9wb3NpdGlvbl9hdCAoZmxvYXQgdCk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5S YXk/IGluaXQgKEdyYXBoZW5lLlBvaW50M0Q/IG9yaWdpbiwgR3JhcGhlbmUuVmVjMz8gZGlyZWN0 aW9uKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlJheT8gaW5pdF9mcm9tX3JheSAoR3Jh cGhlbmUuUmF5IHNyYyk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5SYXk/IGluaXRfZnJv bV92ZWMzIChHcmFwaGVuZS5WZWMzPyBvcmlnaW4sIEdyYXBoZW5lLlZlYzM/IGRpcmVjdGlvbik7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlJheUlu dGVyc2VjdGlvbktpbmQgaW50ZXJzZWN0X2JveCAoR3JhcGhlbmUuQm94IGIsIG91dCBmbG9hdCB0 X291dCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIEdyYXBoZW5l LlJheUludGVyc2VjdGlvbktpbmQgaW50ZXJzZWN0X3NwaGVyZSAoR3JhcGhlbmUuU3BoZXJlIHMs IG91dCBmbG9hdCB0X291dCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVi bGljIEdyYXBoZW5lLlJheUludGVyc2VjdGlvbktpbmQgaW50ZXJzZWN0X3RyaWFuZ2xlIChHcmFw aGVuZS5UcmlhbmdsZSB0LCBvdXQgZmxvYXQgdF9vdXQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyBib29sIGludGVyc2VjdHNfYm94IChHcmFwaGVuZS5Cb3ggYik7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGJvb2wgaW50ZXJzZWN0 c19zcGhlcmUgKEdyYXBoZW5lLlNwaGVyZSBzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEw IildCisrCQlwdWJsaWMgYm9vbCBpbnRlcnNlY3RzX3RyaWFuZ2xlIChHcmFwaGVuZS5Ucmlhbmds ZSB0KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVj dC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfcmVjdF90IiwgdHlwZV9pZCA9ICJncmFwaGVuZV9yZWN0 X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIHN0 cnVjdCBSZWN0IHsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludCBvcmlnaW47CisrCQlwdWJsaWMg R3JhcGhlbmUuU2l6ZSBzaXplOworKwkJcHVibGljIHN0YXRpYyBHcmFwaGVuZS5SZWN0PyBhbGxv YyAoKTsKKysJCXB1YmxpYyBib29sIGNvbnRhaW5zX3BvaW50IChHcmFwaGVuZS5Qb2ludCBwKTsK KysJCXB1YmxpYyBib29sIGNvbnRhaW5zX3JlY3QgKEdyYXBoZW5lLlJlY3QgYik7CisrCQlwdWJs aWMgYm9vbCBlcXVhbCAoR3JhcGhlbmUuUmVjdCBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjQiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5SZWN0IGV4cGFuZCAoR3JhcGhlbmUuUG9pbnQgcCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF9hcmVh ICgpOworKwkJcHVibGljIEdyYXBoZW5lLlBvaW50IGdldF9ib3R0b21fbGVmdCAoKTsKKysJCXB1 YmxpYyBHcmFwaGVuZS5Qb2ludCBnZXRfYm90dG9tX3JpZ2h0ICgpOworKwkJcHVibGljIEdyYXBo ZW5lLlBvaW50IGdldF9jZW50ZXIgKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X2hlaWdodCAoKTsK KysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludCBnZXRfdG9wX2xlZnQgKCk7CisrCQlwdWJsaWMgR3Jh cGhlbmUuUG9pbnQgZ2V0X3RvcF9yaWdodCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQi KV0KKysJCXB1YmxpYyB2b2lkIGdldF92ZXJ0aWNlcyAoW0NDb2RlIChhcnJheV9sZW5ndGggPSBm YWxzZSldIHJlZiBHcmFwaGVuZS5WZWMyIHZlcnRpY2VzWzRdKTsKKysJCXB1YmxpYyBmbG9hdCBn ZXRfd2lkdGggKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X3ggKCk7CisrCQlwdWJsaWMgZmxvYXQg Z2V0X3kgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5SZWN0PyBpbml0IChmbG9hdCB4 LCBmbG9hdCB5LCBmbG9hdCB3aWR0aCwgZmxvYXQgaGVpZ2h0KTsKKysJCXB1YmxpYyB1bm93bmVk IEdyYXBoZW5lLlJlY3Q/IGluaXRfZnJvbV9yZWN0IChHcmFwaGVuZS5SZWN0IHNyYyk7CisrCQlw dWJsaWMgdW5vd25lZCBHcmFwaGVuZS5SZWN0PyBpbnNldCAoZmxvYXQgZF94LCBmbG9hdCBkX3kp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlJlY3Qg aW5zZXRfciAoZmxvYXQgZF94LCBmbG9hdCBkX3kpOworKwkJcHVibGljIEdyYXBoZW5lLlJlY3Qg aW50ZXJwb2xhdGUgKEdyYXBoZW5lLlJlY3QgYiwgZG91YmxlIGZhY3Rvcik7CisrCQlwdWJsaWMg Ym9vbCBpbnRlcnNlY3Rpb24gKEdyYXBoZW5lLlJlY3QgYiwgb3V0IEdyYXBoZW5lLlJlY3QgcmVz KTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlJlY3Q/IG5vcm1hbGl6ZSAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5SZWN0IG5vcm1hbGl6 ZV9yICgpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUmVjdD8gb2Zmc2V0IChmbG9hdCBk X3gsIGZsb2F0IGRfeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMg R3JhcGhlbmUuUmVjdCBvZmZzZXRfciAoZmxvYXQgZF94LCBmbG9hdCBkX3kpOworKwkJW1ZlcnNp b24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9 ICIxLjQiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5SZWN0IHJvdW5kICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5SZWN0IHJvdW5kX2V4dGVudHMg KCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAi MS40Iiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5SZWN0PyBy b3VuZF90b19waXhlbCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJs aWMgR3JhcGhlbmUuUmVjdCBzY2FsZSAoZmxvYXQgc19oLCBmbG9hdCBzX3YpOworKwkJcHVibGlj IEdyYXBoZW5lLlJlY3QgdW5pb24gKEdyYXBoZW5lLlJlY3QgYik7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS40IildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuUmVjdD8gemVy byAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVj dC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfc2ltZDRmX3QiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0K KysJcHVibGljIHN0cnVjdCBTaW1kNEYgeworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJncmFwaGVuZV9zaW1kNHg0Zl90Iiwg aGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgU2ltZDRYNEYgeworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9 ICJncmFwaGVuZV9zaXplX3QiLCB0eXBlX2lkID0gImdyYXBoZW5lX3NpemVfZ2V0X3R5cGUgKCki KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgc3RydWN0IFNpemUgewor KwkJcHVibGljIGZsb2F0IHdpZHRoOworKwkJcHVibGljIGZsb2F0IGhlaWdodDsKKysJCXB1Ymxp YyBib29sIGVxdWFsIChHcmFwaGVuZS5TaXplIGIpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhl bmUuU2l6ZT8gaW5pdCAoZmxvYXQgd2lkdGgsIGZsb2F0IGhlaWdodCk7CisrCQlwdWJsaWMgdW5v d25lZCBHcmFwaGVuZS5TaXplPyBpbml0X2Zyb21fc2l6ZSAoR3JhcGhlbmUuU2l6ZSBzcmMpOwor KwkJcHVibGljIEdyYXBoZW5lLlNpemUgaW50ZXJwb2xhdGUgKEdyYXBoZW5lLlNpemUgYiwgZG91 YmxlIGZhY3Rvcik7CisrCQlwdWJsaWMgR3JhcGhlbmUuU2l6ZSBzY2FsZSAoZmxvYXQgZmFjdG9y KTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5TaXplPyB6ZXJvICgpOworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFt ZSA9ICJncmFwaGVuZV9zcGhlcmVfdCIsIHR5cGVfaWQgPSAiZ3JhcGhlbmVfc3BoZXJlX2dldF90 eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJcHVibGljIHN0cnVjdCBT cGhlcmUgeworKwkJcHVibGljIGJvb2wgY29udGFpbnNfcG9pbnQgKEdyYXBoZW5lLlBvaW50M0Qg cG9pbnQpOworKwkJcHVibGljIGZsb2F0IGRpc3RhbmNlIChHcmFwaGVuZS5Qb2ludDNEIHBvaW50 KTsKKysJCXB1YmxpYyBib29sIGVxdWFsIChHcmFwaGVuZS5TcGhlcmUgYik7CisrCQlwdWJsaWMg R3JhcGhlbmUuQm94IGdldF9ib3VuZGluZ19ib3ggKCk7CisrCQlwdWJsaWMgR3JhcGhlbmUuUG9p bnQzRCBnZXRfY2VudGVyICgpOworKwkJcHVibGljIGZsb2F0IGdldF9yYWRpdXMgKCk7CisrCQlw dWJsaWMgdW5vd25lZCBHcmFwaGVuZS5TcGhlcmU/IGluaXQgKEdyYXBoZW5lLlBvaW50M0Q/IGNl bnRlciwgZmxvYXQgcmFkaXVzKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlNwaGVyZT8g aW5pdF9mcm9tX3BvaW50cyAoW0NDb2RlIChhcnJheV9sZW5ndGhfY25hbWUgPSAibl9wb2ludHMi LCBhcnJheV9sZW5ndGhfcG9zID0gMC41LCBhcnJheV9sZW5ndGhfdHlwZSA9ICJndWludCIpXSBH cmFwaGVuZS5Qb2ludDNEW10gcG9pbnRzLCBHcmFwaGVuZS5Qb2ludDNEPyBjZW50ZXIpOworKwkJ cHVibGljIHVub3duZWQgR3JhcGhlbmUuU3BoZXJlPyBpbml0X2Zyb21fdmVjdG9ycyAoW0NDb2Rl IChhcnJheV9sZW5ndGhfY25hbWUgPSAibl92ZWN0b3JzIiwgYXJyYXlfbGVuZ3RoX3BvcyA9IDAu NSwgYXJyYXlfbGVuZ3RoX3R5cGUgPSAiZ3VpbnQiKV0gR3JhcGhlbmUuVmVjM1tdIHZlY3RvcnMs IEdyYXBoZW5lLlBvaW50M0Q/IGNlbnRlcik7CisrCQlwdWJsaWMgYm9vbCBpc19lbXB0eSAoKTsK KysJCXB1YmxpYyBHcmFwaGVuZS5TcGhlcmUgdHJhbnNsYXRlIChHcmFwaGVuZS5Qb2ludDNEIHBv aW50KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVj dC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfdHJpYW5nbGVfdCIsIHR5cGVfaWQgPSAiZ3JhcGhlbmVf dHJpYW5nbGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwlw dWJsaWMgc3RydWN0IFRyaWFuZ2xlIHsKKysJCXB1YmxpYyBib29sIGNvbnRhaW5zX3BvaW50IChH cmFwaGVuZS5Qb2ludDNEIHApOworKwkJcHVibGljIGJvb2wgZXF1YWwgKEdyYXBoZW5lLlRyaWFu Z2xlIGIpOworKwkJcHVibGljIGZsb2F0IGdldF9hcmVhICgpOworKwkJcHVibGljIGJvb2wgZ2V0 X2Jhcnljb29yZHMgKEdyYXBoZW5lLlBvaW50M0Q/IHAsIG91dCBHcmFwaGVuZS5WZWMyIHJlcyk7 CisrCQlwdWJsaWMgR3JhcGhlbmUuQm94IGdldF9ib3VuZGluZ19ib3ggKCk7CisrCQlwdWJsaWMg R3JhcGhlbmUuUG9pbnQzRCBnZXRfbWlkcG9pbnQgKCk7CisrCQlwdWJsaWMgR3JhcGhlbmUuVmVj MyBnZXRfbm9ybWFsICgpOworKwkJcHVibGljIEdyYXBoZW5lLlBsYW5lIGdldF9wbGFuZSAoKTsK KysJCXB1YmxpYyB2b2lkIGdldF9wb2ludHMgKG91dCBHcmFwaGVuZS5Qb2ludDNEIGEsIG91dCBH cmFwaGVuZS5Qb2ludDNEIGIsIG91dCBHcmFwaGVuZS5Qb2ludDNEIGMpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBib29sIGdldF91diAoR3JhcGhlbmUuUG9pbnQz RD8gcCwgR3JhcGhlbmUuVmVjMiB1dl9hLCBHcmFwaGVuZS5WZWMyIHV2X2IsIEdyYXBoZW5lLlZl YzIgdXZfYywgb3V0IEdyYXBoZW5lLlZlYzIgcmVzKTsKKysJCXB1YmxpYyB2b2lkIGdldF92ZXJ0 aWNlcyAob3V0IEdyYXBoZW5lLlZlYzMgYSwgb3V0IEdyYXBoZW5lLlZlYzMgYiwgb3V0IEdyYXBo ZW5lLlZlYzMgYyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHVu b3duZWQgR3JhcGhlbmUuVHJpYW5nbGU/IGluaXRfZnJvbV9mbG9hdCAoW0NDb2RlIChhcnJheV9s ZW5ndGggPSBmYWxzZSldIGZsb2F0IGFbM10sIFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2Up XSBmbG9hdCBiWzNdLCBbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gZmxvYXQgY1szXSk7 CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5UcmlhbmdsZT8gaW5pdF9mcm9tX3BvaW50M2Qg KEdyYXBoZW5lLlBvaW50M0Q/IGEsIEdyYXBoZW5lLlBvaW50M0Q/IGIsIEdyYXBoZW5lLlBvaW50 M0Q/IGMpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuVHJpYW5nbGU/IGluaXRfZnJvbV92 ZWMzIChHcmFwaGVuZS5WZWMzPyBhLCBHcmFwaGVuZS5WZWMzPyBiLCBHcmFwaGVuZS5WZWMzPyBj KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5o IiwgY25hbWUgPSAiZ3JhcGhlbmVfdmVjMl90IiwgdHlwZV9pZCA9ICJncmFwaGVuZV92ZWMyX2dl dF90eXBlICgpIildCisrCXB1YmxpYyBzdHJ1Y3QgVmVjMiB7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMiBhZGQgKEdyYXBoZW5lLlZlYzIgYik7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMiBk aXZpZGUgKEdyYXBoZW5lLlZlYzIgYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisr CQlwdWJsaWMgZmxvYXQgZG90IChHcmFwaGVuZS5WZWMyIGIpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMiIpXQorKwkJcHVibGljIGJvb2wgZXF1YWwgKEdyYXBoZW5lLlZlYzIgdjIpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF94ICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF95ICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuVmVj Mj8gaW5pdCAoZmxvYXQgeCwgZmxvYXQgeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIild CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5WZWMyPyBpbml0X2Zyb21fZmxvYXQgKFtDQ29k ZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSBmbG9hdCBzcmNbMl0pOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuVmVjMj8gaW5pdF9mcm9t X3ZlYzIgKEdyYXBoZW5lLlZlYzIgc3JjKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIild CisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMiBpbnRlcnBvbGF0ZSAoR3JhcGhlbmUuVmVjMiB2Miwg ZG91YmxlIGZhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg ZmxvYXQgbGVuZ3RoICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGlj IEdyYXBoZW5lLlZlYzIgbWF4IChHcmFwaGVuZS5WZWMyIGIpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzIgbWluIChHcmFwaGVuZS5WZWMyIGIp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzIg bXVsdGlwbHkgKEdyYXBoZW5lLlZlYzIgYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIild CisrCQlwdWJsaWMgYm9vbCBuZWFyIChHcmFwaGVuZS5WZWMyIHYyLCBmbG9hdCBlcHNpbG9uKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMyIG5l Z2F0ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVu ZS5WZWMyIG5vcm1hbGl6ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5WZWMyPyBvbmUgKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMiBzY2FsZSAoZmxvYXQgZmFj dG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5W ZWMyIHN1YnRyYWN0IChHcmFwaGVuZS5WZWMyIGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MCIpXQorKwkJcHVibGljIHZvaWQgdG9fZmxvYXQgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFs c2UpXSByZWYgZmxvYXQgZGVzdFsyXSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisr CQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuVmVjMj8geF9heGlzICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5l LlZlYzI/IHlfYXhpcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1Ymxp YyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5WZWMyPyB6ZXJvICgpOworKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJncmFwaGVu ZV92ZWMzX3QiLCB0eXBlX2lkID0gImdyYXBoZW5lX3ZlYzNfZ2V0X3R5cGUgKCkiKV0KKysJcHVi bGljIHN0cnVjdCBWZWMzIHsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1Ymxp YyBHcmFwaGVuZS5WZWMzIGFkZCAoR3JhcGhlbmUuVmVjMyBiKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMzIGNyb3NzIChHcmFwaGVuZS5WZWMz IGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZl YzMgZGl2aWRlIChHcmFwaGVuZS5WZWMzIGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIp XQorKwkJcHVibGljIGZsb2F0IGRvdCAoR3JhcGhlbmUuVmVjMyBiKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBib29sIGVxdWFsIChHcmFwaGVuZS5WZWMzIHYyKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfeCAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMyIGdl dF94eSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVu ZS5WZWMzIGdldF94eTAgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJs aWMgR3JhcGhlbmUuVmVjNCBnZXRfeHl6MCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWM0IGdldF94eXoxICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzQgZ2V0X3h5encgKGZsb2F0IHcp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF95ICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF96ICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhl bmUuVmVjMz8gaW5pdCAoZmxvYXQgeCwgZmxvYXQgeSwgZmxvYXQgeik7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5WZWMzPyBpbml0X2Zy b21fZmxvYXQgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSBmbG9hdCBzcmNbM10pOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUu VmVjMz8gaW5pdF9mcm9tX3ZlYzMgKEdyYXBoZW5lLlZlYzMgc3JjKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMyBpbnRlcnBvbGF0ZSAoR3Jh cGhlbmUuVmVjMyB2MiwgZG91YmxlIGZhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgZmxvYXQgbGVuZ3RoICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzMgbWF4IChHcmFwaGVuZS5WZWMzIGIpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzMgbWluIChH cmFwaGVuZS5WZWMzIGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGlj IEdyYXBoZW5lLlZlYzMgbXVsdGlwbHkgKEdyYXBoZW5lLlZlYzMgYik7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgYm9vbCBuZWFyIChHcmFwaGVuZS5WZWMzIHYyLCBm bG9hdCBlcHNpbG9uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBH cmFwaGVuZS5WZWMzIG5lZ2F0ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJ CXB1YmxpYyBHcmFwaGVuZS5WZWMzIG5vcm1hbGl6ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjAiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5WZWMzPyBvbmUgKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMyBz Y2FsZSAoZmxvYXQgZmFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyBHcmFwaGVuZS5WZWMzIHN1YnRyYWN0IChHcmFwaGVuZS5WZWMzIGIpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgdG9fZmxvYXQgKFtDQ29kZSAoYXJy YXlfbGVuZ3RoID0gZmFsc2UpXSByZWYgZmxvYXQgZGVzdFszXSk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuVmVjMz8geF9h eGlzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyB1 bm93bmVkIEdyYXBoZW5lLlZlYzM/IHlfYXhpcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjAiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5WZWMzPyB6X2F4aXMgKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQg R3JhcGhlbmUuVmVjMz8gemVybyAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfdmVjNF90IiwgdHlwZV9p ZCA9ICJncmFwaGVuZV92ZWM0X2dldF90eXBlICgpIildCisrCXB1YmxpYyBzdHJ1Y3QgVmVjNCB7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjNCBh ZGQgKEdyYXBoZW5lLlZlYzQgYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlw dWJsaWMgR3JhcGhlbmUuVmVjNCBkaXZpZGUgKEdyYXBoZW5lLlZlYzQgYik7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgZG90IChHcmFwaGVuZS5WZWM0IGIp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIGJvb2wgZXF1YWwgKEdy YXBoZW5lLlZlYzQgdjIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGlj IGZsb2F0IGdldF93ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGlj IGZsb2F0IGdldF94ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGlj IEdyYXBoZW5lLlZlYzIgZ2V0X3h5ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwkJcHVibGljIEdyYXBoZW5lLlZlYzMgZ2V0X3h5eiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfeSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfeiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlZlYzQ/IGluaXQgKGZsb2F0IHgs IGZsb2F0IHksIGZsb2F0IHosIGZsb2F0IHcpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIp XQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuVmVjND8gaW5pdF9mcm9tX2Zsb2F0IChbQ0Nv ZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gZmxvYXQgc3JjWzRdKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlZlYzQ/IGluaXRfZnJv bV92ZWMyIChHcmFwaGVuZS5WZWMyIHNyYywgZmxvYXQgeiwgZmxvYXQgdyk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5WZWM0PyBpbml0 X2Zyb21fdmVjMyAoR3JhcGhlbmUuVmVjMyBzcmMsIGZsb2F0IHcpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuVmVjND8gaW5pdF9mcm9t X3ZlYzQgKEdyYXBoZW5lLlZlYzQgc3JjKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIild CisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjNCBpbnRlcnBvbGF0ZSAoR3JhcGhlbmUuVmVjNCB2Miwg ZG91YmxlIGZhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg ZmxvYXQgbGVuZ3RoICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGlj IEdyYXBoZW5lLlZlYzQgbWF4IChHcmFwaGVuZS5WZWM0IGIpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzQgbWluIChHcmFwaGVuZS5WZWM0IGIp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzQg bXVsdGlwbHkgKEdyYXBoZW5lLlZlYzQgYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIild CisrCQlwdWJsaWMgYm9vbCBuZWFyIChHcmFwaGVuZS5WZWM0IHYyLCBmbG9hdCBlcHNpbG9uKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWM0IG5l Z2F0ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVu ZS5WZWM0IG5vcm1hbGl6ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5WZWM0PyBvbmUgKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjNCBzY2FsZSAoZmxvYXQgZmFj dG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5W ZWM0IHN1YnRyYWN0IChHcmFwaGVuZS5WZWM0IGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MCIpXQorKwkJcHVibGljIHZvaWQgdG9fZmxvYXQgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFs c2UpXSByZWYgZmxvYXQgZGVzdFs0XSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisr CQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuVmVjND8gd19heGlzICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5l LlZlYzQ/IHhfYXhpcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1Ymxp YyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5WZWM0PyB5X2F4aXMgKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuVmVjND8g el9heGlzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRp YyB1bm93bmVkIEdyYXBoZW5lLlZlYzQ/IHplcm8gKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdyYXBoZW5lX2V1bGVy X29yZGVyX3QiLCBjcHJlZml4ID0gIkdSQVBIRU5FX0VVTEVSX09SREVSXyIsIGhhc190eXBlX2lk ID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBlbnVtIEV1 bGVyT3JkZXIgeworKwkJREVGQVVMVCwKKysJCVhZWiwKKysJCVlaWCwKKysJCVpYWSwKKysJCVha WSwKKysJCVlYWiwKKysJCVpZWCwKKysJCVNYWVosCisrCQlTWFlYLAorKwkJU1haWSwKKysJCVNY WlgsCisrCQlTWVpYLAorKwkJU1laWSwKKysJCVNZWFosCisrCQlTWVhZLAorKwkJU1pYWSwKKysJ CVNaWFosCisrCQlTWllYLAorKwkJU1pZWiwKKysJCVJaWVgsCisrCQlSWFlYLAorKwkJUllaWCwK KysJCVJYWlgsCisrCQlSWFpZLAorKwkJUllaWSwKKysJCVJaWFksCisrCQlSWVhZLAorKwkJUllY WiwKKysJCVJaWFosCisrCQlSWFlaLAorKwkJUlpZWgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJncmFwaGVuZV9yYXlfaW50 ZXJzZWN0aW9uX2tpbmRfdCIsIGNwcmVmaXggPSAiR1JBUEhFTkVfUkFZX0lOVEVSU0VDVElPTl9L SU5EXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIp XQorKwlwdWJsaWMgZW51bSBSYXlJbnRlcnNlY3Rpb25LaW5kIHsKKysJCU5PTkUsCisrCQlFTlRF UiwKKysJCUxFQVZFCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5l LWdvYmplY3QuaCIsIGNuYW1lID0gIkdSQVBIRU5FX0hBU19HQ0MiKV0KKysJcHVibGljIGNvbnN0 IGludCBIQVNfR0NDOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29i amVjdC5oIiwgY25hbWUgPSAiR1JBUEhFTkVfSEFTX1NDQUxBUiIpXQorKwlwdWJsaWMgY29uc3Qg aW50IEhBU19TQ0FMQVI7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1n b2JqZWN0LmgiLCBjbmFtZSA9ICJHUkFQSEVORV9IQVNfU1NFIildCisrCXB1YmxpYyBjb25zdCBp bnQgSEFTX1NTRTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmpl Y3QuaCIsIGNuYW1lID0gIkdSQVBIRU5FX1BJIildCisrCXB1YmxpYyBjb25zdCBkb3VibGUgUEk7 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFt ZSA9ICJHUkFQSEVORV9QSV8yIildCisrCXB1YmxpYyBjb25zdCBkb3VibGUgUElfMjsKKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gIkdS QVBIRU5FX1NJTURfUyIpXQorKwlwdWJsaWMgY29uc3Qgc3RyaW5nIFNJTURfUzsKKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gIkdSQVBI RU5FX1ZFQzJfTEVOIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGNv bnN0IGludCBWRUMyX0xFTjsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5l LWdvYmplY3QuaCIsIGNuYW1lID0gIkdSQVBIRU5FX1ZFQzNfTEVOIildCisrCVtWZXJzaW9uIChz aW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGNvbnN0IGludCBWRUMzX0xFTjsKKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gIkdSQVBIRU5F X1ZFQzRfTEVOIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGNvbnN0 IGludCBWRUM0X0xFTjsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdv YmplY3QuaCIsIGNuYW1lID0gImZhbHNlIildCisrCXB1YmxpYyBjb25zdCBpbnQgQGZhbHNlOwor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUg PSAidHJ1ZSIpXQorKwlwdWJsaWMgY29uc3QgaW50IEB0cnVlOworK30KK2RpZmYgLS1naXQgYS92 YXBpL2xpYm11dHRlci02LmRlcHMgYi92YXBpL2xpYm11dHRlci02LmRlcHMKK25ldyBmaWxlIG1v ZGUgMTAwNjQ0CitpbmRleCAwMDAwMDAwMC4uMjIzNTI1ZTQKKy0tLSAvZGV2L251bGwKKysrKyBi L3ZhcGkvbGlibXV0dGVyLTYuZGVwcworQEAgLTAsMCArMSw2IEBACisrZ3RrKy0zLjAKKytqc29u LWdsaWItMS4wCisrbXV0dGVyLWNsdXR0ZXItNgorK3gxMQorK3hmaXhlcy00LjAKKytncmFwaGVu ZS1nb2JqZWN0LTEuMAorZGlmZiAtLWdpdCBhL3ZhcGkvbGlibXV0dGVyLTYudmFwaSBiL3ZhcGkv bGlibXV0dGVyLTYudmFwaQorbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAwLi4z MWY0ODAxYworLS0tIC9kZXYvbnVsbAorKysrIGIvdmFwaS9saWJtdXR0ZXItNi52YXBpCitAQCAt MCwwICsxLDE0NzUgQEAKKysvKiBsaWJtdXR0ZXItNi52YXBpIGdlbmVyYXRlZCBieSB2YXBpZ2Vu LCBkbyBub3QgbW9kaWZ5LiAqLworKworK1tDQ29kZSAoY3ByZWZpeCA9ICJNZXRhIiwgZ2lyX25h bWVzcGFjZSA9ICJNZXRhIiwgZ2lyX3ZlcnNpb24gPSAiNiIsIGxvd2VyX2Nhc2VfY3ByZWZpeCA9 ICJtZXRhXyIpXQorK25hbWVzcGFjZSBNZXRhIHsKKysJbmFtZXNwYWNlIENvbXBvc2l0b3Igewor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvY29tcG9zaXRvci1tdXR0ZXIuaCIs IGNuYW1lID0gIm1ldGFfZGlzYWJsZV91bnJlZGlyZWN0X2Zvcl9kaXNwbGF5IildCisrCQlwdWJs aWMgc3RhdGljIHZvaWQgZGlzYWJsZV91bnJlZGlyZWN0X2Zvcl9kaXNwbGF5IChNZXRhLkRpc3Bs YXkgZGlzcGxheSk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9jb21wb3Np dG9yLW11dHRlci5oIiwgY25hbWUgPSAibWV0YV9lbmFibGVfdW5yZWRpcmVjdF9mb3JfZGlzcGxh eSIpXQorKwkJcHVibGljIHN0YXRpYyB2b2lkIGVuYWJsZV91bnJlZGlyZWN0X2Zvcl9kaXNwbGF5 IChNZXRhLkRpc3BsYXkgZGlzcGxheSk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi bWV0YS9jb21wb3NpdG9yLW11dHRlci5oIiwgY25hbWUgPSAibWV0YV9mb2N1c19zdGFnZV93aW5k b3ciKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBmb2N1c19zdGFnZV93aW5kb3cgKE1ldGEuRGlz cGxheSBkaXNwbGF5LCB1aW50MzIgdGltZXN0YW1wKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJtZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgiLCBjbmFtZSA9ICJtZXRhX2dldF9mZWVk YmFja19ncm91cF9mb3JfZGlzcGxheSIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIENsdXR0 ZXIuQWN0b3IgZ2V0X2ZlZWRiYWNrX2dyb3VwX2Zvcl9kaXNwbGF5IChNZXRhLkRpc3BsYXkgZGlz cGxheSk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9jb21wb3NpdG9yLW11 dHRlci5oIiwgY25hbWUgPSAibWV0YV9nZXRfc3RhZ2VfZm9yX2Rpc3BsYXkiKV0KKysJCXB1Ymxp YyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF9zdGFnZV9mb3JfZGlzcGxheSAoTWV0 YS5EaXNwbGF5IGRpc3BsYXkpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEv Y29tcG9zaXRvci1tdXR0ZXIuaCIsIGNuYW1lID0gIm1ldGFfZ2V0X3RvcF93aW5kb3dfZ3JvdXBf Zm9yX2Rpc3BsYXkiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdl dF90b3Bfd2luZG93X2dyb3VwX2Zvcl9kaXNwbGF5IChNZXRhLkRpc3BsYXkgZGlzcGxheSk7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9jb21wb3NpdG9yLW11dHRlci5oIiwg Y25hbWUgPSAibWV0YV9nZXRfd2luZG93X2FjdG9ycyIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93 bmVkIEdMaWIuTGlzdDxDbHV0dGVyLkFjdG9yPiBnZXRfd2luZG93X2FjdG9ycyAoTWV0YS5EaXNw bGF5IGRpc3BsYXkpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvY29tcG9z aXRvci1tdXR0ZXIuaCIsIGNuYW1lID0gIm1ldGFfZ2V0X3dpbmRvd19ncm91cF9mb3JfZGlzcGxh eSIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X3dpbmRvd19n cm91cF9mb3JfZGlzcGxheSAoTWV0YS5EaXNwbGF5IGRpc3BsYXkpOworKwl9CisrCW5hbWVzcGFj ZSBQcmVmcyB7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwg Y25hbWUgPSAibWV0YV9wcmVmc19iZWxsX2lzX2F1ZGlibGUiKV0KKysJCXB1YmxpYyBzdGF0aWMg Ym9vbCBwcmVmc19iZWxsX2lzX2F1ZGlibGUgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19jaGFuZ2Vfd29ya3NwYWNl X25hbWUiKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBwcmVmc19jaGFuZ2Vfd29ya3NwYWNlX25h bWUgKGludCBpLCBzdHJpbmcgbmFtZSk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi bWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfYWN0aW9uX2RvdWJsZV9jbGlj a190aXRsZWJhciIpXQorKwkJcHVibGljIHN0YXRpYyBHRGVza3RvcC5UaXRsZWJhckFjdGlvbiBw cmVmc19nZXRfYWN0aW9uX2RvdWJsZV9jbGlja190aXRsZWJhciAoKTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9h Y3Rpb25fbWlkZGxlX2NsaWNrX3RpdGxlYmFyIildCisrCQlwdWJsaWMgc3RhdGljIEdEZXNrdG9w LlRpdGxlYmFyQWN0aW9uIHByZWZzX2dldF9hY3Rpb25fbWlkZGxlX2NsaWNrX3RpdGxlYmFyICgp OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0g Im1ldGFfcHJlZnNfZ2V0X2FjdGlvbl9yaWdodF9jbGlja190aXRsZWJhciIpXQorKwkJcHVibGlj IHN0YXRpYyBHRGVza3RvcC5UaXRsZWJhckFjdGlvbiBwcmVmc19nZXRfYWN0aW9uX3JpZ2h0X2Ns aWNrX3RpdGxlYmFyICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJl ZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X2F0dGFjaF9tb2RhbF9kaWFsb2dzIildCisr CQlwdWJsaWMgc3RhdGljIGJvb2wgcHJlZnNfZ2V0X2F0dGFjaF9tb2RhbF9kaWFsb2dzICgpOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1l dGFfcHJlZnNfZ2V0X2F1dG9fbWF4aW1pemUiKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBwcmVm c19nZXRfYXV0b19tYXhpbWl6ZSAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJt ZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9hdXRvX3JhaXNlIildCisrCQlw dWJsaWMgc3RhdGljIGJvb2wgcHJlZnNfZ2V0X2F1dG9fcmFpc2UgKCk7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRf YXV0b19yYWlzZV9kZWxheSIpXQorKwkJcHVibGljIHN0YXRpYyBpbnQgcHJlZnNfZ2V0X2F1dG9f cmFpc2VfZGVsYXkgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVm cy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfYnV0dG9uX2xheW91dCIpXQorKwkJcHVibGlj IHN0YXRpYyBNZXRhLkJ1dHRvbkxheW91dCBwcmVmc19nZXRfYnV0dG9uX2xheW91dCAoKTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRh X3ByZWZzX2dldF9jZW50ZXJfbmV3X3dpbmRvd3MiKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBw cmVmc19nZXRfY2VudGVyX25ld193aW5kb3dzICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X2NvbXBvc2l0aW5n X21hbmFnZXIiKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBwcmVmc19nZXRfY29tcG9zaXRpbmdf bWFuYWdlciAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgi LCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9jdXJzb3Jfc2l6ZSIpXQorKwkJcHVibGljIHN0YXRp YyBpbnQgcHJlZnNfZ2V0X2N1cnNvcl9zaXplICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X2N1cnNvcl90aGVt ZSIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIHN0cmluZyBwcmVmc19nZXRfY3Vyc29yX3Ro ZW1lICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNu YW1lID0gIm1ldGFfcHJlZnNfZ2V0X2Rpc2FibGVfd29ya2Fyb3VuZHMiKV0KKysJCXB1YmxpYyBz dGF0aWMgYm9vbCBwcmVmc19nZXRfZGlzYWJsZV93b3JrYXJvdW5kcyAoKTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dl dF9kcmFnX3RocmVzaG9sZCIpXQorKwkJcHVibGljIHN0YXRpYyBpbnQgcHJlZnNfZ2V0X2RyYWdf dGhyZXNob2xkICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMu aCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X2RyYWdnYWJsZV9ib3JkZXJfd2lkdGgiKV0KKysJ CXB1YmxpYyBzdGF0aWMgaW50IHByZWZzX2dldF9kcmFnZ2FibGVfYm9yZGVyX3dpZHRoICgpOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1l dGFfcHJlZnNfZ2V0X2R5bmFtaWNfd29ya3NwYWNlcyIpXQorKwkJcHVibGljIHN0YXRpYyBib29s IHByZWZzX2dldF9keW5hbWljX3dvcmtzcGFjZXMgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfZWRnZV90aWxp bmciKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBwcmVmc19nZXRfZWRnZV90aWxpbmcgKCk7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0 YV9wcmVmc19nZXRfZm9jdXNfY2hhbmdlX29uX3BvaW50ZXJfcmVzdCIpXQorKwkJcHVibGljIHN0 YXRpYyBib29sIHByZWZzX2dldF9mb2N1c19jaGFuZ2Vfb25fcG9pbnRlcl9yZXN0ICgpOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFf cHJlZnNfZ2V0X2ZvY3VzX21vZGUiKV0KKysJCXB1YmxpYyBzdGF0aWMgR0Rlc2t0b3AuRm9jdXNN b2RlIHByZWZzX2dldF9mb2N1c19tb2RlICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X2ZvY3VzX25ld193aW5k b3dzIildCisrCQlwdWJsaWMgc3RhdGljIEdEZXNrdG9wLkZvY3VzTmV3V2luZG93cyBwcmVmc19n ZXRfZm9jdXNfbmV3X3dpbmRvd3MgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi bWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfZm9yY2VfZnVsbHNjcmVlbiIp XQorKwkJcHVibGljIHN0YXRpYyBib29sIHByZWZzX2dldF9mb3JjZV9mdWxsc2NyZWVuICgpOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1l dGFfcHJlZnNfZ2V0X2dub21lX2FjY2Vzc2liaWxpdHkiKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9v bCBwcmVmc19nZXRfZ25vbWVfYWNjZXNzaWJpbGl0eSAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9nbm9tZV9h bmltYXRpb25zIildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wgcHJlZnNfZ2V0X2dub21lX2FuaW1h dGlvbnMgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwg Y25hbWUgPSAibWV0YV9wcmVmc19nZXRfa2V5YmluZGluZ19hY3Rpb24iKV0KKysJCXB1YmxpYyBz dGF0aWMgTWV0YS5LZXlCaW5kaW5nQWN0aW9uIHByZWZzX2dldF9rZXliaW5kaW5nX2FjdGlvbiAo c3RyaW5nIG5hbWUpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMu aCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X21vdXNlX2J1dHRvbl9tZW51IildCisrCQlwdWJs aWMgc3RhdGljIGludCBwcmVmc19nZXRfbW91c2VfYnV0dG9uX21lbnUgKCk7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19n ZXRfbW91c2VfYnV0dG9uX21vZHMiKV0KKysJCXB1YmxpYyBzdGF0aWMgTWV0YS5WaXJ0dWFsTW9k aWZpZXIgcHJlZnNfZ2V0X21vdXNlX2J1dHRvbl9tb2RzICgpOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X21vdXNl X2J1dHRvbl9yZXNpemUiKV0KKysJCXB1YmxpYyBzdGF0aWMgaW50IHByZWZzX2dldF9tb3VzZV9i dXR0b25fcmVzaXplICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJl ZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X251bV93b3Jrc3BhY2VzIildCisrCQlwdWJs aWMgc3RhdGljIGludCBwcmVmc19nZXRfbnVtX3dvcmtzcGFjZXMgKCk7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRf cmFpc2Vfb25fY2xpY2siKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBwcmVmc19nZXRfcmFpc2Vf b25fY2xpY2sgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5o IiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfc2hvd19mYWxsYmFja19hcHBfbWVudSIpXQorKwkJ cHVibGljIHN0YXRpYyBib29sIHByZWZzX2dldF9zaG93X2ZhbGxiYWNrX2FwcF9tZW51ICgpOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1l dGFfcHJlZnNfZ2V0X3RpdGxlYmFyX2ZvbnQiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBQ YW5nby5Gb250RGVzY3JpcHRpb24gcHJlZnNfZ2V0X3RpdGxlYmFyX2ZvbnQgKCk7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVm c19nZXRfdmlzdWFsX2JlbGwiKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBwcmVmc19nZXRfdmlz dWFsX2JlbGwgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5o IiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfdmlzdWFsX2JlbGxfdHlwZSIpXQorKwkJcHVibGlj IHN0YXRpYyBHRGVza3RvcC5WaXN1YWxCZWxsVHlwZSBwcmVmc19nZXRfdmlzdWFsX2JlbGxfdHlw ZSAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFt ZSA9ICJtZXRhX3ByZWZzX2dldF93b3Jrc3BhY2VfbmFtZSIpXQorKwkJcHVibGljIHN0YXRpYyB1 bm93bmVkIHN0cmluZyBwcmVmc19nZXRfd29ya3NwYWNlX25hbWUgKGludCBpKTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZz X2dldF93b3Jrc3BhY2VzX29ubHlfb25fcHJpbWFyeSIpXQorKwkJcHVibGljIHN0YXRpYyBib29s IHByZWZzX2dldF93b3Jrc3BhY2VzX29ubHlfb25fcHJpbWFyeSAoKTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2luaXQi KV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBwcmVmc19pbml0ICgpOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfc2V0X2Zv cmNlX2Z1bGxzY3JlZW4iKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBwcmVmc19zZXRfZm9yY2Vf ZnVsbHNjcmVlbiAoYm9vbCB3aGV0aGVyKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX3NldF9udW1fd29ya3NwYWNlcyIp XQorKwkJcHVibGljIHN0YXRpYyB2b2lkIHByZWZzX3NldF9udW1fd29ya3NwYWNlcyAoaW50IG5f d29ya3NwYWNlcyk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5o IiwgY25hbWUgPSAibWV0YV9wcmVmc19zZXRfc2hvd19mYWxsYmFja19hcHBfbWVudSIpXQorKwkJ cHVibGljIHN0YXRpYyB2b2lkIHByZWZzX3NldF9zaG93X2ZhbGxiYWNrX2FwcF9tZW51IChib29s IHdoZXRoZXIpOworKwl9CisrCW5hbWVzcGFjZSBVdGlsIHsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJtZXRhL3V0aWwuaCIsIGNuYW1lID0gIm1ldGFfYWRkX3ZlcmJvc2VfdG9waWMi KV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBhZGRfdmVyYm9zZV90b3BpYyAoTWV0YS5EZWJ1Z1Rv cGljIHRvcGljKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3V0aWwuaCIs IGNuYW1lID0gIm1ldGFfZXh0ZXJuYWxfYmluZGluZ19uYW1lX2Zvcl9hY3Rpb24iKV0KKysJCXB1 YmxpYyBzdGF0aWMgc3RyaW5nIGV4dGVybmFsX2JpbmRpbmdfbmFtZV9mb3JfYWN0aW9uICh1aW50 IGtleWJpbmRpbmdfYWN0aW9uKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRh L3V0aWwuaCIsIGNuYW1lID0gIm1ldGFfZ2V0X2xvY2FsZV9kaXJlY3Rpb24iKV0KKysJCXB1Ymxp YyBzdGF0aWMgTWV0YS5Mb2NhbGVEaXJlY3Rpb24gZ2V0X2xvY2FsZV9kaXJlY3Rpb24gKCk7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRh X2dyYXZpdHlfdG9fc3RyaW5nIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgc3RyaW5nIGdy YXZpdHlfdG9fc3RyaW5nIChpbnQgZ3Jhdml0eSk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX2lzX2RlYnVnZ2luZyIpXQorKwkJcHVi bGljIHN0YXRpYyBib29sIGlzX2RlYnVnZ2luZyAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJtZXRhL3V0aWwuaCIsIGNuYW1lID0gIm1ldGFfaXNfc3luY2luZyIpXQorKwkJcHVi bGljIHN0YXRpYyBib29sIGlzX3N5bmNpbmcgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX2lzX3ZlcmJvc2UiKV0KKysJCXB1Ymxp YyBzdGF0aWMgYm9vbCBpc192ZXJib3NlICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gIm1ldGEvdXRpbC5oIiwgY25hbWUgPSAibWV0YV9pc193YXlsYW5kX2NvbXBvc2l0b3IiKV0K KysJCXB1YmxpYyBzdGF0aWMgYm9vbCBpc193YXlsYW5kX2NvbXBvc2l0b3IgKCk7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX2xhdGVy X2FkZCIpXQorKwkJcHVibGljIHN0YXRpYyB1aW50IGxhdGVyX2FkZCAoTWV0YS5MYXRlclR5cGUg d2hlbiwgb3duZWQgR0xpYi5Tb3VyY2VGdW5jIGZ1bmMpOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gIm1ldGEvdXRpbC5oIiwgY25hbWUgPSAibWV0YV9sYXRlcl9yZW1vdmUiKV0KKysJ CXB1YmxpYyBzdGF0aWMgdm9pZCBsYXRlcl9yZW1vdmUgKHVpbnQgbGF0ZXJfaWQpOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRpbC5oIiwgY25hbWUgPSAibWV0YV9wb3Bf bm9fbXNnX3ByZWZpeCIpXQorKwkJcHVibGljIHN0YXRpYyB2b2lkIHBvcF9ub19tc2dfcHJlZml4 ICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRpbC5oIiwgY25hbWUg PSAibWV0YV9wdXNoX25vX21zZ19wcmVmaXgiKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBwdXNo X25vX21zZ19wcmVmaXggKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91 dGlsLmgiLCBjbmFtZSA9ICJtZXRhX3JlY3QiKV0KKysJCXB1YmxpYyBzdGF0aWMgTWV0YS5SZWN0 YW5nbGU/IHJlY3QgKGludCB4LCBpbnQgeSwgaW50IHdpZHRoLCBpbnQgaGVpZ2h0KTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3V0aWwuaCIsIGNuYW1lID0gIm1ldGFfcmVt b3ZlX3ZlcmJvc2VfdG9waWMiKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCByZW1vdmVfdmVyYm9z ZV90b3BpYyAoTWV0YS5EZWJ1Z1RvcGljIHRvcGljKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJtZXRhL3V0aWwuaCIsIGNuYW1lID0gIm1ldGFfc2hvd19kaWFsb2ciKV0KKysJCXB1 YmxpYyBzdGF0aWMgR0xpYi5QaWQgc2hvd19kaWFsb2cgKHN0cmluZyB0eXBlLCBzdHJpbmcgbWVz c2FnZSwgc3RyaW5nIHRpbWVvdXQsIHN0cmluZyBkaXNwbGF5LCBzdHJpbmcgb2tfdGV4dCwgc3Ry aW5nIGNhbmNlbF90ZXh0LCBzdHJpbmcgaWNvbl9uYW1lLCBpbnQgdHJhbnNpZW50X2ZvciwgR0xp Yi5TTGlzdDx2b2lkKj4gY29sdW1ucywgR0xpYi5TTGlzdDx2b2lkKj4gZW50cmllcyk7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX3Vu c2lnbmVkX2xvbmdfZXF1YWwiKV0KKysJCXB1YmxpYyBzdGF0aWMgaW50IHVuc2lnbmVkX2xvbmdf ZXF1YWwgKHZvaWQqIHYxLCB2b2lkKiB2Mik7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX3Vuc2lnbmVkX2xvbmdfaGFzaCIpXQorKwkJ cHVibGljIHN0YXRpYyB1aW50IHVuc2lnbmVkX2xvbmdfaGFzaCAodm9pZCogdik7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX3gxMV9l cnJvcl90cmFwX3BvcCIpXQorKwkJcHVibGljIHN0YXRpYyB2b2lkIHgxMV9lcnJvcl90cmFwX3Bv cCAoTWV0YS5YMTFEaXNwbGF5IHgxMV9kaXNwbGF5KTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJtZXRhL3V0aWwuaCIsIGNuYW1lID0gIm1ldGFfeDExX2Vycm9yX3RyYXBfcG9wX3dp dGhfcmV0dXJuIildCisrCQlwdWJsaWMgc3RhdGljIGludCB4MTFfZXJyb3JfdHJhcF9wb3Bfd2l0 aF9yZXR1cm4gKE1ldGEuWDExRGlzcGxheSB4MTFfZGlzcGxheSk7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX3gxMV9lcnJvcl90cmFw X3B1c2giKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCB4MTFfZXJyb3JfdHJhcF9wdXNoIChNZXRh LlgxMURpc3BsYXkgeDExX2Rpc3BsYXkpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJtZXRhL21ldGEtYmFja2VuZC5oIiwgdHlwZV9pZCA9ICJtZXRhX2JhY2tlbmRfZ2V0X3R5 cGUgKCkiKV0KKysJcHVibGljIGFic3RyYWN0IGNsYXNzIEJhY2tlbmQgOiBHTGliLk9iamVjdCwg R0xpYi5Jbml0YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxz ZSldCisrCQlwcm90ZWN0ZWQgQmFja2VuZCAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJtZXRhL21ldGEtYmFja2VuZC5oIiwgY25hbWUgPSAibWV0YV9nZXRfYmFja2VuZCIpXQor KwkJcHVibGljIHN0YXRpYyB1bm93bmVkIE1ldGEuQmFja2VuZCBnZXRfYmFja2VuZCAoKTsKKysJ CXB1YmxpYyB1bm93bmVkIE1ldGEuRG5kIGdldF9kbmQgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBN ZXRhLlJlbW90ZUFjY2Vzc0NvbnRyb2xsZXIgZ2V0X3JlbW90ZV9hY2Nlc3NfY29udHJvbGxlciAo KTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X3N0YWdlICgpOworKwkJcHVi bGljIHZvaWQgbG9ja19sYXlvdXRfZ3JvdXAgKHVpbnQgaWR4KTsKKysJCXB1YmxpYyB2b2lkIHNl dF9rZXltYXAgKHN0cmluZyBsYXlvdXRzLCBzdHJpbmcgdmFyaWFudHMsIHN0cmluZyBvcHRpb25z KTsKKysJCXB1YmxpYyB2b2lkIHNldF9udW1sb2NrIChib29sIG51bWxvY2tfc3RhdGUpOworKwkJ cHVibGljIHNpZ25hbCB2b2lkIGtleW1hcF9jaGFuZ2VkICgpOworKwkJcHVibGljIHNpZ25hbCB2 b2lkIGtleW1hcF9sYXlvdXRfZ3JvdXBfY2hhbmdlZCAodWludCBvYmplY3QpOworKwkJcHVibGlj IHNpZ25hbCB2b2lkIGxhc3RfZGV2aWNlX2NoYW5nZWQgKENsdXR0ZXIuSW5wdXREZXZpY2Ugb2Jq ZWN0KTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBsaWRfaXNfY2xvc2VkX2NoYW5nZWQgKGJvb2wg b2JqZWN0KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLWJh Y2tncm91bmQuaCIsIHR5cGVfaWQgPSAibWV0YV9iYWNrZ3JvdW5kX2dldF90eXBlICgpIildCisr CXB1YmxpYyBjbGFzcyBCYWNrZ3JvdW5kIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNf Y29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHVibGljIEJhY2tncm91bmQgKE1ldGEu RGlzcGxheSBkaXNwbGF5KTsKKysJCXB1YmxpYyBzdGF0aWMgdm9pZCByZWZyZXNoX2FsbCAoKTsK KysJCXB1YmxpYyB2b2lkIHNldF9ibGVuZCAoR0xpYi5GaWxlIGZpbGUxLCBHTGliLkZpbGUgZmls ZTIsIGRvdWJsZSBibGVuZF9mYWN0b3IsIEdEZXNrdG9wLkJhY2tncm91bmRTdHlsZSBzdHlsZSk7 CisrCQlwdWJsaWMgdm9pZCBzZXRfY29sb3IgKENsdXR0ZXIuQ29sb3IgY29sb3IpOworKwkJcHVi bGljIHZvaWQgc2V0X2ZpbGUgKEdMaWIuRmlsZT8gZmlsZSwgR0Rlc2t0b3AuQmFja2dyb3VuZFN0 eWxlIHN0eWxlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9ncmFkaWVudCAoR0Rlc2t0b3AuQmFja2dy b3VuZFNoYWRpbmcgc2hhZGluZ19kaXJlY3Rpb24sIENsdXR0ZXIuQ29sb3IgY29sb3IsIENsdXR0 ZXIuQ29sb3Igc2Vjb25kX2NvbG9yKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGlj IE1ldGEuRGlzcGxheSBtZXRhX2Rpc3BsYXkgeyBvd25lZCBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJ cHVibGljIHNpZ25hbCB2b2lkIGNoYW5nZWQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gIm1ldGEvbWV0YS1iYWNrZ3JvdW5kLWFjdG9yLmgiLCB0eXBlX2lkID0gIm1ldGFf YmFja2dyb3VuZF9hY3Rvcl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgQmFja2dyb3Vu ZEFjdG9yIDogQ2x1dHRlci5BY3RvciwgQXRrLkltcGxlbWVudG9yLCBDbHV0dGVyLkFuaW1hdGFi bGUsIENsdXR0ZXIuQ29udGFpbmVyLCBDbHV0dGVyLlNjcmlwdGFibGUgeworKwkJW0NDb2RlICho YXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFjdG9yKiIpXQor KwkJcHVibGljIEJhY2tncm91bmRBY3RvciAoTWV0YS5EaXNwbGF5IGRpc3BsYXksIGludCBtb25p dG9yKTsKKysJCXB1YmxpYyB2b2lkIHNldF9iYWNrZ3JvdW5kIChNZXRhLkJhY2tncm91bmQgYmFj a2dyb3VuZCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfZ3JhZGllbnQgKGJvb2wgZW5hYmxlZCwgaW50 IGhlaWdodCwgZG91YmxlIHRvbmVfc3RhcnQpOworKwkJcHVibGljIHZvaWQgc2V0X21vbml0b3Ig KGludCBtb25pdG9yKTsKKysJCXB1YmxpYyB2b2lkIHNldF92aWduZXR0ZSAoYm9vbCBlbmFibGVk LCBkb3VibGUgYnJpZ2h0bmVzcywgZG91YmxlIHNoYXJwbmVzcyk7CisrCQlbTm9BY2Nlc3Nvck1l dGhvZF0KKysJCXB1YmxpYyBNZXRhLkJhY2tncm91bmQgYmFja2dyb3VuZCB7IG93bmVkIGdldDsg c2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBkb3VibGUgYnJpZ2h0bmVz cyB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIGdy YWRpZW50IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGlu dCBncmFkaWVudF9oZWlnaHQgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisr CQlwdWJsaWMgZG91YmxlIGdyYWRpZW50X21heF9kYXJrbmVzcyB7IGdldDsgc2V0OyB9CisrCQlb Tm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBNZXRhLkRpc3BsYXkgbWV0YV9kaXNwbGF5IHsg b3duZWQgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGlj IGludCBtb25pdG9yIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQor KwkJcHVibGljIGJvb2wgdmlnbmV0dGUgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRo b2RdCisrCQlwdWJsaWMgZG91YmxlIHZpZ25ldHRlX3NoYXJwbmVzcyB7IGdldDsgc2V0OyB9Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1iYWNrZ3JvdW5kLWdy b3VwLmgiLCB0eXBlX2lkID0gIm1ldGFfYmFja2dyb3VuZF9ncm91cF9nZXRfdHlwZSAoKSIpXQor KwlwdWJsaWMgY2xhc3MgQmFja2dyb3VuZEdyb3VwIDogQ2x1dHRlci5BY3RvciwgQXRrLkltcGxl bWVudG9yLCBDbHV0dGVyLkFuaW1hdGFibGUsIENsdXR0ZXIuQ29udGFpbmVyLCBDbHV0dGVyLlNj cmlwdGFibGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5 cGUgPSAiQ2x1dHRlckFjdG9yKiIpXQorKwkJcHVibGljIEJhY2tncm91bmRHcm91cCAoKTsKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLWJhY2tncm91bmQtaW1h Z2UuaCIsIHR5cGVfaWQgPSAibWV0YV9iYWNrZ3JvdW5kX2ltYWdlX2dldF90eXBlICgpIildCisr CXB1YmxpYyBjbGFzcyBCYWNrZ3JvdW5kSW1hZ2UgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUg KGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgQmFja2dyb3Vu ZEltYWdlICgpOworKwkJcHVibGljIGJvb2wgZ2V0X3N1Y2Nlc3MgKCk7CisrCQlwdWJsaWMgdW5v d25lZCBDb2dsLlRleHR1cmUgZ2V0X3RleHR1cmUgKCk7CisrCQlwdWJsaWMgYm9vbCBpc19sb2Fk ZWQgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgbG9hZGVkICgpOworKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtYmFja2dyb3VuZC1pbWFnZS5oIiwgdHlwZV9p ZCA9ICJtZXRhX2JhY2tncm91bmRfaW1hZ2VfY2FjaGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGlj IGNsYXNzIEJhY2tncm91bmRJbWFnZUNhY2hlIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlICho YXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIEJhY2tncm91bmRJ bWFnZUNhY2hlICgpOworKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIE1ldGEuQmFja2dyb3VuZElt YWdlQ2FjaGUgZ2V0X2RlZmF1bHQgKCk7CisrCQlwdWJsaWMgTWV0YS5CYWNrZ3JvdW5kSW1hZ2Ug bG9hZCAoR0xpYi5GaWxlIGZpbGUpOworKwkJcHVibGljIHZvaWQgcHVyZ2UgKEdMaWIuRmlsZSBm aWxlKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9iYXJyaWVyLmgi LCB0eXBlX2lkID0gIm1ldGFfYmFycmllcl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3Mg QmFycmllciA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlv biA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBCYXJyaWVyICgpOworKwkJcHVibGljIHZvaWQgZGVz dHJveSAoKTsKKysJCXB1YmxpYyBib29sIGlzX2FjdGl2ZSAoKTsKKysJCXB1YmxpYyB2b2lkIHJl bGVhc2UgKE1ldGEuQmFycmllckV2ZW50IGV2ZW50KTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQor KwkJcHVibGljIE1ldGEuQmFycmllckRpcmVjdGlvbiBkaXJlY3Rpb25zIHsgZ2V0OyBjb25zdHJ1 Y3Q7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIE1ldGEuRGlzcGxheSBkaXNw bGF5IHsgb3duZWQgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJ cHVibGljIGludCB4MSB7IGdldDsgY29uc3RydWN0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0K KysJCXB1YmxpYyBpbnQgeDIgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJW05vQWNjZXNzb3JNZXRo b2RdCisrCQlwdWJsaWMgaW50IHkxIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtOb0FjY2Vzc29y TWV0aG9kXQorKwkJcHVibGljIGludCB5MiB7IGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMg c2lnbmFsIHZvaWQgaGl0IChNZXRhLkJhcnJpZXJFdmVudCBldmVudCk7CisrCQlwdWJsaWMgc2ln bmFsIHZvaWQgbGVmdCAoTWV0YS5CYXJyaWVyRXZlbnQgZXZlbnQpOworKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL2JhcnJpZXIuaCIsIGNvcHlfZnVuY3Rpb24gPSAiZ19i b3hlZF9jb3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0eXBlX2lkID0gIm1l dGFfYmFycmllcl9ldmVudF9nZXRfdHlwZSAoKSIpXQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNs YXNzIEJhcnJpZXJFdmVudCB7CisrCQlwdWJsaWMgaW50IGR0OworKwkJcHVibGljIGRvdWJsZSBk eDsKKysJCXB1YmxpYyBkb3VibGUgZHk7CisrCQlwdWJsaWMgaW50IGV2ZW50X2lkOworKwkJcHVi bGljIGJvb2wgZ3JhYmJlZDsKKysJCXB1YmxpYyBib29sIHJlbGVhc2VkOworKwkJcHVibGljIHVp bnQzMiB0aW1lOworKwkJcHVibGljIGRvdWJsZSB4OworKwkJcHVibGljIGRvdWJsZSB5OworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtY3Vyc29yLXRyYWNrZXIu aCIsIHR5cGVfaWQgPSAibWV0YV9jdXJzb3JfdHJhY2tlcl9nZXRfdHlwZSAoKSIpXQorKwlwdWJs aWMgY2xhc3MgQ3Vyc29yVHJhY2tlciA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2Nv bnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBDdXJzb3JUcmFja2VyICgp OworKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIE1ldGEuQ3Vyc29yVHJhY2tlciBnZXRfZm9yX2Rp c3BsYXkgKE1ldGEuRGlzcGxheSBkaXNwbGF5KTsKKysJCXB1YmxpYyB2b2lkIGdldF9ob3QgKG91 dCBpbnQgeCwgb3V0IGludCB5KTsKKysJCXB1YmxpYyB2b2lkIGdldF9wb2ludGVyIChpbnQgeCwg aW50IHksIENsdXR0ZXIuTW9kaWZpZXJUeXBlIG1vZHMpOworKwkJcHVibGljIGJvb2wgZ2V0X3Bv aW50ZXJfdmlzaWJsZSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENvZ2wuVGV4dHVyZSBnZXRfc3By aXRlICgpOworKwkJcHVibGljIHZvaWQgc2V0X3BvaW50ZXJfdmlzaWJsZSAoYm9vbCB2aXNpYmxl KTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBjdXJzb3JfY2hhbmdlZCAoKTsKKysJCXB1YmxpYyBz aWduYWwgdm9pZCBjdXJzb3JfbW92ZWQgKGZsb2F0IHgsIGZsb2F0IHkpOworKwkJcHVibGljIHNp Z25hbCB2b2lkIHZpc2liaWxpdHlfY2hhbmdlZCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAibWV0YS9kaXNwbGF5LmgiLCB0eXBlX2lkID0gIm1ldGFfZGlzcGxheV9nZXRf dHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgRGlzcGxheSA6IEdMaWIuT2JqZWN0IHsKKysJCVtD Q29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBEaXNw bGF5ICgpOworKwkJcHVibGljIHZvaWQgYWRkX2lnbm9yZWRfY3Jvc3Npbmdfc2VyaWFsICh1bG9u ZyBzZXJpYWwpOworKwkJcHVibGljIHVpbnQgYWRkX2tleWJpbmRpbmcgKHN0cmluZyBuYW1lLCBH TGliLlNldHRpbmdzIHNldHRpbmdzLCBNZXRhLktleUJpbmRpbmdGbGFncyBmbGFncywgb3duZWQg TWV0YS5LZXlIYW5kbGVyRnVuYyBoYW5kbGVyKTsKKysJCXB1YmxpYyBib29sIGJlZ2luX2dyYWJf b3AgKE1ldGEuV2luZG93IHdpbmRvdywgTWV0YS5HcmFiT3Agb3AsIGJvb2wgcG9pbnRlcl9hbHJl YWR5X2dyYWJiZWQsIGJvb2wgZnJhbWVfYWN0aW9uLCBpbnQgYnV0dG9uLCB1bG9uZyBtb2RtYXNr LCB1aW50MzIgdGltZXN0YW1wLCBpbnQgcm9vdF94LCBpbnQgcm9vdF95KTsKKysJCXB1YmxpYyB2 b2lkIGNsZWFyX21vdXNlX21vZGUgKCk7CisrCQlwdWJsaWMgdm9pZCBjbG9zZSAodWludDMyIHRp bWVzdGFtcCk7CisrCQlwdWJsaWMgdm9pZCBlbmRfZ3JhYl9vcCAodWludDMyIHRpbWVzdGFtcCk7 CisrCQlwdWJsaWMgdm9pZCBmb2N1c19kZWZhdWx0X3dpbmRvdyAodWludDMyIHRpbWVzdGFtcCk7 CisrCQlwdWJsaWMgdm9pZCBmcmVlemVfa2V5Ym9hcmQgKHVpbnQzMiB0aW1lc3RhbXApOworKwkJ cHVibGljIGludCBnZXRfY3VycmVudF9tb25pdG9yICgpOworKwkJcHVibGljIHVpbnQzMiBnZXRf Y3VycmVudF90aW1lICgpOworKwkJcHVibGljIHVpbnQzMiBnZXRfY3VycmVudF90aW1lX3JvdW5k dHJpcCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIE1ldGEuV2luZG93IGdldF9mb2N1c193aW5kb3cg KCk7CisrCQlwdWJsaWMgTWV0YS5HcmFiT3AgZ2V0X2dyYWJfb3AgKCk7CisrCQlwdWJsaWMgdWlu dCBnZXRfa2V5YmluZGluZ19hY3Rpb24gKHVpbnQga2V5Y29kZSwgdWxvbmcgbWFzayk7CisrCQlw dWJsaWMgdWludDMyIGdldF9sYXN0X3VzZXJfdGltZSAoKTsKKysJCXB1YmxpYyBNZXRhLlJlY3Rh bmdsZSBnZXRfbW9uaXRvcl9nZW9tZXRyeSAoaW50IG1vbml0b3IpOworKwkJcHVibGljIGJvb2wg Z2V0X21vbml0b3JfaW5fZnVsbHNjcmVlbiAoaW50IG1vbml0b3IpOworKwkJcHVibGljIGludCBn ZXRfbW9uaXRvcl9pbmRleF9mb3JfcmVjdCAoTWV0YS5SZWN0YW5nbGUgcmVjdCk7CisrCQlwdWJs aWMgaW50IGdldF9tb25pdG9yX25laWdoYm9yX2luZGV4IChpbnQgd2hpY2hfbW9uaXRvciwgTWV0 YS5EaXNwbGF5RGlyZWN0aW9uIGRpcik7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X21vbml0b3Jfc2Nh bGUgKGludCBtb25pdG9yKTsKKysJCXB1YmxpYyBpbnQgZ2V0X25fbW9uaXRvcnMgKCk7CisrCQlw dWJsaWMgc3RyaW5nIGdldF9wYWRfYWN0aW9uX2xhYmVsIChDbHV0dGVyLklucHV0RGV2aWNlIHBh ZCwgTWV0YS5QYWRBY3Rpb25UeXBlIGFjdGlvbl90eXBlLCB1aW50IGFjdGlvbl9udW1iZXIpOwor KwkJcHVibGljIGludCBnZXRfcHJpbWFyeV9tb25pdG9yICgpOworKwkJcHVibGljIHVub3duZWQg TWV0YS5TZWxlY3Rpb24gZ2V0X3NlbGVjdGlvbiAoKTsKKysJCXB1YmxpYyB2b2lkIGdldF9zaXpl IChvdXQgaW50IHdpZHRoLCBvdXQgaW50IGhlaWdodCk7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRh LlNvdW5kUGxheWVyIGdldF9zb3VuZF9wbGF5ZXIgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRh LldpbmRvdyBnZXRfdGFiX2N1cnJlbnQgKE1ldGEuVGFiTGlzdCB0eXBlLCBNZXRhLldvcmtzcGFj ZSB3b3Jrc3BhY2UpOworKwkJcHVibGljIEdMaWIuTGlzdDx3ZWFrIE1ldGEuV2luZG93PiBnZXRf dGFiX2xpc3QgKE1ldGEuVGFiTGlzdCB0eXBlLCBNZXRhLldvcmtzcGFjZT8gd29ya3NwYWNlKTsK KysJCXB1YmxpYyB1bm93bmVkIE1ldGEuV2luZG93IGdldF90YWJfbmV4dCAoTWV0YS5UYWJMaXN0 IHR5cGUsIE1ldGEuV29ya3NwYWNlIHdvcmtzcGFjZSwgTWV0YS5XaW5kb3c/IHdpbmRvdywgYm9v bCBiYWNrd2FyZCk7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLldvcmtzcGFjZU1hbmFnZXIgZ2V0 X3dvcmtzcGFjZV9tYW5hZ2VyICgpOworKwkJcHVibGljIHVpbnQgZ3JhYl9hY2NlbGVyYXRvciAo c3RyaW5nIGFjY2VsZXJhdG9yLCBNZXRhLktleUJpbmRpbmdGbGFncyBmbGFncyk7CisrCQlwdWJs aWMgYm9vbCBpc19wb2ludGVyX2VtdWxhdGluZ19zZXF1ZW5jZSAoQ2x1dHRlci5FdmVudFNlcXVl bmNlPyBzZXF1ZW5jZSk7CisrCQlwdWJsaWMgYm9vbCByZW1vdmVfa2V5YmluZGluZyAoc3RyaW5n IG5hbWUpOworKwkJcHVibGljIHZvaWQgcmVxdWVzdF9wYWRfb3NkIChDbHV0dGVyLklucHV0RGV2 aWNlIHBhZCwgYm9vbCBlZGl0aW9uX21vZGUpOworKwkJcHVibGljIHZvaWQgc2V0X2N1cnNvciAo TWV0YS5DdXJzb3IgY3Vyc29yKTsKKysJCXB1YmxpYyB2b2lkIHNldF9pbnB1dF9mb2N1cyAoTWV0 YS5XaW5kb3cgd2luZG93LCBib29sIGZvY3VzX2ZyYW1lLCB1aW50MzIgdGltZXN0YW1wKTsKKysJ CXB1YmxpYyBHTGliLlNMaXN0PHdlYWsgTWV0YS5XaW5kb3c+IHNvcnRfd2luZG93c19ieV9zdGFj a2luZyAoR0xpYi5TTGlzdDxNZXRhLldpbmRvdz4gd2luZG93cyk7CisrCQlwdWJsaWMgYm9vbCBz dXBwb3J0c19leHRlbmRlZF9iYXJyaWVycyAoKTsKKysJCXB1YmxpYyB2b2lkIHVuZnJlZXplX2tl eWJvYXJkICh1aW50MzIgdGltZXN0YW1wKTsKKysJCXB1YmxpYyBib29sIHVuZ3JhYl9hY2NlbGVy YXRvciAodWludCBhY3Rpb25faWQpOworKwkJcHVibGljIHZvaWQgdW5ncmFiX2tleWJvYXJkICh1 aW50MzIgdGltZXN0YW1wKTsKKysJCXB1YmxpYyB2b2lkIHVuc2V0X2lucHV0X2ZvY3VzICh1aW50 MzIgdGltZXN0YW1wKTsKKysJCXB1YmxpYyBib29sIHhzZXJ2ZXJfdGltZV9pc19iZWZvcmUgKHVp bnQzMiB0aW1lMSwgdWludDMyIHRpbWUyKTsKKysJCXB1YmxpYyBNZXRhLldpbmRvdyBmb2N1c193 aW5kb3cgeyBnZXQ7IH0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCBhY2NlbGVyYXRvcl9hY3RpdmF0 ZWQgKHVpbnQgb2JqZWN0LCBDbHV0dGVyLklucHV0RGV2aWNlIHAwLCB1aW50IHAxKTsKKysJCXB1 YmxpYyBzaWduYWwgdm9pZCBjbG9zaW5nICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGN1cnNv cl91cGRhdGVkICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGdsX3ZpZGVvX21lbW9yeV9wdXJn ZWQgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgZ3JhYl9vcF9iZWdpbiAoTWV0YS5EaXNwbGF5 IG9iamVjdCwgTWV0YS5XaW5kb3cgcDAsIE1ldGEuR3JhYk9wIHAxKTsKKysJCXB1YmxpYyBzaWdu YWwgdm9pZCBncmFiX29wX2VuZCAoTWV0YS5EaXNwbGF5IG9iamVjdCwgTWV0YS5XaW5kb3cgcDAs IE1ldGEuR3JhYk9wIHAxKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBpbl9mdWxsc2NyZWVuX2No YW5nZWQgKCk7CisrCQlwdWJsaWMgc2lnbmFsIGJvb2wgbW9kaWZpZXJzX2FjY2VsZXJhdG9yX2Fj dGl2YXRlZCAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBvdmVybGF5X2tleSAoKTsKKysJCXB1 YmxpYyBzaWduYWwgdm9pZCBwYWRfbW9kZV9zd2l0Y2ggKENsdXR0ZXIuSW5wdXREZXZpY2Ugb2Jq ZWN0LCB1aW50IHAwLCB1aW50IHAxKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCByZXN0YWNrZWQg KCk7CisrCQlwdWJsaWMgc2lnbmFsIGJvb2wgcmVzdGFydCAoKTsKKysJCXB1YmxpYyBzaWduYWwg dm9pZCBzaG93X29zZCAoaW50IG9iamVjdCwgc3RyaW5nIHAwLCBzdHJpbmcgcDEpOworKwkJcHVi bGljIHNpZ25hbCB1bm93bmVkIENsdXR0ZXIuQWN0b3I/IHNob3dfcGFkX29zZCAoQ2x1dHRlci5J bnB1dERldmljZSBwYWQsIEdMaWIuU2V0dGluZ3Mgc2V0dGluZ3MsIHN0cmluZyBsYXlvdXRfcGF0 aCwgYm9vbCBlZGl0aW9uX21vZGUsIGludCBtb25pdG9yX2lkeCk7CisrCQlwdWJsaWMgc2lnbmFs IGJvb2wgc2hvd19yZXNpemVfcG9wdXAgKGJvb2wgb2JqZWN0LCBNZXRhLlJlY3RhbmdsZSBwMCwg aW50IHAxLCBpbnQgcDIpOworKwkJcHVibGljIHNpZ25hbCBib29sIHNob3dfcmVzdGFydF9tZXNz YWdlIChzdHJpbmc/IG1lc3NhZ2UpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHNob3dpbmdfZGVz a3RvcF9jaGFuZ2VkICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHdpbmRvd19jcmVhdGVkIChN ZXRhLldpbmRvdyBvYmplY3QpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHdpbmRvd19kZW1hbmRz X2F0dGVudGlvbiAoTWV0YS5XaW5kb3cgb2JqZWN0KTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCB3 aW5kb3dfZW50ZXJlZF9tb25pdG9yIChpbnQgb2JqZWN0LCBNZXRhLldpbmRvdyBwMCk7CisrCQlw dWJsaWMgc2lnbmFsIHZvaWQgd2luZG93X2xlZnRfbW9uaXRvciAoaW50IG9iamVjdCwgTWV0YS5X aW5kb3cgcDApOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHdpbmRvd19tYXJrZWRfdXJnZW50IChN ZXRhLldpbmRvdyBvYmplY3QpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHdvcmthcmVhc19jaGFu Z2VkICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHgxMV9kaXNwbGF5X2Nsb3NpbmcgKCk7Cisr CQlwdWJsaWMgc2lnbmFsIHZvaWQgeDExX2Rpc3BsYXlfb3BlbmVkICgpOworKwkJcHVibGljIHNp Z25hbCB2b2lkIHgxMV9kaXNwbGF5X3NldHVwICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJtZXRhL21ldGEtZG5kLmgiLCB0eXBlX2lkID0gIm1ldGFfZG5kX2dldF90eXBl ICgpIildCisrCXB1YmxpYyBjbGFzcyBEbmQgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhh c19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgRG5kICgpOworKwkJ cHVibGljIHNpZ25hbCB2b2lkIGRuZF9lbnRlciAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBk bmRfbGVhdmUgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgZG5kX3Bvc2l0aW9uX2NoYW5nZSAo aW50IG9iamVjdCwgaW50IHAwKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi bWV0YS9tYWluLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0NvbXBhY3RdCisrCXB1Ymxp YyBjbGFzcyBGcmFtZSB7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEv bWV0YS1pZGxlLW1vbml0b3IuaCIsIHR5cGVfaWQgPSAibWV0YV9pZGxlX21vbml0b3JfZ2V0X3R5 cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIElkbGVNb25pdG9yIDogR0xpYi5PYmplY3QgeworKwkJ W0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIElk bGVNb25pdG9yICgpOworKwkJcHVibGljIHVpbnQgYWRkX2lkbGVfd2F0Y2ggKHVpbnQ2NCBpbnRl cnZhbF9tc2VjLCBvd25lZCBNZXRhLklkbGVNb25pdG9yV2F0Y2hGdW5jPyBjYWxsYmFjayk7Cisr CQlwdWJsaWMgdWludCBhZGRfdXNlcl9hY3RpdmVfd2F0Y2ggKG93bmVkIE1ldGEuSWRsZU1vbml0 b3JXYXRjaEZ1bmM/IGNhbGxiYWNrKTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBNZXRhLklk bGVNb25pdG9yIGdldF9jb3JlICgpOworKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIE1ldGEuSWRs ZU1vbml0b3IgZ2V0X2Zvcl9kZXZpY2UgKENsdXR0ZXIuSW5wdXREZXZpY2UgZGV2aWNlKTsKKysJ CXB1YmxpYyBpbnQ2NCBnZXRfaWRsZXRpbWUgKCk7CisrCQlwdWJsaWMgdm9pZCByZW1vdmVfd2F0 Y2ggKHVpbnQgaWQpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgQ2x1dHRlci5J bnB1dERldmljZSBkZXZpY2UgeyBvd25lZCBnZXQ7IGNvbnN0cnVjdDsgfQorKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNvcHlfZnVuY3Rpb24gPSAiZ19i b3hlZF9jb3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0eXBlX2lkID0gIm1l dGFfa2V5X2JpbmRpbmdfZ2V0X3R5cGUgKCkiKV0KKysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFz cyBLZXlCaW5kaW5nIHsKKysJCXB1YmxpYyB1aW50IGdldF9tYXNrICgpOworKwkJcHVibGljIE1l dGEuVmlydHVhbE1vZGlmaWVyIGdldF9tb2RpZmllcnMgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBz dHJpbmcgZ2V0X25hbWUgKCk7CisrCQlwdWJsaWMgYm9vbCBpc19idWlsdGluICgpOworKwkJcHVi bGljIGJvb2wgaXNfcmV2ZXJzZWQgKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gIm1ldGFfa2V5Ymlu ZGluZ3Nfc2V0X2N1c3RvbV9oYW5kbGVyIildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wgc2V0X2N1 c3RvbV9oYW5kbGVyIChzdHJpbmcgbmFtZSwgb3duZWQgTWV0YS5LZXlIYW5kbGVyRnVuYz8gaGFu ZGxlcik7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1sYXVu Y2gtY29udGV4dC5oIiwgdHlwZV9pZCA9ICJtZXRhX2xhdW5jaF9jb250ZXh0X2dldF90eXBlICgp IildCisrCXB1YmxpYyBjbGFzcyBMYXVuY2hDb250ZXh0IDogR0xpYi5BcHBMYXVuY2hDb250ZXh0 IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3Rl Y3RlZCBMYXVuY2hDb250ZXh0ICgpOworKwkJcHVibGljIHZvaWQgc2V0X3RpbWVzdGFtcCAodWlu dDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfd29ya3NwYWNlIChNZXRhLldvcmtz cGFjZSB3b3Jrc3BhY2UpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgTWV0YS5E aXNwbGF5IGRpc3BsYXkgeyBvd25lZCBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJW05vQWNjZXNzb3JN ZXRob2RdCisrCQlwdWJsaWMgdWludCB0aW1lc3RhbXAgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNj ZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgTWV0YS5Xb3Jrc3BhY2Ugd29ya3NwYWNlIHsgb3duZWQg Z2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRh LW1vbml0b3ItbWFuYWdlci5oIiwgdHlwZV9pZCA9ICJtZXRhX21vbml0b3JfbWFuYWdlcl9nZXRf dHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgTW9uaXRvck1hbmFnZXIgOiBHTGliLk9iamVjdCB7 CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0 ZWQgTW9uaXRvck1hbmFnZXIgKCk7CisrCQlwdWJsaWMgYm9vbCBjYW5fc3dpdGNoX2NvbmZpZyAo KTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBNZXRhLk1vbml0b3JNYW5hZ2VyIEBnZXQgKCk7 CisrCQlwdWJsaWMgc3RhdGljIGludCBnZXRfZGlzcGxheV9jb25maWd1cmF0aW9uX3RpbWVvdXQg KCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfaXNfYnVpbHRpbl9kaXNwbGF5X29uICgpOworKwkJcHVi bGljIGludCBnZXRfbW9uaXRvcl9mb3JfY29ubmVjdG9yIChzdHJpbmcgY29ubmVjdG9yKTsKKysJ CXB1YmxpYyBNZXRhLk1vbml0b3JTd2l0Y2hDb25maWdUeXBlIGdldF9zd2l0Y2hfY29uZmlnICgp OworKwkJcHVibGljIHZvaWQgc3dpdGNoX2NvbmZpZyAoTWV0YS5Nb25pdG9yU3dpdGNoQ29uZmln VHlwZSBjb25maWdfdHlwZSk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBNZXRh LkJhY2tlbmQgYmFja2VuZCB7IG93bmVkIGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgc2ln bmFsIHZvaWQgY29uZmlybV9kaXNwbGF5X2NoYW5nZSAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9p ZCBtb25pdG9yc19jaGFuZ2VkICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIG1vbml0b3JzX2No YW5nZWRfaW50ZXJuYWwgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgcG93ZXJfc2F2ZV9tb2Rl X2NoYW5nZWQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0 YS1wbHVnaW4uaCIsIHR5cGVfaWQgPSAibWV0YV9wbHVnaW5fZ2V0X3R5cGUgKCkiKV0KKysJcHVi bGljIGFic3RyYWN0IGNsYXNzIFBsdWdpbiA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFz X2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBQbHVnaW4gKCk7Cisr CQlwdWJsaWMgYm9vbCBiZWdpbl9tb2RhbCAoTWV0YS5Nb2RhbE9wdGlvbnMgb3B0aW9ucywgdWlu dDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMgdm9pZCBjb21wbGV0ZV9kaXNwbGF5X2NoYW5nZSAo Ym9vbCBvayk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBjb25maXJt X2Rpc3BsYXlfY2hhbmdlICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZv aWQgZGVzdHJveSAoTWV0YS5XaW5kb3dBY3RvciBhY3Rvcik7CisrCQlwdWJsaWMgdm9pZCBkZXN0 cm95X2NvbXBsZXRlZCAoTWV0YS5XaW5kb3dBY3RvciBhY3Rvcik7CisrCQlwdWJsaWMgdm9pZCBl bmRfbW9kYWwgKHVpbnQzMiB0aW1lc3RhbXApOworKwkJcHVibGljIHVub3duZWQgTWV0YS5EaXNw bGF5IGdldF9kaXNwbGF5ICgpOworKwkJcHVibGljIHVub3duZWQgTWV0YS5QbHVnaW5JbmZvPyBn ZXRfaW5mbyAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGhpZGVf dGlsZV9wcmV2aWV3ICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIGJvb2wg a2V5YmluZGluZ19maWx0ZXIgKE1ldGEuS2V5QmluZGluZyBiaW5kaW5nKTsKKysJCVtOb1dyYXBw ZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGtpbGxfc3dpdGNoX3dvcmtzcGFjZSAoKTsKKysJ CVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGtpbGxfd2luZG93X2VmZmVjdHMg KE1ldGEuV2luZG93QWN0b3IgYWN0b3IpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0 dWFsIHZvaWQgbG9jYXRlX3BvaW50ZXIgKCk7CisrCQlwdWJsaWMgc3RhdGljIHZvaWQgbWFuYWdl cl9zZXRfcGx1Z2luX3R5cGUgKEdMaWIuVHlwZSBndHlwZSk7CisrCQlbTm9XcmFwcGVyXQorKwkJ cHVibGljIHZpcnR1YWwgdm9pZCBtYXAgKE1ldGEuV2luZG93QWN0b3IgYWN0b3IpOworKwkJcHVi bGljIHZvaWQgbWFwX2NvbXBsZXRlZCAoTWV0YS5XaW5kb3dBY3RvciBhY3Rvcik7CisrCQlbTm9X cmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBtaW5pbWl6ZSAoTWV0YS5XaW5kb3dBY3Rv ciBhY3Rvcik7CisrCQlwdWJsaWMgdm9pZCBtaW5pbWl6ZV9jb21wbGV0ZWQgKE1ldGEuV2luZG93 QWN0b3IgYWN0b3IpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHVub3duZWQg TWV0YS5QbHVnaW5JbmZvPyBwbHVnaW5faW5mbyAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJs aWMgdmlydHVhbCB2b2lkIHNob3dfdGlsZV9wcmV2aWV3IChNZXRhLldpbmRvdyB3aW5kb3csIE1l dGEuUmVjdGFuZ2xlIHRpbGVfcmVjdCwgaW50IHRpbGVfbW9uaXRvcl9udW1iZXIpOworKwkJW05v V3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgc2hvd193aW5kb3dfbWVudSAoTWV0YS5X aW5kb3cgd2luZG93LCBNZXRhLldpbmRvd01lbnVUeXBlIG1lbnUsIGludCB4LCBpbnQgeSk7Cisr CQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBzaG93X3dpbmRvd19tZW51X2Zv cl9yZWN0IChNZXRhLldpbmRvdyB3aW5kb3csIE1ldGEuV2luZG93TWVudVR5cGUgbWVudSwgTWV0 YS5SZWN0YW5nbGUgcmVjdCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9p ZCBzaXplX2NoYW5nZSAoTWV0YS5XaW5kb3dBY3RvciBhY3RvciwgTWV0YS5TaXplQ2hhbmdlIHdo aWNoX2NoYW5nZSwgTWV0YS5SZWN0YW5nbGUgb2xkX2ZyYW1lX3JlY3QsIE1ldGEuUmVjdGFuZ2xl IG9sZF9idWZmZXJfcmVjdCk7CisrCQlwdWJsaWMgdm9pZCBzaXplX2NoYW5nZV9jb21wbGV0ZWQg KE1ldGEuV2luZG93QWN0b3IgYWN0b3IpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0 dWFsIHZvaWQgc2l6ZV9jaGFuZ2VkIChNZXRhLldpbmRvd0FjdG9yIGFjdG9yKTsKKysJCVtOb1dy YXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHN0YXJ0ICgpOworKwkJW05vV3JhcHBlcl0K KysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgc3dpdGNoX3dvcmtzcGFjZSAoaW50IGZyb20sIGludCB0 bywgTWV0YS5Nb3Rpb25EaXJlY3Rpb24gZGlyZWN0aW9uKTsKKysJCXB1YmxpYyB2b2lkIHN3aXRj aF93b3Jrc3BhY2VfY29tcGxldGVkICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0 dWFsIHZvaWQgdW5taW5pbWl6ZSAoTWV0YS5XaW5kb3dBY3RvciBhY3Rvcik7CisrCQlwdWJsaWMg dm9pZCB1bm1pbmltaXplX2NvbXBsZXRlZCAoTWV0YS5XaW5kb3dBY3RvciBhY3Rvcik7CisrCQlb Tm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgYm9vbCB4ZXZlbnRfZmlsdGVyIChYLkV2ZW50 IGV2ZW50KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLXJl bW90ZS1hY2Nlc3MtY29udHJvbGxlci5oIiwgdHlwZV9pZCA9ICJtZXRhX3JlbW90ZV9hY2Nlc3Nf Y29udHJvbGxlcl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgUmVtb3RlQWNjZXNzQ29u dHJvbGxlciA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlv biA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBSZW1vdGVBY2Nlc3NDb250cm9sbGVyICgpOworKwkJ cHVibGljIHNpZ25hbCB2b2lkIG5ld19oYW5kbGUgKE1ldGEuUmVtb3RlQWNjZXNzSGFuZGxlIG9i amVjdCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1yZW1v dGUtYWNjZXNzLWNvbnRyb2xsZXIuaCIsIHR5cGVfaWQgPSAibWV0YV9yZW1vdGVfYWNjZXNzX2hh bmRsZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgUmVtb3RlQWNjZXNzSGFuZGxlIDog R0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2Up XQorKwkJcHJvdGVjdGVkIFJlbW90ZUFjY2Vzc0hhbmRsZSAoKTsKKysJCXB1YmxpYyB2aXJ0dWFs IHZvaWQgc3RvcCAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBzdG9wcGVkICgpOworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIHR5cGVfaWQgPSAibWV0 YV9zZWxlY3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFNlbGVjdGlvbiA6IEdM aWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0K KysJCXB1YmxpYyBTZWxlY3Rpb24gKE1ldGEuRGlzcGxheSBkaXNwbGF5KTsKKysJCXB1YmxpYyBH TGliLkxpc3Q8c3RyaW5nPiBnZXRfbWltZXR5cGVzIChNZXRhLlNlbGVjdGlvblR5cGUgc2VsZWN0 aW9uX3R5cGUpOworKwkJcHVibGljIHZvaWQgc2V0X293bmVyIChNZXRhLlNlbGVjdGlvblR5cGUg c2VsZWN0aW9uX3R5cGUsIE1ldGEuU2VsZWN0aW9uU291cmNlIG93bmVyKTsKKysJCXB1YmxpYyBh c3luYyBib29sIHRyYW5zZmVyX2FzeW5jIChNZXRhLlNlbGVjdGlvblR5cGUgc2VsZWN0aW9uX3R5 cGUsIHN0cmluZyBtaW1ldHlwZSwgc3NpemVfdCBzaXplLCBHTGliLk91dHB1dFN0cmVhbSBvdXRw dXQsIEdMaWIuQ2FuY2VsbGFibGU/IGNhbmNlbGxhYmxlKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJ CXB1YmxpYyB2b2lkIHVuc2V0X293bmVyIChNZXRhLlNlbGVjdGlvblR5cGUgc2VsZWN0aW9uX3R5 cGUsIE1ldGEuU2VsZWN0aW9uU291cmNlIG93bmVyKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBv d25lcl9jaGFuZ2VkICh1aW50IG9iamVjdCwgTWV0YS5TZWxlY3Rpb25Tb3VyY2UgcDApOworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIHR5cGVfaWQgPSAi bWV0YV9zZWxlY3Rpb25fc291cmNlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBTZWxl Y3Rpb25Tb3VyY2UgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVu Y3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgU2VsZWN0aW9uU291cmNlICgpOworKwkJcHVi bGljIHZpcnR1YWwgR0xpYi5MaXN0PHN0cmluZz4gZ2V0X21pbWV0eXBlcyAoKTsKKysJCXB1Ymxp YyBib29sIGlzX2FjdGl2ZSAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIGFzeW5jIEdMaWIuSW5wdXRT dHJlYW0gcmVhZF9hc3luYyAoc3RyaW5nIG1pbWV0eXBlLCBHTGliLkNhbmNlbGxhYmxlPyBjYW5j ZWxsYWJsZSkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9p ZCBhY3RpdmF0ZWQgKCk7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBkZWFjdGl2YXRl ZCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCB0 eXBlX2lkID0gIm1ldGFfc2VsZWN0aW9uX3NvdXJjZV9tZW1vcnlfZ2V0X3R5cGUgKCkiKV0KKysJ cHVibGljIGNsYXNzIFNlbGVjdGlvblNvdXJjZU1lbW9yeSA6IE1ldGEuU2VsZWN0aW9uU291cmNl IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIk1l dGFTZWxlY3Rpb25Tb3VyY2UqIildCisrCQlwdWJsaWMgU2VsZWN0aW9uU291cmNlTWVtb3J5IChz dHJpbmcgbWltZXR5cGUsIEdMaWIuQnl0ZXMgY29udGVudCk7CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1zZXR0aW5ncy5oIiwgaGFzX3R5cGVfaWQgPSBmYWxz ZSldCisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3MgU2V0dGluZ3MgeworKwkJcHVibGljIGlu dCBnZXRfZm9udF9kcGkgKCk7CisrCQlwdWJsaWMgaW50IGdldF91aV9zY2FsaW5nX2ZhY3RvciAo KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCByZWZf ZnVuY3Rpb24gPSAibWV0YV9zaGFkb3dfcmVmIiwgdHlwZV9pZCA9ICJtZXRhX3NoYWRvd19nZXRf dHlwZSAoKSIsIHVucmVmX2Z1bmN0aW9uID0gIm1ldGFfc2hhZG93X3VucmVmIildCisrCVtDb21w YWN0XQorKwlwdWJsaWMgY2xhc3MgU2hhZG93IHsKKysJCXB1YmxpYyB2b2lkIGdldF9ib3VuZHMg KGludCB3aW5kb3dfeCwgaW50IHdpbmRvd195LCBpbnQgd2luZG93X3dpZHRoLCBpbnQgd2luZG93 X2hlaWdodCwgQ2Fpcm8uUmVjdGFuZ2xlSW50IGJvdW5kcyk7CisrCQlwdWJsaWMgdm9pZCBwYWlu dCAoQ29nbC5GcmFtZWJ1ZmZlciBmcmFtZWJ1ZmZlciwgaW50IHdpbmRvd194LCBpbnQgd2luZG93 X3ksIGludCB3aW5kb3dfd2lkdGgsIGludCB3aW5kb3dfaGVpZ2h0LCB1aW50OCBvcGFjaXR5LCBD YWlyby5SZWdpb24/IGNsaXAsIGJvb2wgY2xpcF9zdHJpY3RseSk7CisrCQlwdWJsaWMgTWV0YS5T aGFkb3cgQHJlZiAoKTsKKysJCXB1YmxpYyB2b2lkIHVucmVmICgpOworKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtc2hhZG93LWZhY3RvcnkuaCIsIHR5cGVfaWQg PSAibWV0YV9zaGFkb3dfZmFjdG9yeV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgU2hh ZG93RmFjdG9yeSA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5j dGlvbiA9IGZhbHNlKV0KKysJCXB1YmxpYyBTaGFkb3dGYWN0b3J5ICgpOworKwkJcHVibGljIHN0 YXRpYyB1bm93bmVkIE1ldGEuU2hhZG93RmFjdG9yeSBnZXRfZGVmYXVsdCAoKTsKKysJCXB1Ymxp YyBNZXRhLlNoYWRvd1BhcmFtcyBnZXRfcGFyYW1zIChzdHJpbmcgY2xhc3NfbmFtZSwgYm9vbCBm b2N1c2VkKTsKKysJCXB1YmxpYyBNZXRhLlNoYWRvdyBnZXRfc2hhZG93IChNZXRhLldpbmRvd1No YXBlIHNoYXBlLCBpbnQgd2lkdGgsIGludCBoZWlnaHQsIHN0cmluZyBjbGFzc19uYW1lLCBib29s IGZvY3VzZWQpOworKwkJcHVibGljIHZvaWQgc2V0X3BhcmFtcyAoc3RyaW5nIGNsYXNzX25hbWUs IGJvb2wgZm9jdXNlZCwgTWV0YS5TaGFkb3dQYXJhbXMgQHBhcmFtcyk7CisrCQlwdWJsaWMgc2ln bmFsIHZvaWQgY2hhbmdlZCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi bWV0YS9tZXRhLXNoYXBlZC10ZXh0dXJlLmgiLCB0eXBlX2lkID0gIm1ldGFfc2hhcGVkX3RleHR1 cmVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFNoYXBlZFRleHR1cmUgOiBHTGliLk9i amVjdCwgQ2x1dHRlci5Db250ZW50IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlv biA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBTaGFwZWRUZXh0dXJlICgpOworKwkJcHVibGljIENh aXJvLlN1cmZhY2U/IGdldF9pbWFnZSAoQ2Fpcm8uUmVjdGFuZ2xlSW50PyBjbGlwKTsKKysJCXB1 YmxpYyB1bm93bmVkIENvZ2wuVGV4dHVyZSBnZXRfdGV4dHVyZSAoKTsKKysJCXB1YmxpYyB2b2lk IHNldF9jcmVhdGVfbWlwbWFwcyAoYm9vbCBjcmVhdGVfbWlwbWFwcyk7CisrCQlwdWJsaWMgdm9p ZCBzZXRfbWFza190ZXh0dXJlIChDb2dsLlRleHR1cmUgbWFza190ZXh0dXJlKTsKKysJCXB1Ymxp YyB2b2lkIHNldF9vcGFxdWVfcmVnaW9uIChvd25lZCBDYWlyby5SZWdpb24gb3BhcXVlX3JlZ2lv bik7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgc2l6ZV9jaGFuZ2VkICgpOworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtc291bmQtcGxheWVyLmgiLCB0eXBlX2lk ID0gIm1ldGFfc291bmRfcGxheWVyX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBTb3Vu ZFBsYXllciA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlv biA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBTb3VuZFBsYXllciAoKTsKKysJCXB1YmxpYyB2b2lk IHBsYXlfZnJvbV9maWxlIChHTGliLkZpbGUgZmlsZSwgc3RyaW5nIGRlc2NyaXB0aW9uLCBHTGli LkNhbmNlbGxhYmxlPyBjYW5jZWxsYWJsZSA9IG51bGwpOworKwkJcHVibGljIHZvaWQgcGxheV9m cm9tX3RoZW1lIChzdHJpbmcgbmFtZSwgc3RyaW5nIGRlc2NyaXB0aW9uLCBHTGliLkNhbmNlbGxh YmxlPyBjYW5jZWxsYWJsZSA9IG51bGwpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJtZXRhL21ldGEtc3RhZ2UuaCIsIHR5cGVfaWQgPSAibWV0YV9zdGFnZV9nZXRfdHlwZSAo KSIpXQorKwlwdWJsaWMgY2xhc3MgU3RhZ2UgOiBDbHV0dGVyLlN0YWdlLCBBdGsuSW1wbGVtZW50 b3IsIENsdXR0ZXIuQW5pbWF0YWJsZSwgQ2x1dHRlci5Db250YWluZXIsIENsdXR0ZXIuU2NyaXB0 YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlw cm90ZWN0ZWQgU3RhZ2UgKCk7CisrCQlwdWJsaWMgc3RhdGljIGJvb2wgaXNfZm9jdXNlZCAoTWV0 YS5EaXNwbGF5IGRpc3BsYXkpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGFjdG9yc19wYWludGVk ICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtc3RhcnR1 cC1ub3RpZmljYXRpb24uaCIsIHR5cGVfaWQgPSAibWV0YV9zdGFydHVwX25vdGlmaWNhdGlvbl9n ZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgU3RhcnR1cE5vdGlmaWNhdGlvbiA6IEdMaWIu T2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJ CXByb3RlY3RlZCBTdGFydHVwTm90aWZpY2F0aW9uICgpOworKwkJcHVibGljIE1ldGEuTGF1bmNo Q29udGV4dCBjcmVhdGVfbGF1bmNoZXIgKCk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1 YmxpYyBNZXRhLkRpc3BsYXkgZGlzcGxheSB7IG93bmVkIGdldDsgY29uc3RydWN0OyB9CisrCQlw dWJsaWMgc2lnbmFsIHZvaWQgY2hhbmdlZCAodm9pZCogb2JqZWN0KTsKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCB0eXBlX2lkID0gIm1ldGFfc3RhcnR1 cF9zZXF1ZW5jZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgU3RhcnR1cFNlcXVlbmNl IDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFs c2UpXQorKwkJcHJvdGVjdGVkIFN0YXJ0dXBTZXF1ZW5jZSAoKTsKKysJCXB1YmxpYyB1bm93bmVk IHN0cmluZyBnZXRfYXBwbGljYXRpb25faWQgKCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfY29tcGxl dGVkICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9pY29uX25hbWUgKCk7CisrCQlw dWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X2lkICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5n IGdldF9uYW1lICgpOworKwkJcHVibGljIHVpbnQ2NCBnZXRfdGltZXN0YW1wICgpOworKwkJcHVi bGljIHVub3duZWQgc3RyaW5nIGdldF93bWNsYXNzICgpOworKwkJcHVibGljIGludCBnZXRfd29y a3NwYWNlICgpOworKwkJcHVibGljIHN0cmluZyBhcHBsaWNhdGlvbl9pZCB7IGdldDsgY29uc3Ry dWN0OyB9CisrCQlwdWJsaWMgc3RyaW5nIGljb25fbmFtZSB7IGdldDsgY29uc3RydWN0OyB9Cisr CQlwdWJsaWMgc3RyaW5nIGlkIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBzdHJpbmcg bmFtZSB7IGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgdWludDY0IHRpbWVzdGFtcCB7IGdl dDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgc3RyaW5nIHdtY2xhc3MgeyBnZXQ7IGNvbnN0cnVj dDsgfQorKwkJcHVibGljIGludCB3b3Jrc3BhY2UgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJW0hh c0VtaXR0ZXJdCisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgY29tcGxldGUgKCk7CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdGhlbWUuaCIsIGhhc190eXBlX2lkID0gZmFs c2UpXQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIFRoZW1lIHsKKysJCXB1YmxpYyB2b2lk IGZyZWUgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvd2luZG93 LmgiLCB0eXBlX2lkID0gIm1ldGFfd2luZG93X2dldF90eXBlICgpIildCisrCXB1YmxpYyBhYnN0 cmFjdCBjbGFzcyBXaW5kb3cgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1 Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgV2luZG93ICgpOworKwkJcHVibGlj IHZvaWQgYWN0aXZhdGUgKHVpbnQzMiBjdXJyZW50X3RpbWUpOworKwkJcHVibGljIHZvaWQgYWN0 aXZhdGVfd2l0aF93b3Jrc3BhY2UgKHVpbnQzMiBjdXJyZW50X3RpbWUsIE1ldGEuV29ya3NwYWNl IHdvcmtzcGFjZSk7CisrCQlwdWJsaWMgYm9vbCBhbGxvd3NfbW92ZSAoKTsKKysJCXB1YmxpYyBi b29sIGFsbG93c19yZXNpemUgKCk7CisrCQlwdWJsaWMgdm9pZCBiZWdpbl9ncmFiX29wIChNZXRh LkdyYWJPcCBvcCwgYm9vbCBmcmFtZV9hY3Rpb24sIHVpbnQzMiB0aW1lc3RhbXApOworKwkJcHVi bGljIGJvb2wgY2FuX2Nsb3NlICgpOworKwkJcHVibGljIGJvb2wgY2FuX21heGltaXplICgpOwor KwkJcHVibGljIGJvb2wgY2FuX21pbmltaXplICgpOworKwkJcHVibGljIGJvb2wgY2FuX3NoYWRl ICgpOworKwkJcHVibGljIHZvaWQgY2hhbmdlX3dvcmtzcGFjZSAoTWV0YS5Xb3Jrc3BhY2Ugd29y a3NwYWNlKTsKKysJCXB1YmxpYyB2b2lkIGNoYW5nZV93b3Jrc3BhY2VfYnlfaW5kZXggKGludCBz cGFjZV9pbmRleCwgYm9vbCBhcHBlbmQpOworKwkJcHVibGljIHZvaWQgY2hlY2tfYWxpdmUgKHVp bnQzMiB0aW1lc3RhbXApOworKwkJcHVibGljIE1ldGEuUmVjdGFuZ2xlIGNsaWVudF9yZWN0X3Rv X2ZyYW1lX3JlY3QgKE1ldGEuUmVjdGFuZ2xlIGNsaWVudF9yZWN0KTsKKysJCXB1YmxpYyB2b2lk IGNvbXB1dGVfZ3JvdXAgKCk7CisrCQlwdWJsaWMgdm9pZCBAZGVsZXRlICh1aW50MzIgdGltZXN0 YW1wKTsKKysJCXB1YmxpYyB1bm93bmVkIE1ldGEuV2luZG93IGZpbmRfcm9vdF9hbmNlc3RvciAo KTsKKysJCXB1YmxpYyB2b2lkIGZvY3VzICh1aW50MzIgdGltZXN0YW1wKTsKKysJCXB1YmxpYyB2 b2lkIGZvcmVhY2hfYW5jZXN0b3IgKE1ldGEuV2luZG93Rm9yZWFjaEZ1bmMgZnVuYyk7CisrCQlw dWJsaWMgdm9pZCBmb3JlYWNoX3RyYW5zaWVudCAoTWV0YS5XaW5kb3dGb3JlYWNoRnVuYyBmdW5j KTsKKysJCXB1YmxpYyBNZXRhLlJlY3RhbmdsZSBmcmFtZV9yZWN0X3RvX2NsaWVudF9yZWN0IChN ZXRhLlJlY3RhbmdsZSBmcmFtZV9yZWN0KTsKKysJCXB1YmxpYyBNZXRhLlJlY3RhbmdsZSBnZXRf YnVmZmVyX3JlY3QgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X2NsaWVudF9tYWNo aW5lICgpOworKwkJcHVibGljIE1ldGEuV2luZG93Q2xpZW50VHlwZSBnZXRfY2xpZW50X3R5cGUg KCk7CisrCQlwdWJsaWMgdW5vd25lZCBHTGliLk9iamVjdCBnZXRfY29tcG9zaXRvcl9wcml2YXRl ICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9kZXNjcmlwdGlvbiAoKTsKKysJCXB1 YmxpYyB1bm93bmVkIE1ldGEuRGlzcGxheSBnZXRfZGlzcGxheSAoKTsKKysJCXB1YmxpYyB1bm93 bmVkIENhaXJvLlJlZ2lvbj8gZ2V0X2ZyYW1lX2JvdW5kcyAoKTsKKysJCXB1YmxpYyBNZXRhLlJl Y3RhbmdsZSBnZXRfZnJhbWVfcmVjdCAoKTsKKysJCXB1YmxpYyBNZXRhLkZyYW1lVHlwZSBnZXRf ZnJhbWVfdHlwZSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfZ3RrX2FwcF9tZW51 X29iamVjdF9wYXRoICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9ndGtfYXBwbGlj YXRpb25faWQgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X2d0a19hcHBsaWNhdGlv bl9vYmplY3RfcGF0aCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfZ3RrX21lbnVi YXJfb2JqZWN0X3BhdGggKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X2d0a190aGVt ZV92YXJpYW50ICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9ndGtfdW5pcXVlX2J1 c19uYW1lICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9ndGtfd2luZG93X29iamVj dF9wYXRoICgpOworKwkJcHVibGljIGJvb2wgZ2V0X2ljb25fZ2VvbWV0cnkgKG91dCBNZXRhLlJl Y3RhbmdsZSByZWN0KTsKKysJCXB1YmxpYyB1aW50NjQgZ2V0X2lkICgpOworKwkJcHVibGljIE1l dGEuU3RhY2tMYXllciBnZXRfbGF5ZXIgKCk7CisrCQlwdWJsaWMgTWV0YS5NYXhpbWl6ZUZsYWdz IGdldF9tYXhpbWl6ZWQgKCk7CisrCQlwdWJsaWMgaW50IGdldF9tb25pdG9yICgpOworKwkJcHVi bGljIHVub3duZWQgc3RyaW5nIGdldF9tdXR0ZXJfaGludHMgKCk7CisrCQlwdWJsaWMgaW50IGdl dF9waWQgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X3JvbGUgKCk7CisrCQlwdWJs aWMgdW5vd25lZCBzdHJpbmcgZ2V0X3NhbmRib3hlZF9hcHBfaWQgKCk7CisrCQlwdWJsaWMgdWlu dCBnZXRfc3RhYmxlX3NlcXVlbmNlICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9z dGFydHVwX2lkICgpOworKwkJcHVibGljIHVub3duZWQgTWV0YS5XaW5kb3c/IGdldF90aWxlX21h dGNoICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF90aXRsZSAoKTsKKysJCXB1Ymxp YyB1bm93bmVkIE1ldGEuV2luZG93IGdldF90cmFuc2llbnRfZm9yICgpOworKwkJcHVibGljIHVp bnQzMiBnZXRfdXNlcl90aW1lICgpOworKwkJcHVibGljIE1ldGEuV2luZG93VHlwZSBnZXRfd2lu ZG93X3R5cGUgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X3dtX2NsYXNzICgpOwor KwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF93bV9jbGFzc19pbnN0YW5jZSAoKTsKKysJCXB1 YmxpYyBNZXRhLlJlY3RhbmdsZSBnZXRfd29ya19hcmVhX2FsbF9tb25pdG9ycyAoKTsKKysJCXB1 YmxpYyBNZXRhLlJlY3RhbmdsZSBnZXRfd29ya19hcmVhX2N1cnJlbnRfbW9uaXRvciAoKTsKKysJ CXB1YmxpYyBNZXRhLlJlY3RhbmdsZSBnZXRfd29ya19hcmVhX2Zvcl9tb25pdG9yIChpbnQgd2hp Y2hfbW9uaXRvcik7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLldvcmtzcGFjZSBnZXRfd29ya3Nw YWNlICgpOworKwkJcHVibGljIFguV2luZG93IGdldF94d2luZG93ICgpOworKwkJcHVibGljIHZv aWQgZ3JvdXBfbGVhZGVyX2NoYW5nZWQgKCk7CisrCQlwdWJsaWMgYm9vbCBoYXNfZm9jdXMgKCk7 CisrCQlwdWJsaWMgYm9vbCBpc19hYm92ZSAoKTsKKysJCXB1YmxpYyBib29sIGlzX2Fsd2F5c19v bl9hbGxfd29ya3NwYWNlcyAoKTsKKysJCXB1YmxpYyBib29sIGlzX2FuY2VzdG9yX29mX3RyYW5z aWVudCAoTWV0YS5XaW5kb3cgdHJhbnNpZW50KTsKKysJCXB1YmxpYyBib29sIGlzX2F0dGFjaGVk X2RpYWxvZyAoKTsKKysJCXB1YmxpYyBib29sIGlzX2NsaWVudF9kZWNvcmF0ZWQgKCk7CisrCQlw dWJsaWMgYm9vbCBpc19mdWxsc2NyZWVuICgpOworKwkJcHVibGljIGJvb2wgaXNfaGlkZGVuICgp OworKwkJcHVibGljIGJvb2wgaXNfbW9uaXRvcl9zaXplZCAoKTsKKysJCXB1YmxpYyBib29sIGlz X29uX2FsbF93b3Jrc3BhY2VzICgpOworKwkJcHVibGljIGJvb2wgaXNfb25fcHJpbWFyeV9tb25p dG9yICgpOworKwkJcHVibGljIGJvb2wgaXNfb3ZlcnJpZGVfcmVkaXJlY3QgKCk7CisrCQlwdWJs aWMgYm9vbCBpc19yZW1vdGUgKCk7CisrCQlwdWJsaWMgYm9vbCBpc19zY3JlZW5fc2l6ZWQgKCk7 CisrCQlwdWJsaWMgYm9vbCBpc19zaGFkZWQgKCk7CisrCQlwdWJsaWMgYm9vbCBpc19za2lwX3Rh c2tiYXIgKCk7CisrCQlwdWJsaWMgdm9pZCBraWxsICgpOworKwkJcHVibGljIGJvb2wgbG9jYXRl ZF9vbl93b3Jrc3BhY2UgKE1ldGEuV29ya3NwYWNlIHdvcmtzcGFjZSk7CisrCQlwdWJsaWMgdm9p ZCBsb3dlciAoKTsKKysJCXB1YmxpYyB2b2lkIG1ha2VfYWJvdmUgKCk7CisrCQlwdWJsaWMgdm9p ZCBtYWtlX2Z1bGxzY3JlZW4gKCk7CisrCQlwdWJsaWMgdm9pZCBtYXhpbWl6ZSAoTWV0YS5NYXhp bWl6ZUZsYWdzIGRpcmVjdGlvbnMpOworKwkJcHVibGljIHZvaWQgbWluaW1pemUgKCk7CisrCQlw dWJsaWMgdm9pZCBtb3ZlX2ZyYW1lIChib29sIHVzZXJfb3AsIGludCByb290X3hfbncsIGludCBy b290X3lfbncpOworKwkJcHVibGljIHZvaWQgbW92ZV9yZXNpemVfZnJhbWUgKGJvb2wgdXNlcl9v cCwgaW50IHJvb3RfeF9udywgaW50IHJvb3RfeV9udywgaW50IHcsIGludCBoKTsKKysJCXB1Ymxp YyB2b2lkIG1vdmVfdG9fbW9uaXRvciAoaW50IG1vbml0b3IpOworKwkJcHVibGljIHZvaWQgcmFp c2UgKCk7CisrCQlwdWJsaWMgYm9vbCByZXF1ZXN0ZWRfYnlwYXNzX2NvbXBvc2l0b3IgKCk7Cisr CQlwdWJsaWMgYm9vbCByZXF1ZXN0ZWRfZG9udF9ieXBhc3NfY29tcG9zaXRvciAoKTsKKysJCXB1 YmxpYyB2b2lkIHNldF9jb21wb3NpdG9yX3ByaXZhdGUgKEdMaWIuT2JqZWN0IHByaXYpOworKwkJ cHVibGljIHZvaWQgc2V0X2RlbWFuZHNfYXR0ZW50aW9uICgpOworKwkJcHVibGljIHZvaWQgc2V0 X2ljb25fZ2VvbWV0cnkgKE1ldGEuUmVjdGFuZ2xlPyByZWN0KTsKKysJCXB1YmxpYyB2b2lkIHNo YWRlICh1aW50MzIgdGltZXN0YW1wKTsKKysJCXB1YmxpYyB2b2lkIHNob3ZlX3RpdGxlYmFyX29u c2NyZWVuICgpOworKwkJcHVibGljIGJvb2wgc2hvd2luZ19vbl9pdHNfd29ya3NwYWNlICgpOwor KwkJcHVibGljIHZvaWQgc2h1dGRvd25fZ3JvdXAgKCk7CisrCQlwdWJsaWMgdm9pZCBzdGljayAo KTsKKysJCXB1YmxpYyBib29sIHRpdGxlYmFyX2lzX29uc2NyZWVuICgpOworKwkJcHVibGljIHZv aWQgdW5tYWtlX2Fib3ZlICgpOworKwkJcHVibGljIHZvaWQgdW5tYWtlX2Z1bGxzY3JlZW4gKCk7 CisrCQlwdWJsaWMgdm9pZCB1bm1heGltaXplIChNZXRhLk1heGltaXplRmxhZ3MgZGlyZWN0aW9u cyk7CisrCQlwdWJsaWMgdm9pZCB1bm1pbmltaXplICgpOworKwkJcHVibGljIHZvaWQgdW5zZXRf ZGVtYW5kc19hdHRlbnRpb24gKCk7CisrCQlwdWJsaWMgdm9pZCB1bnNoYWRlICh1aW50MzIgdGlt ZXN0YW1wKTsKKysJCXB1YmxpYyB2b2lkIHVuc3RpY2sgKCk7CisrCQlbTm9BY2Nlc3Nvck1ldGhv ZF0KKysJCXB1YmxpYyBib29sIGFib3ZlIHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0K KysJCXB1YmxpYyBib29sIGFwcGVhcnNfZm9jdXNlZCB7IGdldDsgfQorKwkJW05vQWNjZXNzb3JN ZXRob2RdCisrCQlwdWJsaWMgYm9vbCBkZWNvcmF0ZWQgeyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29y TWV0aG9kXQorKwkJcHVibGljIGJvb2wgZGVtYW5kc19hdHRlbnRpb24geyBnZXQ7IH0KKysJCVtO b0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wgZnVsbHNjcmVlbiB7IGdldDsgfQorKwkJ cHVibGljIHN0cmluZyBndGtfYXBwX21lbnVfb2JqZWN0X3BhdGggeyBnZXQ7IH0KKysJCXB1Ymxp YyBzdHJpbmcgZ3RrX2FwcGxpY2F0aW9uX2lkIHsgZ2V0OyB9CisrCQlwdWJsaWMgc3RyaW5nIGd0 a19hcHBsaWNhdGlvbl9vYmplY3RfcGF0aCB7IGdldDsgfQorKwkJcHVibGljIHN0cmluZyBndGtf bWVudWJhcl9vYmplY3RfcGF0aCB7IGdldDsgfQorKwkJcHVibGljIHN0cmluZyBndGtfdW5pcXVl X2J1c19uYW1lIHsgZ2V0OyB9CisrCQlwdWJsaWMgc3RyaW5nIGd0a193aW5kb3dfb2JqZWN0X3Bh dGggeyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIHZvaWQqIGljb24g eyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wgbWF4aW1pemVk X2hvcml6b250YWxseSB7IGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMg Ym9vbCBtYXhpbWl6ZWRfdmVydGljYWxseSB7IGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2Rd CisrCQlwdWJsaWMgdm9pZCogbWluaV9pY29uIHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhv ZF0KKysJCXB1YmxpYyBib29sIG1pbmltaXplZCB7IGdldDsgfQorKwkJcHVibGljIHN0cmluZyBt dXR0ZXJfaGludHMgeyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJv b2wgb25fYWxsX3dvcmtzcGFjZXMgeyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJ cHVibGljIGJvb2wgcmVzaXplYWJsZSB7IGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisr CQlwdWJsaWMgYm9vbCBza2lwX3Rhc2tiYXIgeyBnZXQ7IH0KKysJCXB1YmxpYyBzdHJpbmcgdGl0 bGUgeyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wgdXJnZW50 IHsgZ2V0OyB9CisrCQlwdWJsaWMgdWludCB1c2VyX3RpbWUgeyBnZXQ7IH0KKysJCXB1YmxpYyBN ZXRhLldpbmRvd1R5cGUgd2luZG93X3R5cGUgeyBnZXQ7IH0KKysJCXB1YmxpYyBzdHJpbmcgd21f Y2xhc3MgeyBnZXQ7IH0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCBwb3NpdGlvbl9jaGFuZ2VkICgp OworKwkJcHVibGljIHNpZ25hbCB2b2lkIHJhaXNlZCAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9p ZCBzaG93biAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBzaXplX2NoYW5nZWQgKCk7CisrCQlw dWJsaWMgc2lnbmFsIHZvaWQgdW5tYW5hZ2VkICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHdv cmtzcGFjZV9jaGFuZ2VkICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJt ZXRhL21ldGEtd2luZG93LWFjdG9yLmgiLCB0eXBlX2lkID0gIm1ldGFfd2luZG93X2FjdG9yX2dl dF90eXBlICgpIildCisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBXaW5kb3dBY3RvciA6IENsdXR0 ZXIuQWN0b3IsIEF0ay5JbXBsZW1lbnRvciwgQ2x1dHRlci5BbmltYXRhYmxlLCBDbHV0dGVyLkNv bnRhaW5lciwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9m dW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBXaW5kb3dBY3RvciAoKTsKKysJCXB1Ymxp YyBDYWlyby5TdXJmYWNlPyBnZXRfaW1hZ2UgKENhaXJvLlJlY3RhbmdsZUludD8gY2xpcCk7Cisr CQlwdWJsaWMgdW5vd25lZCBNZXRhLldpbmRvdyBnZXRfbWV0YV93aW5kb3cgKCk7CisrCQlwdWJs aWMgdW5vd25lZCBNZXRhLlNoYXBlZFRleHR1cmUgZ2V0X3RleHR1cmUgKCk7CisrCQlwdWJsaWMg Ym9vbCBpc19kZXN0cm95ZWQgKCk7CisrCQlwdWJsaWMgdm9pZCBzeW5jX3Zpc2liaWxpdHkgKCk7 CisrCQlwdWJsaWMgTWV0YS5XaW5kb3cgbWV0YV93aW5kb3cgeyBnZXQ7IGNvbnN0cnVjdDsgfQor KwkJcHVibGljIHNpZ25hbCB2b2lkIGRhbWFnZWQgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQg ZWZmZWN0c19jb21wbGV0ZWQgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgZmlyc3RfZnJhbWUg KCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgdGhhd2VkICgpOworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtd2luZG93LWdyb3VwLmgiLCB0eXBlX2lkID0gIm1l dGFfd2luZG93X2dyb3VwX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBXaW5kb3dHcm91 cCA6IENsdXR0ZXIuQWN0b3IsIEF0ay5JbXBsZW1lbnRvciwgQ2x1dHRlci5BbmltYXRhYmxlLCBD bHV0dGVyLkNvbnRhaW5lciwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2Nv bnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBXaW5kb3dHcm91cCAoKTsK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLXdpbmRvdy1zaGFw ZS5oIiwgcmVmX2Z1bmN0aW9uID0gIm1ldGFfd2luZG93X3NoYXBlX3JlZiIsIHR5cGVfaWQgPSAi bWV0YV93aW5kb3dfc2hhcGVfZ2V0X3R5cGUgKCkiLCB1bnJlZl9mdW5jdGlvbiA9ICJtZXRhX3dp bmRvd19zaGFwZV91bnJlZiIpXQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIFdpbmRvd1No YXBlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1 YmxpYyBXaW5kb3dTaGFwZSAoQ2Fpcm8uUmVnaW9uIHJlZ2lvbik7CisrCQlwdWJsaWMgYm9vbCBl cXVhbCAoTWV0YS5XaW5kb3dTaGFwZSBzaGFwZV9iKTsKKysJCXB1YmxpYyB2b2lkIGdldF9ib3Jk ZXJzIChpbnQgYm9yZGVyX3RvcCwgaW50IGJvcmRlcl9yaWdodCwgaW50IGJvcmRlcl9ib3R0b20s IGludCBib3JkZXJfbGVmdCk7CisrCQlwdWJsaWMgdWludCBoYXNoICgpOworKwkJcHVibGljIE1l dGEuV2luZG93U2hhcGUgQHJlZiAoKTsKKysJCXB1YmxpYyBDYWlyby5SZWdpb24gdG9fcmVnaW9u IChpbnQgY2VudGVyX3dpZHRoLCBpbnQgY2VudGVyX2hlaWdodCk7CisrCQlwdWJsaWMgdm9pZCB1 bnJlZiAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS93b3Jrc3Bh Y2UuaCIsIHR5cGVfaWQgPSAibWV0YV93b3Jrc3BhY2VfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGlj IGNsYXNzIFdvcmtzcGFjZSA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVj dF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBXb3Jrc3BhY2UgKCk7CisrCQlwdWJs aWMgdm9pZCBhY3RpdmF0ZSAodWludDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMgdm9pZCBhY3Rp dmF0ZV93aXRoX2ZvY3VzIChNZXRhLldpbmRvdyBmb2N1c190aGlzLCB1aW50MzIgdGltZXN0YW1w KTsKKysJCXB1YmxpYyB1bm93bmVkIE1ldGEuRGlzcGxheSBnZXRfZGlzcGxheSAoKTsKKysJCXB1 YmxpYyB1bm93bmVkIE1ldGEuV29ya3NwYWNlIGdldF9uZWlnaGJvciAoTWV0YS5Nb3Rpb25EaXJl Y3Rpb24gZGlyZWN0aW9uKTsKKysJCXB1YmxpYyBNZXRhLlJlY3RhbmdsZSBnZXRfd29ya19hcmVh X2FsbF9tb25pdG9ycyAoKTsKKysJCXB1YmxpYyBNZXRhLlJlY3RhbmdsZSBnZXRfd29ya19hcmVh X2Zvcl9tb25pdG9yIChpbnQgd2hpY2hfbW9uaXRvcik7CisrCQlwdWJsaWMgaW50IGluZGV4ICgp OworKwkJcHVibGljIEdMaWIuTGlzdDx3ZWFrIE1ldGEuV2luZG93PiBsaXN0X3dpbmRvd3MgKCk7 CisrCQlwdWJsaWMgdm9pZCBzZXRfYnVpbHRpbl9zdHJ1dHMgKEdMaWIuU0xpc3Q8TWV0YS5TdHJ1 dD8+IHN0cnV0cyk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyB1aW50IG5fd2lu ZG93cyB7IGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgdWludCB3b3Jr c3BhY2VfaW5kZXggeyBnZXQ7IH0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCB3aW5kb3dfYWRkZWQg KE1ldGEuV2luZG93IG9iamVjdCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgd2luZG93X3JlbW92 ZWQgKE1ldGEuV2luZG93IG9iamVjdCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gIm1ldGEvbWV0YS13b3Jrc3BhY2UtbWFuYWdlci5oIiwgdHlwZV9pZCA9ICJtZXRhX3dvcmtz cGFjZV9tYW5hZ2VyX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBXb3Jrc3BhY2VNYW5h Z2VyIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0g ZmFsc2UpXQorKwkJcHJvdGVjdGVkIFdvcmtzcGFjZU1hbmFnZXIgKCk7CisrCQlwdWJsaWMgdW5v d25lZCBNZXRhLldvcmtzcGFjZSBhcHBlbmRfbmV3X3dvcmtzcGFjZSAoYm9vbCBhY3RpdmF0ZSwg dWludDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLldvcmtzcGFjZSBnZXRf YWN0aXZlX3dvcmtzcGFjZSAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0X2FjdGl2ZV93b3Jrc3BhY2Vf aW5kZXggKCk7CisrCQlwdWJsaWMgaW50IGdldF9uX3dvcmtzcGFjZXMgKCk7CisrCQlwdWJsaWMg dW5vd25lZCBNZXRhLldvcmtzcGFjZT8gZ2V0X3dvcmtzcGFjZV9ieV9pbmRleCAoaW50IGluZGV4 KTsKKysJCXB1YmxpYyB2b2lkIG92ZXJyaWRlX3dvcmtzcGFjZV9sYXlvdXQgKE1ldGEuRGlzcGxh eUNvcm5lciBzdGFydGluZ19jb3JuZXIsIGJvb2wgdmVydGljYWxfbGF5b3V0LCBpbnQgbl9yb3dz LCBpbnQgbl9jb2x1bW5zKTsKKysJCXB1YmxpYyB2b2lkIHJlbW92ZV93b3Jrc3BhY2UgKE1ldGEu V29ya3NwYWNlIHdvcmtzcGFjZSwgdWludDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMgdm9pZCBy ZW9yZGVyX3dvcmtzcGFjZSAoTWV0YS5Xb3Jrc3BhY2Ugd29ya3NwYWNlLCBpbnQgbmV3X2luZGV4 KTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGludCBsYXlvdXRfY29sdW1ucyB7 IGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgaW50IGxheW91dF9yb3dz IHsgZ2V0OyB9CisrCQlwdWJsaWMgaW50IG5fd29ya3NwYWNlcyB7IGdldDsgfQorKwkJcHVibGlj IHNpZ25hbCB2b2lkIGFjdGl2ZV93b3Jrc3BhY2VfY2hhbmdlZCAoKTsKKysJCXB1YmxpYyBzaWdu YWwgdm9pZCBzaG93aW5nX2Rlc2t0b3BfY2hhbmdlZCAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9p ZCB3b3Jrc3BhY2VfYWRkZWQgKGludCBvYmplY3QpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHdv cmtzcGFjZV9yZW1vdmVkIChpbnQgb2JqZWN0KTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCB3b3Jr c3BhY2Vfc3dpdGNoZWQgKGludCBvYmplY3QsIGludCBwMCwgTWV0YS5Nb3Rpb25EaXJlY3Rpb24g cDEpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHdvcmtzcGFjZXNfcmVvcmRlcmVkICgpOworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEteDExLWRpc3BsYXkuaCIs IHR5cGVfaWQgPSAibWV0YV94MTFfZGlzcGxheV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xh c3MgWDExRGlzcGxheSA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9m dW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBYMTFEaXNwbGF5ICgpOworKwkJcHVibGlj IHZvaWQgY2xlYXJfc3RhZ2VfaW5wdXRfcmVnaW9uICgpOworKwkJcHVibGljIGludCBnZXRfZGFt YWdlX2V2ZW50X2Jhc2UgKCk7CisrCQlwdWJsaWMgaW50IGdldF9zY3JlZW5fbnVtYmVyICgpOwor KwkJcHVibGljIGludCBnZXRfc2hhcGVfZXZlbnRfYmFzZSAoKTsKKysJCXB1YmxpYyBib29sIGhh c19zaGFwZSAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9jbV9zZWxlY3Rpb24gKCk7CisrCQlwdWJs aWMgdm9pZCBzZXRfc3RhZ2VfaW5wdXRfcmVnaW9uIChYLlhzZXJ2ZXJSZWdpb24gcmVnaW9uKTsK KysJCXB1YmxpYyBib29sIHh3aW5kb3dfaXNfYV9ub19mb2N1c193aW5kb3cgKFguV2luZG93IHh3 aW5kb3cpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtY2xv c2UtZGlhbG9nLmgiLCB0eXBlX2NuYW1lID0gIk1ldGFDbG9zZURpYWxvZ0ludGVyZmFjZSIsIHR5 cGVfaWQgPSAibWV0YV9jbG9zZV9kaWFsb2dfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGludGVy ZmFjZSBDbG9zZURpYWxvZyA6IEdMaWIuT2JqZWN0IHsKKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lk IGZvY3VzICgpOworKwkJcHVibGljIGFic3RyYWN0IHZvaWQgaGlkZSAoKTsKKysJCXB1YmxpYyBi b29sIGlzX3Zpc2libGUgKCk7CisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBzaG93ICgpOworKwkJ W05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYWJzdHJhY3QgTWV0YS5XaW5kb3cgd2luZG93 IHsgb3duZWQgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtIYXNFbWl0dGVyXQorKwkJcHVibGljIHNp Z25hbCB2b2lkIHJlc3BvbnNlIChNZXRhLkNsb3NlRGlhbG9nUmVzcG9uc2UgcmVzcG9uc2UpOwor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtaW5oaWJpdC1zaG9y dGN1dHMtZGlhbG9nLmgiLCB0eXBlX2NuYW1lID0gIk1ldGFJbmhpYml0U2hvcnRjdXRzRGlhbG9n SW50ZXJmYWNlIiwgdHlwZV9pZCA9ICJtZXRhX2luaGliaXRfc2hvcnRjdXRzX2RpYWxvZ19nZXRf dHlwZSAoKSIpXQorKwlwdWJsaWMgaW50ZXJmYWNlIEluaGliaXRTaG9ydGN1dHNEaWFsb2cgOiBH TGliLk9iamVjdCB7CisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBoaWRlICgpOworKwkJcHVibGlj IGFic3RyYWN0IHZvaWQgc2hvdyAoKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGlj IGFic3RyYWN0IE1ldGEuV2luZG93IHdpbmRvdyB7IG93bmVkIGdldDsgY29uc3RydWN0OyB9Cisr CQlbSGFzRW1pdHRlcl0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCByZXNwb25zZSAoTWV0YS5Jbmhp Yml0U2hvcnRjdXRzRGlhbG9nUmVzcG9uc2UgcmVzcG9uc2UpOworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlw dWJsaWMgc3RydWN0IEJ1dHRvbkxheW91dCB7CisrCQlbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZh bHNlKV0KKysJCXB1YmxpYyB3ZWFrIE1ldGEuQnV0dG9uRnVuY3Rpb24gbGVmdF9idXR0b25zWzRd OworKwkJW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldCisrCQlwdWJsaWMgd2VhayBib29s IGxlZnRfYnV0dG9uc19oYXNfc3BhY2VyWzRdOworKwkJW0NDb2RlIChhcnJheV9sZW5ndGggPSBm YWxzZSldCisrCQlwdWJsaWMgd2VhayBNZXRhLkJ1dHRvbkZ1bmN0aW9uIHJpZ2h0X2J1dHRvbnNb NF07CisrCQlbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0KKysJCXB1YmxpYyB3ZWFrIGJv b2wgcmlnaHRfYnV0dG9uc19oYXNfc3BhY2VyWzRdOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMg c3RydWN0IEVkZ2UgeworKwkJcHVibGljIE1ldGEuUmVjdGFuZ2xlIHJlY3Q7CisrCQlwdWJsaWMg TWV0YS5TaWRlIHNpZGVfdHlwZTsKKysJCXB1YmxpYyBNZXRhLkVkZ2VUeXBlIGVkZ2VfdHlwZTsK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBoYXNfdHlw ZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBGcmFtZUJvcmRlcnMgeworKwkJcHVibGlj IEd0ay5Cb3JkZXIgdmlzaWJsZTsKKysJCXB1YmxpYyBHdGsuQm9yZGVyIGludmlzaWJsZTsKKysJ CXB1YmxpYyBHdGsuQm9yZGVyIHRvdGFsOworKwkJcHVibGljIHZvaWQgY2xlYXIgKCk7CisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1wbHVnaW4uaCIsIGhhc190 eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgc3RydWN0IFBsdWdpbkluZm8geworKwkJcHVibGlj IHdlYWsgc3RyaW5nIG5hbWU7CisrCQlwdWJsaWMgd2VhayBzdHJpbmcgdmVyc2lvbjsKKysJCXB1 YmxpYyB3ZWFrIHN0cmluZyBhdXRob3I7CisrCQlwdWJsaWMgd2VhayBzdHJpbmcgbGljZW5zZTsK KysJCXB1YmxpYyB3ZWFrIHN0cmluZyBkZXNjcmlwdGlvbjsKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVi bGljIHN0cnVjdCBQbHVnaW5WZXJzaW9uIHsKKysJCXB1YmxpYyB1aW50IHZlcnNpb25fbWFqb3I7 CisrCQlwdWJsaWMgdWludCB2ZXJzaW9uX21pbm9yOworKwkJcHVibGljIHVpbnQgdmVyc2lvbl9t aWNybzsKKysJCXB1YmxpYyB1aW50IHZlcnNpb25fYXBpOworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNvcHlfZnVuY3Rpb24gPSAiZ19ib3hlZF9jb3B5 IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0eXBlX2lkID0gIm1ldGFfcmVjdGFu Z2xlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBzdHJ1Y3QgUmVjdGFuZ2xlIHsKKysJCXB1Ymxp YyBpbnQgeDsKKysJCXB1YmxpYyBpbnQgeTsKKysJCXB1YmxpYyBpbnQgd2lkdGg7CisrCQlwdWJs aWMgaW50IGhlaWdodDsKKysJCXB1YmxpYyBpbnQgYXJlYSAoKTsKKysJCXB1YmxpYyBib29sIGNv bnRhaW5zX3JlY3QgKE1ldGEuUmVjdGFuZ2xlIGlubmVyX3JlY3QpOworKwkJcHVibGljIE1ldGEu UmVjdGFuZ2xlPyBjb3B5ICgpOworKwkJcHVibGljIGJvb2wgY291bGRfZml0X3JlY3QgKE1ldGEu UmVjdGFuZ2xlIGlubmVyX3JlY3QpOworKwkJcHVibGljIGJvb2wgZXF1YWwgKE1ldGEuUmVjdGFu Z2xlIHNyYzIpOworKwkJcHVibGljIHZvaWQgZnJlZSAoKTsKKysJCXB1YmxpYyBib29sIGhvcml6 X292ZXJsYXAgKE1ldGEuUmVjdGFuZ2xlIHJlY3QyKTsKKysJCXB1YmxpYyBib29sIGludGVyc2Vj dCAoTWV0YS5SZWN0YW5nbGUgc3JjMiwgb3V0IE1ldGEuUmVjdGFuZ2xlIGRlc3QpOworKwkJcHVi bGljIGJvb2wgb3ZlcmxhcCAoTWV0YS5SZWN0YW5nbGUgcmVjdDIpOworKwkJcHVibGljIE1ldGEu UmVjdGFuZ2xlIHVuaW9uIChNZXRhLlJlY3RhbmdsZSByZWN0Mik7CisrCQlwdWJsaWMgYm9vbCB2 ZXJ0X292ZXJsYXAgKE1ldGEuUmVjdGFuZ2xlIHJlY3QyKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVi bGljIHN0cnVjdCBTaGFkb3dQYXJhbXMgeworKwkJcHVibGljIGludCByYWRpdXM7CisrCQlwdWJs aWMgaW50IHRvcF9mYWRlOworKwkJcHVibGljIGludCB4X29mZnNldDsKKysJCXB1YmxpYyBpbnQg eV9vZmZzZXQ7CisrCQlwdWJsaWMgdWludDggb3BhY2l0eTsKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVi bGljIHN0cnVjdCBTdHJ1dCB7CisrCQlwdWJsaWMgTWV0YS5SZWN0YW5nbGUgcmVjdDsKKysJCXB1 YmxpYyBNZXRhLlNpZGUgc2lkZTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi bWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfQkFSUklFUl9ESVJFQ1RJT05fIiwgdHlwZV9p ZCA9ICJtZXRhX2JhcnJpZXJfZGlyZWN0aW9uX2dldF90eXBlICgpIildCisrCVtGbGFnc10KKysJ cHVibGljIGVudW0gQmFycmllckRpcmVjdGlvbiB7CisrCQlQT1NJVElWRV9YLAorKwkJUE9TSVRJ VkVfWSwKKysJCU5FR0FUSVZFX1gsCisrCQlORUdBVElWRV9ZCisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX0JVVFRPTl9GVU5D VElPTl8iLCB0eXBlX2lkID0gIm1ldGFfYnV0dG9uX2Z1bmN0aW9uX2dldF90eXBlICgpIildCisr CXB1YmxpYyBlbnVtIEJ1dHRvbkZ1bmN0aW9uIHsKKysJCU1FTlUsCisrCQlNSU5JTUlaRSwKKysJ CU1BWElNSVpFLAorKwkJQ0xPU0UsCisrCQlMQVNUCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX0NMT1NFX0RJQUxPR19SRVNQ T05TRV8iLCB0eXBlX2lkID0gIm1ldGFfY2xvc2VfZGlhbG9nX3Jlc3BvbnNlX2dldF90eXBlICgp IildCisrCXB1YmxpYyBlbnVtIENsb3NlRGlhbG9nUmVzcG9uc2UgeworKwkJV0FJVCwKKysJCUZP UkNFX0NMT1NFCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5o IiwgY3ByZWZpeCA9ICJNRVRBX0NPTVBfRUZGRUNUXyIsIHR5cGVfaWQgPSAibWV0YV9jb21wX2Vm ZmVjdF9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBDb21wRWZmZWN0IHsKKysJCUNSRUFU RSwKKysJCVVOTUlOSU1JWkUsCisrCQlERVNUUk9ZLAorKwkJTUlOSU1JWkUsCisrCQlOT05FCisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9 ICJNRVRBX0NVUlNPUl8iLCB0eXBlX2lkID0gIm1ldGFfY3Vyc29yX2dldF90eXBlICgpIildCisr CXB1YmxpYyBlbnVtIEN1cnNvciB7CisrCQlOT05FLAorKwkJREVGQVVMVCwKKysJCU5PUlRIX1JF U0laRSwKKysJCVNPVVRIX1JFU0laRSwKKysJCVdFU1RfUkVTSVpFLAorKwkJRUFTVF9SRVNJWkUs CisrCQlTRV9SRVNJWkUsCisrCQlTV19SRVNJWkUsCisrCQlORV9SRVNJWkUsCisrCQlOV19SRVNJ WkUsCisrCQlNT1ZFX09SX1JFU0laRV9XSU5ET1csCisrCQlCVVNZLAorKwkJRE5EX0lOX0RSQUcs CisrCQlETkRfTU9WRSwKKysJCURORF9DT1BZLAorKwkJRE5EX1VOU1VQUE9SVEVEX1RBUkdFVCwK KysJCVBPSU5USU5HX0hBTkQsCisrCQlDUk9TU0hBSVIsCisrCQlJQkVBTSwKKysJCUxBU1QKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0g Ik1FVEFfREVCVUdfIiwgdHlwZV9pZCA9ICJtZXRhX2RlYnVnX3RvcGljX2dldF90eXBlICgpIild CisrCVtGbGFnc10KKysJcHVibGljIGVudW0gRGVidWdUb3BpYyB7CisrCQlWRVJCT1NFLAorKwkJ Rk9DVVMsCisrCQlXT1JLQVJFQSwKKysJCVNUQUNLLAorKwkJVEhFTUVTLAorKwkJU00sCisrCQlF VkVOVFMsCisrCQlXSU5ET1dfU1RBVEUsCisrCQlXSU5ET1dfT1BTLAorKwkJR0VPTUVUUlksCisr CQlQTEFDRU1FTlQsCisrCQlQSU5HLAorKwkJWElORVJBTUEsCisrCQlLRVlCSU5ESU5HUywKKysJ CVNZTkMsCisrCQlFUlJPUlMsCisrCQlTVEFSVFVQLAorKwkJUFJFRlMsCisrCQlHUk9VUFMsCisr CQlSRVNJWklORywKKysJCVNIQVBFUywKKysJCUNPTVBPU0lUT1IsCisrCQlFREdFX1JFU0lTVEFO Q0UsCisrCQlEQlVTCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFp bi5oIiwgY3ByZWZpeCA9ICJNRVRBX0RJUkVDVElPTl8iLCB0eXBlX2lkID0gIm1ldGFfZGlyZWN0 aW9uX2dldF90eXBlICgpIildCisrCVtGbGFnc10KKysJcHVibGljIGVudW0gRGlyZWN0aW9uIHsK KysJCUxFRlQsCisrCQlSSUdIVCwKKysJCVRPUCwKKysJCUJPVFRPTSwKKysJCVVQLAorKwkJRE9X TiwKKysJCUhPUklaT05UQUwsCisrCQlWRVJUSUNBTAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9ESVNQTEFZXyIsIHR5cGVf aWQgPSAibWV0YV9kaXNwbGF5X2Nvcm5lcl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBE aXNwbGF5Q29ybmVyIHsKKysJCVRPUExFRlQsCisrCQlUT1BSSUdIVCwKKysJCUJPVFRPTUxFRlQs CisrCQlCT1RUT01SSUdIVAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRh L21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9ESVNQTEFZXyIsIHR5cGVfaWQgPSAibWV0YV9kaXNw bGF5X2RpcmVjdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBEaXNwbGF5RGlyZWN0 aW9uIHsKKysJCVVQLAorKwkJRE9XTiwKKysJCUxFRlQsCisrCQlSSUdIVAorKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9FREdF XyIsIHR5cGVfaWQgPSAibWV0YV9lZGdlX3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVu dW0gRWRnZVR5cGUgeworKwkJV0lORE9XLAorKwkJTU9OSVRPUiwKKysJCVNDUkVFTgorKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVU QV9FWElUXyIsIHR5cGVfaWQgPSAibWV0YV9leGl0X2NvZGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVi bGljIGVudW0gRXhpdENvZGUgeworKwkJU1VDQ0VTUywKKysJCUVSUk9SCisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX0ZSQU1F XyIsIHR5cGVfaWQgPSAibWV0YV9mcmFtZV9mbGFnc19nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3Nd CisrCXB1YmxpYyBlbnVtIEZyYW1lRmxhZ3MgeworKwkJQUxMT1dTX0RFTEVURSwKKysJCUFMTE9X U19NRU5VLAorKwkJQUxMT1dTX01JTklNSVpFLAorKwkJQUxMT1dTX01BWElNSVpFLAorKwkJQUxM T1dTX1ZFUlRJQ0FMX1JFU0laRSwKKysJCUFMTE9XU19IT1JJWk9OVEFMX1JFU0laRSwKKysJCUhB U19GT0NVUywKKysJCVNIQURFRCwKKysJCVNUVUNLLAorKwkJTUFYSU1JWkVELAorKwkJQUxMT1dT X1NIQURFLAorKwkJQUxMT1dTX01PVkUsCisrCQlGVUxMU0NSRUVOLAorKwkJQUJPVkUsCisrCQlU SUxFRF9MRUZULAorKwkJVElMRURfUklHSFQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfRlJBTUVfVFlQRV8iLCB0eXBlX2lk ID0gIm1ldGFfZnJhbWVfdHlwZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBGcmFtZVR5 cGUgeworKwkJTk9STUFMLAorKwkJRElBTE9HLAorKwkJTU9EQUxfRElBTE9HLAorKwkJVVRJTElU WSwKKysJCU1FTlUsCisrCQlCT1JERVIsCisrCQlBVFRBQ0hFRCwKKysJCUxBU1Q7CisrCQlwdWJs aWMgdW5vd25lZCBzdHJpbmcgdG9fc3RyaW5nICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9HUkFCX09QXyIsIHR5cGVf aWQgPSAibWV0YV9ncmFiX29wX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIEdyYWJPcCB7 CisrCQlOT05FLAorKwkJV0lORE9XX0JBU0UsCisrCQlDT01QT1NJVE9SLAorKwkJV0FZTEFORF9Q T1BVUCwKKysJCUZSQU1FX0JVVFRPTiwKKysJCU1PVklORywKKysJCVJFU0laSU5HX05XLAorKwkJ UkVTSVpJTkdfTiwKKysJCVJFU0laSU5HX05FLAorKwkJUkVTSVpJTkdfRSwKKysJCVJFU0laSU5H X1NXLAorKwkJUkVTSVpJTkdfUywKKysJCVJFU0laSU5HX1NFLAorKwkJUkVTSVpJTkdfVywKKysJ CUtFWUJPQVJEX01PVklORywKKysJCUtFWUJPQVJEX1JFU0laSU5HX1VOS05PV04sCisrCQlLRVlC T0FSRF9SRVNJWklOR19OVywKKysJCUtFWUJPQVJEX1JFU0laSU5HX04sCisrCQlLRVlCT0FSRF9S RVNJWklOR19ORSwKKysJCUtFWUJPQVJEX1JFU0laSU5HX0UsCisrCQlLRVlCT0FSRF9SRVNJWklO R19TVywKKysJCUtFWUJPQVJEX1JFU0laSU5HX1MsCisrCQlLRVlCT0FSRF9SRVNJWklOR19TRSwK KysJCUtFWUJPQVJEX1JFU0laSU5HX1cKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfSU5ISUJJVF9TSE9SVENVVFNfRElBTE9H X1JFU1BPTlNFXyIsIHR5cGVfaWQgPSAibWV0YV9pbmhpYml0X3Nob3J0Y3V0c19kaWFsb2dfcmVz cG9uc2VfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gSW5oaWJpdFNob3J0Y3V0c0RpYWxv Z1Jlc3BvbnNlIHsKKysJCUFMTE9XLAorKwkJREVOWQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9LRVlCSU5ESU5HX0FDVElP Tl8iLCB0eXBlX2lkID0gIm1ldGFfa2V5X2JpbmRpbmdfYWN0aW9uX2dldF90eXBlICgpIildCisr CXB1YmxpYyBlbnVtIEtleUJpbmRpbmdBY3Rpb24geworKwkJTk9ORSwKKysJCVdPUktTUEFDRV8x LAorKwkJV09SS1NQQUNFXzIsCisrCQlXT1JLU1BBQ0VfMywKKysJCVdPUktTUEFDRV80LAorKwkJ V09SS1NQQUNFXzUsCisrCQlXT1JLU1BBQ0VfNiwKKysJCVdPUktTUEFDRV83LAorKwkJV09SS1NQ QUNFXzgsCisrCQlXT1JLU1BBQ0VfOSwKKysJCVdPUktTUEFDRV8xMCwKKysJCVdPUktTUEFDRV8x MSwKKysJCVdPUktTUEFDRV8xMiwKKysJCVdPUktTUEFDRV9MRUZULAorKwkJV09SS1NQQUNFX1JJ R0hULAorKwkJV09SS1NQQUNFX1VQLAorKwkJV09SS1NQQUNFX0RPV04sCisrCQlXT1JLU1BBQ0Vf TEFTVCwKKysJCVNXSVRDSF9BUFBMSUNBVElPTlMsCisrCQlTV0lUQ0hfQVBQTElDQVRJT05TX0JB Q0tXQVJELAorKwkJU1dJVENIX0dST1VQLAorKwkJU1dJVENIX0dST1VQX0JBQ0tXQVJELAorKwkJ U1dJVENIX1dJTkRPV1MsCisrCQlTV0lUQ0hfV0lORE9XU19CQUNLV0FSRCwKKysJCVNXSVRDSF9Q QU5FTFMsCisrCQlTV0lUQ0hfUEFORUxTX0JBQ0tXQVJELAorKwkJQ1lDTEVfR1JPVVAsCisrCQlD WUNMRV9HUk9VUF9CQUNLV0FSRCwKKysJCUNZQ0xFX1dJTkRPV1MsCisrCQlDWUNMRV9XSU5ET1dT X0JBQ0tXQVJELAorKwkJQ1lDTEVfUEFORUxTLAorKwkJQ1lDTEVfUEFORUxTX0JBQ0tXQVJELAor KwkJU0hPV19ERVNLVE9QLAorKwkJUEFORUxfTUFJTl9NRU5VLAorKwkJUEFORUxfUlVOX0RJQUxP RywKKysJCVRPR0dMRV9SRUNPUkRJTkcsCisrCQlTRVRfU1BFV19NQVJLLAorKwkJQUNUSVZBVEVf V0lORE9XX01FTlUsCisrCQlUT0dHTEVfRlVMTFNDUkVFTiwKKysJCVRPR0dMRV9NQVhJTUlaRUQs CisrCQlUT0dHTEVfVElMRURfTEVGVCwKKysJCVRPR0dMRV9USUxFRF9SSUdIVCwKKysJCVRPR0dM RV9BQk9WRSwKKysJCU1BWElNSVpFLAorKwkJVU5NQVhJTUlaRSwKKysJCVRPR0dMRV9TSEFERUQs CisrCQlNSU5JTUlaRSwKKysJCUNMT1NFLAorKwkJQkVHSU5fTU9WRSwKKysJCUJFR0lOX1JFU0la RSwKKysJCVRPR0dMRV9PTl9BTExfV09SS1NQQUNFUywKKysJCU1PVkVfVE9fV09SS1NQQUNFXzEs CisrCQlNT1ZFX1RPX1dPUktTUEFDRV8yLAorKwkJTU9WRV9UT19XT1JLU1BBQ0VfMywKKysJCU1P VkVfVE9fV09SS1NQQUNFXzQsCisrCQlNT1ZFX1RPX1dPUktTUEFDRV81LAorKwkJTU9WRV9UT19X T1JLU1BBQ0VfNiwKKysJCU1PVkVfVE9fV09SS1NQQUNFXzcsCisrCQlNT1ZFX1RPX1dPUktTUEFD RV84LAorKwkJTU9WRV9UT19XT1JLU1BBQ0VfOSwKKysJCU1PVkVfVE9fV09SS1NQQUNFXzEwLAor KwkJTU9WRV9UT19XT1JLU1BBQ0VfMTEsCisrCQlNT1ZFX1RPX1dPUktTUEFDRV8xMiwKKysJCU1P VkVfVE9fV09SS1NQQUNFX0xFRlQsCisrCQlNT1ZFX1RPX1dPUktTUEFDRV9SSUdIVCwKKysJCU1P VkVfVE9fV09SS1NQQUNFX1VQLAorKwkJTU9WRV9UT19XT1JLU1BBQ0VfRE9XTiwKKysJCU1PVkVf VE9fV09SS1NQQUNFX0xBU1QsCisrCQlNT1ZFX1RPX01PTklUT1JfTEVGVCwKKysJCU1PVkVfVE9f TU9OSVRPUl9SSUdIVCwKKysJCU1PVkVfVE9fTU9OSVRPUl9VUCwKKysJCU1PVkVfVE9fTU9OSVRP Ul9ET1dOLAorKwkJUkFJU0VfT1JfTE9XRVIsCisrCQlSQUlTRSwKKysJCUxPV0VSLAorKwkJTUFY SU1JWkVfVkVSVElDQUxMWSwKKysJCU1BWElNSVpFX0hPUklaT05UQUxMWSwKKysJCU1PVkVfVE9f Q09STkVSX05XLAorKwkJTU9WRV9UT19DT1JORVJfTkUsCisrCQlNT1ZFX1RPX0NPUk5FUl9TVywK KysJCU1PVkVfVE9fQ09STkVSX1NFLAorKwkJTU9WRV9UT19TSURFX04sCisrCQlNT1ZFX1RPX1NJ REVfUywKKysJCU1PVkVfVE9fU0lERV9FLAorKwkJTU9WRV9UT19TSURFX1csCisrCQlNT1ZFX1RP X0NFTlRFUiwKKysJCU9WRVJMQVlfS0VZLAorKwkJTE9DQVRFX1BPSU5URVJfS0VZLAorKwkJSVNP X05FWFRfR1JPVVAsCisrCQlBTFdBWVNfT05fVE9QLAorKwkJU1dJVENIX01PTklUT1IsCisrCQlS T1RBVEVfTU9OSVRPUiwKKysJCUxBU1QKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfS0VZX0JJTkRJTkdfIiwgdHlwZV9pZCA9 ICJtZXRhX2tleV9iaW5kaW5nX2ZsYWdzX2dldF90eXBlICgpIildCisrCVtGbGFnc10KKysJcHVi bGljIGVudW0gS2V5QmluZGluZ0ZsYWdzIHsKKysJCU5PTkUsCisrCQlQRVJfV0lORE9XLAorKwkJ QlVJTFRJTiwKKysJCUlTX1JFVkVSU0VELAorKwkJTk9OX01BU0tBQkxFLAorKwkJSUdOT1JFX0FV VE9SRVBFQVQsCisrCQlOT19BVVRPX0dSQUIKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfTEFURVJfIiwgdHlwZV9pZCA9ICJt ZXRhX2xhdGVyX3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gTGF0ZXJUeXBlIHsK KysJCVJFU0laRSwKKysJCUNBTENfU0hPV0lORywKKysJCUNIRUNLX0ZVTExTQ1JFRU4sCisrCQlT WU5DX1NUQUNLLAorKwkJQkVGT1JFX1JFRFJBVywKKysJCUlETEUKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfTE9DQUxFX0RJ UkVDVElPTl8iLCB0eXBlX2lkID0gIm1ldGFfbG9jYWxlX2RpcmVjdGlvbl9nZXRfdHlwZSAoKSIp XQorKwlwdWJsaWMgZW51bSBMb2NhbGVEaXJlY3Rpb24geworKwkJTFRSLAorKwkJUlRMCisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJN RVRBX01BWElNSVpFXyIsIHR5cGVfaWQgPSAibWV0YV9tYXhpbWl6ZV9mbGFnc19nZXRfdHlwZSAo KSIpXQorKwlbRmxhZ3NdCisrCXB1YmxpYyBlbnVtIE1heGltaXplRmxhZ3MgeworKwkJSE9SSVpP TlRBTCwKKysJCVZFUlRJQ0FMLAorKwkJQk9USAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9NT0RBTF8iLCB0eXBlX2lkID0g Im1ldGFfbW9kYWxfb3B0aW9uc19nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCXB1YmxpYyBl bnVtIE1vZGFsT3B0aW9ucyB7CisrCQlQT0lOVEVSX0FMUkVBRFlfR1JBQkJFRCwKKysJCUtFWUJP QVJEX0FMUkVBRFlfR1JBQkJFRAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJt ZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9NT05JVE9SX1NXSVRDSF9DT05GSUdfIiwgdHlw ZV9pZCA9ICJtZXRhX21vbml0b3Jfc3dpdGNoX2NvbmZpZ190eXBlX2dldF90eXBlICgpIildCisr CXB1YmxpYyBlbnVtIE1vbml0b3JTd2l0Y2hDb25maWdUeXBlIHsKKysJCUFMTF9NSVJST1IsCisr CQlBTExfTElORUFSLAorKwkJRVhURVJOQUwsCisrCQlCVUlMVElOLAorKwkJVU5LTk9XTgorKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAi TUVUQV9NT1RJT05fIiwgdHlwZV9pZCA9ICJtZXRhX21vdGlvbl9kaXJlY3Rpb25fZ2V0X3R5cGUg KCkiKV0KKysJcHVibGljIGVudW0gTW90aW9uRGlyZWN0aW9uIHsKKysJCVVQLAorKwkJRE9XTiwK KysJCUxFRlQsCisrCQlSSUdIVCwKKysJCVVQX0xFRlQsCisrCQlVUF9SSUdIVCwKKysJCURPV05f TEVGVCwKKysJCURPV05fUklHSFQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi bWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfUEFEX0FDVElPTl8iLCB0eXBlX2lkID0gIm1l dGFfcGFkX2FjdGlvbl90eXBlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIFBhZEFjdGlv blR5cGUgeworKwkJQlVUVE9OLAorKwkJUklORywKKysJCVNUUklQCisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNwcmVmaXggPSAiTUVUQV9QUkVGXyIs IHR5cGVfaWQgPSAibWV0YV9wcmVmZXJlbmNlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVt IFByZWZlcmVuY2UgeworKwkJTU9VU0VfQlVUVE9OX01PRFMsCisrCQlGT0NVU19NT0RFLAorKwkJ Rk9DVVNfTkVXX1dJTkRPV1MsCisrCQlBVFRBQ0hfTU9EQUxfRElBTE9HUywKKysJCVJBSVNFX09O X0NMSUNLLAorKwkJQUNUSU9OX0RPVUJMRV9DTElDS19USVRMRUJBUiwKKysJCUFDVElPTl9NSURE TEVfQ0xJQ0tfVElUTEVCQVIsCisrCQlBQ1RJT05fUklHSFRfQ0xJQ0tfVElUTEVCQVIsCisrCQlB VVRPX1JBSVNFLAorKwkJQVVUT19SQUlTRV9ERUxBWSwKKysJCUZPQ1VTX0NIQU5HRV9PTl9QT0lO VEVSX1JFU1QsCisrCQlUSVRMRUJBUl9GT05ULAorKwkJTlVNX1dPUktTUEFDRVMsCisrCQlEWU5B TUlDX1dPUktTUEFDRVMsCisrCQlLRVlCSU5ESU5HUywKKysJCURJU0FCTEVfV09SS0FST1VORFMs CisrCQlCVVRUT05fTEFZT1VULAorKwkJV09SS1NQQUNFX05BTUVTLAorKwkJVklTVUFMX0JFTEws CisrCQlBVURJQkxFX0JFTEwsCisrCQlWSVNVQUxfQkVMTF9UWVBFLAorKwkJR05PTUVfQUNDRVNT SUJJTElUWSwKKysJCUdOT01FX0FOSU1BVElPTlMsCisrCQlDVVJTT1JfVEhFTUUsCisrCQlDVVJT T1JfU0laRSwKKysJCVJFU0laRV9XSVRIX1JJR0hUX0JVVFRPTiwKKysJCUVER0VfVElMSU5HLAor KwkJRk9SQ0VfRlVMTFNDUkVFTiwKKysJCVdPUktTUEFDRVNfT05MWV9PTl9QUklNQVJZLAorKwkJ RFJBR0dBQkxFX0JPUkRFUl9XSURUSCwKKysJCUFVVE9fTUFYSU1JWkUsCisrCQlDRU5URVJfTkVX X1dJTkRPV1MsCisrCQlEUkFHX1RIUkVTSE9MRCwKKysJCUxPQ0FURV9QT0lOVEVSOworKwkJcHVi bGljIHVub3duZWQgc3RyaW5nIHRvX3N0cmluZyAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfIiwgdHlwZV9pZCA9ICJt ZXRhX3NlbGVjdGlvbl90eXBlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIFNlbGVjdGlv blR5cGUgeworKwkJU0VMRUNUSU9OX1BSSU1BUlksCisrCQlTRUxFQ1RJT05fQ0xJUEJPQVJELAor KwkJU0VMRUNUSU9OX0RORCwKKysJCU5fU0VMRUNUSU9OX1RZUEVTCisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX1NIQURPV19N T0RFXyIsIHR5cGVfaWQgPSAibWV0YV9zaGFkb3dfbW9kZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJs aWMgZW51bSBTaGFkb3dNb2RlIHsKKysJCUFVVE8sCisrCQlGT1JDRURfT0ZGLAorKwkJRk9SQ0VE X09OCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3By ZWZpeCA9ICJNRVRBX1NJREVfIiwgdHlwZV9pZCA9ICJtZXRhX3NpZGVfZ2V0X3R5cGUgKCkiKV0K KysJcHVibGljIGVudW0gU2lkZSB7CisrCQlMRUZULAorKwkJUklHSFQsCisrCQlUT1AsCisrCQlC T1RUT00KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBj cHJlZml4ID0gIk1FVEFfU0laRV9DSEFOR0VfIiwgdHlwZV9pZCA9ICJtZXRhX3NpemVfY2hhbmdl X2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIFNpemVDaGFuZ2UgeworKwkJTUFYSU1JWkUs CisrCQlVTk1BWElNSVpFLAorKwkJRlVMTFNDUkVFTiwKKysJCVVORlVMTFNDUkVFTgorKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVU QV9MQVlFUl8iLCB0eXBlX2lkID0gIm1ldGFfc3RhY2tfbGF5ZXJfZ2V0X3R5cGUgKCkiKV0KKysJ cHVibGljIGVudW0gU3RhY2tMYXllciB7CisrCQlERVNLVE9QLAorKwkJQk9UVE9NLAorKwkJTk9S TUFMLAorKwkJVE9QLAorKwkJRE9DSywKKysJCU9WRVJSSURFX1JFRElSRUNULAorKwkJTEFTVAor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXgg PSAiTUVUQV9UQUJfTElTVF8iLCB0eXBlX2lkID0gIm1ldGFfdGFiX2xpc3RfZ2V0X3R5cGUgKCki KV0KKysJcHVibGljIGVudW0gVGFiTGlzdCB7CisrCQlOT1JNQUwsCisrCQlET0NLUywKKysJCUdS T1VQLAorKwkJTk9STUFMX0FMTAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJt ZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9UQUJfU0hPV18iLCB0eXBlX2lkID0gIm1ldGFf dGFiX3Nob3dfdHlwZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBUYWJTaG93VHlwZSB7 CisrCQlJQ09OLAorKwkJSU5TVEFOVExZCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX1ZJUlRVQUxfIiwgdHlwZV9pZCA9ICJt ZXRhX3ZpcnR1YWxfbW9kaWZpZXJfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlwdWJsaWMg ZW51bSBWaXJ0dWFsTW9kaWZpZXIgeworKwkJU0hJRlRfTUFTSywKKysJCUNPTlRST0xfTUFTSywK KysJCUFMVF9NQVNLLAorKwkJTUVUQV9NQVNLLAorKwkJU1VQRVJfTUFTSywKKysJCUhZUEVSX01B U0ssCisrCQlNT0QyX01BU0ssCisrCQlNT0QzX01BU0ssCisrCQlNT0Q0X01BU0ssCisrCQlNT0Q1 X01BU0sKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBj cHJlZml4ID0gIk1FVEFfV0lORE9XX0NMSUVOVF9UWVBFXyIsIHR5cGVfaWQgPSAibWV0YV93aW5k b3dfY2xpZW50X3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gV2luZG93Q2xpZW50 VHlwZSB7CisrCQlXQVlMQU5ELAorKwkJWDExCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX1dJTkRPV19NRU5VXyIsIHR5cGVf aWQgPSAibWV0YV93aW5kb3dfbWVudV90eXBlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVt IFdpbmRvd01lbnVUeXBlIHsKKysJCVdNLAorKwkJQVBQCisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX1dJTkRPV18iLCB0eXBl X2lkID0gIm1ldGFfd2luZG93X3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gV2lu ZG93VHlwZSB7CisrCQlOT1JNQUwsCisrCQlERVNLVE9QLAorKwkJRE9DSywKKysJCURJQUxPRywK KysJCU1PREFMX0RJQUxPRywKKysJCVRPT0xCQVIsCisrCQlNRU5VLAorKwkJVVRJTElUWSwKKysJ CVNQTEFTSFNDUkVFTiwKKysJCURST1BET1dOX01FTlUsCisrCQlQT1BVUF9NRU5VLAorKwkJVE9P TFRJUCwKKysJCU5PVElGSUNBVElPTiwKKysJCUNPTUJPLAorKwkJRE5ELAorKwkJT1ZFUlJJREVf T1RIRVIKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBp bnN0YW5jZV9wb3MgPSAyLjkpXQorKwlwdWJsaWMgZGVsZWdhdGUgdm9pZCBJZGxlTW9uaXRvcldh dGNoRnVuYyAoTWV0YS5JZGxlTW9uaXRvciBtb25pdG9yLCB1aW50IHdhdGNoX2lkKTsKKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgaW5zdGFuY2VfcG9zID0gNC45 KV0KKysJcHVibGljIGRlbGVnYXRlIHZvaWQgS2V5SGFuZGxlckZ1bmMgKE1ldGEuRGlzcGxheSBk aXNwbGF5LCBNZXRhLldpbmRvdyB3aW5kb3csIFtDQ29kZSAodHlwZSA9ICJDbHV0dGVyS2V5RXZl bnQqIildIENsdXR0ZXIuS2V5RXZlbnQ/IGV2ZW50LCBNZXRhLktleUJpbmRpbmcgYmluZGluZyk7 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGluc3RhbmNlX3Bv cyA9IDEuOSldCisrCXB1YmxpYyBkZWxlZ2F0ZSB2b2lkIFByZWZzQ2hhbmdlZEZ1bmMgKE1ldGEu UHJlZmVyZW5jZSBwcmVmKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFp bi5oIiwgaW5zdGFuY2VfcG9zID0gMS45KV0KKysJcHVibGljIGRlbGVnYXRlIGJvb2wgV2luZG93 Rm9yZWFjaEZ1bmMgKE1ldGEuV2luZG93IHdpbmRvdyk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJtZXRhL21haW4uaCIsIGNuYW1lID0gIk1FVEFfQ1VSUkVOVF9USU1FIildCisrCXB1 YmxpYyBjb25zdCBpbnQgQ1VSUkVOVF9USU1FOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAibWV0YS9tYWluLmgiLCBjbmFtZSA9ICJNRVRBX0RFRkFVTFRfSUNPTl9OQU1FIildCisrCXB1 YmxpYyBjb25zdCBzdHJpbmcgREVGQVVMVF9JQ09OX05BTUU7CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNuYW1lID0gIk1FVEFfSUNPTl9IRUlHSFQiKV0KKysJ cHVibGljIGNvbnN0IGludCBJQ09OX0hFSUdIVDsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gIm1ldGEvbWFpbi5oIiwgY25hbWUgPSAiTUVUQV9JQ09OX1dJRFRIIildCisrCXB1YmxpYyBj b25zdCBpbnQgSUNPTl9XSURUSDsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEv bWFpbi5oIiwgY25hbWUgPSAiTUVUQV9NQUpPUl9WRVJTSU9OIildCisrCXB1YmxpYyBjb25zdCBp bnQgTUFKT1JfVkVSU0lPTjsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFp bi5oIiwgY25hbWUgPSAiTUVUQV9NSUNST19WRVJTSU9OIildCisrCXB1YmxpYyBjb25zdCBpbnQg TUlDUk9fVkVSU0lPTjsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5o IiwgY25hbWUgPSAiTUVUQV9NSU5JX0lDT05fSEVJR0hUIildCisrCXB1YmxpYyBjb25zdCBpbnQg TUlOSV9JQ09OX0hFSUdIVDsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFp bi5oIiwgY25hbWUgPSAiTUVUQV9NSU5JX0lDT05fV0lEVEgiKV0KKysJcHVibGljIGNvbnN0IGlu dCBNSU5JX0lDT05fV0lEVEg7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21h aW4uaCIsIGNuYW1lID0gIk1FVEFfTUlOT1JfVkVSU0lPTiIpXQorKwlwdWJsaWMgY29uc3QgaW50 IE1JTk9SX1ZFUlNJT047CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4u aCIsIGNuYW1lID0gIk1FVEFfUExVR0lOX0FQSV9WRVJTSU9OIildCisrCXB1YmxpYyBjb25zdCBp bnQgUExVR0lOX0FQSV9WRVJTSU9OOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0 YS9tYWluLmgiLCBjbmFtZSA9ICJNRVRBX1BSSU9SSVRZX0JFRk9SRV9SRURSQVciKV0KKysJcHVi bGljIGNvbnN0IGludCBQUklPUklUWV9CRUZPUkVfUkVEUkFXOworKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjbmFtZSA9ICJNRVRBX1BSSU9SSVRZX1BSRUZTX05P VElGWSIpXQorKwlwdWJsaWMgY29uc3QgaW50IFBSSU9SSVRZX1BSRUZTX05PVElGWTsKKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY25hbWUgPSAiTUVUQV9QUklP UklUWV9SRURSQVciKV0KKysJcHVibGljIGNvbnN0IGludCBQUklPUklUWV9SRURSQVc7CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNuYW1lID0gIk1FVEFfUFJJ T1JJVFlfUkVTSVpFIildCisrCXB1YmxpYyBjb25zdCBpbnQgUFJJT1JJVFlfUkVTSVpFOworKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjbmFtZSA9ICJNRVRBX1ZJ UlRVQUxfQ09SRV9LRVlCT0FSRF9JRCIpXQorKwlwdWJsaWMgY29uc3QgaW50IFZJUlRVQUxfQ09S RV9LRVlCT0FSRF9JRDsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5o IiwgY25hbWUgPSAiTUVUQV9WSVJUVUFMX0NPUkVfUE9JTlRFUl9JRCIpXQorKwlwdWJsaWMgY29u c3QgaW50IFZJUlRVQUxfQ09SRV9QT0lOVEVSX0lEOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAibWV0YS9tYWluLmgiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGFjdGl2YXRlX3Nlc3Np b24gKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIpXQorKwlw dWJsaWMgc3RhdGljIHZvaWQgYWRkX2NsdXR0ZXJfZGVidWdfZmxhZ3MgKENsdXR0ZXIuRGVidWdG bGFnIGRlYnVnX2ZsYWdzLCBDbHV0dGVyLkRyYXdEZWJ1Z0ZsYWcgZHJhd19mbGFncywgQ2x1dHRl ci5QaWNrRGVidWdGbGFnIHBpY2tfZmxhZ3MpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAibWV0YS9tYWluLmgiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIGV4aXQgKE1ldGEuRXhpdENv ZGUgY29kZSk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIpXQor KwlwdWJsaWMgc3RhdGljIHN0cmluZyBnX3V0Zjhfc3RybmR1cCAoc3RyaW5nIHNyYywgc2l6ZV90 IG4pOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiKV0KKysJcHVi bGljIHN0YXRpYyB1bm93bmVkIEdMaWIuT3B0aW9uQ29udGV4dCBnZXRfb3B0aW9uX2NvbnRleHQg KCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIpXQorKwlwdWJs aWMgc3RhdGljIGJvb2wgZ2V0X3JlcGxhY2VfY3VycmVudF93bSAoKTsKKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBpbml0 ICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiKV0KKysJcHVi bGljIHN0YXRpYyBib29sIGlzX3Jlc3RhcnQgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJtZXRhL21haW4uaCIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgcXVpdCAoTWV0YS5FeGl0 Q29kZSBjb2RlKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIild CisrCXB1YmxpYyBzdGF0aWMgdm9pZCByZWdpc3Rlcl93aXRoX3Nlc3Npb24gKCk7CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIpXQorKwlwdWJsaWMgc3RhdGljIHZv aWQgcmVtb3ZlX2NsdXR0ZXJfZGVidWdfZmxhZ3MgKENsdXR0ZXIuRGVidWdGbGFnIGRlYnVnX2Zs YWdzLCBDbHV0dGVyLkRyYXdEZWJ1Z0ZsYWcgZHJhd19mbGFncywgQ2x1dHRlci5QaWNrRGVidWdG bGFnIHBpY2tfZmxhZ3MpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWlu LmgiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIHJlc3RhcnQgKHN0cmluZz8gbWVzc2FnZSk7Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIpXQorKwlwdWJsaWMgc3Rh dGljIGludCBydW4gKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4u aCIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgc2V0X2dub21lX3dtX2tleWJpbmRpbmdzIChzdHJp bmcgd21fa2V5YmluZGluZ3MpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9t YWluLmgiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIHNldF93bV9uYW1lIChzdHJpbmcgd21fbmFt ZSk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIpXQorKwlwdWJs aWMgc3RhdGljIHZvaWQgdGVzdF9pbml0ICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAibWV0YS9tYWluLmgiKV0KKysJcHVibGljIHN0YXRpYyBib29sIHgxMV9pbml0X2dka19kaXNw bGF5ICgpIHRocm93cyBHTGliLkVycm9yOworK30KK2RpZmYgLS1naXQgYS92YXBpL211dHRlci1j bHV0dGVyLTYtY3VzdG9tLnZhbGEgYi92YXBpL211dHRlci1jbHV0dGVyLTYtY3VzdG9tLnZhbGEK K25ldyBmaWxlIG1vZGUgMTAwNjQ0CitpbmRleCAwMDAwMDAwMC4uODkyMjRiZTYKKy0tLSAvZGV2 L251bGwKKysrKyBiL3ZhcGkvbXV0dGVyLWNsdXR0ZXItNi1jdXN0b20udmFsYQorQEAgLTAsMCAr MSwxNDcgQEAKKytuYW1lc3BhY2UgQ2x1dHRlciB7CisrCisrICBwdWJsaWMgc3RydWN0IE1hdHJp eCA6IENvZ2wuTWF0cml4IHsKKysgIH0KKysKKysgIHB1YmxpYyBjbGFzcyBCYWNrZW5kIDogR0xp Yi5PYmplY3QgeworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMgdmlydHVhbCB2b2lkIGFk ZF9vcHRpb25zIChHTGliLk9wdGlvbkdyb3VwIGdyb3VwKTsKKysgICAgW05vV3JhcHBlcl0KKysg ICAgcHVibGljIHZpcnR1YWwgYm9vbCBjcmVhdGVfY29udGV4dCAoKSB0aHJvd3MgR0xpYi5FcnJv cjsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVibGljIHZpcnR1YWwgdW5vd25lZCBDbHV0dGVy LlN0YWdlV2luZG93IGNyZWF0ZV9zdGFnZSAoQ2x1dHRlci5TdGFnZSB3cmFwcGVyKSB0aHJvd3Mg R0xpYi5FcnJvcjsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVibGljIHZpcnR1YWwgdm9pZCBl bnN1cmVfY29udGV4dCAoQ2x1dHRlci5TdGFnZSBzdGFnZSk7CisrICAgIFtOb1dyYXBwZXJdCisr ICAgIHB1YmxpYyB2aXJ0dWFsIENsdXR0ZXIuRmVhdHVyZUZsYWdzIGdldF9mZWF0dXJlcyAoKTsK KysgICAgW05vV3JhcHBlcl0KKysgICAgcHVibGljIHZpcnR1YWwgdm9pZCBpbml0X2V2ZW50cyAo KTsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVibGljIHZpcnR1YWwgdm9pZCBpbml0X2ZlYXR1 cmVzICgpOworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMgdmlydHVhbCBib29sIHBvc3Rf cGFyc2UgKCkgdGhyb3dzIEdMaWIuRXJyb3I7CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1Ymxp YyB2aXJ0dWFsIGJvb2wgcHJlX3BhcnNlICgpIHRocm93cyBHTGliLkVycm9yOworKyAgICBbTm9X cmFwcGVyXQorKyAgICBwdWJsaWMgdmlydHVhbCB2b2lkIHJlZHJhdyAoQ2x1dHRlci5TdGFnZSBz dGFnZSk7CisrICB9CisrCisrICBbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfYm94X2dldF90eXBlICgpIildCisrICBwdWJs aWMgY2xhc3MgQm94IDogQ2x1dHRlci5BY3RvciB7CisrICAgIHB1YmxpYyBDbHV0dGVyLkxheW91 dE1hbmFnZXIgbGF5b3V0X21hbmFnZXIgeyBnZXQ7IHNldDsgfQorKyAgfQorKworKyAgW0NDb2Rl ICh0eXBlX2lkID0gIkNMVVRURVJfVFlQRV9DT0xPUiIsIGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiKV0KKysgIHB1YmxpYyBzdHJ1Y3QgQ29sb3IgeworKyAgICBbQ0NvZGUg KGNuYW1lID0gImNsdXR0ZXJfY29sb3JfZnJvbV9obHMiKV0KKysgICAgcHVibGljIENvbG9yLmZy b21faGxzIChmbG9hdCBodWUsIGZsb2F0IGx1bWluYW5jZSwgZmxvYXQgc2F0dXJhdGlvbik7Cisr ICAgIFtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl9jb2xvcl9mcm9tX3BpeGVsIildCisrICAgIHB1 YmxpYyBDb2xvci5mcm9tX3BpeGVsICh1aW50MzIgcGl4ZWwpOworKyAgICBbQ0NvZGUgKGNuYW1l ID0gImNsdXR0ZXJfY29sb3JfZnJvbV9zdHJpbmciKV0KKysgICAgcHVibGljIENvbG9yLmZyb21f c3RyaW5nIChzdHJpbmcgc3RyKTsKKysgICAgW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX2NvbG9y X2Zyb21fc3RyaW5nIildCisrICAgIHB1YmxpYyBib29sIHBhcnNlX3N0cmluZyAoc3RyaW5nIHN0 cik7CisrICAgIHB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLkNvbG9yPyBnZXRfc3RhdGlj IChDbHV0dGVyLlN0YXRpY0NvbG9yIGNvbG9yKTsKKysgIH0KKysKKysgIFtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9jb250 YWluZXJfZ2V0X3R5cGUgKCkiKV0KKysgIHB1YmxpYyBpbnRlcmZhY2UgQ29udGFpbmVyIDogR0xp Yi5PYmplY3QgeworKyAgICBwdWJsaWMgdm9pZCBhZGQgKHBhcmFtcyBDbHV0dGVyLkFjdG9yW10g YWN0b3JzKTsKKysgICAgW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX2NvbnRhaW5lcl9jbGFzc19m aW5kX2NoaWxkX3Byb3BlcnR5IildCisrICAgIHB1YmxpYyBjbGFzcyB1bm93bmVkIEdMaWIuUGFy YW1TcGVjIGZpbmRfY2hpbGRfcHJvcGVydHkgKHN0cmluZyBwcm9wZXJ0eV9uYW1lKTsKKysgICAg W0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX2NvbnRhaW5lcl9jbGFzc19saXN0X2NoaWxkX3Byb3Bl cnRpZXMiKV0KKysgICAgcHVibGljIGNsYXNzIHVub3duZWQgR0xpYi5QYXJhbVNwZWNbXSBsaXN0 X2NoaWxkX3Byb3BlcnRpZXMgKCk7CisrICB9CisrCisrICBbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIs IGZyZWVfZnVuY3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2V2ZW50 X2dldF90eXBlICgpIildCisrICBbQ29tcGFjdF0KKysgIHB1YmxpYyBjbGFzcyBFdmVudCB7Cisr ICAgIHB1YmxpYyBDbHV0dGVyLkFueUV2ZW50IGFueSB7IFtDQ29kZSAoY25hbWUgPSAiKENsdXR0 ZXJBbnlFdmVudCAqKSIpXSBnZXQ7IH0KKysgICAgcHVibGljIENsdXR0ZXIuQnV0dG9uRXZlbnQg YnV0dG9uIHsgW0NDb2RlIChjbmFtZSA9ICIoQ2x1dHRlckJ1dHRvbkV2ZW50ICopIildIGdldDsg fQorKyAgICBwdWJsaWMgQ2x1dHRlci5Dcm9zc2luZ0V2ZW50IGNyb3NzaW5nIHsgW0NDb2RlIChj bmFtZSA9ICIoQ2x1dHRlckNyb3NzaW5nRXZlbnQgKikiKV0gZ2V0OyB9CisrICAgIHB1YmxpYyBD bHV0dGVyLktleUV2ZW50IGtleSB7IFtDQ29kZSAoY25hbWUgPSAiKENsdXR0ZXJLZXlFdmVudCAq KSIpXSBnZXQ7IH0KKysgICAgcHVibGljIENsdXR0ZXIuTW90aW9uRXZlbnQgbW90aW9uIHsgW0ND b2RlIChjbmFtZSA9ICIoQ2x1dHRlck1vdGlvbkV2ZW50ICopIildIGdldDsgfQorKyAgICBwdWJs aWMgQ2x1dHRlci5TY3JvbGxFdmVudCBzY3JvbGwgeyBbQ0NvZGUgKGNuYW1lID0gIihDbHV0dGVy U2Nyb2xsRXZlbnQgKikiKV0gZ2V0OyB9CisrICAgIHB1YmxpYyBDbHV0dGVyLlN0YWdlU3RhdGVF dmVudCBzdGFnZV9zdGF0ZSB7IFtDQ29kZSAoY25hbWUgPSAiKENsdXR0ZXJTdGFnZVN0YXRlRXZl bnQgKikiKV0gZ2V0OyB9CisrICAgIHB1YmxpYyBDbHV0dGVyLlRvdWNoRXZlbnQgdG91Y2ggeyBb Q0NvZGUgKGNuYW1lID0gIihDbHV0dGVyVG91Y2hFdmVudCAqKSIpXSBnZXQ7IH0KKysgICAgcHVi bGljIENsdXR0ZXIuVG91Y2hwYWRQaW5jaEV2ZW50IHRvdWNocGFkX3BpbmNoIHsgW0NDb2RlIChj bmFtZSA9ICIoQ2x1dHRlclRvdWNocGFkUGluY2hFdmVudCAqKSIpXSBnZXQ7IH0KKysgICAgcHVi bGljIENsdXR0ZXIuVG91Y2hwYWRTd2lwZUV2ZW50IHRvdWNocGFkX3N3aXBlIHsgW0NDb2RlIChj bmFtZSA9ICIoQ2x1dHRlclRvdWNocGFkU3dpcGVFdmVudCAqKSIpXSBnZXQ7IH0KKysgIH0KKysK KysgIFtDQ29kZSAodHlwZV9pZCA9ICJjbHV0dGVyX3N0YWdlX2dldF90eXBlICgpIiwgY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKyAgcHVibGljIGNsYXNzIFN0YWdl IDogQ2x1dHRlci5Hcm91cCB7CisrICAgIFtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl9yZWRyYXci KV0KKysgICAgcHVibGljIHZvaWQgcmVkcmF3ICgpOworKyAgfQorKworKyAgW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrICBwdWJsaWMgaW50ZXJmYWNl IFN0YWdlV2luZG93IDogR0xpYi5PYmplY3QgeworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJs aWMgYWJzdHJhY3QgaW50IGdldF9wZW5kaW5nX3N3YXBzICgpOworKyAgICBbTm9XcmFwcGVyXQor KyAgICBwdWJsaWMgYWJzdHJhY3QgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF93cmFwcGVyICgp OworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMgYWJzdHJhY3QgYm9vbCBoYXNfcmVkcmF3 X2NsaXBzICgpOworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMgYWJzdHJhY3Qgdm9pZCBo aWRlICgpOworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMgYWJzdHJhY3QgYm9vbCBpZ25v cmluZ19yZWRyYXdfY2xpcHMgKCk7CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1YmxpYyBhYnN0 cmFjdCBib29sIHJlYWxpemUgKCk7CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1YmxpYyBhYnN0 cmFjdCB2b2lkIHJlc2l6ZSAoaW50IHdpZHRoLCBpbnQgaGVpZ2h0KTsKKysgICAgW05vV3JhcHBl cl0KKysgICAgcHVibGljIGFic3RyYWN0IHZvaWQgc2V0X2N1cnNvcl92aXNpYmxlIChib29sIGN1 cnNvcl92aXNpYmxlKTsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVibGljIGFic3RyYWN0IHZv aWQgc2V0X2Z1bGxzY3JlZW4gKGJvb2wgaXNfZnVsbHNjcmVlbik7CisrICAgIFtOb1dyYXBwZXJd CisrICAgIHB1YmxpYyBhYnN0cmFjdCB2b2lkIHNldF90aXRsZSAoc3RyaW5nIHRpdGxlKTsKKysg ICAgW05vV3JhcHBlcl0KKysgICAgcHVibGljIGFic3RyYWN0IHZvaWQgc2V0X3VzZXJfcmVzaXph YmxlIChib29sIGlzX3Jlc2l6YWJsZSk7CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1YmxpYyBh YnN0cmFjdCB2b2lkIHNob3cgKGJvb2wgZG9fcmFpc2UpOworKyAgICBbTm9XcmFwcGVyXQorKyAg ICBwdWJsaWMgYWJzdHJhY3Qgdm9pZCB1bnJlYWxpemUgKCk7CisrICB9CisrCisrICBbQ0NvZGUg KHR5cGVfaWQgPSAiY2x1dHRlcl90ZXh0dXJlX2dldF90eXBlICgpIiwgY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKyAgcHVibGljIGNsYXNzIFRleHR1cmUgOiBDbHV0 dGVyLkFjdG9yIHsKKysgICAgcHVibGljIENvZ2wuTWF0ZXJpYWwgY29nbF9tYXRlcmlhbCB7IGdl dDsgc2V0OyB9CisrICAgIHB1YmxpYyBDb2dsLlRleHR1cmUgY29nbF90ZXh0dXJlIHsgZ2V0OyBz ZXQ7IH0KKysgIH0KKysKKysgIFtDb21wYWN0XQorKyAgW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrICBwdWJsaWMgY2xhc3MgVGltZW91dFBvb2wgewor KyAgICBbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrICAgIHB1Ymxp YyBUaW1lb3V0UG9vbCAoaW50IHByaW9yaXR5KTsKKysgIH0KKysKKysgIFtDQ29kZSAoY3ByZWZp eCA9ICJDTFVUVEVSX0ZFQVRVUkVfIiwgY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIpXQorKyAgW0ZsYWdzXQorKyAgcHVibGljIGVudW0gRmVhdHVyZUZsYWdzIHsKKysgICAg VEVYVFVSRV9OUE9UOworKyAgICBbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfZmVhdHVyZV9hdmFp bGFibGUiKV0KKysgICAgcHVibGljIGJvb2wgaXNfYXZhaWxhYmxlICgpOworKyAgICBbQ0NvZGUg KGNuYW1lID0gImNsdXR0ZXJfZmVhdHVyZV9nZXRfYWxsIildCisrICAgIHB1YmxpYyBzdGF0aWMg Q2x1dHRlci5GZWF0dXJlRmxhZ3MgQGdldCAoKTsKKysgIH0KKysKKysgIFtDQ29kZSAodHlwZV9p ZCA9ICJDTFVUVEVSX1RZUEVfVU5JVFMiLCBjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIildCisrICBwdWJsaWMgc3RydWN0IFVuaXRzIHsKKysgICAgW0NDb2RlIChjbmFtZSA9 ICJjbHV0dGVyX3VuaXRzX2Zyb21fY20iKV0KKysgICAgcHVibGljIFVuaXRzLmZyb21fY20gKGZs b2F0IGNtKTsKKysgICAgW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX3VuaXRzX2Zyb21fZW0iKV0K KysgICAgcHVibGljIFVuaXRzLmZyb21fZW0gKGZsb2F0IGVtKTsKKysgICAgW0NDb2RlIChjbmFt ZSA9ICJjbHV0dGVyX3VuaXRzX2Zyb21fZW1fZm9yX2ZvbnQiKV0KKysgICAgcHVibGljIFVuaXRz LmZyb21fZW1fZm9yX2ZvbnQgKHN0cmluZyBmb250X25hbWUsIGZsb2F0IGVtKTsKKysgICAgW0ND b2RlIChjbmFtZSA9ICJjbHV0dGVyX3VuaXRzX2Zyb21fbW0iKV0KKysgICAgcHVibGljIFVuaXRz LmZyb21fbW0gKGZsb2F0IG1tKTsKKysgICAgW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX3VuaXRz X2Zyb21fcGl4ZWxzIildCisrICAgIHB1YmxpYyBVbml0cy5mcm9tX3BpeGVscyAoaW50IHB4KTsK KysgICAgW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX3VuaXRzX2Zyb21fcHQiKV0KKysgICAgcHVi bGljIFVuaXRzLmZyb21fcHQgKGZsb2F0IHB0KTsKKysgICAgW0NDb2RlIChjbmFtZSA9ICJjbHV0 dGVyX3VuaXRzX2Zyb21fc3RyaW5nIildCisrICAgIHB1YmxpYyBVbml0cy5mcm9tX3N0cmluZyAo c3RyaW5nIHN0cik7CisrICB9CisrfQorZGlmZiAtLWdpdCBhL3ZhcGkvbXV0dGVyLWNsdXR0ZXIt Ni5kZXBzIGIvdmFwaS9tdXR0ZXItY2x1dHRlci02LmRlcHMKK25ldyBmaWxlIG1vZGUgMTAwNjQ0 CitpbmRleCAwMDAwMDAwMC4uN2E3MGQ2ZGYKKy0tLSAvZGV2L251bGwKKysrKyBiL3ZhcGkvbXV0 dGVyLWNsdXR0ZXItNi5kZXBzCitAQCAtMCwwICsxLDQgQEAKKythdGsKKytjYWlybworK2pzb24t Z2xpYi0xLjAKKyttdXR0ZXItY29nbC02CitkaWZmIC0tZ2l0IGEvdmFwaS9tdXR0ZXItY2x1dHRl ci02LnZhcGkgYi92YXBpL211dHRlci1jbHV0dGVyLTYudmFwaQorbmV3IGZpbGUgbW9kZSAxMDA2 NDQKK2luZGV4IDAwMDAwMDAwLi5kNjZmOWFjOAorLS0tIC9kZXYvbnVsbAorKysrIGIvdmFwaS9t dXR0ZXItY2x1dHRlci02LnZhcGkKK0BAIC0wLDAgKzEsODY4NyBAQAorKy8qIG11dHRlci1jbHV0 dGVyLTYudmFwaSBnZW5lcmF0ZWQgYnkgdmFwaWdlbiwgZG8gbm90IG1vZGlmeS4gKi8KKysKKytb Q0NvZGUgKGNwcmVmaXggPSAiQ2x1dHRlciIsIGdpcl9uYW1lc3BhY2UgPSAiQ2x1dHRlciIsIGdp cl92ZXJzaW9uID0gIjYiLCBsb3dlcl9jYXNlX2NwcmVmaXggPSAiY2x1dHRlcl8iKV0KKytuYW1l c3BhY2UgQ2x1dHRlciB7CisrCW5hbWVzcGFjZSBLZXkgeworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQDA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8xIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBAMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEAyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfMyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDM7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV8zMjcwX0FsdEN1cnNvciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBf QWx0Q3Vyc29yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9BdHRuIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBAMzI3MF9BdHRuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9CYWNrVGFiIildCisrCQlwdWJs aWMgY29uc3QgdWludCBAMzI3MF9CYWNrVGFiOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9DaGFuZ2VT Y3JlZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX0NoYW5nZVNjcmVlbjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZXzMyNzBfQ29weSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfQ29weTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZXzMyNzBfQ3Vyc29yQmxpbmsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEAzMjcwX0N1cnNvckJsaW5rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9DdXJzb3JTZWxlY3QiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX0N1cnNvclNlbGVjdDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ XzMyNzBfRGVsZXRlV29yZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfRGVsZXRlV29y ZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZXzMyNzBfRHVwbGljYXRlIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBAMzI3MF9EdXBsaWNhdGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX0VudGVyIildCisrCQlwdWJs aWMgY29uc3QgdWludCBAMzI3MF9FbnRlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfRXJhc2VFT0Yi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX0VyYXNlRU9GOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf MzI3MF9FcmFzZUlucHV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9FcmFzZUlucHV0 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9FeFNlbGVjdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg QDMyNzBfRXhTZWxlY3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX0ZpZWxkTWFyayIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQDMyNzBfRmllbGRNYXJrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9JZGVu dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfSWRlbnQ7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8z MjcwX0p1bXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX0p1bXA7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV8zMjcwX0tleUNsaWNrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9LZXlDbGlj azsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZXzMyNzBfTGVmdDIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAz MjcwX0xlZnQyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9QQTEiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEAzMjcwX1BBMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfUEEyIildCisrCQlwdWJsaWMgY29u c3QgdWludCBAMzI3MF9QQTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX1BBMyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQDMyNzBfUEEzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9QbGF5IildCisrCQlw dWJsaWMgY29uc3QgdWludCBAMzI3MF9QbGF5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9QcmludFNj cmVlbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfUHJpbnRTY3JlZW47CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV8zMjcwX1F1aXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX1F1aXQ7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV8zMjcwX1JlY29yZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBf UmVjb3JkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9SZXNldCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQDMyNzBfUmVzZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX1JpZ2h0MiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQDMyNzBfUmlnaHQyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9SdWxlIildCisr CQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9SdWxlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9TZXR1 cCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfU2V0dXA7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8z MjcwX1Rlc3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX1Rlc3Q7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV80IildCisrCQlwdWJsaWMgY29uc3QgdWludCBANDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEA1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfNiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQDY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV83IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBANzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZXzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEA4OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfOSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDk7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9BIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQUUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEFFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQWFjdXRlIildCisrCQlwdWJs aWMgY29uc3QgdWludCBBYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BYmVsb3dkb3QiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEFiZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FicmV2ZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQWJyZXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQWJyZXZlYWN1dGUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEFicmV2ZWFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQWJyZXZl YmVsb3dkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFicmV2ZWJlbG93ZG90OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQWJyZXZlZ3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFicmV2ZWdyYXZl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQWJyZXZlaG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQWJy ZXZlaG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FicmV2ZXRpbGRlIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBBYnJldmV0aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FjY2Vzc1hfRW5hYmxlIildCisrCQlw dWJsaWMgY29uc3QgdWludCBBY2Nlc3NYX0VuYWJsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FjY2Vzc1hf RmVlZGJhY2tfRW5hYmxlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBY2Nlc3NYX0ZlZWRiYWNr X0VuYWJsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FjaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBBY2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FjaXJjdW1mbGV4YWN1dGUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEFjaXJjdW1mbGV4YWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BY2ly Y3VtZmxleGJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBY2lyY3VtZmxleGJlbG93 ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQWNpcmN1bWZsZXhncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQWNpcmN1bWZsZXhncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FjaXJjdW1mbGV4aG9vayIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQWNpcmN1bWZsZXhob29rOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QWNpcmN1bWZsZXh0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQWNpcmN1bWZsZXh0aWxk ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FkZEZhdm9yaXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBB ZGRGYXZvcml0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FkaWFlcmVzaXMiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEFkaWFlcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BZ3JhdmUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEFncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Fob29rIildCisrCQlwdWJsaWMgY29u c3QgdWludCBBaG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FsdF9MIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBBbHRfTDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FsdF9SIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBBbHRfUjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FtYWNyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEFtYWNyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bb2dvbmVrIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBBb2dvbmVrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXBwbGljYXRpb25MZWZ0IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBBcHBsaWNhdGlvbkxlZnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcHBsaWNhdGlvblJp Z2h0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcHBsaWNhdGlvblJpZ2h0OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQXJhYmljXzAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY18wOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQXJhYmljXzEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY18xOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQXJhYmljXzIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY18yOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQXJhYmljXzMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY18z OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljXzQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJp Y180OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljXzUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFy YWJpY181OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljXzYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEFyYWJpY182OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljXzciKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEFyYWJpY183OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljXzgiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEFyYWJpY184OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljXzkiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEFyYWJpY185OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2FpbiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQXJhYmljX2FpbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19hbGVmIild CisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfYWxlZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJp Y19hbGVmbWFrc3VyYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2FsZWZtYWtzdXJh OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2JlaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJh YmljX2JlaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19jb21tYSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQXJhYmljX2NvbW1hOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2RhZCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQXJhYmljX2RhZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19kYWwiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19kYWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNf ZGFtbWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19kYW1tYTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0FyYWJpY19kYW1tYXRhbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2RhbW1h dGFuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2RkYWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEFyYWJpY19kZGFsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2ZhcnNpX3llaCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQXJhYmljX2ZhcnNpX3llaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19m YXRoYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2ZhdGhhOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQXJhYmljX2ZhdGhhdGFuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfZmF0aGF0 YW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfZmVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBB cmFiaWNfZmVoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2Z1bGxzdG9wIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBBcmFiaWNfZnVsbHN0b3A7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfZ2FmIild CisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfZ2FmOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmlj X2doYWluIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfZ2hhaW47CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9BcmFiaWNfaGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19oYTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0FyYWJpY19oYWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19oYWg7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfaGFtemEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFy YWJpY19oYW16YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19oYW16YV9hYm92ZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQXJhYmljX2hhbXphX2Fib3ZlOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmlj X2hhbXphX2JlbG93IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfaGFtemFfYmVsb3c7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfaGFtemFvbmFsZWYiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEFyYWJpY19oYW16YW9uYWxlZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19oYW16YW9ud2F3 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfaGFtemFvbndhdzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0FyYWJpY19oYW16YW9ueWVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfaGFt emFvbnllaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19oYW16YXVuZGVyYWxlZiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQXJhYmljX2hhbXphdW5kZXJhbGVmOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJh YmljX2hlaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2hlaDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0FyYWJpY19oZWhfZG9hY2hhc2htZWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJp Y19oZWhfZG9hY2hhc2htZWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfaGVoX2dvYWwiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19oZWhfZ29hbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJp Y19qZWVtIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfamVlbTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0FyYWJpY19qZWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19qZWg7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9BcmFiaWNfa2FmIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfa2Fm OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2thc3JhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBB cmFiaWNfa2FzcmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfa2FzcmF0YW4iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEFyYWJpY19rYXNyYXRhbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19rZWhl aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2tlaGVoOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QXJhYmljX2toYWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19raGFoOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQXJhYmljX2xhbSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2xhbTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0FyYWJpY19tYWRkYV9hYm92ZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQXJhYmljX21hZGRhX2Fib3ZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX21hZGRhb25hbGVm IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfbWFkZGFvbmFsZWY7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9BcmFiaWNfbWVlbSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX21lZW07Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9BcmFiaWNfbm9vbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmlj X25vb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfbm9vbl9naHVubmEiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEFyYWJpY19ub29uX2dodW5uYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19wZWgi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19wZWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFi aWNfcGVyY2VudCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3BlcmNlbnQ7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9BcmFiaWNfcWFmIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfcWFm OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3F1ZXN0aW9uX21hcmsiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEFyYWJpY19xdWVzdGlvbl9tYXJrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3JhIild CisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfcmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNf cnJlaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3JyZWg7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9BcmFiaWNfc2FkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfc2FkOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQXJhYmljX3NlZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19zZWVu OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3NlbWljb2xvbiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQXJhYmljX3NlbWljb2xvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19zaGFkZGEiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19zaGFkZGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNf c2hlZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19zaGVlbjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0FyYWJpY19zdWt1biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3N1a3VuOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQXJhYmljX3N1cGVyc2NyaXB0X2FsZWYiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEFyYWJpY19zdXBlcnNjcmlwdF9hbGVmOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3N3 aXRjaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3N3aXRjaDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0FyYWJpY190YWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY190YWg7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9BcmFiaWNfdGF0d2VlbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmlj X3RhdHdlZWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfdGNoZWgiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEFyYWJpY190Y2hlaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY190ZWgiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEFyYWJpY190ZWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfdGVobWFy YnV0YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3RlaG1hcmJ1dGE7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9BcmFiaWNfdGhhbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3RoYWw7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfdGhlaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJh YmljX3RoZWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfdHRlaCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQXJhYmljX3R0ZWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfdmVoIildCisrCQlwdWJs aWMgY29uc3QgdWludCBBcmFiaWNfdmVoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3dhdyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3dhdzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY195 ZWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY195ZWg7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9B cmFiaWNfeWVoX2JhcmVlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfeWVoX2JhcmVl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3phaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJh YmljX3phaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY196YWluIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBBcmFiaWNfemFpbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyaW5nIildCisrCQlwdWJsaWMgY29u c3QgdWludCBBcmluZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0FUIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBBcm1lbmlhbl9BVDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0FZQiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fQVlCOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5p YW5fQkVOIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9CRU47CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9Bcm1lbmlhbl9DSEEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX0NIQTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0RBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1l bmlhbl9EQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0RaQSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQXJtZW5pYW5fRFpBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fRSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0ZFIild CisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9GRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVu aWFuX0dIQVQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX0dIQVQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9Bcm1lbmlhbl9HSU0iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX0dJ TTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0hJIildCisrCQlwdWJsaWMgY29uc3QgdWludCBB cm1lbmlhbl9ISTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0hPIildCisrCQlwdWJsaWMgY29u c3QgdWludCBBcm1lbmlhbl9ITzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0lOSSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fSU5JOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5f SkUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX0pFOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QXJtZW5pYW5fS0UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX0tFOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQXJtZW5pYW5fS0VOIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9L RU47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9LSEUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEFybWVuaWFuX0tIRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0xZVU4iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEFybWVuaWFuX0xZVU47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9NRU4i KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX01FTjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Fy bWVuaWFuX05VIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9OVTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0FybWVuaWFuX08iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX087Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9QRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5p YW5fUEU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9QWVVSIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBBcm1lbmlhbl9QWVVSOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fUkEiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX1JBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fUkUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX1JFOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJt ZW5pYW5fU0UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX1NFOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQXJtZW5pYW5fU0hBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9TSEE7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9UQ0hFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBB cm1lbmlhbl9UQ0hFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fVE8iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEFybWVuaWFuX1RPOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fVFNBIildCisr CQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9UU0E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlh bl9UU08iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX1RTTzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0FybWVuaWFuX1RZVU4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX1RZVU47 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9WRVYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFy bWVuaWFuX1ZFVjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX1ZPIildCisrCQlwdWJsaWMgY29u c3QgdWludCBBcm1lbmlhbl9WTzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX1ZZVU4iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX1ZZVU47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlh bl9ZRUNIIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9ZRUNIOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQXJtZW5pYW5fWkEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX1pBOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fWkhFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1l bmlhbl9aSEU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9hY2NlbnQiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEFybWVuaWFuX2FjY2VudDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2FtYW5h ayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fYW1hbmFrOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQXJtZW5pYW5fYXBvc3Ryb3BoZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5f YXBvc3Ryb3BoZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2F0IildCisrCQlwdWJsaWMgY29u c3QgdWludCBBcm1lbmlhbl9hdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2F5YiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fYXliOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5f YmVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9iZW47CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9Bcm1lbmlhbl9idXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2J1dDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0FybWVuaWFuX2NoYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5p YW5fY2hhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fZGEiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEFybWVuaWFuX2RhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fZHphIildCisrCQlwdWJs aWMgY29uc3QgdWludCBBcm1lbmlhbl9kemE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9lIild CisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9lOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5p YW5fZXhjbGFtIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9leGNsYW07CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9Bcm1lbmlhbl9mZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5f ZmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9mdWxsX3N0b3AiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEFybWVuaWFuX2Z1bGxfc3RvcDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2doYXQi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2doYXQ7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9B cm1lbmlhbl9naW0iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2dpbTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0FybWVuaWFuX2hpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9o aTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2hvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBB cm1lbmlhbl9obzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2h5cGhlbiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQXJtZW5pYW5faHlwaGVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5faW5p IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9pbmk7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9B cm1lbmlhbl9qZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5famU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9Bcm1lbmlhbl9rZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fa2U7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9rZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFy bWVuaWFuX2tlbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2toZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQXJtZW5pYW5fa2hlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fbGlnYXR1cmVf ZXciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2xpZ2F0dXJlX2V3OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQXJtZW5pYW5fbHl1biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5f bHl1bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX21lbiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQXJtZW5pYW5fbWVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fbnUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEFybWVuaWFuX251OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fbyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFu X3BhcnV5ayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fcGFydXlrOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQXJtZW5pYW5fcGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX3Bl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fcHl1ciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg QXJtZW5pYW5fcHl1cjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3F1ZXN0aW9uIildCisrCQlw dWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9xdWVzdGlvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVu aWFuX3JhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9yYTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0FybWVuaWFuX3JlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9yZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0FybWVuaWFuX3NlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlh bl9zZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3NlcGFyYXRpb25fbWFyayIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fc2VwYXJhdGlvbl9tYXJrOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QXJtZW5pYW5fc2hhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9zaGE7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9Bcm1lbmlhbl9zaGVzaHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVu aWFuX3NoZXNodDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3RjaGUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEFybWVuaWFuX3RjaGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl90byIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fdG87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlh bl90c2EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX3RzYTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0FybWVuaWFuX3RzbyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fdHNvOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fdHl1biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJt ZW5pYW5fdHl1bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3Zlcmpha2V0IildCisrCQlwdWJs aWMgY29uc3QgdWludCBBcm1lbmlhbl92ZXJqYWtldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFu X3ZldiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fdmV2OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQXJtZW5pYW5fdm8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX3ZvOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQXJtZW5pYW5fdnl1biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5p YW5fdnl1bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3llY2giKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEFybWVuaWFuX3llY2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl95ZW50YW1uYSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5feWVudGFtbmE7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9Bcm1lbmlhbl96YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5femE7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9Bcm1lbmlhbl96aGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFu X3poZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0F0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXRp bGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQXVkaWJsZUJlbGxfRW5hYmxlIildCisrCQlwdWJsaWMgY29u c3QgdWludCBBdWRpYmxlQmVsbF9FbmFibGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BdWRpb0N5Y2xlVHJh Y2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEF1ZGlvQ3ljbGVUcmFjazsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0F1ZGlvRm9yd2FyZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXVkaW9Gb3J3YXJkOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQXVkaW9Mb3dlclZvbHVtZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg QXVkaW9Mb3dlclZvbHVtZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0F1ZGlvTWVkaWEiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEF1ZGlvTWVkaWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BdWRpb01pY011dGUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEF1ZGlvTWljTXV0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0F1ZGlv TXV0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXVkaW9NdXRlOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QXVkaW9OZXh0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBdWRpb05leHQ7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9BdWRpb1BhdXNlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBdWRpb1BhdXNlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQXVkaW9QbGF5IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBdWRpb1BsYXk7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9BdWRpb1ByZXYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEF1ZGlv UHJldjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0F1ZGlvUmFpc2VWb2x1bWUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEF1ZGlvUmFpc2VWb2x1bWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BdWRpb1JhbmRvbVBsYXki KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEF1ZGlvUmFuZG9tUGxheTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0F1ZGlvUmVjb3JkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBdWRpb1JlY29yZDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0F1ZGlvUmVwZWF0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBdWRpb1JlcGVh dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0F1ZGlvUmV3aW5kIildCisrCQlwdWJsaWMgY29uc3QgdWludCBB dWRpb1Jld2luZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0F1ZGlvU3RvcCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQXVkaW9TdG9wOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXdheSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQXdheTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEI7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9CYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEJhYm92 ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0JhY2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEJhY2s7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9CYWNrRm9yd2FyZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQmFj a0ZvcndhcmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9CYWNrU3BhY2UiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEJhY2tTcGFjZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0JhdHRlcnkiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEJhdHRlcnk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9CZWdpbiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQmVnaW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9CbHVlIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBCbHVlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQmx1ZXRvb3RoIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBCbHVldG9vdGg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Cb29rIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBCb29rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQm91bmNlS2V5c19FbmFibGUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEJvdW5jZUtleXNfRW5hYmxlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQnJlYWsiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEJyZWFrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQnJpZ2h0bmVzc0FkanVz dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQnJpZ2h0bmVzc0FkanVzdDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0J5ZWxvcnVzc2lhbl9TSE9SVFUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEJ5ZWxvcnVz c2lhbl9TSE9SVFU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9CeWVsb3J1c3NpYW5fc2hvcnR1IildCisrCQlw dWJsaWMgY29uc3QgdWludCBCeWVsb3J1c3NpYW5fc2hvcnR1OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NEIildCisrCQlwdWJs aWMgY29uc3QgdWludCBDRDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NIIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBDSDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NfSCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ19I OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQ19oIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDX2g7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9DYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENhYm92ZWRvdDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0NhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ2FjdXRlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQ2FsY3VsYXRvciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ2FsY3Vs YXRvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0NhbGVuZGFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBD YWxlbmRhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NhbmNlbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg Q2FuY2VsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ2Fwc19Mb2NrIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBDYXBzX0xvY2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IENjYXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NjZWRpbGxhIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBDY2VkaWxsYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NjaXJjdW1mbGV4IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBDY2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NoIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBDaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NsZWFyIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBDbGVhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NsZWFyR3JhYiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQ2xlYXJHcmFiOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ2xvc2UiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IENsb3NlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ29kZWlucHV0IildCisrCQlwdWJsaWMgY29u c3QgdWludCBDb2RlaW5wdXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Db2xvblNpZ24iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IENvbG9uU2lnbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NvbW11bml0eSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQ29tbXVuaXR5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ29udHJhc3RBZGp1 c3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENvbnRyYXN0QWRqdXN0OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQ29udHJvbF9MIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDb250cm9sX0w7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9Db250cm9sX1IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENvbnRyb2xfUjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0NvcHkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENvcHk7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9DcnV6ZWlyb1NpZ24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENydXplaXJvU2ln bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0N1dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3V0OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQ3ljbGVBbmdsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3ljbGVBbmds ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5 cmlsbGljX0E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19CRSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQ3lyaWxsaWNfQkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19DSEUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0NIRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0NI RV9kZXNjZW5kZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0NIRV9kZXNjZW5k ZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19DSEVfdmVydHN0cm9rZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQ3lyaWxsaWNfQ0hFX3ZlcnRzdHJva2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJp bGxpY19ERSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfREU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9DeXJpbGxpY19EWkhFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19EWkhF OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3ly aWxsaWNfRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0VGIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBDeXJpbGxpY19FRjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0VMIildCisrCQlwdWJs aWMgY29uc3QgdWludCBDeXJpbGxpY19FTDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0VNIild CisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19FTTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmls bGljX0VOIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19FTjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0N5cmlsbGljX0VOX2Rlc2NlbmRlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxs aWNfRU5fZGVzY2VuZGVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfRVIiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEN5cmlsbGljX0VSOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfRVMiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0VTOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxs aWNfR0hFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19HSEU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9DeXJpbGxpY19HSEVfYmFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19H SEVfYmFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfSEEiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEN5cmlsbGljX0hBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfSEFSRFNJR04iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0hBUkRTSUdOOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3ly aWxsaWNfSEFfZGVzY2VuZGVyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19IQV9k ZXNjZW5kZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19JIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBDeXJpbGxpY19JOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfSUUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEN5cmlsbGljX0lFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfSU8iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0lPOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxs aWNfSV9tYWNyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0lfbWFjcm9uOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfSkUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmls bGljX0pFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfS0EiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEN5cmlsbGljX0tBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfS0FfZGVzY2VuZGVyIild CisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19LQV9kZXNjZW5kZXI7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9DeXJpbGxpY19LQV92ZXJ0c3Ryb2tlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJp bGxpY19LQV92ZXJ0c3Ryb2tlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfTEpFIildCisrCQlw dWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19MSkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19O SkUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX05KRTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0N5cmlsbGljX08iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX087CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9DeXJpbGxpY19PX2JhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNf T19iYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19QRSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQ3lyaWxsaWNfUEU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19TQ0hXQSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfU0NIV0E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19T SEEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX1NIQTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0N5cmlsbGljX1NIQ0hBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19TSENIQTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX1NISEEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5 cmlsbGljX1NISEE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19TSE9SVEkiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEN5cmlsbGljX1NIT1JUSTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX1NP RlRTSUdOIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19TT0ZUU0lHTjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0N5cmlsbGljX1RFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19U RTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX1RTRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg Q3lyaWxsaWNfVFNFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfVSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQ3lyaWxsaWNfVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX1VfbWFjcm9uIild CisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19VX21hY3JvbjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0N5cmlsbGljX1Vfc3RyYWlnaHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX1Vf c3RyYWlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19VX3N0cmFpZ2h0X2JhciIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfVV9zdHJhaWdodF9iYXI7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9DeXJpbGxpY19WRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfVkU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9DeXJpbGxpY19ZQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNf WUE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19ZRVJVIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBDeXJpbGxpY19ZRVJVOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfWVUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEN5cmlsbGljX1lVOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfWkUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX1pFOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxs aWNfWkhFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19aSEU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9DeXJpbGxpY19aSEVfZGVzY2VuZGVyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJp bGxpY19aSEVfZGVzY2VuZGVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfYSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2JlIild CisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19iZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmls bGljX2NoZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfY2hlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQ3lyaWxsaWNfY2hlX2Rlc2NlbmRlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3ly aWxsaWNfY2hlX2Rlc2NlbmRlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2NoZV92ZXJ0c3Ry b2tlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19jaGVfdmVydHN0cm9rZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0N5cmlsbGljX2RlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxp Y19kZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2R6aGUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEN5cmlsbGljX2R6aGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19lIildCisrCQlwdWJs aWMgY29uc3QgdWludCBDeXJpbGxpY19lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfZWYiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2VmOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxs aWNfZWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2VsOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQ3lyaWxsaWNfZW0iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2VtOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQ3lyaWxsaWNfZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGlj X2VuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfZW5fZGVzY2VuZGVyIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBDeXJpbGxpY19lbl9kZXNjZW5kZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxp Y19lciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfZXI7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9DeXJpbGxpY19lcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfZXM7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9DeXJpbGxpY19naGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGlj X2doZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2doZV9iYXIiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEN5cmlsbGljX2doZV9iYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19oYSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfaGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxp Y19oYV9kZXNjZW5kZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2hhX2Rlc2Nl bmRlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2hhcmRzaWduIildCisrCQlwdWJsaWMgY29u c3QgdWludCBDeXJpbGxpY19oYXJkc2lnbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2kiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2k7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxp Y19pX21hY3JvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfaV9tYWNyb247Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19pZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxs aWNfaWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19pbyIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQ3lyaWxsaWNfaW87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19qZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQ3lyaWxsaWNfamU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19rYSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfa2E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxp Y19rYV9kZXNjZW5kZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2thX2Rlc2Nl bmRlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2thX3ZlcnRzdHJva2UiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEN5cmlsbGljX2thX3ZlcnRzdHJva2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJp bGxpY19samUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2xqZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0N5cmlsbGljX25qZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfbmpl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfbyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3ly aWxsaWNfbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX29fYmFyIildCisrCQlwdWJsaWMgY29u c3QgdWludCBDeXJpbGxpY19vX2JhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3BlIildCisr CQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19wZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGlj X3NjaHdhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19zY2h3YTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0N5cmlsbGljX3NoYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfc2hh OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfc2hjaGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEN5cmlsbGljX3NoY2hhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfc2hoYSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfc2hoYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3No b3J0aSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfc2hvcnRpOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQ3lyaWxsaWNfc29mdHNpZ24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGlj X3NvZnRzaWduOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfdGUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEN5cmlsbGljX3RlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfdHNlIildCisrCQlw dWJsaWMgY29uc3QgdWludCBDeXJpbGxpY190c2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY191 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY191OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3ly aWxsaWNfdV9tYWNyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX3VfbWFjcm9u OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfdV9zdHJhaWdodCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQ3lyaWxsaWNfdV9zdHJhaWdodDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3Vfc3Ry YWlnaHRfYmFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY191X3N0cmFpZ2h0X2Jh cjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3ZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBD eXJpbGxpY192ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3lhIildCisrCQlwdWJsaWMgY29u c3QgdWludCBDeXJpbGxpY195YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3llcnUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX3llcnU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxp Y195dSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfeXU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9DeXJpbGxpY196ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfemU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9DeXJpbGxpY196aGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGlj X3poZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3poZV9kZXNjZW5kZXIiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEN5cmlsbGljX3poZV9kZXNjZW5kZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9EIild CisrCQlwdWJsaWMgY29uc3QgdWludCBEOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRE9TIildCisrCQlwdWJs aWMgY29uc3QgdWludCBET1M7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9EYWJvdmVkb3QiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IERhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0RjYXJvbiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgRGNhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRGVsZXRlIildCisrCQlwdWJs aWMgY29uc3QgdWludCBEZWxldGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9EaXNwbGF5IildCisrCQlwdWJs aWMgY29uc3QgdWludCBEaXNwbGF5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRG9jdW1lbnRzIildCisrCQlw dWJsaWMgY29uc3QgdWludCBEb2N1bWVudHM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Eb25nU2lnbiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgRG9uZ1NpZ247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Eb3duIildCisr CQlwdWJsaWMgY29uc3QgdWludCBEb3duOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRHN0cm9rZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgRHN0cm9rZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0UiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FTkciKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEVORzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0VUSCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRVRI OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfRVpIIildCisrCQlwdWJsaWMgY29uc3QgdWludCBFWkg7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9FYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEVhYm92ZWRvdDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0VhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRWFjdXRlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfRWJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBFYmVsb3dk b3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9FY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEVjYXJv bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0VjaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBF Y2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0VjaXJjdW1mbGV4YWN1dGUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEVjaXJjdW1mbGV4YWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FY2lyY3VtZmxl eGJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBFY2lyY3VtZmxleGJlbG93ZG90Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfRWNpcmN1bWZsZXhncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg RWNpcmN1bWZsZXhncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0VjaXJjdW1mbGV4aG9vayIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgRWNpcmN1bWZsZXhob29rOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRWNpcmN1 bWZsZXh0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRWNpcmN1bWZsZXh0aWxkZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0VjdVNpZ24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEVjdVNpZ247Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9FZGlhZXJlc2lzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBFZGlhZXJl c2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfRWdyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBFZ3Jh dmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9FaG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRWhvb2s7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9FaXN1X1NoaWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBFaXN1 X1NoaWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRWlzdV90b2dnbGUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEVpc3VfdG9nZ2xlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRWplY3QiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEVqZWN0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRW1hY3JvbiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgRW1hY3JvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0VuZCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgRW5kOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRW9nb25layIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg RW9nb25lazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0VzY2FwZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg RXNjYXBlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRXRoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBFdGg7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9FdGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEV0aWxkZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0V1cm9TaWduIildCisrCQlwdWJsaWMgY29uc3QgdWludCBFdXJvU2ln bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0V4Y2VsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBFeGNlbDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0V4ZWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEV4ZWN1dGU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9FeHBsb3JlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRXhwbG9y ZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9GIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfRjEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYxOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf RjEwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMTA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMTEiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEYxMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YxMiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgRjEyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjEzIildCisrCQlwdWJsaWMgY29u c3QgdWludCBGMTM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMTQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEYxNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0YxNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjE1Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfRjE2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMTY7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9GMTciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYxNzsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0YxOCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjE4OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjE5Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBGMTk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgRjI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMjAiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEYyMDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YyMSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg RjIxOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfRjIyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMjI7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9GMjMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYyMzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0YyNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjI0OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf RjI1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMjU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMjYiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEYyNjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YyNyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgRjI3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjI4IildCisrCQlwdWJsaWMgY29u c3QgdWludCBGMjg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMjkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEYyOTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0YzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMzsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0YzMCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjMwOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfRjMxIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMzE7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9G MzIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYzMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YzMyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgRjMzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjM0IildCisrCQlwdWJs aWMgY29uc3QgdWludCBGMzQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMzUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEYzNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Y0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBG NDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0Y1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGNTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0Y2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGNjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0Y3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGNzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Y4IildCisr CQlwdWJsaWMgY29uc3QgdWludCBGODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Y5IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBGOTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0ZGcmFuY1NpZ24iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEZGcmFuY1NpZ247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GYWJvdmVkb3QiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEZhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0ZhcnNpXzAiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEZhcnNpXzA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GYXJzaV8xIildCisr CQlwdWJsaWMgY29uc3QgdWludCBGYXJzaV8xOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRmFyc2lfMiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgRmFyc2lfMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0ZhcnNpXzMiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEZhcnNpXzM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GYXJzaV80Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBGYXJzaV80OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRmFyc2lfNSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgRmFyc2lfNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0ZhcnNpXzYi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEZhcnNpXzY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GYXJzaV83 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGYXJzaV83OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRmFyc2lf OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRmFyc2lfODsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0ZhcnNp XzkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEZhcnNpXzk7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GYXJz aV95ZWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEZhcnNpX3llaDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0Zhdm9yaXRlcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRmF2b3JpdGVzOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfRmluYW5jZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRmluYW5jZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0ZpbmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEZpbmQ7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9GaXJzdF9WaXJ0dWFsX1NjcmVlbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRmlyc3RfVmly dHVhbF9TY3JlZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Gb3J3YXJkIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBGb3J3YXJkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRnJhbWVCYWNrIildCisrCQlwdWJsaWMgY29u c3QgdWludCBGcmFtZUJhY2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GcmFtZUZvcndhcmQiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEZyYW1lRm9yd2FyZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0ciKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HYWJvdmVkb3QiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEdhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dhbWUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEdhbWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HYnJldmUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEdicmV2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0djYXJvbiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgR2Nhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2NlZGlsbGEiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEdjZWRpbGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2NpcmN1bWZsZXgiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEdjaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fYW4i KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2FuOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2Vv cmdpYW5fYmFuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9iYW47CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9HZW9yZ2lhbl9jYW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2Nh bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX2NoYXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEdlb3JnaWFuX2NoYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9jaGluIildCisrCQlwdWJs aWMgY29uc3QgdWludCBHZW9yZ2lhbl9jaGluOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fY2ls IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9jaWw7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9H ZW9yZ2lhbl9kb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2RvbjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0dlb3JnaWFuX2VuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9l bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX2ZpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBH ZW9yZ2lhbl9maTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX2dhbiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgR2VvcmdpYW5fZ2FuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fZ2hhbiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fZ2hhbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3Jn aWFuX2hhZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5faGFlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfR2VvcmdpYW5faGFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9oYXI7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9oZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2Vv cmdpYW5faGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9oaWUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEdlb3JnaWFuX2hpZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX2hvZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5faG9lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5f aW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2luOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf R2VvcmdpYW5famhhbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5famhhbjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0dlb3JnaWFuX2ppbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2Vvcmdp YW5famlsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fa2FuIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBHZW9yZ2lhbl9rYW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9raGFyIildCisrCQlw dWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9raGFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5f bGFzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9sYXM7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9HZW9yZ2lhbl9tYW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX21hbjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0dlb3JnaWFuX25hciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2Vvcmdp YW5fbmFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fb24iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEdlb3JnaWFuX29uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fcGFyIildCisrCQlwdWJs aWMgY29uc3QgdWludCBHZW9yZ2lhbl9wYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9waGFy IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9waGFyOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf R2VvcmdpYW5fcWFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9xYXI7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9HZW9yZ2lhbl9yYWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFu X3JhZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX3NhbiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgR2VvcmdpYW5fc2FuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fc2hpbiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fc2hpbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX3Rh biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fdGFuOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf R2VvcmdpYW5fdGFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl90YXI7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9HZW9yZ2lhbl91biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5f dW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl92aW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEdlb3JnaWFuX3ZpbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX3dlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBHZW9yZ2lhbl93ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX3hhbiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5feGFuOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2Vvcmdp YW5femVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl96ZW47CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9HZW9yZ2lhbl96aGFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl96aGFy OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfR28iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdvOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfR3JlZWtfQUxQSEEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX0FMUEhB OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfQUxQSEFhY2NlbnQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEdyZWVrX0FMUEhBYWNjZW50OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfQkVUQSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgR3JlZWtfQkVUQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX0NISSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfQ0hJOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtf REVMVEEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX0RFTFRBOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfR3JlZWtfRVBTSUxPTiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfRVBTSUxPTjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0dyZWVrX0VQU0lMT05hY2NlbnQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEdyZWVrX0VQU0lMT05hY2NlbnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19FVEEiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX0VUQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX0VUQWFj Y2VudCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfRVRBYWNjZW50OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfR3JlZWtfR0FNTUEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX0dBTU1BOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfR3JlZWtfSU9UQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtf SU9UQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX0lPVEFhY2NlbnQiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEdyZWVrX0lPVEFhY2NlbnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19JT1RBZGlhZXJl c2lzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19JT1RBZGlhZXJlc2lzOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfR3JlZWtfSU9UQWRpZXJlc2lzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVl a19JT1RBZGllcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19LQVBQQSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgR3JlZWtfS0FQUEE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19MQU1CREEiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX0xBTUJEQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVr X0xBTURBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19MQU1EQTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0dyZWVrX01VIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19NVTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0dyZWVrX05VIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19OVTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0dyZWVrX09NRUdBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19PTUVH QTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX09NRUdBYWNjZW50IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBHcmVla19PTUVHQWFjY2VudDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX09NSUNST04iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX09NSUNST047CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVl a19PTUlDUk9OYWNjZW50IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19PTUlDUk9OYWNj ZW50OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfUEhJIildCisrCQlwdWJsaWMgY29uc3QgdWludCBH cmVla19QSEk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19QSSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgR3JlZWtfUEk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19QU0kiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEdyZWVrX1BTSTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX1JITyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgR3JlZWtfUkhPOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfU0lHTUEiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX1NJR01BOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfVEFV IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19UQVU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVl a19USEVUQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfVEhFVEE7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9HcmVla19VUFNJTE9OIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19VUFNJTE9O OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfVVBTSUxPTmFjY2VudCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgR3JlZWtfVVBTSUxPTmFjY2VudDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX1VQU0lMT05k aWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfVVBTSUxPTmRpZXJlc2lzOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfR3JlZWtfWEkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX1hJ OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfWkVUQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3Jl ZWtfWkVUQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX2FjY2VudGRpZXJlc2lzIildCisrCQlwdWJs aWMgY29uc3QgdWludCBHcmVla19hY2NlbnRkaWVyZXNpczsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVr X2FscGhhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19hbHBoYTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0dyZWVrX2FscGhhYWNjZW50IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19hbHBo YWFjY2VudDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX2JldGEiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEdyZWVrX2JldGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19jaGkiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEdyZWVrX2NoaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX2RlbHRhIildCisrCQlw dWJsaWMgY29uc3QgdWludCBHcmVla19kZWx0YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX2Vwc2ls b24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX2Vwc2lsb247CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9HcmVla19lcHNpbG9uYWNjZW50IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19lcHNp bG9uYWNjZW50OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfZXRhIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBHcmVla19ldGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19ldGFhY2NlbnQiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEdyZWVrX2V0YWFjY2VudDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX2Zp bmFsc21hbGxzaWdtYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfZmluYWxzbWFsbHNp Z21hOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfZ2FtbWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEdyZWVrX2dhbW1hOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfaG9yaXpiYXIiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEdyZWVrX2hvcml6YmFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfaW90YSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfaW90YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVr X2lvdGFhY2NlbnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX2lvdGFhY2NlbnQ7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9HcmVla19pb3RhYWNjZW50ZGllcmVzaXMiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEdyZWVrX2lvdGFhY2NlbnRkaWVyZXNpczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX2lv dGFkaWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfaW90YWRpZXJlc2lzOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfR3JlZWtfa2FwcGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVr X2thcHBhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfbGFtYmRhIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBHcmVla19sYW1iZGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19sYW1kYSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgR3JlZWtfbGFtZGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19tdSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfbXU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19udSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfbnU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19v bWVnYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfb21lZ2E7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9HcmVla19vbWVnYWFjY2VudCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfb21lZ2Fh Y2NlbnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19vbWljcm9uIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBHcmVla19vbWljcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfb21pY3JvbmFjY2VudCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfb21pY3JvbmFjY2VudDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0dyZWVrX3BoaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfcGhpOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfR3JlZWtfcGkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX3BpOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfR3JlZWtfcHNpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19wc2k7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9HcmVla19yaG8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVr X3JobzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX3NpZ21hIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBHcmVla19zaWdtYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX3N3aXRjaCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgR3JlZWtfc3dpdGNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfdGF1IildCisr CQlwdWJsaWMgY29uc3QgdWludCBHcmVla190YXU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla190aGV0 YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfdGhldGE7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9H cmVla191cHNpbG9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla191cHNpbG9uOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfR3JlZWtfdXBzaWxvbmFjY2VudCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg R3JlZWtfdXBzaWxvbmFjY2VudDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX3Vwc2lsb25hY2NlbnRk aWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfdXBzaWxvbmFjY2VudGRpZXJl c2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfdXBzaWxvbmRpZXJlc2lzIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBHcmVla191cHNpbG9uZGllcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla194 aSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfeGk7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVl a196ZXRhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla196ZXRhOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfR3JlZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVuOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf SCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0EiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9BOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0FF IildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfQUU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5n dWxfQXJhZUEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9BcmFlQTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0hhbmd1bF9BcmFlQUUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9BcmFl QUU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfQmFuamEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEhhbmd1bF9CYW5qYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9DaWV1YyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgSGFuZ3VsX0NpZXVjOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0NvZGVpbnB1 dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0NvZGVpbnB1dDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0hhbmd1bF9EaWtldWQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9EaWtldWQ7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3Vs X0U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfRU8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhh bmd1bF9FTzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9FVSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgSGFuZ3VsX0VVOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0VuZCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgSGFuZ3VsX0VuZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9IYW5qYSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0hhbmphOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0hp ZXVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSGlldWg7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9IYW5ndWxfSSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0k7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9IYW5ndWxfSWV1bmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9JZXVuZzsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX0NpZXVjIildCisrCQlwdWJsaWMgY29uc3QgdWludCBI YW5ndWxfSl9DaWV1YzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX0Rpa2V1ZCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfRGlrZXVkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pf SGlldWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX0hpZXVoOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfSGFuZ3VsX0pfSWV1bmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX0ll dW5nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfSmlldWoiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEhhbmd1bF9KX0ppZXVqOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfS2hpZXVxIildCisr CQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9LaGlldXE7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5n dWxfSl9LaXllb2ciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX0tpeWVvZzsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0hhbmd1bF9KX0tpeWVvZ1Npb3MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEhhbmd1bF9KX0tpeWVvZ1Npb3M7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9La29namlEYWxy aW5JZXVuZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfS2tvZ2ppRGFscmluSWV1 bmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9NaWV1bSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgSGFuZ3VsX0pfTWlldW07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9OaWV1biIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfTmlldW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxf Sl9OaWV1bkhpZXVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9OaWV1bkhpZXVo OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfTmlldW5KaWV1aiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgSGFuZ3VsX0pfTmlldW5KaWV1ajsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX1BhblNp b3MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX1BhblNpb3M7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9IYW5ndWxfSl9QaGlldWYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX1Bo aWV1ZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX1BpZXViIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBIYW5ndWxfSl9QaWV1YjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX1BpZXViU2lvcyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfUGlldWJTaW9zOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfSGFuZ3VsX0pfUmlldWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX1JpZXVs OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfUmlldWxIaWV1aCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgSGFuZ3VsX0pfUmlldWxIaWV1aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX1JpZXVs S2l5ZW9nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9SaWV1bEtpeWVvZzsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0hhbmd1bF9KX1JpZXVsTWlldW0iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEhhbmd1bF9KX1JpZXVsTWlldW07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9SaWV1bFBoaWV1 ZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfUmlldWxQaGlldWY7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9IYW5ndWxfSl9SaWV1bFBpZXViIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5n dWxfSl9SaWV1bFBpZXViOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfUmlldWxTaW9zIildCisr CQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9SaWV1bFNpb3M7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9I YW5ndWxfSl9SaWV1bFRpZXV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9SaWV1 bFRpZXV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfU2lvcyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgSGFuZ3VsX0pfU2lvczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX1NzYW5nS2l5ZW9n IildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9Tc2FuZ0tpeWVvZzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0hhbmd1bF9KX1NzYW5nU2lvcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3Vs X0pfU3NhbmdTaW9zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfVGlldXQiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEhhbmd1bF9KX1RpZXV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfWWVv cmluSGlldWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX1llb3JpbkhpZXVoOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0phbW8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1 bF9KYW1vOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0plb25qYSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgSGFuZ3VsX0plb25qYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KaWV1aiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0ppZXVqOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0to aWV1cSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0toaWV1cTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0hhbmd1bF9LaXllb2ciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9LaXllb2c7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfS2l5ZW9nU2lvcyIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgSGFuZ3VsX0tpeWVvZ1Npb3M7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfS2tvZ2ppRGFscmlu SWV1bmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9La29namlEYWxyaW5JZXVuZzsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0hhbmd1bF9NaWV1bSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFu Z3VsX01pZXVtOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX011bHRpcGxlQ2FuZGlkYXRlIildCisr CQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfTXVsdGlwbGVDYW5kaWRhdGU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9IYW5ndWxfTmlldW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9OaWV1bjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0hhbmd1bF9OaWV1bkhpZXVoIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBIYW5ndWxfTmlldW5IaWV1aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9OaWV1bkppZXVqIild CisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfTmlldW5KaWV1ajsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0hhbmd1bF9PIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfTzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0hhbmd1bF9PRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX09FOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfSGFuZ3VsX1BhblNpb3MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9Q YW5TaW9zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1BoaWV1ZiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgSGFuZ3VsX1BoaWV1ZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9QaWV1YiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1BpZXViOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1Bp ZXViU2lvcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1BpZXViU2lvczsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0hhbmd1bF9Qb3N0SGFuamEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1 bF9Qb3N0SGFuamE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfUHJlSGFuamEiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEhhbmd1bF9QcmVIYW5qYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9QcmV2 aW91c0NhbmRpZGF0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1ByZXZpb3VzQ2Fu ZGlkYXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1JpZXVsIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBIYW5ndWxfUmlldWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfUmlldWxIaWV1aCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1JpZXVsSGlldWg7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9I YW5ndWxfUmlldWxLaXllb2ciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9SaWV1bEtp eWVvZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9SaWV1bE1pZXVtIildCisrCQlwdWJsaWMgY29u c3QgdWludCBIYW5ndWxfUmlldWxNaWV1bTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9SaWV1bFBo aWV1ZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1JpZXVsUGhpZXVmOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfSGFuZ3VsX1JpZXVsUGlldWIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1 bF9SaWV1bFBpZXViOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1JpZXVsU2lvcyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgSGFuZ3VsX1JpZXVsU2lvczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9S aWV1bFRpZXV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfUmlldWxUaWV1dDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0hhbmd1bF9SaWV1bFllb3JpbkhpZXVoIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBIYW5ndWxfUmlldWxZZW9yaW5IaWV1aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9Sb21h amEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9Sb21hamE7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9IYW5ndWxfU2luZ2xlQ2FuZGlkYXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxf U2luZ2xlQ2FuZGlkYXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1Npb3MiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEhhbmd1bF9TaW9zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1NwZWNpYWwi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9TcGVjaWFsOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf SGFuZ3VsX1NzYW5nRGlrZXVkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfU3NhbmdE aWtldWQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfU3NhbmdKaWV1aiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgSGFuZ3VsX1NzYW5nSmlldWo7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfU3NhbmdL aXllb2ciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9Tc2FuZ0tpeWVvZzsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0hhbmd1bF9Tc2FuZ1BpZXViIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5n dWxfU3NhbmdQaWV1YjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9Tc2FuZ1Npb3MiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEhhbmd1bF9Tc2FuZ1Npb3M7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxf U3RhcnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9TdGFydDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0hhbmd1bF9TdW5reWVvbmdldW1NaWV1bSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFu Z3VsX1N1bmt5ZW9uZ2V1bU1pZXVtOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1N1bmt5ZW9uZ2V1 bVBoaWV1ZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1N1bmt5ZW9uZ2V1bVBoaWV1 ZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9TdW5reWVvbmdldW1QaWV1YiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgSGFuZ3VsX1N1bmt5ZW9uZ2V1bVBpZXViOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFu Z3VsX1RpZXV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfVGlldXQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9IYW5ndWxfVSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1U7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9IYW5ndWxfV0EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9XQTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0hhbmd1bF9XQUUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1 bF9XQUU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfV0UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEhhbmd1bF9XRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9XRU8iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEhhbmd1bF9XRU87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfV0kiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEhhbmd1bF9XSTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9ZQSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1lBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1lBRSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1lBRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1 bF9ZRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1lFOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf SGFuZ3VsX1lFTyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1lFTzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0hhbmd1bF9ZSSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1lJOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfSGFuZ3VsX1lPIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfWU87 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfWVUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1 bF9ZVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9ZZW9yaW5IaWV1aCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgSGFuZ3VsX1llb3JpbkhpZXVoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX3N3aXRj aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX3N3aXRjaDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0hhbmtha3UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmtha3U7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9IY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGNpcmN1bWZsZXg7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9IZWJyZXdfc3dpdGNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIZWJyZXdf c3dpdGNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGVscCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGVs cDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0hlbmthbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGVua2Fu OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfSGVua2FuX01vZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhl bmthbl9Nb2RlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGliZXJuYXRlIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBIaWJlcm5hdGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IaXJhZ2FuYSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgSGlyYWdhbmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IaXJhZ2FuYV9LYXRha2FuYSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgSGlyYWdhbmFfS2F0YWthbmE7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9I aXN0b3J5IildCisrCQlwdWJsaWMgY29uc3QgdWludCBIaXN0b3J5OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf SG9tZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSG9tZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hvbWVQ YWdlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIb21lUGFnZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hv dExpbmtzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIb3RMaW5rczsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0hzdHJva2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhzdHJva2U7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9IeXBlcl9MIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIeXBlcl9MOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfSHlwZXJfUiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSHlwZXJfUjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fQ2Vu dGVyX09iamVjdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0NlbnRlcl9PYmplY3Q7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9JU09fQ29udGludW91c19VbmRlcmxpbmUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IElTT19Db250aW51b3VzX1VuZGVybGluZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19EaXNj b250aW51b3VzX1VuZGVybGluZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0Rpc2NvbnRp bnVvdXNfVW5kZXJsaW5lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0VtcGhhc2l6ZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgSVNPX0VtcGhhc2l6ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19FbnRlciIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0VudGVyOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0Zh c3RfQ3Vyc29yX0Rvd24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19GYXN0X0N1cnNvcl9E b3duOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0Zhc3RfQ3Vyc29yX0xlZnQiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IElTT19GYXN0X0N1cnNvcl9MZWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0Zhc3Rf Q3Vyc29yX1JpZ2h0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fRmFzdF9DdXJzb3JfUmln aHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fRmFzdF9DdXJzb3JfVXAiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IElTT19GYXN0X0N1cnNvcl9VcDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19GaXJzdF9Hcm91 cCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0ZpcnN0X0dyb3VwOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfSVNPX0ZpcnN0X0dyb3VwX0xvY2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19GaXJz dF9Hcm91cF9Mb2NrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0dyb3VwX0xhdGNoIildCisrCQlwdWJs aWMgY29uc3QgdWludCBJU09fR3JvdXBfTGF0Y2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fR3JvdXBf TG9jayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0dyb3VwX0xvY2s7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9JU09fR3JvdXBfU2hpZnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19Hcm91cF9T aGlmdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19MYXN0X0dyb3VwIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBJU09fTGFzdF9Hcm91cDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19MYXN0X0dyb3VwX0xvY2si KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19MYXN0X0dyb3VwX0xvY2s7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9JU09fTGVmdF9UYWIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19MZWZ0X1RhYjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0lTT19MZXZlbDJfTGF0Y2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IElTT19MZXZlbDJfTGF0Y2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fTGV2ZWwzX0xhdGNoIildCisr CQlwdWJsaWMgY29uc3QgdWludCBJU09fTGV2ZWwzX0xhdGNoOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNP X0xldmVsM19Mb2NrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fTGV2ZWwzX0xvY2s7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9JU09fTGV2ZWwzX1NoaWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBJ U09fTGV2ZWwzX1NoaWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0xldmVsNV9MYXRjaCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgSVNPX0xldmVsNV9MYXRjaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19M ZXZlbDVfTG9jayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0xldmVsNV9Mb2NrOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfSVNPX0xldmVsNV9TaGlmdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNP X0xldmVsNV9TaGlmdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19Mb2NrIildCisrCQlwdWJsaWMgY29u c3QgdWludCBJU09fTG9jazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19Nb3ZlX0xpbmVfRG93biIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX01vdmVfTGluZV9Eb3duOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf SVNPX01vdmVfTGluZV9VcCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX01vdmVfTGluZV9V cDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0lTT19OZXh0X0dyb3VwIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBJU09fTmV4dF9Hcm91cDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19OZXh0X0dyb3VwX0xvY2siKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IElTT19OZXh0X0dyb3VwX0xvY2s7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9JU09fUGFydGlhbF9MaW5lX0Rvd24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19QYXJ0 aWFsX0xpbmVfRG93bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19QYXJ0aWFsX0xpbmVfVXAiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IElTT19QYXJ0aWFsX0xpbmVfVXA7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9J U09fUGFydGlhbF9TcGFjZV9MZWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fUGFydGlh bF9TcGFjZV9MZWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX1BhcnRpYWxfU3BhY2VfUmlnaHQiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IElTT19QYXJ0aWFsX1NwYWNlX1JpZ2h0OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfSVNPX1ByZXZfR3JvdXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19QcmV2X0dy b3VwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX1ByZXZfR3JvdXBfTG9jayIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgSVNPX1ByZXZfR3JvdXBfTG9jazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19SZWxlYXNl X0JvdGhfTWFyZ2lucyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX1JlbGVhc2VfQm90aF9N YXJnaW5zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX1JlbGVhc2VfTWFyZ2luX0xlZnQiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IElTT19SZWxlYXNlX01hcmdpbl9MZWZ0OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf SVNPX1JlbGVhc2VfTWFyZ2luX1JpZ2h0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fUmVs ZWFzZV9NYXJnaW5fUmlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fU2V0X01hcmdpbl9MZWZ0Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fU2V0X01hcmdpbl9MZWZ0OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfSVNPX1NldF9NYXJnaW5fUmlnaHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19TZXRf TWFyZ2luX1JpZ2h0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSWFib3ZlZG90IildCisrCQlwdWJsaWMgY29u c3QgdWludCBJYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JYWN1dGUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IElhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0liZWxvd2RvdCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgSWJlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSWJyZXZlIildCisrCQlwdWJs aWMgY29uc3QgdWludCBJYnJldmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JY2lyY3VtZmxleCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgSWNpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JZGlhZXJlc2lz IildCisrCQlwdWJsaWMgY29uc3QgdWludCBJZGlhZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSWdy YXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJZ3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JaG9v ayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSWhvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JbWFjcm9u IildCisrCQlwdWJsaWMgY29uc3QgdWludCBJbWFjcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSW5zZXJ0 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBJbnNlcnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Jb2dvbmVr IildCisrCQlwdWJsaWMgY29uc3QgdWludCBJb2dvbmVrOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSXRpbGRl IildCisrCQlwdWJsaWMgY29uc3QgdWludCBJdGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9KIildCisr CQlwdWJsaWMgY29uc3QgdWludCBKOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSmNpcmN1bWZsZXgiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEpjaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgSzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQXzAiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEtQXzA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF8xIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBLUF8xOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg S1BfMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0tQXzMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQXzM7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9LUF80IildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF80OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfS1BfNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfNTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0tQXzYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQXzY7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9LUF83IildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF83OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1Bf OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQXzkiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEtQXzk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9BZGQiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEtQX0FkZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX0JlZ2luIildCisr CQlwdWJsaWMgY29uc3QgdWludCBLUF9CZWdpbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX0RlY2ltYWwi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX0RlY2ltYWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9E ZWxldGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX0RlbGV0ZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0tQX0RpdmlkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfRGl2aWRlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfS1BfRG93biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfRG93bjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0tQX0VuZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfRW5kOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfS1BfRW50ZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX0VudGVyOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfS1BfRXF1YWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX0VxdWFsOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfS1BfRjEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX0YxOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfS1BfRjIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX0YyOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfS1BfRjMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX0YzOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfS1BfRjQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX0Y0OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf S1BfSG9tZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfSG9tZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0tQX0luc2VydCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfSW5zZXJ0OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfS1BfTGVmdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfTGVmdDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0tQX011bHRpcGx5IildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9NdWx0aXBseTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0tQX05leHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX05leHQ7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9LUF9QYWdlX0Rvd24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQ X1BhZ2VfRG93bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX1BhZ2VfVXAiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEtQX1BhZ2VfVXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9QcmlvciIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgS1BfUHJpb3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9SaWdodCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgS1BfUmlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9TZXBhcmF0b3IiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEtQX1NlcGFyYXRvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX1Nw YWNlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9TcGFjZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQ X1N1YnRyYWN0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9TdWJ0cmFjdDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0tQX1RhYiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfVGFiOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfS1BfVXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX1VwOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfS2FuYV9Mb2NrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLYW5hX0xvY2s7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9LYW5hX1NoaWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBLYW5hX1NoaWZ0Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfS2FuamkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEthbmppOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfS2FuamlfQmFuZ291IildCisrCQlwdWJsaWMgY29uc3QgdWludCBLYW5qaV9C YW5nb3U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LYXRha2FuYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg S2F0YWthbmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LYmRCcmlnaHRuZXNzRG93biIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgS2JkQnJpZ2h0bmVzc0Rvd247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LYmRCcmlnaHRu ZXNzVXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtiZEJyaWdodG5lc3NVcDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0tiZExpZ2h0T25PZmYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtiZExpZ2h0T25P ZmY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9LY2VkaWxsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS2Nl ZGlsbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Lb3JlYW5fV29uIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBLb3JlYW5fV29uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg TDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0wxIildCisrCQlwdWJsaWMgY29uc3QgdWludCBMMTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0wxMCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTDEwOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfTDIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEwyOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTDMiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEwzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTDQiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEw0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTDUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEw1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTDYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEw2Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfTDciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEw3OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfTDgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEw4OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTDki KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEw5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGFjdXRlIildCisr CQlwdWJsaWMgY29uc3QgdWludCBMYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MYXN0X1ZpcnR1YWxf U2NyZWVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBMYXN0X1ZpcnR1YWxfU2NyZWVuOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfTGF1bmNoMCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGF1bmNoMDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0xhdW5jaDEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExhdW5jaDE7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9MYXVuY2gyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBMYXVuY2gyOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfTGF1bmNoMyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGF1bmNoMzsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0xhdW5jaDQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExhdW5jaDQ7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9MYXVuY2g1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBMYXVuY2g1 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfTGF1bmNoNiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGF1bmNo NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0xhdW5jaDciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExhdW5j aDc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9MYXVuY2g4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBMYXVu Y2g4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfTGF1bmNoOSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGF1 bmNoOTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0xhdW5jaEEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExh dW5jaEE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MYXVuY2hCIildCisrCQlwdWJsaWMgY29uc3QgdWludCBM YXVuY2hCOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGF1bmNoQyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg TGF1bmNoQzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xhdW5jaEQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IExhdW5jaEQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MYXVuY2hFIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBMYXVuY2hFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGF1bmNoRiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgTGF1bmNoRjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xiZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgTGJlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGNhcm9uIildCisrCQlwdWJsaWMgY29u c3QgdWludCBMY2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MY2VkaWxsYSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgTGNlZGlsbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MZWZ0IildCisrCQlwdWJsaWMgY29u c3QgdWludCBMZWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGlnaHRCdWxiIildCisrCQlwdWJsaWMgY29u c3QgdWludCBMaWdodEJ1bGI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MaW5lZmVlZCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgTGluZWZlZWQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MaXJhU2lnbiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgTGlyYVNpZ247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Mb2dHcmFiSW5mbyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgTG9nR3JhYkluZm87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Mb2dPZmYi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExvZ09mZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xvZ1dpbmRv d1RyZWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExvZ1dpbmRvd1RyZWU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9Mc3Ryb2tlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBMc3Ryb2tlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfTSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01hYm92 ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTWFib3ZlZG90OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf TWFjZWRvbmlhX0RTRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTWFjZWRvbmlhX0RTRTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX01hY2Vkb25pYV9HSkUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1hY2Vk b25pYV9HSkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NYWNlZG9uaWFfS0pFIildCisrCQlwdWJsaWMgY29u c3QgdWludCBNYWNlZG9uaWFfS0pFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWFjZWRvbmlhX2RzZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgTWFjZWRvbmlhX2RzZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01hY2Vk b25pYV9namUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1hY2Vkb25pYV9namU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9NYWNlZG9uaWFfa2plIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNYWNlZG9uaWFf a2plOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfTWFlX0tvaG8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1h ZV9Lb2hvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWFpbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTWFp bDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX01haWxGb3J3YXJkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBN YWlsRm9yd2FyZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01hcmtldCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgTWFya2V0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWFzc3lvIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBNYXNzeW87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NZWV0aW5nIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBNZWV0aW5nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWVtbyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg TWVtbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX01lbnUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1lbnU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9NZW51S0IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1lbnVLQjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX01lbnVQQiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTWVudVBCOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfTWVzc2VuZ2VyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNZXNzZW5n ZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9NZXRhX0wiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1ldGFf TDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX01ldGFfUiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTWV0YV9S OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfTWlsbFNpZ24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1pbGxT aWduOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfTW9kZUxvY2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1v ZGVMb2NrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTW9kZV9zd2l0Y2giKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IE1vZGVfc3dpdGNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTW9uQnJpZ2h0bmVzc0Rvd24iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IE1vbkJyaWdodG5lc3NEb3duOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTW9u QnJpZ2h0bmVzc1VwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNb25CcmlnaHRuZXNzVXA7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9Nb3VzZUtleXNfQWNjZWxfRW5hYmxlIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBNb3VzZUtleXNfQWNjZWxfRW5hYmxlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTW91c2VLZXlzX0Vu YWJsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTW91c2VLZXlzX0VuYWJsZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX011aGVua2FuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNdWhlbmthbjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX011bHRpX2tleSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTXVsdGlfa2V5Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfTXVsdGlwbGVDYW5kaWRhdGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IE11bHRpcGxlQ2FuZGlkYXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTXVzaWMiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IE11c2ljOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTXlDb21wdXRlciIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgTXlDb21wdXRlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX015U2l0ZXMiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IE15U2l0ZXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9OIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBOOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTmFjdXRlIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBOYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9OYWlyYVNpZ24iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IE5haXJhU2lnbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX05jYXJvbiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgTmNhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTmNlZGlsbGEiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IE5jZWRpbGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTmV3IildCisrCQlwdWJsaWMgY29u c3QgdWludCBOZXc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9OZXdTaGVxZWxTaWduIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBOZXdTaGVxZWxTaWduOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTmV3cyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgTmV3czsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX05leHQiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IE5leHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9OZXh0X1ZNb2RlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBOZXh0X1ZNb2RlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTmV4dF9WaXJ0dWFsX1NjcmVl biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTmV4dF9WaXJ0dWFsX1NjcmVlbjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX050aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTnRpbGRlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfTnVtX0xvY2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE51bV9Mb2NrOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfTyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTzsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09F IildCisrCQlwdWJsaWMgY29uc3QgdWludCBPRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09hY3V0ZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgT2FjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT2JhcnJlZCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgT2JhcnJlZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09iZWxvd2RvdCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2JlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT2Nhcm9u IildCisrCQlwdWJsaWMgY29uc3QgdWludCBPY2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PY2lyY3Vt ZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2NpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9PY2lyY3VtZmxleGFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPY2lyY3VtZmxleGFj dXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfT2NpcmN1bWZsZXhiZWxvd2RvdCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgT2NpcmN1bWZsZXhiZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09jaXJjdW1mbGV4 Z3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9jaXJjdW1mbGV4Z3JhdmU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9PY2lyY3VtZmxleGhvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9jaXJjdW1m bGV4aG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09jaXJjdW1mbGV4dGlsZGUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IE9jaXJjdW1mbGV4dGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PZGlhZXJlc2lzIild CisrCQlwdWJsaWMgY29uc3QgdWludCBPZGlhZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT2RvdWJs ZWFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPZG91YmxlYWN1dGU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9PZmZpY2VIb21lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPZmZpY2VIb21lOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfT2dyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPZ3JhdmU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9PaG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2hvb2s7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9PaG9ybiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2hvcm47CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9PaG9ybmFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPaG9ybmFjdXRlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfT2hvcm5iZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2hvcm5i ZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09ob3JuZ3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IE9ob3JuZ3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PaG9ybmhvb2siKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IE9ob3JuaG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09ob3JudGlsZGUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IE9ob3JudGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PbWFjcm9uIildCisr CQlwdWJsaWMgY29uc3QgdWludCBPbWFjcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT29ibGlxdWUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IE9vYmxpcXVlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT3BlbiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgT3BlbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09wZW5VUkwiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IE9wZW5VUkw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PcHRpb24iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IE9wdGlvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09zbGFzaCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgT3NsYXNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT3RpbGRlIildCisrCQlw dWJsaWMgY29uc3QgdWludCBPdGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PdmVybGF5MV9FbmFibGUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE92ZXJsYXkxX0VuYWJsZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X092ZXJsYXkyX0VuYWJsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT3ZlcmxheTJfRW5hYmxl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfUCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1BhYm92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUGFib3ZlZG90OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfUGFnZV9Eb3duIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQYWdlX0Rvd247 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9QYWdlX1VwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQYWdlX1Vw OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfUGFzdGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBhc3RlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfUGF1c2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBhdXNlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfUGVzZXRhU2lnbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUGVzZXRhU2ln bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1Bob25lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQaG9uZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1BpY3R1cmVzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQaWN0dXJl czsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfQWNjZWxlcmF0ZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgUG9pbnRlcl9BY2NlbGVyYXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9CdXR0b24x IildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0J1dHRvbjE7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9Qb2ludGVyX0J1dHRvbjIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfQnV0dG9u MjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfQnV0dG9uMyIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgUG9pbnRlcl9CdXR0b24zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9CdXR0b240IildCisr CQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0J1dHRvbjQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2lu dGVyX0J1dHRvbjUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfQnV0dG9uNTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1BvaW50ZXJfQnV0dG9uX0RmbHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFBvaW50ZXJfQnV0dG9uX0RmbHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0RibENsaWNrMSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9EYmxDbGljazE7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9Qb2ludGVyX0RibENsaWNrMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9EYmxD bGljazI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0RibENsaWNrMyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgUG9pbnRlcl9EYmxDbGljazM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0RibENs aWNrNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9EYmxDbGljazQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9Qb2ludGVyX0RibENsaWNrNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRl cl9EYmxDbGljazU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0RibENsaWNrX0RmbHQiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfRGJsQ2xpY2tfRGZsdDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1BvaW50ZXJfRGZsdEJ0bk5leHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfRGZs dEJ0bk5leHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0RmbHRCdG5QcmV2IildCisrCQlwdWJs aWMgY29uc3QgdWludCBQb2ludGVyX0RmbHRCdG5QcmV2OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRl cl9Eb3duIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0Rvd247CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9Qb2ludGVyX0Rvd25MZWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0Rv d25MZWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9Eb3duUmlnaHQiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFBvaW50ZXJfRG93blJpZ2h0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9EcmFn MSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9EcmFnMTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1BvaW50ZXJfRHJhZzIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfRHJhZzI7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0RyYWczIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2lu dGVyX0RyYWczOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9EcmFnNCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgUG9pbnRlcl9EcmFnNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfRHJhZzUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfRHJhZzU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2lu dGVyX0RyYWdfRGZsdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9EcmFnX0RmbHQ7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0VuYWJsZUtleXMiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFBvaW50ZXJfRW5hYmxlS2V5czsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfTGVmdCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9MZWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRl cl9SaWdodCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9SaWdodDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1BvaW50ZXJfVXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfVXA7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9Qb2ludGVyX1VwTGVmdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9p bnRlcl9VcExlZnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX1VwUmlnaHQiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFBvaW50ZXJfVXBSaWdodDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Bvd2VyRG93biIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG93ZXJEb3duOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG93ZXJP ZmYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvd2VyT2ZmOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUHJl dl9WTW9kZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUHJldl9WTW9kZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1ByZXZfVmlydHVhbF9TY3JlZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFByZXZfVmly dHVhbF9TY3JlZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9QcmV2aW91c0NhbmRpZGF0ZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgUHJldmlvdXNDYW5kaWRhdGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9QcmludCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgUHJpbnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9QcmlvciIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgUHJpb3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9RIildCisrCQlwdWJs aWMgY29uc3QgdWludCBROworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgUjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1IxIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSMTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1IxMCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUjEwOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfUjExIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSMTE7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9S MTIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFIxMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1IxMyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgUjEzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUjE0IildCisrCQlwdWJs aWMgY29uc3QgdWludCBSMTQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SMTUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFIxNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1IyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBS MjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1IzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSMzsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1I0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBSNDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1I1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBSNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1I2IildCisr CQlwdWJsaWMgY29uc3QgdWludCBSNjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1I3IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBSNzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1I4IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBSODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1I5IildCisrCQlwdWJsaWMgY29uc3QgdWludCBSOTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1JhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUmFjdXRlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfUmNhcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSY2Fyb247CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9SY2VkaWxsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUmNlZGlsbGE7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9SZWQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFJlZDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1JlZG8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFJlZG87CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9SZWZyZXNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSZWZyZXNoOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfUmVsb2FkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSZWxvYWQ7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9SZXBlYXRLZXlzX0VuYWJsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUmVwZWF0S2V5c19F bmFibGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SZXBseSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUmVw bHk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9SZXR1cm4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFJldHVy bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1JpZ2h0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBSaWdodDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1JvY2tlckRvd24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFJvY2tl ckRvd247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Sb2NrZXJFbnRlciIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgUm9ja2VyRW50ZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Sb2NrZXJVcCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgUm9ja2VyVXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Sb21hamkiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFJvbWFqaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1JvdGF0ZVdpbmRvd3MiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFJvdGF0ZVdpbmRvd3M7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Sb3RhdGlvbktC IildCisrCQlwdWJsaWMgY29uc3QgdWludCBSb3RhdGlvbktCOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUm90 YXRpb25QQiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUm90YXRpb25QQjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1J1cGVlU2lnbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUnVwZWVTaWduOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfUyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUzsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1ND SFdBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTQ0hXQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NhYm92 ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2Fib3ZlZG90OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf U2FjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9T YXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTYXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2Nhcm9u IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTY2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TY2VkaWxs YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2NlZGlsbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TY2ly Y3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2NpcmN1bWZsZXg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9TY3JlZW5TYXZlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2NyZWVuU2F2ZXI7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9TY3JvbGxDbGljayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2Nyb2xs Q2xpY2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TY3JvbGxEb3duIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBTY3JvbGxEb3duOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2Nyb2xsVXAiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFNjcm9sbFVwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2Nyb2xsX0xvY2siKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFNjcm9sbF9Mb2NrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2VhcmNoIildCisrCQlw dWJsaWMgY29uc3QgdWludCBTZWFyY2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TZWxlY3QiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFNlbGVjdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NlbGVjdEJ1dHRvbiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgU2VsZWN0QnV0dG9uOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2VuZCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2VuZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NlcmJpYW5fREpF IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTZXJiaWFuX0RKRTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Nl cmJpYW5fRFpFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTZXJiaWFuX0RaRTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1NlcmJpYW5fSkUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNlcmJpYW5fSkU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9TZXJiaWFuX0xKRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2VyYmlh bl9MSkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TZXJiaWFuX05KRSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgU2VyYmlhbl9OSkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TZXJiaWFuX1RTSEUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFNlcmJpYW5fVFNIRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NlcmJpYW5fZGplIild CisrCQlwdWJsaWMgY29uc3QgdWludCBTZXJiaWFuX2RqZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NlcmJp YW5fZHplIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTZXJiaWFuX2R6ZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1NlcmJpYW5famUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNlcmJpYW5famU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9TZXJiaWFuX2xqZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2VyYmlhbl9s amU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9TZXJiaWFuX25qZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg U2VyYmlhbl9uamU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TZXJiaWFuX3RzaGUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFNlcmJpYW5fdHNoZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NoaWZ0X0wiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFNoaWZ0X0w7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaGlmdF9Mb2NrIildCisr CQlwdWJsaWMgY29uc3QgdWludCBTaGlmdF9Mb2NrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2hpZnRfUiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2hpZnRfUjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Nob3AiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFNob3A7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5nbGVDYW5kaWRh dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmdsZUNhbmRpZGF0ZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1NpbmhfYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9hOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfU2luaF9hYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9hYTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1NpbmhfYWEyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2FhMjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1NpbmhfYWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfYWU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9TaW5oX2FlMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9hZTI7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9TaW5oX2FlZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9hZWU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9TaW5oX2FlZTIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfYWVl MjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1NpbmhfYWkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhf YWk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2FpMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2lu aF9haTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2FsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBT aW5oX2FsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9hdSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg U2luaF9hdTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfYXUyIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBTaW5oX2F1MjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfYmEiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFNpbmhfYmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2JoYSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgU2luaF9iaGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2NhIildCisrCQlwdWJsaWMgY29u c3QgdWludCBTaW5oX2NhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9jaGEiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFNpbmhfY2hhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9kZGEiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFNpbmhfZGRhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9kZGhhIildCisrCQlw dWJsaWMgY29uc3QgdWludCBTaW5oX2RkaGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2RoYSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9kaGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2RoaGEi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfZGhoYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Npbmhf ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9lOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9l MiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9lMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Npbmhf ZWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfZWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5o X2VlMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9lZTI7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9T aW5oX2ZhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2ZhOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf U2luaF9nYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9nYTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1NpbmhfZ2hhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2doYTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1NpbmhfaDIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfaDI7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9TaW5oX2hhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2hhOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfU2luaF9pIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2k7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9TaW5oX2kyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2kyOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfU2luaF9paSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9paTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1NpbmhfaWkyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2lpMjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1NpbmhfamEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfamE7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9TaW5oX2poYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9qaGE7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9TaW5oX2pueWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfam55 YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1Npbmhfa2EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhf a2E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2toYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2lu aF9raGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2t1bmRkYWxpeWEiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFNpbmhfa3VuZGRhbGl5YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfbGEiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFNpbmhfbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2xsYSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgU2luaF9sbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2x1IildCisr CQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2x1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9sdTIiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfbHUyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9sdXUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfbHV1OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9s dXUyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2x1dTI7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9T aW5oX21hIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX21hOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf U2luaF9tYmEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfbWJhOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfU2luaF9uYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9uYTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1NpbmhfbmRkYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9uZGRhOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfU2luaF9uZGhhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX25kaGE7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9TaW5oX25nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX25nOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfU2luaF9uZzIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfbmcy OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9uZ2EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhf bmdhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9uamEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNp bmhfbmphOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9ubmEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFNpbmhfbm5hOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9ueWEiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFNpbmhfbnlhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9vIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBTaW5oX287CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX28yIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBTaW5oX28yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9vbyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgU2luaF9vbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Npbmhfb28yIildCisrCQlwdWJsaWMgY29u c3QgdWludCBTaW5oX29vMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfcGEiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFNpbmhfcGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX3BoYSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgU2luaF9waGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX3JhIildCisrCQlwdWJs aWMgY29uc3QgdWludCBTaW5oX3JhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9yaSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgU2luaF9yaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfcmlpIildCisrCQlw dWJsaWMgY29uc3QgdWludCBTaW5oX3JpaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfcnUyIildCisr CQlwdWJsaWMgY29uc3QgdWludCBTaW5oX3J1MjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfcnV1MiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9ydXUyOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9z YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9zYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Npbmhf c2hhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX3NoYTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Np bmhfc3NoYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9zc2hhOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfU2luaF90aGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfdGhhOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfU2luaF90aGhhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX3RoaGE7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9TaW5oX3R0YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF90dGE7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9TaW5oX3R0aGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfdHRo YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1NpbmhfdSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF91 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfU2luaF91MiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF91 MjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1NpbmhfdXUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhf dXU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX3V1MiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2lu aF91dTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX3ZhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBT aW5oX3ZhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF95YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg U2luaF95YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NsZWVwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBT bGVlcDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1Nsb3dLZXlzX0VuYWJsZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgU2xvd0tleXNfRW5hYmxlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3BlbGwiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFNwZWxsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3BsaXRTY3JlZW4iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFNwbGl0U2NyZWVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3RhbmRieSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgU3RhbmRieTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N0YXJ0IildCisr CQlwdWJsaWMgY29uc3QgdWludCBTdGFydDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N0aWNreUtleXNfRW5h YmxlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTdGlja3lLZXlzX0VuYWJsZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1N0b3AiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN0b3A7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9TdWJ0aXRsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU3VidGl0bGU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9TdXBlcl9MIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTdXBlcl9MOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfU3VwZXJfUiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU3VwZXJfUjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1N1cHBvcnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN1cHBvcnQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9TdXNwZW5kIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTdXNwZW5kOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfU3dpdGNoX1ZUXzEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN3aXRjaF9WVF8x OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfU3dpdGNoX1ZUXzEwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBT d2l0Y2hfVlRfMTA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Td2l0Y2hfVlRfMTEiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFN3aXRjaF9WVF8xMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N3aXRjaF9WVF8xMiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgU3dpdGNoX1ZUXzEyOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3dpdGNo X1ZUXzIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN3aXRjaF9WVF8yOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfU3dpdGNoX1ZUXzMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN3aXRjaF9WVF8zOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfU3dpdGNoX1ZUXzQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN3aXRjaF9W VF80OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfU3dpdGNoX1ZUXzUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFN3aXRjaF9WVF81OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3dpdGNoX1ZUXzYiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFN3aXRjaF9WVF82OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3dpdGNoX1ZUXzciKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFN3aXRjaF9WVF83OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3dpdGNoX1ZU XzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN3aXRjaF9WVF84OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf U3dpdGNoX1ZUXzkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN3aXRjaF9WVF85OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfU3lzX1JlcSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU3lzX1JlcTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFQ7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9U SE9STiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVEhPUk47CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UYWIi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRhYjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RhYm92ZWRvdCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGFib3ZlZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGFza1Bh bmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRhc2tQYW5lOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGNh cm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUY2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UY2Vk aWxsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGNlZGlsbGE7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9U ZXJtaW5hbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGVybWluYWw7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9UZXJtaW5hdGVfU2VydmVyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUZXJtaW5hdGVfU2Vy dmVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9iYWh0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBU aGFpX2JhaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2JvYmFpbWFpIildCisrCQlwdWJsaWMgY29u c3QgdWludCBUaGFpX2JvYmFpbWFpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9jaG9jaGFuIildCisr CQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2Nob2NoYW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2No b2NoYW5nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2Nob2NoYW5nOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfVGhhaV9jaG9jaGluZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9jaG9jaGlu ZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1RoYWlfY2hvY2hvZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg VGhhaV9jaG9jaG9lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9kb2NoYWRhIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBUaGFpX2RvY2hhZGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2RvZGVrIildCisr CQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2RvZGVrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9mb2Zh IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2ZvZmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFp X2ZvZmFuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2ZvZmFuOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfVGhhaV9ob2hpcCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9ob2hpcDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1RoYWlfaG9ub2todWsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfaG9u b2todWs7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2tob2toYWkiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFRoYWlfa2hva2hhaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfa2hva2hvbiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgVGhhaV9raG9raG9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9raG9raHVh dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9raG9raHVhdDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1RoYWlfa2hva2h3YWkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfa2hva2h3YWk7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9UaGFpX2tob3Jha2hhbmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRo YWlfa2hvcmFraGFuZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfa29rYWkiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFRoYWlfa29rYWk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2xha2toYW5neWFvIild CisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2xha2toYW5neWFvOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf VGhhaV9sZWtjaGV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2xla2NoZXQ7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9UaGFpX2xla2hhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2xla2hh OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9sZWtob2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRo YWlfbGVraG9rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9sZWtrYW8iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFRoYWlfbGVra2FvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9sZWtudW5nIildCisrCQlw dWJsaWMgY29uc3QgdWludCBUaGFpX2xla251bmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2xla3Bh ZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbGVrcGFldDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1RoYWlfbGVrc2FtIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2xla3NhbTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1RoYWlfbGVrc2kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbGVrc2k7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2xla3NvbmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRo YWlfbGVrc29uZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbGVrc3VuIildCisrCQlwdWJsaWMgY29u c3QgdWludCBUaGFpX2xla3N1bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbG9jaHVsYSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgVGhhaV9sb2NodWxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9sb2xp bmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbG9saW5nOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf VGhhaV9sdSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9sdTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1RoYWlfbWFpY2hhdHRhd2EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbWFpY2hhdHRh d2E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX21haWVrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBU aGFpX21haWVrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9tYWloYW5ha2F0IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBUaGFpX21haWhhbmFrYXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX21haWhhbmFr YXRfbWFpdGhvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX21haWhhbmFrYXRfbWFpdGhv OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9tYWl0YWlraHUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFRoYWlfbWFpdGFpa2h1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9tYWl0aG8iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFRoYWlfbWFpdGhvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9tYWl0cmkiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbWFpdHJpOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9t YWl5YW1vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9tYWl5YW1vazsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1RoYWlfbW9tYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9tb21hOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfVGhhaV9uZ29uZ3UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbmdv bmd1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9uaWtoYWhpdCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgVGhhaV9uaWtoYWhpdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbm9uZW4iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFRoYWlfbm9uZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX25vbnUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbm9udTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfb2FuZyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9vYW5nOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9w YWl5YW5ub2kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfcGFpeWFubm9pOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfVGhhaV9waGludGh1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3BoaW50 aHU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3Bob3BoYW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFRoYWlfcGhvcGhhbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfcGhvcGh1bmciKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFRoYWlfcGhvcGh1bmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3Bob3NhbXBo YW8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfcGhvc2FtcGhhbzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1RoYWlfcG9wbGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfcG9wbGE7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9UaGFpX3JvcnVhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3JvcnVh OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9ydSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9y dTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1RoYWlfc2FyYWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRo YWlfc2FyYWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3NhcmFhYSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgVGhhaV9zYXJhYWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3NhcmFhZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgVGhhaV9zYXJhYWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3NhcmFhaW1h aW1hbGFpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3NhcmFhaW1haW1hbGFpOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfVGhhaV9zYXJhYWltYWltdWFuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBU aGFpX3NhcmFhaW1haW11YW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3NhcmFhbSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgVGhhaV9zYXJhYW07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3NhcmFlIild CisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3NhcmFlOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9z YXJhaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9zYXJhaTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1RoYWlfc2FyYWlpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3NhcmFpaTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1RoYWlfc2FyYW8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfc2FyYW87 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3NhcmF1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFp X3NhcmF1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9zYXJhdWUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFRoYWlfc2FyYXVlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9zYXJhdWVlIildCisrCQlwdWJs aWMgY29uc3QgdWludCBUaGFpX3NhcmF1ZWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3NhcmF1dSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9zYXJhdXU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFp X3NvcnVzaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9zb3J1c2k7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9UaGFpX3Nvc2FsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9zb3NhbGE7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9UaGFpX3Nvc28iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfc29z bzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1RoYWlfc29zdWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRo YWlfc29zdWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3RoYW50aGFraGF0IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBUaGFpX3RoYW50aGFraGF0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV90aG9uYW5n bW9udGhvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3Rob25hbmdtb250aG87CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9UaGFpX3Rob3BodXRoYW8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlf dGhvcGh1dGhhbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfdGhvdGhhaGFuIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBUaGFpX3Rob3RoYWhhbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfdGhvdGhhbiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV90aG90aGFuOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhh aV90aG90aG9uZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV90aG90aG9uZzsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1RoYWlfdGhvdGh1bmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfdGhv dGh1bmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3RvcGF0YWsiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFRoYWlfdG9wYXRhazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfdG90YW8iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFRoYWlfdG90YW87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3dvd2FlbiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV93b3dhZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3lv eWFrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3lveWFrOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf VGhhaV95b3lpbmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfeW95aW5nOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfVGhvcm4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRob3JuOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfVGltZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGltZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1RvRG9MaXN0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUb0RvTGlzdDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1Rvb2xzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUb29sczsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1RvcE1lbnUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRvcE1lbnU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9Ub3VjaHBhZE9mZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVG91Y2hwYWRPZmY7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9Ub3VjaHBhZE9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUb3VjaHBhZE9u OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfVG91Y2hwYWRUb2dnbGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFRvdWNocGFkVG9nZ2xlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVG91cm9rdSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgVG91cm9rdTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RyYXZlbCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgVHJhdmVsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVHNsYXNoIildCisrCQlwdWJsaWMgY29u c3QgdWludCBUc2xhc2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBVOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfVVdCIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVV0I7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9VYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVhY3V0ZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1ViZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWJlbG93ZG90 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfVWJyZXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVYnJldmU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9VY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWNp cmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VZGlhZXJlc2lzIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBVZGlhZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWRvdWJsZWFjdXRlIildCisrCQlwdWJs aWMgY29uc3QgdWludCBVZG91YmxlYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VZ3JhdmUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFVncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Vob29rIildCisrCQlw dWJsaWMgY29uc3QgdWludCBVaG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Vob3JuIildCisrCQlwdWJs aWMgY29uc3QgdWludCBVaG9ybjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Vob3JuYWN1dGUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFVob3JuYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VaG9ybmJlbG93ZG90 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBVaG9ybmJlbG93ZG90OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf VWhvcm5ncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWhvcm5ncmF2ZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1Vob3JuaG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWhvcm5ob29rOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfVWhvcm50aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWhvcm50aWxk ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1VrcmFpbmlhbl9HSEVfV0lUSF9VUFRVUk4iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFVrcmFpbmlhbl9HSEVfV0lUSF9VUFRVUk47CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9V a3JhaW5pYW5fSSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWtyYWluaWFuX0k7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9Va3JhaW5pYW5fSUUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVrcmFpbmlhbl9J RTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1VrcmFpbmlhbl9ZSSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg VWtyYWluaWFuX1lJOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWtyYWluaWFuX2doZV93aXRoX3VwdHVybiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWtyYWluaWFuX2doZV93aXRoX3VwdHVybjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1VrcmFpbmlhbl9pIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVa3JhaW5pYW5f aTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1VrcmFpbmlhbl9pZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg VWtyYWluaWFuX2llOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWtyYWluaWFuX3lpIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBVa3JhaW5pYW5feWk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Va3Jhbmlhbl9JIildCisr CQlwdWJsaWMgY29uc3QgdWludCBVa3Jhbmlhbl9JOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWtyYW5pYW5f SkUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVrcmFuaWFuX0pFOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf VWtyYW5pYW5fWUkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVrcmFuaWFuX1lJOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfVWtyYW5pYW5faSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWtyYW5pYW5faTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1VrcmFuaWFuX2plIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVa3Jh bmlhbl9qZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VrcmFuaWFuX3lpIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBVa3Jhbmlhbl95aTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VtYWNyb24iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFVtYWNyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VbmRvIildCisrCQlwdWJsaWMgY29u c3QgdWludCBVbmRvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVW5ncmFiIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBVbmdyYWI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Vb2dvbmVrIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBVb2dvbmVrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFVwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfVXJpbmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVyaW5n OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfVXNlcjFLQiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVXNlcjFL QjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1VzZXIyS0IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVzZXIy S0I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Vc2VyUEIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVzZXJQ QjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1V0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVXRpbGRl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfViIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1ZlbmRvckhvbWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFZlbmRvckhvbWU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9WaWRlbyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVmlkZW87CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9WaWV3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBWaWV3OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfVm9pZFN5bWJvbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVm9pZFN5bWJvbDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1ciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFc7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9XTEFOIildCisrCQlwdWJsaWMgY29uc3QgdWludCBXTEFOOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfV1dX IildCisrCQlwdWJsaWMgY29uc3QgdWludCBXV1c7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9XYWN1dGUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFdhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1dha2VVcCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgV2FrZVVwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfV2NpcmN1bWZsZXgi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFdjaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfV2Rp YWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgV2RpYWVyZXNpczsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1dlYkNhbSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgV2ViQ2FtOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfV2dyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBXZ3JhdmU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9XaGVlbEJ1dHRvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgV2hlZWxCdXR0b247CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9XaW5kb3dDbGVhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgV2luZG93Q2xl YXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Xb25TaWduIildCisrCQlwdWJsaWMgY29uc3QgdWludCBXb25T aWduOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfV29yZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgV29yZDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9YYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFhhYm92ZWRvdDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1hmZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFhmZXI7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9ZIildCisrCQlwdWJsaWMgY29uc3QgdWludCBZOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWWFjdXRl IildCisrCQlwdWJsaWMgY29uc3QgdWludCBZYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ZYmVsb3dk b3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFliZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1lj aXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBZY2lyY3VtZmxleDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1lkaWFlcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFlkaWFlcmVzaXM7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9ZZWxsb3ciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFllbGxvdzsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1lncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgWWdyYXZlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfWWhvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFlob29rOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfWXRpbGRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBZdGlsZGU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9aIildCisrCQlwdWJsaWMgY29uc3QgdWludCBaOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWmFi b3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBaYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9aYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFphY3V0ZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1pjYXJvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgWmNhcm9uOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf WmVuX0tvaG8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFplbl9Lb2hvOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfWmVua2FrdSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgWmVua2FrdTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1plbmtha3VfSGFua2FrdSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgWmVua2FrdV9IYW5r YWt1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfWm9vbUluIildCisrCQlwdWJsaWMgY29uc3QgdWludCBab29t SW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9ab29tT3V0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBab29t T3V0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfWnN0cm9rZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgWnN0 cm9rZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGE7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9hYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFhY3V0ZTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2FiZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYWJlbG93ZG90Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFib3ZlZG90 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYWJyZXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBhYnJldmU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9hYnJldmVhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYWJy ZXZlYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hYnJldmViZWxvd2RvdCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYWJyZXZlYmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hYnJldmVncmF2ZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYWJyZXZlZ3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hYnJldmVo b29rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBhYnJldmVob29rOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YWJyZXZldGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFicmV2ZXRpbGRlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYWNpcmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFjaXJjdW1mbGV4 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYWNpcmN1bWZsZXhhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYWNpcmN1bWZsZXhhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FjaXJjdW1mbGV4YmVsb3dkb3Qi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFjaXJjdW1mbGV4YmVsb3dkb3Q7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9hY2lyY3VtZmxleGdyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBhY2lyY3VtZmxl eGdyYXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYWNpcmN1bWZsZXhob29rIildCisrCQlwdWJsaWMgY29u c3QgdWludCBhY2lyY3VtZmxleGhvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hY2lyY3VtZmxleHRpbGRl IildCisrCQlwdWJsaWMgY29uc3QgdWludCBhY2lyY3VtZmxleHRpbGRlOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFjdXRlOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YWRpYWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYWRpYWVyZXNpczsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2FlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBhZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Fn cmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYWdyYXZlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYWhv b2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFob29rOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYW1hY3Jv biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYW1hY3JvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FtcGVy c2FuZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYW1wZXJzYW5kOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YW9nb25layIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYW9nb25lazsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2Fwb3N0cm9waGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFwb3N0cm9waGU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9hcHByb3hlcSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYXBwcm94ZXE7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9hcHByb3hpbWF0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYXBwcm94aW1h dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9hcmluZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYXJpbmc7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9hc2NpaWNpcmN1bSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYXNj aWljaXJjdW07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hc2NpaXRpbGRlIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBhc2NpaXRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYXN0ZXJpc2siKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGFzdGVyaXNrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYXQiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGF0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYXRpbGRlIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBhdGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9iIildCisrCQlwdWJsaWMgY29uc3QgdWludCBiOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYmFib3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBiYWJvdmVk b3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9iYWNrc2xhc2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJh Y2tzbGFzaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JhbGxvdGNyb3NzIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBiYWxsb3Rjcm9zczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JhciIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYmFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYmVjYXVzZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYmVjYXVzZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JsYW5rIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBibGFuazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JvdGludGVncmFsIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBib3RpbnRlZ3JhbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JvdGxlZnRwYXJlbnMiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJvdGxlZnRwYXJlbnM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ib3RsZWZ0c3Fi cmFja2V0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBib3RsZWZ0c3FicmFja2V0OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYm90bGVmdHN1bW1hdGlvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYm90bGVm dHN1bW1hdGlvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JvdHJpZ2h0cGFyZW5zIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBib3RyaWdodHBhcmVuczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JvdHJpZ2h0c3FicmFj a2V0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBib3RyaWdodHNxYnJhY2tldDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JvdHJpZ2h0c3VtbWF0aW9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBib3RyaWdo dHN1bW1hdGlvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JvdHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJvdHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ib3R2ZXJ0c3VtbWF0aW9uY29ubmVjdG9yIildCisrCQlw dWJsaWMgY29uc3QgdWludCBib3R2ZXJ0c3VtbWF0aW9uY29ubmVjdG9yOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhY2VsZWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFjZWxlZnQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFjZXJpZ2h0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFjZXJpZ2h0Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhY2tldGxlZnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWNr ZXRsZWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhY2tldHJpZ2h0IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBicmFja2V0cmlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2JsYW5rIildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2JsYW5rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9k b3RfMSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RfMTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90XzEwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdF8x MDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90XzIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90XzI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdF8zIildCisrCQlwdWJs aWMgY29uc3QgdWludCBicmFpbGxlX2RvdF8zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rf NCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RfNDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2JyYWlsbGVfZG90XzUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90XzU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdF82IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdF82OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RfNyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RfNzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90XzgiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90Xzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdF85IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdF85OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18xOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyIildCisrCQlwdWJsaWMgY29u c3QgdWludCBicmFpbGxlX2RvdHNfMTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIz IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzEyMzQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18xMjM0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzQ1IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNDU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfMTIzNDU2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNDU2Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzQ1NjciKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyYWlsbGVfZG90c18xMjM0NTY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEy MzQ1Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNDU2Nzg7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNDU2OCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzEyMzQ1Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIz NDU3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNDU3OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzQ1NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c18xMjM0NTc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzQ1OCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzQ1ODsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c18xMjM0NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzEyMzQ2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzQ2NyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzQ2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18xMjM0Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIz NDY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM0NjgiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM0Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfMTIzNDciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM0NzsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM0NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90c18xMjM0Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNDgi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM0ODsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c18xMjM1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfMTIzNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM1NiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzU2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9k b3RzXzEyMzU2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzU2NzsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM1Njc4IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBicmFpbGxlX2RvdHNfMTIzNTY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18x MjM1NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM1Njg7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNTciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c18xMjM1NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM1NzgiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM1Nzg7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9icmFpbGxlX2RvdHNfMTIzNTgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18xMjM1ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM2IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c18xMjM2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzY3OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzEyMzY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM2OCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzY4OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzEyMzciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18xMjM3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzc4IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfMTIzOCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzg7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfMTI0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNDUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjQ1OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzEyNDU2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI0NTY7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI0NTY3IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBicmFpbGxlX2RvdHNfMTI0NTY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEy NDU2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjQ1Njc4OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNDU2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzEyNDU2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjQ1NyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNDU3OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzEyNDU3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzEyNDU3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjQ1OCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNDU4OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzEyNDYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjQ2Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNDY3IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfMTI0Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI0Njc4 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI0Njc4OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzEyNDY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxl X2RvdHNfMTI0Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI0NyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNDc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxl X2RvdHNfMTI0NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjQ3ODsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjQ4IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfMTI0ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfMTI1NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEy NTY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI1NjciKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c18xMjU2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18x MjU2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjU2Nzg7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI1NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c18xMjU2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjU3IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI1NzsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90c18xMjU3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEy NTc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNTgiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c18xMjU4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEy NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c18xMjY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfMTI2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjY3OCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNjc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9k b3RzXzEyNjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjY4OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJh aWxsZV9kb3RzXzEyNzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjc4IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18xMjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjg7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c18xMzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzQiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxl X2RvdHNfMTM0NSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNDU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM0NTYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90c18xMzQ1NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzQ1Njci KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzQ1Njc7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMTM0NTY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RzXzEzNDU2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM0NTY4IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM0NTY4OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzEzNDU3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNf MTM0NTc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM0NTc4IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM0NTc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9k b3RzXzEzNDU4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM0NTg7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM0NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzEzNDY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM0NjciKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzQ2NzsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2JyYWlsbGVfZG90c18xMzQ2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18xMzQ2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM0NjgiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzQ2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90c18xMzQ3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM0NzsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzQ3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzEzNDc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNDgiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzQ4OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzEzNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEz NTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzU2IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBicmFpbGxlX2RvdHNfMTM1NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzU2 NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNTY3OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzEzNTY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RzXzEzNTY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzU2OCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNTY4OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzEzNTciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzU3 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNTc4IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBicmFpbGxlX2RvdHNfMTM1Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM1 OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNTg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMTM2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfMTM2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNjciKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c18xMzY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzEzNjc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM2Nzg7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJh aWxsZV9kb3RzXzEzNjg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM3IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM3OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzEzNzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzc4Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzOCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzEzODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE0OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzE0NSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE0NTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNDU2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMTQ1NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNDU2NyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE0NTY3OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzE0NTY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rz XzE0NTY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNDU2OCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE0NTY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9k b3RzXzE0NTciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNDU3OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE0NTc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMTQ1Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTQ1OCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE0NTg7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfMTQ2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTQ2 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE0NjciKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyYWlsbGVfZG90c18xNDY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE0Njc4 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTQ2Nzg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMTQ2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzE0Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTQ3IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMTQ3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzE0NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNDc4OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE0OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RzXzE0ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzE1NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE1NjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c18xNTY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxl X2RvdHNfMTU2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNTY3OCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE1Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzE1NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNTY4Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE1NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzE1NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNTc4IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTU3ODsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90c18xNTgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNTg7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90c18xNjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNjciKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNjc7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMTY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE2Nzg7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTY4IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfMTY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE3IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTc7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMTc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTc4Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMTg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfMjMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c18yMzQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18yMzQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM0NSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNDU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfMjM0NTYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzQ1NjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzQ1NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90c18yMzQ1Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM0NTY3 OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNDU2Nzg7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfMjM0NTY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfMjM0NTY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNDU3IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM0NTc7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfMjM0NTc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNf MjM0NTc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNDU4IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM0NTg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfMjM0NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNDY7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM0NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c18yMzQ2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzQ2NzgiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzQ2Nzg7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9icmFpbGxlX2RvdHNfMjM0NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18yMzQ2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzQ3IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM0NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c18yMzQ3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNDc4OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNDgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c18yMzQ4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18yMzU2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM1NjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzU2NyIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzIzNTY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNTY3 OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNTY3ODsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c18yMzU2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RzXzIzNTY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNTciKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzU3OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzIzNTc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM1Nzg7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM1OCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzIzNTg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM2Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM2OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzIzNjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18y MzY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNjc4IildCisrCQlwdWJsaWMgY29u c3QgdWludCBicmFpbGxlX2RvdHNfMjM2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf MjM2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNjg7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfMjM3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxl X2RvdHNfMjM3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNzgiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9k b3RzXzIzOCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzODsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JyYWlsbGVfZG90c18yNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RzXzI0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI0NSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI0NTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c18yNDU2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjQ1NjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JyYWlsbGVfZG90c18yNDU2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJh aWxsZV9kb3RzXzI0NTY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI0NTY3OCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI0NTY3ODsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2JyYWlsbGVfZG90c18yNDU2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rz XzI0NTY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI0NTciKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c18yNDU3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzI0NTc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjQ1Nzg7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjQ1OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJh aWxsZV9kb3RzXzI0NTg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjQ2IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjQ2OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzI0NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNDY3Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI0Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfMjQ2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjQ2OCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI0Njg7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9icmFpbGxlX2RvdHNfMjQ3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNf MjQ3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI0NzgiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c18yNDc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI0 OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI0ODsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c18yNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rz XzI1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI1NiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzI1NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNTY3 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjU2NzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c18yNTY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzI1Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI1NjgiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNTY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9k b3RzXzI1NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI1NzsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JyYWlsbGVfZG90c18yNTc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfMjU3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNTgiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNTg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxl X2RvdHNfMjYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JyYWlsbGVfZG90c18yNjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18yNjc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjY3OCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxl X2RvdHNfMjY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjY4OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfMjc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjc4IildCisrCQlwdWJs aWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9k b3RzXzI4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjg7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfMyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzQiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c18zNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNDUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNDU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9icmFpbGxlX2RvdHNfMzQ1NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rz XzM0NTY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzQ1NjciKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c18zNDU2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c18zNDU2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNDU2Nzg7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzQ1NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90c18zNDU2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNDU3Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzQ1NzsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2JyYWlsbGVfZG90c18zNDU3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rz XzM0NTc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM0NTgiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c18zNDU4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzM0NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM0NjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c18zNDY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxl X2RvdHNfMzQ2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNDY3OCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM0Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzM0NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNDY4Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM0NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzM0NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNDc4IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzQ3ODsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90c18zNDgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNDg7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90c18zNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNTYiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNTY7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMzU2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM1Njc7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzU2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyYWlsbGVfZG90c18zNTY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNTY4 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzU2ODsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c18zNTciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18zNTc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzU3OCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM1Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf MzU4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzU4OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzM2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfMzY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzY3IildCisrCQlwdWJsaWMgY29u c3QgdWludCBicmFpbGxlX2RvdHNfMzY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM2 NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNjc4OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzM2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzM2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM3 OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM3ODsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c18zOCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rz XzM4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyYWlsbGVfZG90c180OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzQ1IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNDU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfNDU2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNDU2Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzQ1NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90c180NTY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzQ1Njc4Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNDU2Nzg7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9icmFpbGxlX2RvdHNfNDU2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rz XzQ1Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNDU3IildCisrCQlwdWJsaWMgY29u c3QgdWludCBicmFpbGxlX2RvdHNfNDU3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzQ1 NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c180NTc4OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzQ1OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzQ1ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c180NiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzQ2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzQ2 NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzQ2NzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c180Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfNDY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c180NjgiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c180Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf NDciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c180NzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c180NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c180Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNDgiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c180ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c181Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90c181NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzU2Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzU2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzU2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c181Njc4IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNTY3ODsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90c181NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c181Njg7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNTciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90c181NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c181NzgiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c181Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfNTgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c181ODsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c182IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfNjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c182NyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzY3ODsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c182OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzciKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c183OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzc4Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNzg7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfOCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzg7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmV2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJldmU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icm9rZW5iYXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyb2tlbmJhcjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGM7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9jX2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNfaDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Nh Ym92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY2Fib3ZlZG90OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfY2FjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBjYWN1dGU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9jYXJlb2YiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNhcmVvZjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2NhcmV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBjYXJldDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Nh cm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBjYXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2NjYXJv biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY2Nhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY2NlZGls bGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNjZWRpbGxhOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY2Np cmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNjaXJjdW1mbGV4OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfY2VkaWxsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY2VkaWxsYTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2NlbnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNlbnQ7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9jaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jaGVja2Vy Ym9hcmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNoZWNrZXJib2FyZDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2NoZWNrbWFyayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY2hlY2ttYXJrOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfY2lyY2xlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBjaXJjbGU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9jbHViIildCisrCQlwdWJsaWMgY29uc3QgdWludCBjbHViOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfY29sb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNvbG9uOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf Y29tbWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNvbW1hOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY29u dGFpbnNhcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY29udGFpbnNhczsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2NvcHlyaWdodCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY29weXJpZ2h0OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfY3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNyOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf Y3Jvc3NpbmdsaW5lcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY3Jvc3NpbmdsaW5lczsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2N1YmVyb290IildCisrCQlwdWJsaWMgY29uc3QgdWludCBjdWJlcm9vdDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2N1cnJlbmN5IildCisrCQlwdWJsaWMgY29uc3QgdWludCBjdXJyZW5j eTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2N1cnNvciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY3Vyc29y OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2RhYm92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGFib3ZlZG90OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfZGFnZ2VyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkYWdnZXI7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9kY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRjYXJvbjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2RlYWRfQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9BOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfZGVhZF9FIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX0U7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9kZWFkX0kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfSTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2RlYWRfTyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9POworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfZGVhZF9VIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX1U7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9kZWFkX2EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfYTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2RlYWRfYWJvdmVjb21tYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9hYm92ZWNv bW1hOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9hYm92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgZGVhZF9hYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfYWJvdmVyZXZlcnNlZGNvbW1h IildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2Fib3ZlcmV2ZXJzZWRjb21tYTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2RlYWRfYWJvdmVyaW5nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2Fi b3ZlcmluZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfYWJvdmV2ZXJ0aWNhbGxpbmUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGRlYWRfYWJvdmV2ZXJ0aWNhbGxpbmU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9k ZWFkX2FjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2FjdXRlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfZGVhZF9iZWxvd2JyZXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2JlbG93 YnJldmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2JlbG93Y2lyY3VtZmxleCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgZGVhZF9iZWxvd2NpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2Jl bG93Y29tbWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfYmVsb3djb21tYTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2RlYWRfYmVsb3dkaWFlcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRl YWRfYmVsb3dkaWFlcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2JlbG93ZG90IildCisrCQlw dWJsaWMgY29uc3QgdWludCBkZWFkX2JlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9iZWxv d21hY3JvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9iZWxvd21hY3JvbjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2RlYWRfYmVsb3dyaW5nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2Jl bG93cmluZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfYmVsb3d0aWxkZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgZGVhZF9iZWxvd3RpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9iZWxvd3ZlcnRp Y2FsbGluZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9iZWxvd3ZlcnRpY2FsbGluZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2RlYWRfYnJldmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRf YnJldmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2NhcGl0YWxfc2Nod2EiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGRlYWRfY2FwaXRhbF9zY2h3YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfY2Fyb24i KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfY2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFk X2NlZGlsbGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfY2VkaWxsYTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2RlYWRfY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9jaXJj dW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9jdXJyZW5jeSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgZGVhZF9jdXJyZW5jeTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfZGFzaWEiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGRlYWRfZGFzaWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2RpYWVyZXNp cyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9kaWFlcmVzaXM7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9kZWFkX2RvdWJsZWFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2RvdWJsZWFj dXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9kb3VibGVncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgZGVhZF9kb3VibGVncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgZGVhZF9lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9ncmF2ZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgZGVhZF9ncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfZ3JlZWsi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfZ3JlZWs7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFk X2hvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfaG9vazsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2RlYWRfaG9ybiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9ob3JuOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfZGVhZF9pIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2k7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9kZWFkX2ludmVydGVkYnJldmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfaW52 ZXJ0ZWRicmV2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfaW90YSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgZGVhZF9pb3RhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9sb25nc29saWR1c292ZXJsYXki KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfbG9uZ3NvbGlkdXNvdmVybGF5OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfZGVhZF9sb3dsaW5lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2xvd2xp bmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX21hY3JvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg ZGVhZF9tYWNyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX28iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGRlYWRfbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfb2dvbmVrIildCisrCQlwdWJsaWMgY29u c3QgdWludCBkZWFkX29nb25lazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfcGVyaXNwb21lbmkiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfcGVyaXNwb21lbmk7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9k ZWFkX3BzaWxpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX3BzaWxpOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfZGVhZF9zZW1pdm9pY2VkX3NvdW5kIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFk X3NlbWl2b2ljZWRfc291bmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX3NtYWxsX3NjaHdhIildCisr CQlwdWJsaWMgY29uc3QgdWludCBkZWFkX3NtYWxsX3NjaHdhOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVh ZF9zdHJva2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfc3Ryb2tlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfZGVhZF90aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF90aWxkZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2RlYWRfdSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF91OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfZGVhZF92b2ljZWRfc291bmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRl YWRfdm9pY2VkX3NvdW5kOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVjaW1hbHBvaW50IildCisrCQlwdWJs aWMgY29uc3QgdWludCBkZWNpbWFscG9pbnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWdyZWUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGRlZ3JlZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RpYWVyZXNpcyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgZGlhZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGlhbW9uZCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGlhbW9uZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RpZ2l0c3Bh Y2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRpZ2l0c3BhY2U7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9k aW50ZWdyYWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRpbnRlZ3JhbDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2RpdmlzaW9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkaXZpc2lvbjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2RvbGxhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZG9sbGFyOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfZG91YmJhc2VsaW5lZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBkb3ViYmFzZWxp bmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kb3VibGVhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgZG91YmxlYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kb3VibGVkYWdnZXIiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGRvdWJsZWRhZ2dlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RvdWJsZWxvd3F1b3Rl bWFyayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZG91YmxlbG93cXVvdGVtYXJrOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfZG93bmFycm93IildCisrCQlwdWJsaWMgY29uc3QgdWludCBkb3duYXJyb3c7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9kb3duY2FyZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRvd25jYXJl dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2Rvd25zaG9lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkb3du c2hvZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2Rvd25zdGlsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg ZG93bnN0aWxlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZG93bnRhY2siKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGRvd250YWNrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZHN0cm9rZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgZHN0cm9rZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9lYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVh Ym92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg ZWFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZWJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBlYmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGVjYXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VjaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29u c3QgdWludCBlY2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VjaXJjdW1mbGV4YWN1dGUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGVjaXJjdW1mbGV4YWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9l Y2lyY3VtZmxleGJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBlY2lyY3VtZmxleGJl bG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZWNpcmN1bWZsZXhncmF2ZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgZWNpcmN1bWZsZXhncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VjaXJjdW1mbGV4aG9v ayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZWNpcmN1bWZsZXhob29rOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfZWNpcmN1bWZsZXh0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZWNpcmN1bWZsZXh0 aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2VkaWFlcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGVkaWFlcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lZ3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGVncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Vob29rIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBlaG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VpZ2h0c3Vic2NyaXB0IildCisrCQlwdWJsaWMgY29u c3QgdWludCBlaWdodHN1YnNjcmlwdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VpZ2h0c3VwZXJpb3IiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGVpZ2h0c3VwZXJpb3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lbGVt ZW50b2YiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVsZW1lbnRvZjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2VsbGlwc2lzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlbGxpcHNpczsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2VtM3NwYWNlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlbTNzcGFjZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2VtNHNwYWNlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlbTRzcGFjZTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2VtYWNyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVtYWNyb247CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9lbWRhc2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVtZGFzaDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2VtZmlsbGVkY2lyY2xlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlbWZpbGxl ZGNpcmNsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VtZmlsbGVkcmVjdCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgZW1maWxsZWRyZWN0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW1vcGVuY2lyY2xlIildCisrCQlw dWJsaWMgY29uc3QgdWludCBlbW9wZW5jaXJjbGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lbW9wZW5yZWN0 YW5nbGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVtb3BlbnJlY3RhbmdsZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2VtcHR5c2V0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBlbXB0eXNldDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2Vtc3BhY2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVtc3BhY2U7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9lbmRhc2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVuZGFzaDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2VuZmlsbGVkY2lyY2J1bGxldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZW5m aWxsZWRjaXJjYnVsbGV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW5maWxsZWRzcWJ1bGxldCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgZW5maWxsZWRzcWJ1bGxldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VuZyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgZW5nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW5vcGVuY2lyY2J1 bGxldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZW5vcGVuY2lyY2J1bGxldDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2Vub3BlbnNxdWFyZWJ1bGxldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZW5vcGVu c3F1YXJlYnVsbGV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW5zcGFjZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgZW5zcGFjZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VvZ29uZWsiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGVvZ29uZWs7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lcXVhbCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgZXF1YWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ldGgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGV0aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2V0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZXRp bGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfZXhjbGFtIildCisrCQlwdWJsaWMgY29uc3QgdWludCBleGNs YW07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9leGNsYW1kb3duIildCisrCQlwdWJsaWMgY29uc3QgdWludCBl eGNsYW1kb3duOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZXpoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBl emg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9mIildCisrCQlwdWJsaWMgY29uc3QgdWludCBmOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfZmFib3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBmYWJvdmVkb3Q7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9mZW1hbGVzeW1ib2wiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGZlbWFs ZXN5bWJvbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ZmIildCisrCQlwdWJsaWMgY29uc3QgdWludCBmZjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2ZpZ2Rhc2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGZpZ2Rhc2g7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9maWxsZWRsZWZ0dHJpYnVsbGV0IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBmaWxsZWRsZWZ0dHJpYnVsbGV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZmlsbGVkcmVjdGJ1bGxl dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZmlsbGVkcmVjdGJ1bGxldDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2ZpbGxlZHJpZ2h0dHJpYnVsbGV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBmaWxsZWRy aWdodHRyaWJ1bGxldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ZpbGxlZHRyaWJ1bGxldGRvd24iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGZpbGxlZHRyaWJ1bGxldGRvd247CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9m aWxsZWR0cmlidWxsZXR1cCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZmlsbGVkdHJpYnVsbGV0 dXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9maXZlZWlnaHRocyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg Zml2ZWVpZ2h0aHM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9maXZlc2l4dGhzIildCisrCQlwdWJsaWMgY29u c3QgdWludCBmaXZlc2l4dGhzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZml2ZXN1YnNjcmlwdCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgZml2ZXN1YnNjcmlwdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ZpdmVzdXBl cmlvciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZml2ZXN1cGVyaW9yOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfZm91cmZpZnRocyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZm91cmZpZnRoczsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2ZvdXJzdWJzY3JpcHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGZvdXJzdWJz Y3JpcHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9mb3Vyc3VwZXJpb3IiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGZvdXJzdXBlcmlvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ZvdXJ0aHJvb3QiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGZvdXJ0aHJvb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9mdW5jdGlvbiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgZnVuY3Rpb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9nIildCisrCQlwdWJs aWMgY29uc3QgdWludCBnOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZ2Fib3ZlZG90IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBnYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9nYnJldmUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGdicmV2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2djYXJvbiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgZ2Nhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZ2NlZGlsbGEiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGdjZWRpbGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZ2NpcmN1bWZsZXgiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGdjaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZ3JhdmUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGdyYXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZ3JlYXRlciIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgZ3JlYXRlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2dyZWF0ZXJ0aGFu ZXF1YWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGdyZWF0ZXJ0aGFuZXF1YWw7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9ndWlsbGVtb3RsZWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBndWlsbGVtb3Rs ZWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfZ3VpbGxlbW90cmlnaHQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGd1aWxsZW1vdHJpZ2h0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hhaXJzcGFjZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgaGFpcnNwYWNlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGNpcmN1bWZsZXgiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGhjaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVhcnQiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGhlYXJ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X2FsZXBoIildCisrCQlw dWJsaWMgY29uc3QgdWludCBoZWJyZXdfYWxlcGg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfYXlp biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X2F5aW47CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9o ZWJyZXdfYmV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfYmV0OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfaGVicmV3X2JldGgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19iZXRoOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfaGVicmV3X2NoZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJl d19jaGV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X2RhbGV0IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBoZWJyZXdfZGFsZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfZGFsZXRoIildCisrCQlw dWJsaWMgY29uc3QgdWludCBoZWJyZXdfZGFsZXRoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X2Rv dWJsZWxvd2xpbmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19kb3VibGVsb3dsaW5l OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X2ZpbmFsa2FwaCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgaGVicmV3X2ZpbmFsa2FwaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19maW5hbG1lbSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X2ZpbmFsbWVtOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVi cmV3X2ZpbmFsbnVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfZmluYWxudW47Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9oZWJyZXdfZmluYWxwZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVi cmV3X2ZpbmFscGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfZmluYWx6YWRlIildCisrCQlwdWJs aWMgY29uc3QgdWludCBoZWJyZXdfZmluYWx6YWRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X2Zp bmFsemFkaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X2ZpbmFsemFkaTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2hlYnJld19naW1lbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X2dp bWVsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X2dpbW1lbCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgaGVicmV3X2dpbW1lbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19oZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgaGVicmV3X2hlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X2hldCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgaGVicmV3X2hldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19rYXBo IildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfa2FwaDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hl YnJld19rdWYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19rdWY7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9oZWJyZXdfbGFtZWQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19sYW1lZDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2hlYnJld19tZW0iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJl d19tZW07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfbnVuIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBoZWJyZXdfbnVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X3BlIildCisrCQlwdWJsaWMgY29u c3QgdWludCBoZWJyZXdfcGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfcW9waCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgaGVicmV3X3FvcGg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfcmVzaCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X3Jlc2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJy ZXdfc2FtZWNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfc2FtZWNoOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfaGVicmV3X3NhbWVraCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X3Nh bWVraDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19zaGluIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBoZWJyZXdfc2hpbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld190YWYiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGhlYnJld190YWY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfdGF3IildCisrCQlw dWJsaWMgY29uc3QgdWludCBoZWJyZXdfdGF3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X3RldCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X3RldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJl d190ZXRoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfdGV0aDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2hlYnJld193YXciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld193YXc7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9oZWJyZXdfeW9kIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfeW9k OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X3phZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhl YnJld196YWRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X3phZGkiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGhlYnJld196YWRpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X3phaW4iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGhlYnJld196YWluOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X3pheWlu IildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfemF5aW47CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9o ZXhhZ3JhbSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGV4YWdyYW07CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9ob3JpemNvbm5lY3RvciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaG9yaXpjb25uZWN0b3I7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9ob3JpemxpbmVzY2FuMSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg aG9yaXpsaW5lc2NhbjE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ob3JpemxpbmVzY2FuMyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgaG9yaXpsaW5lc2NhbjM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ob3JpemxpbmVz Y2FuNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaG9yaXpsaW5lc2NhbjU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9ob3JpemxpbmVzY2FuNyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaG9yaXpsaW5lc2Nh bjc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9ob3JpemxpbmVzY2FuOSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgaG9yaXpsaW5lc2Nhbjk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oc3Ryb2tlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBoc3Ryb2tlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaHQiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGh0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaHlwaGVuIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBoeXBoZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pIildCisrCQlwdWJsaWMgY29uc3QgdWludCBpOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfaVRvdWNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBpVG91Y2g7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9pYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGlhY3V0ZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2liZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaWJlbG93ZG90 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfaWJyZXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBpYnJldmU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9pY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaWNp cmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pZGVudGljYWwiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGlkZW50aWNhbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2lkaWFlcmVzaXMiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGlkaWFlcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pZG90bGVzcyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgaWRvdGxlc3M7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pZm9ubHlpZiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgaWZvbmx5aWY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pZ3JhdmUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGlncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2lob29rIildCisrCQlw dWJsaWMgY29uc3QgdWludCBpaG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ltYWNyb24iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGltYWNyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pbXBsaWVzIildCisrCQlw dWJsaWMgY29uc3QgdWludCBpbXBsaWVzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaW5jbHVkZWRpbiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgaW5jbHVkZWRpbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2luY2x1ZGVz IildCisrCQlwdWJsaWMgY29uc3QgdWludCBpbmNsdWRlczsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2luZmlu aXR5IildCisrCQlwdWJsaWMgY29uc3QgdWludCBpbmZpbml0eTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2lu dGVncmFsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBpbnRlZ3JhbDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2ludGVyc2VjdGlvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaW50ZXJzZWN0aW9uOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfaW9nb25layIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaW9nb25lazsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2l0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaXRpbGRlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfaiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgajsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2pjaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBqY2lyY3VtZmxleDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2pvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgam90OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfQSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9BOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9DSEki KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfQ0hJOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9F IildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX0U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX0ZV IildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX0ZVOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9I QSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9IQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFf SEUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfSEU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5h X0hJIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX0hJOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2Fu YV9ITyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9ITzsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2th bmFfSFUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfSFU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9r YW5hX0kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfSTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2th bmFfS0EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfS0E7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9r YW5hX0tFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX0tFOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf a2FuYV9LSSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9LSTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2thbmFfS08iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfS087CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9rYW5hX0tVIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX0tVOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfa2FuYV9NQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9NQTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2thbmFfTUUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfTUU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9rYW5hX01JIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX01JOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfa2FuYV9NTyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9NTzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2thbmFfTVUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfTVU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9rYW5hX04iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfTjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2thbmFfTkEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfTkE7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9rYW5hX05FIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX05FOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfa2FuYV9OSSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9OSTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2thbmFfTk8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfTk87CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9rYW5hX05VIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX05VOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfa2FuYV9PIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX087CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9rYW5hX1JBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1JBOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfa2FuYV9SRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9SRTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2thbmFfUkkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfUkk7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9rYW5hX1JPIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1JPOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfa2FuYV9SVSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9SVTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2thbmFfU0EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfU0E7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9rYW5hX1NFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1NF OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9TSEkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFf U0hJOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9TTyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2Fu YV9TTzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfU1UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGth bmFfU1U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX1RBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBr YW5hX1RBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9URSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg a2FuYV9URTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfVEkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGthbmFfVEk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX1RPIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBrYW5hX1RPOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9UU1UiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGthbmFfVFNVOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9UVSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQga2FuYV9UVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfVSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQga2FuYV9VOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9XQSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQga2FuYV9XQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfV08iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGthbmFfV087CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX1lBIildCisrCQlwdWJsaWMgY29u c3QgdWludCBrYW5hX1lBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9ZTyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQga2FuYV9ZTzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfWVUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGthbmFfWVU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX2EiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGthbmFfYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfY2xvc2luZ2JyYWNrZXQiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfY2xvc2luZ2JyYWNrZXQ7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9rYW5hX2NvbW1hIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX2NvbW1hOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfa2FuYV9jb25qdW5jdGl2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9j b25qdW5jdGl2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQga2FuYV9lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9mdWxsc3RvcCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQga2FuYV9mdWxsc3RvcDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfaSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQga2FuYV9pOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9taWRkbGVkb3QiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfbWlkZGxlZG90OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2Fu YV9vIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX287CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5h X29wZW5pbmdicmFja2V0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX29wZW5pbmdicmFj a2V0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9zd2l0Y2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGthbmFfc3dpdGNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV90c3UiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGthbmFfdHN1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV90dSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQga2FuYV90dTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfdSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQga2FuYV91OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV95YSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQga2FuYV95YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfeW8iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGthbmFfeW87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX3l1IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBrYW5hX3l1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FwcGEiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGthcHBhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2NlZGlsbGEiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGtjZWRpbGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa3JhIildCisrCQlwdWJsaWMgY29u c3QgdWludCBrcmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sIildCisrCQlwdWJsaWMgY29uc3QgdWludCBs OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfbGFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBsYWN1dGU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9sYXRpbmNyb3NzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBsYXRp bmNyb3NzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbGJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBsYmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGxjYXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xjZWRpbGxhIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBsY2VkaWxsYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xlZnRhbmdsZWJyYWNrZXQiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGxlZnRhbmdsZWJyYWNrZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sZWZ0YXJy b3ciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxlZnRhcnJvdzsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xl ZnRjYXJldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbGVmdGNhcmV0OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfbGVmdGRvdWJsZXF1b3RlbWFyayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbGVmdGRvdWJs ZXF1b3RlbWFyazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xlZnRtaWRkbGVjdXJseWJyYWNlIildCisrCQlw dWJsaWMgY29uc3QgdWludCBsZWZ0bWlkZGxlY3VybHlicmFjZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xl ZnRvcGVudHJpYW5nbGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxlZnRvcGVudHJpYW5nbGU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9sZWZ0cG9pbnRlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbGVm dHBvaW50ZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sZWZ0cmFkaWNhbCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgbGVmdHJhZGljYWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sZWZ0c2hvZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgbGVmdHNob2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sZWZ0c2luZ2xlcXVvdGVtYXJr IildCisrCQlwdWJsaWMgY29uc3QgdWludCBsZWZ0c2luZ2xlcXVvdGVtYXJrOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfbGVmdHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxlZnR0OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfbGVmdHRhY2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxlZnR0YWNrOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfbGVzcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbGVzczsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2xlc3N0aGFuZXF1YWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxlc3N0aGFuZXF1YWw7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9sZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbGY7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9sb2dpY2FsYW5kIildCisrCQlwdWJsaWMgY29uc3QgdWludCBsb2dpY2FsYW5kOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfbG9naWNhbG9yIildCisrCQlwdWJsaWMgY29uc3QgdWludCBsb2dpY2Fsb3I7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9sb3dsZWZ0Y29ybmVyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBs b3dsZWZ0Y29ybmVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbG93cmlnaHRjb3JuZXIiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGxvd3JpZ2h0Y29ybmVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbHN0cm9rZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgbHN0cm9rZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX20iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IG07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9tYWJvdmVkb3QiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IG1hYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX21hY3JvbiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgbWFjcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbWFsZXN5bWJvbCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgbWFsZXN5bWJvbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX21hbHRlc2Vjcm9z cyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbWFsdGVzZWNyb3NzOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf bWFya2VyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBtYXJrZXI7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9t YXNjdWxpbmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG1hc2N1bGluZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX21pbnVzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBtaW51czsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X21pbnV0ZXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG1pbnV0ZXM7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9tdSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbXU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9tdWx0aXBs eSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbXVsdGlwbHk7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9tdXNp Y2FsZmxhdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbXVzaWNhbGZsYXQ7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9tdXNpY2Fsc2hhcnAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG11c2ljYWxzaGFycDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG47CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9uYWJsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbmFibGE7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9uYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG5hY3V0ZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X25jYXJvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbmNhcm9uOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf bmNlZGlsbGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG5jZWRpbGxhOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfbmluZXN1YnNjcmlwdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbmluZXN1YnNjcmlwdDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX25pbmVzdXBlcmlvciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbmlu ZXN1cGVyaW9yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbmwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG5s OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfbm9icmVha3NwYWNlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBu b2JyZWFrc3BhY2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ub3RhcHByb3hlcSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgbm90YXBwcm94ZXE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ub3RlbGVtZW50b2YiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IG5vdGVsZW1lbnRvZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX25vdGVxdWFs IildCisrCQlwdWJsaWMgY29uc3QgdWludCBub3RlcXVhbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX25vdGlk ZW50aWNhbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbm90aWRlbnRpY2FsOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfbm90c2lnbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbm90c2lnbjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX250aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbnRpbGRlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfbnVtYmVyc2lnbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbnVtYmVyc2lnbjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX251bWVyb3NpZ24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG51bWVyb3Np Z247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9vIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfb2FjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvYWN1dGU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9vYmFycmVkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvYmFycmVkOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfb2JlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBvYmVsb3dkb3Q7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9vY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9jYXJvbjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX29jaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBvY2lyY3Vt ZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX29jaXJjdW1mbGV4YWN1dGUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IG9jaXJjdW1mbGV4YWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vY2lyY3VtZmxleGJlbG93 ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBvY2lyY3VtZmxleGJlbG93ZG90OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfb2NpcmN1bWZsZXhncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2NpcmN1 bWZsZXhncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29jaXJjdW1mbGV4aG9vayIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgb2NpcmN1bWZsZXhob29rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb2NpcmN1bWZsZXh0 aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2NpcmN1bWZsZXh0aWxkZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX29kaWFlcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9kaWFlcmVzaXM7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9vZG91YmxlYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9kb3Vi bGVhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX29nb25layIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2dvbmVrOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfb2dyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvZ3JhdmU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9vaG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2hvb2s7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9vaG9ybiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2hvcm47CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9vaG9ybmFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvaG9ybmFjdXRlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfb2hvcm5iZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2hv cm5iZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29ob3JuZ3JhdmUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IG9ob3JuZ3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vaG9ybmhvb2siKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IG9ob3JuaG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29ob3JudGlsZGUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IG9ob3JudGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vbWFjcm9uIild CisrCQlwdWJsaWMgY29uc3QgdWludCBvbWFjcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb25lZWlnaHRo IildCisrCQlwdWJsaWMgY29uc3QgdWludCBvbmVlaWdodGg7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vbmVm aWZ0aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb25lZmlmdGg7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9v bmVoYWxmIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvbmVoYWxmOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf b25lcXVhcnRlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb25lcXVhcnRlcjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX29uZXNpeHRoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvbmVzaXh0aDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX29uZXN1YnNjcmlwdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb25lc3Vic2Ny aXB0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfb25lc3VwZXJpb3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IG9uZXN1cGVyaW9yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb25ldGhpcmQiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IG9uZXRoaXJkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb29ibGlxdWUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IG9vYmxpcXVlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb3BlbnJlY3RidWxsZXQiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IG9wZW5yZWN0YnVsbGV0OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb3BlbnN0 YXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9wZW5zdGFyOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb3Bl bnRyaWJ1bGxldGRvd24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9wZW50cmlidWxsZXRkb3du OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfb3BlbnRyaWJ1bGxldHVwIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBvcGVudHJpYnVsbGV0dXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vcmRmZW1pbmluZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgb3JkZmVtaW5pbmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vc2xhc2giKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IG9zbGFzaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX290aWxkZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgb3RpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb3ZlcmJhciIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgb3ZlcmJhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX292ZXJsaW5lIildCisr CQlwdWJsaWMgY29uc3QgdWludCBvdmVybGluZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3AiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IHA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9wYWJvdmVkb3QiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IHBhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3BhcmFncmFwaCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgcGFyYWdyYXBoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcGFyZW5sZWZ0Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBwYXJlbmxlZnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9wYXJlbnJp Z2h0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBwYXJlbnJpZ2h0OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf cGFydGRpZmZlcmVudGlhbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcGFydGRpZmZlcmVudGlh bDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX3BhcnRpYWxkZXJpdmF0aXZlIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBwYXJ0aWFsZGVyaXZhdGl2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3BlcmNlbnQiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IHBlcmNlbnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9wZXJpb2QiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IHBlcmlvZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3BlcmlvZGNlbnRlcmVkIild CisrCQlwdWJsaWMgY29uc3QgdWludCBwZXJpb2RjZW50ZXJlZDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Bl cm1pbGxlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBwZXJtaWxsZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X3Bob25vZ3JhcGhjb3B5cmlnaHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHBob25vZ3JhcGhj b3B5cmlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9wbHVzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBw bHVzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfcGx1c21pbnVzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBw bHVzbWludXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9wcmVzY3JpcHRpb24iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IHByZXNjcmlwdGlvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Byb2xvbmdlZHNvdW5kIildCisr CQlwdWJsaWMgY29uc3QgdWludCBwcm9sb25nZWRzb3VuZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3B1bmN0 c3BhY2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHB1bmN0c3BhY2U7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9xIildCisrCQlwdWJsaWMgY29uc3QgdWludCBxOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcXVhZCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgcXVhZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3F1ZXN0aW9uIildCisr CQlwdWJsaWMgY29uc3QgdWludCBxdWVzdGlvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3F1ZXN0aW9uZG93 biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcXVlc3Rpb25kb3duOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf cXVvdGVkYmwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHF1b3RlZGJsOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfcXVvdGVsZWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBxdW90ZWxlZnQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9xdW90ZXJpZ2h0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBxdW90ZXJpZ2h0Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX3JhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcmFjdXRlOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfcmFkaWNhbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcmFkaWNhbDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX3JjYXJvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcmNhcm9uOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfcmNlZGlsbGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHJjZWRpbGxhOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfcmVnaXN0ZXJlZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcmVnaXN0ZXJlZDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX3JpZ2h0YW5nbGVicmFja2V0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBy aWdodGFuZ2xlYnJhY2tldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3JpZ2h0YXJyb3ciKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IHJpZ2h0YXJyb3c7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9yaWdodGNhcmV0IildCisr CQlwdWJsaWMgY29uc3QgdWludCByaWdodGNhcmV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcmlnaHRkb3Vi bGVxdW90ZW1hcmsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHJpZ2h0ZG91YmxlcXVvdGVtYXJr OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfcmlnaHRtaWRkbGVjdXJseWJyYWNlIildCisrCQlwdWJsaWMgY29u c3QgdWludCByaWdodG1pZGRsZWN1cmx5YnJhY2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9yaWdodG1pZGRs ZXN1bW1hdGlvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcmlnaHRtaWRkbGVzdW1tYXRpb247 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9yaWdodG9wZW50cmlhbmdsZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgcmlnaHRvcGVudHJpYW5nbGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9yaWdodHBvaW50ZXIiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IHJpZ2h0cG9pbnRlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3JpZ2h0c2hv ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcmlnaHRzaG9lOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcmln aHRzaW5nbGVxdW90ZW1hcmsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHJpZ2h0c2luZ2xlcXVv dGVtYXJrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcmlnaHR0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBy aWdodHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9yaWdodHRhY2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IHJpZ2h0dGFjazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHM7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9zYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNhYm92 ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX3NhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc2Fj dXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfc2Nhcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBzY2Fy b247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9zY2VkaWxsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc2Nl ZGlsbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zY2h3YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc2No d2E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9zY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg c2NpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zY3JpcHRfc3dpdGNoIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBzY3JpcHRfc3dpdGNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc2Vjb25kcyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgc2Vjb25kczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3NlY3Rpb24iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IHNlY3Rpb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zZW1pY29sb24iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IHNlbWljb2xvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3NlbWl2b2lj ZWRzb3VuZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc2VtaXZvaWNlZHNvdW5kOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfc2V2ZW5laWdodGhzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBzZXZlbmVpZ2h0 aHM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9zZXZlbnN1YnNjcmlwdCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgc2V2ZW5zdWJzY3JpcHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zZXZlbnN1cGVyaW9yIildCisrCQlw dWJsaWMgY29uc3QgdWludCBzZXZlbnN1cGVyaW9yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc2lnbmF0dXJl bWFyayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc2lnbmF0dXJlbWFyazsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX3NpZ25pZmJsYW5rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBzaWduaWZibGFuazsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX3NpbWlsYXJlcXVhbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc2ltaWxh cmVxdWFsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc2luZ2xlbG93cXVvdGVtYXJrIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBzaW5nbGVsb3dxdW90ZW1hcms7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zaXhzdWJzY3Jp cHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNpeHN1YnNjcmlwdDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X3NpeHN1cGVyaW9yIildCisrCQlwdWJsaWMgY29uc3QgdWludCBzaXhzdXBlcmlvcjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX3NsYXNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBzbGFzaDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX3NvbGlkZGlhbW9uZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc29saWRkaWFtb25k OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfc3BhY2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNwYWNlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfc3F1YXJlcm9vdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc3F1YXJl cm9vdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX3NzaGFycCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc3No YXJwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfc3RlcmxpbmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHN0 ZXJsaW5nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc3RyaWN0ZXEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IHN0cmljdGVxOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX3RhYm92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdGFib3Zl ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfdGNhcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0Y2Fy b247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV90Y2VkaWxsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdGNl ZGlsbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90ZWxlcGhvbmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IHRlbGVwaG9uZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3RlbGVwaG9uZXJlY29yZGVyIildCisrCQlwdWJs aWMgY29uc3QgdWludCB0ZWxlcGhvbmVyZWNvcmRlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3RoZXJlZm9y ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdGhlcmVmb3JlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdGhp bnNwYWNlIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0aGluc3BhY2U7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV90aG9ybiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdGhvcm47CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90 aHJlZWVpZ2h0aHMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRocmVlZWlnaHRoczsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX3RocmVlZmlmdGhzIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0aHJlZWZpZnRo czsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX3RocmVlcXVhcnRlcnMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IHRocmVlcXVhcnRlcnM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90aHJlZXN1YnNjcmlwdCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgdGhyZWVzdWJzY3JpcHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90aHJlZXN1cGVy aW9yIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0aHJlZXN1cGVyaW9yOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfdGludGVncmFsIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0aW50ZWdyYWw7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV90b3BpbnRlZ3JhbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdG9waW50ZWdyYWw7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV90b3BsZWZ0cGFyZW5zIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0 b3BsZWZ0cGFyZW5zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdG9wbGVmdHJhZGljYWwiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IHRvcGxlZnRyYWRpY2FsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdG9wbGVmdHNxYnJh Y2tldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdG9wbGVmdHNxYnJhY2tldDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX3RvcGxlZnRzdW1tYXRpb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRvcGxlZnRz dW1tYXRpb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90b3ByaWdodHBhcmVucyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgdG9wcmlnaHRwYXJlbnM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90b3ByaWdodHNxYnJhY2tl dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdG9wcmlnaHRzcWJyYWNrZXQ7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV90b3ByaWdodHN1bW1hdGlvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdG9wcmlnaHRz dW1tYXRpb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90b3B0IildCisrCQlwdWJsaWMgY29uc3QgdWludCB0 b3B0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfdG9wdmVydHN1bW1hdGlvbmNvbm5lY3RvciIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgdG9wdmVydHN1bW1hdGlvbmNvbm5lY3RvcjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X3RyYWRlbWFyayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdHJhZGVtYXJrOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfdHJhZGVtYXJraW5jaXJjbGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRyYWRlbWFy a2luY2lyY2xlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdHNsYXNoIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCB0c2xhc2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90d29maWZ0aHMiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IHR3b2ZpZnRoczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3R3b3N1YnNjcmlwdCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgdHdvc3Vic2NyaXB0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdHdvc3VwZXJpb3IiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IHR3b3N1cGVyaW9yOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdHdvdGhp cmRzIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0d290aGlyZHM7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91 IildCisrCQlwdWJsaWMgY29uc3QgdWludCB1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdWFjdXRlIildCisr CQlwdWJsaWMgY29uc3QgdWludCB1YWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91YmVsb3dkb3QiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IHViZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3VicmV2ZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgdWJyZXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdWNpcmN1bWZs ZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVjaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf dWRpYWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdWRpYWVyZXNpczsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX3Vkb3VibGVhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdWRvdWJsZWFjdXRl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfdWdyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCB1Z3JhdmU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV91aG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdWhvb2s7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV91aG9ybiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdWhvcm47CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV91aG9ybmFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCB1aG9ybmFjdXRl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfdWhvcm5iZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg dWhvcm5iZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Vob3JuZ3JhdmUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IHVob3JuZ3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91aG9ybmhvb2siKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IHVob3JuaG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Vob3JudGlsZGUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IHVob3JudGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91bWFjcm9u IildCisrCQlwdWJsaWMgY29uc3QgdWludCB1bWFjcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdW5kZXJi YXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVuZGVyYmFyOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdW5k ZXJzY29yZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdW5kZXJzY29yZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX3VuaW9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCB1bmlvbjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X3VvZ29uZWsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVvZ29uZWs7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV91cGFycm93IildCisrCQlwdWJsaWMgY29uc3QgdWludCB1cGFycm93OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfdXBjYXJldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdXBjYXJldDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX3VwbGVmdGNvcm5lciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdXBsZWZ0Y29ybmVyOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfdXByaWdodGNvcm5lciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdXBy aWdodGNvcm5lcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Vwc2hvZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgdXBzaG9lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdXBzdGlsZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgdXBzdGlsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3VwdGFjayIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgdXB0YWNrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdXJpbmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IHVyaW5nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdXRpbGRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCB1 dGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV92IildCisrCQlwdWJsaWMgY29uc3QgdWludCB2OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfdmFyaWF0aW9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCB2YXJpYXRpb247 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV92ZXJ0YmFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCB2ZXJ0YmFy OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfdmVydGNvbm5lY3RvciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg dmVydGNvbm5lY3RvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3ZvaWNlZHNvdW5kIildCisrCQlwdWJsaWMg Y29uc3QgdWludCB2b2ljZWRzb3VuZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Z0IildCisrCQlwdWJsaWMg Y29uc3QgdWludCB2dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3ciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IHc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV93YWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHdhY3V0 ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX3djaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCB3 Y2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3dkaWFlcmVzaXMiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IHdkaWFlcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV93Z3JhdmUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IHdncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3giKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IHg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV94YWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IHhhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHk7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV95YWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHlhY3V0ZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX3liZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgeWJlbG93 ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfeWNpcmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IHljaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfeWRpYWVyZXNpcyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgeWRpYWVyZXNpczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3llbiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgeWVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfeWdyYXZlIildCisrCQlwdWJsaWMgY29uc3Qg dWludCB5Z3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV95aG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgeWhvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV95dGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IHl0aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3oiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHo7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV96YWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHphYm92ZWRv dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX3phY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgemFjdXRl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfemNhcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCB6Y2Fyb247 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV96ZXJvc3Vic2NyaXB0IildCisrCQlwdWJsaWMgY29uc3QgdWludCB6 ZXJvc3Vic2NyaXB0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfemVyb3N1cGVyaW9yIildCisrCQlwdWJsaWMg Y29uc3QgdWludCB6ZXJvc3VwZXJpb3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV96c3Ryb2tlIildCisrCQlw dWJsaWMgY29uc3QgdWludCB6c3Ryb2tlOworKwl9CisrCW5hbWVzcGFjZSBUaHJlYWRzIHsKKysJ CW5hbWVzcGFjZSBJZGxlIHsKKysJCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJjbHV0dGVyX3RocmVhZHNfYWRkX2lkbGUiKV0KKysJCQlb VmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCQkJcHVibGljIHN0YXRpYyB1aW50IGFkZCAoR0xp Yi5Tb3VyY2VGdW5jIGZ1bmMpOworKwkJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gImNsdXR0ZXJfdGhyZWFkc19hZGRfaWRsZV9mdWxsIild CisrCQkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwkJCXB1YmxpYyBzdGF0aWMgdWludCBh ZGRfZnVsbCAoaW50IHByaW9yaXR5LCBvd25lZCBHTGliLlNvdXJjZUZ1bmMgZnVuYyk7CisrCQl9 CisrCQluYW1lc3BhY2UgVGltZW91dCB7CisrCQkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiY2x1dHRlcl90aHJlYWRzX2FkZF90aW1lb3V0 IildCisrCQkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwkJCXB1YmxpYyBzdGF0aWMgdWlu dCBhZGQgKHVpbnQgaW50ZXJ2YWwsIEdMaWIuU291cmNlRnVuYyBmdW5jKTsKKysJCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJjbHV0dGVy X3RocmVhZHNfYWRkX3RpbWVvdXRfZnVsbCIpXQorKwkJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQi KV0KKysJCQlwdWJsaWMgc3RhdGljIHVpbnQgYWRkX2Z1bGwgKGludCBwcmlvcml0eSwgdWludCBp bnRlcnZhbCwgb3duZWQgR0xpYi5Tb3VyY2VGdW5jIGZ1bmMpOworKwkJfQorKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCQlwdWJsaWMgc3RhdGljIHVpbnQgYWRkX3JlcGFpbnRfZnVuYyAob3du ZWQgR0xpYi5Tb3VyY2VGdW5jIGZ1bmMpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJ cHVibGljIHN0YXRpYyB1aW50IGFkZF9yZXBhaW50X2Z1bmNfZnVsbCAoQ2x1dHRlci5SZXBhaW50 RmxhZ3MgZmxhZ3MsIG93bmVkIEdMaWIuU291cmNlRnVuYyBmdW5jKTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyB2b2lkIHJlbW92ZV9yZXBhaW50X2Z1bmMgKHVp bnQgaGFuZGxlX2lkKTsKKysJfQorKwluYW1lc3BhY2UgVmFsdWUgeworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMCIpXQorKwkJcHVibGljIHN0YXRpYyBDbHV0dGVyLlBhaW50Tm9kZSBkdXBfcGFpbnRf bm9kZSAoR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1 YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLkNvbG9yPyBnZXRfY29sb3IgKEdMaWIuVmFsdWUg dmFsdWUpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93 bmVkIENsdXR0ZXIuUGFpbnROb2RlIGdldF9wYWludF9ub2RlIChHTGliLlZhbHVlIHZhbHVlKTsK KysJCVtDQ29kZSAoYXJyYXlfbGVuZ3RoX3BvcyA9IDEuMSwgYXJyYXlfbGVuZ3RoX3R5cGUgPSAi Z3NpemUiLCBjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgZmxvYXRbXSBn ZXRfc2hhZGVyX2Zsb2F0IChHTGliLlZhbHVlIHZhbHVlKTsKKysJCVtDQ29kZSAoYXJyYXlfbGVu Z3RoX3BvcyA9IDEuMSwgYXJyYXlfbGVuZ3RoX3R5cGUgPSAiZ3NpemUiLCBjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44Iild CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgaW50W10gZ2V0X3NoYWRlcl9pbnQgKEdMaWIuVmFs dWUgdmFsdWUpOworKwkJW0NDb2RlIChhcnJheV9sZW5ndGhfcG9zID0gMS4xLCBhcnJheV9sZW5n dGhfdHlwZSA9ICJnc2l6ZSIsIGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi KV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25l ZCBmbG9hdFtdIGdldF9zaGFkZXJfbWF0cml4IChHTGliLlZhbHVlIHZhbHVlKTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwkJW1ZlcnNpb24g KHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIENsdXR0ZXIuVW5pdHM/ IGdldF91bml0cyAoR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0K KysJCXB1YmxpYyBzdGF0aWMgdm9pZCBzZXRfY29sb3IgKEdMaWIuVmFsdWUgdmFsdWUsIENsdXR0 ZXIuQ29sb3IgY29sb3IpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHN0 YXRpYyB2b2lkIHNldF9wYWludF9ub2RlIChHTGliLlZhbHVlIHZhbHVlLCBDbHV0dGVyLlBhaW50 Tm9kZT8gbm9kZSk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBzdGF0aWMg dm9pZCBzZXRfc2hhZGVyX2Zsb2F0IChHTGliLlZhbHVlIHZhbHVlLCBbQ0NvZGUgKGFycmF5X2xl bmd0aF9jbmFtZSA9ICJzaXplIiwgYXJyYXlfbGVuZ3RoX3BvcyA9IDEuNSldIGZsb2F0W10gZmxv YXRzKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIp XQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHN0YXRpYyB2b2lkIHNl dF9zaGFkZXJfaW50IChHTGliLlZhbHVlIHZhbHVlLCBbQ0NvZGUgKGFycmF5X2xlbmd0aF9jbmFt ZSA9ICJzaXplIiwgYXJyYXlfbGVuZ3RoX3BvcyA9IDEuNSldIGludFtdIGludHMpOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCQlbVmVyc2lv biAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQgc2V0X3NoYWRlcl9tYXRy aXggKEdMaWIuVmFsdWUgdmFsdWUsIFtDQ29kZSAoYXJyYXlfbGVuZ3RoX2NuYW1lID0gInNpemUi LCBhcnJheV9sZW5ndGhfcG9zID0gMS41KV0gZmxvYXRbXSBtYXRyaXgpOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMC44IildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQgc2V0X3VuaXRzIChHTGliLlZhbHVl IHZhbHVlLCBDbHV0dGVyLlVuaXRzIHVuaXRzKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0K KysJCXB1YmxpYyBzdGF0aWMgdm9pZCB0YWtlX3BhaW50X25vZGUgKEdMaWIuVmFsdWUgdmFsdWUs IENsdXR0ZXIuUGFpbnROb2RlPyBub2RlKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfYWN0aW9uX2dldF90 eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGFic3RyYWN0 IGNsYXNzIEFjdGlvbiA6IENsdXR0ZXIuQWN0b3JNZXRhIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0 cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBBY3Rpb24gKCk7CisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9 ICJjbHV0dGVyX2FjdG9yX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBBY3RvciA6IEdM aWIuSW5pdGlhbGx5VW5vd25lZCwgQXRrLkltcGxlbWVudG9yLCBDbHV0dGVyLkFuaW1hdGFibGUs IENsdXR0ZXIuQ29udGFpbmVyLCBDbHV0dGVyLlNjcmlwdGFibGUgeworKwkJcHVibGljIHVpbnQz MiBmbGFnczsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQWN0b3IgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBhZGRfYWN0aW9uIChDbHV0dGVy LkFjdGlvbiBhY3Rpb24pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGlj IHZvaWQgYWRkX2FjdGlvbl93aXRoX25hbWUgKHN0cmluZyBuYW1lLCBDbHV0dGVyLkFjdGlvbiBh Y3Rpb24pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIGFk ZF9jaGlsZCAoQ2x1dHRlci5BY3RvciBjaGlsZCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40 IildCisrCQlwdWJsaWMgdm9pZCBhZGRfY29uc3RyYWludCAoQ2x1dHRlci5Db25zdHJhaW50IGNv bnN0cmFpbnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQg YWRkX2NvbnN0cmFpbnRfd2l0aF9uYW1lIChzdHJpbmcgbmFtZSwgQ2x1dHRlci5Db25zdHJhaW50 IGNvbnN0cmFpbnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZv aWQgYWRkX2VmZmVjdCAoQ2x1dHRlci5FZmZlY3QgZWZmZWN0KTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIGFkZF9lZmZlY3Rfd2l0aF9uYW1lIChzdHJpbmcg bmFtZSwgQ2x1dHRlci5FZmZlY3QgZWZmZWN0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEw IildCisrCQlwdWJsaWMgdm9pZCBhZGRfdHJhbnNpdGlvbiAoc3RyaW5nIG5hbWUsIENsdXR0ZXIu VHJhbnNpdGlvbiB0cmFuc2l0aW9uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJ CXB1YmxpYyB2aXJ0dWFsIHZvaWQgYWxsb2NhdGUgKENsdXR0ZXIuQWN0b3JCb3ggYm94LCBDbHV0 dGVyLkFsbG9jYXRpb25GbGFncyBmbGFncyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40Iild CisrCQlwdWJsaWMgdm9pZCBhbGxvY2F0ZV9hbGlnbl9maWxsIChDbHV0dGVyLkFjdG9yQm94IGJv eCwgZG91YmxlIHhfYWxpZ24sIGRvdWJsZSB5X2FsaWduLCBib29sIHhfZmlsbCwgYm9vbCB5X2Zp bGwsIENsdXR0ZXIuQWxsb2NhdGlvbkZsYWdzIGZsYWdzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIGFsbG9jYXRlX2F2YWlsYWJsZV9zaXplIChmbG9hdCB4 LCBmbG9hdCB5LCBmbG9hdCBhdmFpbGFibGVfd2lkdGgsIGZsb2F0IGF2YWlsYWJsZV9oZWlnaHQs IENsdXR0ZXIuQWxsb2NhdGlvbkZsYWdzIGZsYWdzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIw LjgiKV0KKysJCXB1YmxpYyB2b2lkIGFsbG9jYXRlX3ByZWZlcnJlZF9zaXplIChDbHV0dGVyLkFs bG9jYXRpb25GbGFncyBmbGFncyk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRl cHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3du ZWQgQ2x1dHRlci5BbmltYXRpb24gYW5pbWF0ZSAodWxvbmcgbW9kZSwgdWludCBkdXJhdGlvbiwg Li4uKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9 ICIxLjEyIiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFuaW1h dGlvbiBhbmltYXRlX3dpdGhfdGltZWxpbmUgKHVsb25nIG1vZGUsIENsdXR0ZXIuVGltZWxpbmUg dGltZWxpbmUsIC4uLik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMg dm9pZCBhcHBseV9yZWxhdGl2ZV90cmFuc2Zvcm1fdG9fcG9pbnQgKENsdXR0ZXIuQWN0b3I/IGFu Y2VzdG9yLCBHcmFwaGVuZS5Qb2ludDNEIHBvaW50LCBvdXQgdW5vd25lZCBHcmFwaGVuZS5Qb2lu dDNEIHZlcnRleCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBhcHBs eV90cmFuc2Zvcm0gKHJlZiBDbHV0dGVyLk1hdHJpeCBtYXRyaXgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjAuNCIpXQorKwkJcHVibGljIHZvaWQgYXBwbHlfdHJhbnNmb3JtX3RvX3BvaW50IChH cmFwaGVuZS5Qb2ludDNEIHBvaW50LCBvdXQgdW5vd25lZCBHcmFwaGVuZS5Qb2ludDNEIHZlcnRl eCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yNCIpXQorKwkJcHVibGljIHZvaWQgYmluZF9t b2RlbCAoR0xpYi5MaXN0TW9kZWw/IG1vZGVsLCBvd25lZCBDbHV0dGVyLkFjdG9yQ3JlYXRlQ2hp bGRGdW5jIGNyZWF0ZV9jaGlsZF9mdW5jKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0K KysJCXB1YmxpYyB2b2lkIGNsZWFyX2FjdGlvbnMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS40IildCisrCQlwdWJsaWMgdm9pZCBjbGVhcl9jb25zdHJhaW50cyAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIGNsZWFyX2VmZmVjdHMgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgYm9vbCBjb250YWlucyAoQ2x1dHRl ci5BY3RvciBkZXNjZW5kYW50KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1 YmxpYyB2b2lkIGNvbnRpbnVlX3BhaW50IChDbHV0dGVyLlBhaW50Q29udGV4dCBwYWludF9jb250 ZXh0KTsKKysJCXB1YmxpYyB2b2lkIGNvbnRpbnVlX3BpY2sgKENsdXR0ZXIuUGlja0NvbnRleHQg cGlja19jb250ZXh0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBQ YW5nby5Db250ZXh0IGNyZWF0ZV9wYW5nb19jb250ZXh0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMCIpXQorKwkJcHVibGljIFBhbmdvLkxheW91dCBjcmVhdGVfcGFuZ29fbGF5b3V0IChz dHJpbmc/IHRleHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2 b2lkIGRlc3Ryb3lfYWxsX2NoaWxkcmVuICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVy X2FjdG9yX2V2ZW50IildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMg Ym9vbCBlbWl0X2V2ZW50IChDbHV0dGVyLkV2ZW50IGV2ZW50LCBib29sIGNhcHR1cmUpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwkJcHVibGljIHZvaWQgZ2V0X2Fic19hbGxvY2F0 aW9uX3ZlcnRpY2VzIChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gR3JhcGhlbmUuUG9p bnQzRCB2ZXJ0c1s0XSk7CisrCQlwdWJsaWMgdmlydHVhbCB1bm93bmVkIEF0ay5PYmplY3QgZ2V0 X2FjY2Vzc2libGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMg dW5vd25lZCBDbHV0dGVyLkFjdGlvbiBnZXRfYWN0aW9uIChzdHJpbmcgbmFtZSk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgR0xpYi5MaXN0PHdlYWsgQ2x1dHRlci5B Y3Rpb24+IGdldF9hY3Rpb25zICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJ cHVibGljIENsdXR0ZXIuQWN0b3JCb3ggZ2V0X2FsbG9jYXRpb25fYm94ICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZvaWQgZ2V0X2FsbG9jYXRpb25fdmVydGlj ZXMgKENsdXR0ZXIuQWN0b3I/IGFuY2VzdG9yLCBbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNl KV0gR3JhcGhlbmUuUG9pbnQzRCB2ZXJ0c1s0XSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9 IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVi bGljIENsdXR0ZXIuR3Jhdml0eSBnZXRfYW5jaG9yX3BvaW50X2dyYXZpdHkgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENsdXR0ZXIuQ29sb3IgZ2V0X2JhY2tn cm91bmRfY29sb3IgKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfZ2V0X2FjdG9yX2J5 X2dpZCIpXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNl ID0gIjEuOCIsIHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIENsdXR0 ZXIuQWN0b3IgZ2V0X2J5X2dpZCAodWludDMyIGlkXyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfY2hpbGRfYXRfaW5k ZXggKGludCBpbmRleF8pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1Ymxp YyBDbHV0dGVyLk1hdHJpeCBnZXRfY2hpbGRfdHJhbnNmb3JtICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBHTGliLkxpc3Q8d2VhayBDbHV0dGVyLkFjdG9yPiBn ZXRfY2hpbGRyZW4gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMg dm9pZCBnZXRfY2xpcCAob3V0IGZsb2F0IHhvZmYsIG91dCBmbG9hdCB5b2ZmLCBvdXQgZmxvYXQg d2lkdGgsIG91dCBmbG9hdCBoZWlnaHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQor KwkJcHVibGljIGJvb2wgZ2V0X2NsaXBfdG9fYWxsb2NhdGlvbiAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQ29uc3RyYWludCBnZXRf Y29uc3RyYWludCAoc3RyaW5nIG5hbWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQor KwkJcHVibGljIEdMaWIuTGlzdDx3ZWFrIENsdXR0ZXIuQ29uc3RyYWludD4gZ2V0X2NvbnN0cmFp bnRzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1bm93bmVk IENsdXR0ZXIuQ29udGVudCBnZXRfY29udGVudCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEwIildCisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvckJveCBnZXRfY29udGVudF9ib3ggKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENsdXR0ZXIuQ29udGVudEdy YXZpdHkgZ2V0X2NvbnRlbnRfZ3Jhdml0eSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEy IildCisrCQlwdWJsaWMgQ2x1dHRlci5Db250ZW50UmVwZWF0IGdldF9jb250ZW50X3JlcGVhdCAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBnZXRfY29u dGVudF9zY2FsaW5nX2ZpbHRlcnMgKG91dCBDbHV0dGVyLlNjYWxpbmdGaWx0ZXIgbWluX2ZpbHRl ciwgb3V0IENsdXR0ZXIuU2NhbGluZ0ZpbHRlciBtYWdfZmlsdGVyKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLlBhaW50Vm9sdW1lIGdl dF9kZWZhdWx0X3BhaW50X3ZvbHVtZSAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1 ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X2RlcHRo ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1aW50IGdldF9l YXNpbmdfZGVsYXkgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IHVpbnQgZ2V0X2Vhc2luZ19kdXJhdGlvbiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEw IildCisrCQlwdWJsaWMgQ2x1dHRlci5BbmltYXRpb25Nb2RlIGdldF9lYXNpbmdfbW9kZSAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIu RWZmZWN0IGdldF9lZmZlY3QgKHN0cmluZyBuYW1lKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjQiKV0KKysJCXB1YmxpYyBHTGliLkxpc3Q8d2VhayBDbHV0dGVyLkVmZmVjdD4gZ2V0X2VmZmVj dHMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHVub3duZWQg Q2x1dHRlci5BY3RvciBnZXRfZmlyc3RfY2hpbGQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MC44IildCisrCQlwdWJsaWMgYm9vbCBnZXRfZml4ZWRfcG9zaXRpb25fc2V0ICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIENsdXR0ZXIuQWN0b3JGbGFncyBnZXRf ZmxhZ3MgKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfYWN0b3JfaGFzX3BvaW50ZXIi KV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBib29sIGdldF9oYXNf cG9pbnRlciAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfaGVpZ2h0ICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X2xh c3RfY2hpbGQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHVu b3duZWQgQ2x1dHRlci5MYXlvdXRNYW5hZ2VyIGdldF9sYXlvdXRfbWFuYWdlciAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBnZXRfbWFyZ2luIChDbHV0 dGVyLk1hcmdpbiBtYXJnaW4pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1 YmxpYyBmbG9hdCBnZXRfbWFyZ2luX2JvdHRvbSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEwIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X21hcmdpbl9sZWZ0ICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfbWFyZ2luX3JpZ2h0ICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfbWFyZ2lu X3RvcCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgaW50IGdl dF9uX2NoaWxkcmVuICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9uYW1lICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIu QWN0b3IgZ2V0X25leHRfc2libGluZyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0K KysJCXB1YmxpYyBDbHV0dGVyLk9mZnNjcmVlblJlZGlyZWN0IGdldF9vZmZzY3JlZW5fcmVkaXJl Y3QgKCk7CisrCQlwdWJsaWMgdWludDggZ2V0X29wYWNpdHkgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4yMiIpXQorKwkJcHVibGljIGludCBnZXRfb3BhY2l0eV9vdmVycmlkZSAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBib29sIGdldF9wYWludF9ib3gg KG91dCBDbHV0dGVyLkFjdG9yQm94IGJveCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44Iild CisrCQlwdWJsaWMgdWludDggZ2V0X3BhaW50X29wYWNpdHkgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMC44IildCisrCQlwdWJsaWMgYm9vbCBnZXRfcGFpbnRfdmlzaWJpbGl0eSAoKTsKKysJ CVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCBib29sIGdldF9wYWludF92b2x1bWUgKENs dXR0ZXIuUGFpbnRWb2x1bWUgdm9sdW1lKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0K KysJCXB1YmxpYyB1bm93bmVkIFBhbmdvLkNvbnRleHQgZ2V0X3BhbmdvX2NvbnRleHQgKCk7Cisr CQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yPyBnZXRfcGFyZW50ICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9waXZvdF9wb2ludCAob3V0 IGZsb2F0IHBpdm90X3gsIG91dCBmbG9hdCBwaXZvdF95KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEyIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3Bpdm90X3BvaW50X3ogKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdm9pZCBnZXRfcG9zaXRpb24gKG91dCBm bG9hdCB4LCBvdXQgZmxvYXQgeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlw dWJsaWMgdmlydHVhbCB2b2lkIGdldF9wcmVmZXJyZWRfaGVpZ2h0IChmbG9hdCBmb3Jfd2lkdGgs IG91dCBmbG9hdCBtaW5faGVpZ2h0X3AsIG91dCBmbG9hdCBuYXR1cmFsX2hlaWdodF9wKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9wcmVmZXJyZWRf c2l6ZSAob3V0IGZsb2F0IG1pbl93aWR0aF9wLCBvdXQgZmxvYXQgbWluX2hlaWdodF9wLCBvdXQg ZmxvYXQgbmF0dXJhbF93aWR0aF9wLCBvdXQgZmxvYXQgbmF0dXJhbF9oZWlnaHRfcCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGdldF9wcmVm ZXJyZWRfd2lkdGggKGZsb2F0IGZvcl9oZWlnaHQsIG91dCBmbG9hdCBtaW5fd2lkdGhfcCwgb3V0 IGZsb2F0IG5hdHVyYWxfd2lkdGhfcCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQor KwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfcHJldmlvdXNfc2libGluZyAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBib29sIGdldF9yZWFjdGl2 ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBDbHV0dGVyLlJl cXVlc3RNb2RlIGdldF9yZXF1ZXN0X21vZGUgKCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfcmVzb3Vy Y2Vfc2NhbGUgKG91dCBmbG9hdCByZXNvdXJjZV9zY2FsZSk7CisrCQlbVmVyc2lvbiAoZGVwcmVj YXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjAuOCIpXQor KwkJcHVibGljIGRvdWJsZSBnZXRfcm90YXRpb24gKENsdXR0ZXIuUm90YXRlQXhpcyBheGlzLCBv dXQgZmxvYXQgeCwgb3V0IGZsb2F0IHksIG91dCBmbG9hdCB6KTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEyIildCisrCQlwdWJsaWMgZG91YmxlIGdldF9yb3RhdGlvbl9hbmdsZSAoQ2x1dHRl ci5Sb3RhdGVBeGlzIGF4aXMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwkJcHVi bGljIHZvaWQgZ2V0X3NjYWxlIChvdXQgZG91YmxlIHNjYWxlX3gsIG91dCBkb3VibGUgc2NhbGVf eSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAi MS4xMiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgZ2V0X3NjYWxlX2NlbnRlciAo b3V0IGZsb2F0IGNlbnRlcl94LCBvdXQgZmxvYXQgY2VudGVyX3kpOworKwkJW1ZlcnNpb24gKGRl cHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyBDbHV0dGVyLkdyYXZpdHkgZ2V0X3NjYWxlX2dyYXZpdHkgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGRvdWJsZSBnZXRfc2NhbGVfeiAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9zaXpl IChvdXQgZmxvYXQgd2lkdGgsIG91dCBmbG9hdCBoZWlnaHQpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjAuOCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5TdGFnZSBnZXRfc3RhZ2UgKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgQ2x1dHRlci5UZXh0RGly ZWN0aW9uIGdldF90ZXh0X2RpcmVjdGlvbiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEy IildCisrCQlwdWJsaWMgQ2x1dHRlci5NYXRyaXggZ2V0X3RyYW5zZm9ybSAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuUGFpbnRWb2x1 bWUgZ2V0X3RyYW5zZm9ybWVkX3BhaW50X3ZvbHVtZSAoQ2x1dHRlci5BY3RvciByZWxhdGl2ZV90 b19hbmNlc3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdm9p ZCBnZXRfdHJhbnNmb3JtZWRfcG9zaXRpb24gKG91dCBmbG9hdCB4LCBvdXQgZmxvYXQgeSk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdm9pZCBnZXRfdHJhbnNmb3Jt ZWRfc2l6ZSAob3V0IGZsb2F0IHdpZHRoLCBvdXQgZmxvYXQgaGVpZ2h0KTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLlRyYW5zaXRpb24g Z2V0X3RyYW5zaXRpb24gKHN0cmluZyBuYW1lKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEy IildCisrCQlwdWJsaWMgdm9pZCBnZXRfdHJhbnNsYXRpb24gKG91dCBmbG9hdCB0cmFuc2xhdGVf eCwgb3V0IGZsb2F0IHRyYW5zbGF0ZV95LCBvdXQgZmxvYXQgdHJhbnNsYXRlX3opOworKwkJcHVi bGljIGZsb2F0IGdldF93aWR0aCAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfeCAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvckFsaWduIGdl dF94X2FsaWduICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBi b29sIGdldF94X2V4cGFuZCAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfeSAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvckFsaWduIGdldF95 X2FsaWduICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBib29s IGdldF95X2V4cGFuZCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJs aWMgZmxvYXQgZ2V0X3pfcG9zaXRpb24gKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRy dWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGlj IENsdXR0ZXIuR3Jhdml0eSBnZXRfel9yb3RhdGlvbl9ncmF2aXR5ICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgZ3JhYl9rZXlfZm9jdXMgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGJvb2wgaGFzX2FjdGlvbnMgKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgYm9vbCBoYXNfYWxsb2Nh dGlvbiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgYm9vbCBo YXNfY29uc3RyYWludHMgKCk7CisrCQlwdWJsaWMgYm9vbCBoYXNfZGFtYWdlICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBib29sIGhhc19lZmZlY3RzICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIGJvb2wgaGFzX2tleV9mb2N1 cyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2IildCisrCQlwdWJsaWMgYm9vbCBoYXNf bWFwcGVkX2Nsb25lcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1Ymxp YyB2aXJ0dWFsIGJvb2wgaGFzX292ZXJsYXBzICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1Ymxp YyB2aXJ0dWFsIHZvaWQgaGlkZV9hbGwgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIp XQorKwkJcHVibGljIHZvaWQgaW5zZXJ0X2NoaWxkX2Fib3ZlIChDbHV0dGVyLkFjdG9yIGNoaWxk LCBDbHV0dGVyLkFjdG9yPyBzaWJsaW5nKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIild CisrCQlwdWJsaWMgdm9pZCBpbnNlcnRfY2hpbGRfYXRfaW5kZXggKENsdXR0ZXIuQWN0b3IgY2hp bGQsIGludCBpbmRleF8pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1Ymxp YyB2b2lkIGluc2VydF9jaGlsZF9iZWxvdyAoQ2x1dHRlci5BY3RvciBjaGlsZCwgQ2x1dHRlci5B Y3Rvcj8gc2libGluZyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg Ym9vbCBpc19pbl9jbG9uZV9wYWludCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjI0Iild CisrCQlwdWJsaWMgYm9vbCBpc19tYXBwZWQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4y NCIpXQorKwkJcHVibGljIGJvb2wgaXNfcmVhbGl6ZWQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMC42IildCisrCQlwdWJsaWMgYm9vbCBpc19yb3RhdGVkICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjAuNiIpXQorKwkJcHVibGljIGJvb2wgaXNfc2NhbGVkICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMjQiKV0KKysJCXB1YmxpYyBib29sIGlzX3Zpc2libGUgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIG1hcCAoKTsKKysJ CVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwg c2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdm9pZCBtb3ZlX2FuY2hvcl9wb2ludCAoZmxvYXQg YW5jaG9yX3gsIGZsb2F0IGFuY2hvcl95KTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1 ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMg dm9pZCBtb3ZlX2FuY2hvcl9wb2ludF9mcm9tX2dyYXZpdHkgKENsdXR0ZXIuR3Jhdml0eSBncmF2 aXR5KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyB2b2lkIG1vdmVf YnkgKGZsb2F0IGR4LCBmbG9hdCBkeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQor KwkJcHVibGljIGJvb2wgbmVlZHNfZXhwYW5kIChDbHV0dGVyLk9yaWVudGF0aW9uIG9yaWVudGF0 aW9uKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHBhaW50X25vZGUg KENsdXR0ZXIuUGFpbnROb2RlIHJvb3QpOworKwkJcHVibGljIHZvaWQgcGlja19ib3ggKENsdXR0 ZXIuUGlja0NvbnRleHQgcGlja19jb250ZXh0LCBDbHV0dGVyLkFjdG9yQm94IGJveCk7CisrCQlw dWJsaWMgdm9pZCBwb3BfaW50ZXJuYWwgKCk7CisrCQlwdWJsaWMgdm9pZCBwdXNoX2ludGVybmFs ICgpOworKwkJcHVibGljIHZvaWQgcXVldWVfcmVkcmF3ICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHF1ZXVlX3JlZHJhd193aXRoX2NsaXAgKENhaXJv LlJlY3RhbmdsZUludD8gY2xpcCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlw dWJsaWMgdm9pZCByZW1vdmVfYWN0aW9uIChDbHV0dGVyLkFjdGlvbiBhY3Rpb24pOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgcmVtb3ZlX2FjdGlvbl9ieV9u YW1lIChzdHJpbmcgbmFtZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVi bGljIHZvaWQgcmVtb3ZlX2FsbF9jaGlsZHJlbiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEwIildCisrCQlwdWJsaWMgdm9pZCByZW1vdmVfYWxsX3RyYW5zaXRpb25zICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHJlbW92ZV9jaGlsZCAoQ2x1 dHRlci5BY3RvciBjaGlsZCk7CisrCQlwdWJsaWMgdm9pZCByZW1vdmVfY2xpcCAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHJlbW92ZV9jb25zdHJhaW50 IChDbHV0dGVyLkNvbnN0cmFpbnQgY29uc3RyYWludCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS40IildCisrCQlwdWJsaWMgdm9pZCByZW1vdmVfY29uc3RyYWludF9ieV9uYW1lIChzdHJpbmcg bmFtZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCByZW1v dmVfZWZmZWN0IChDbHV0dGVyLkVmZmVjdCBlZmZlY3QpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuNCIpXQorKwkJcHVibGljIHZvaWQgcmVtb3ZlX2VmZmVjdF9ieV9uYW1lIChzdHJpbmcgbmFt ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgcmVtb3Zl X3RyYW5zaXRpb24gKHN0cmluZyBuYW1lKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIild CisrCQlwdWJsaWMgdm9pZCByZXBsYWNlX2NoaWxkIChDbHV0dGVyLkFjdG9yIG9sZF9jaGlsZCwg Q2x1dHRlci5BY3RvciBuZXdfY2hpbGQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0K KysJCXB1YmxpYyB2b2lkIHJlc3RvcmVfZWFzaW5nX3N0YXRlICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNhdmVfZWFzaW5nX3N0YXRlICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9hbGxvY2F0aW9u IChDbHV0dGVyLkFjdG9yQm94IGJveCwgQ2x1dHRlci5BbGxvY2F0aW9uRmxhZ3MgZmxhZ3MpOwor KwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIi LCBzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9hbmNob3JfcG9pbnQgKGZsb2F0 IGFuY2hvcl94LCBmbG9hdCBhbmNob3JfeSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRy dWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGlj IHZvaWQgc2V0X2FuY2hvcl9wb2ludF9mcm9tX2dyYXZpdHkgKENsdXR0ZXIuR3Jhdml0eSBncmF2 aXR5KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRf YmFja2dyb3VuZF9jb2xvciAoQ2x1dHRlci5Db2xvcj8gY29sb3IpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9jaGlsZF9hYm92ZV9zaWJsaW5nIChD bHV0dGVyLkFjdG9yIGNoaWxkLCBDbHV0dGVyLkFjdG9yPyBzaWJsaW5nKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfY2hpbGRfYXRfaW5kZXggKENs dXR0ZXIuQWN0b3IgY2hpbGQsIGludCBpbmRleF8pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9jaGlsZF9iZWxvd19zaWJsaW5nIChDbHV0dGVyLkFj dG9yIGNoaWxkLCBDbHV0dGVyLkFjdG9yPyBzaWJsaW5nKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBzZXRfY2hpbGRfdHJhbnNmb3JtIChDbHV0dGVyLk1h dHJpeD8gdHJhbnNmb3JtKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1Ymxp YyB2b2lkIHNldF9jbGlwIChmbG9hdCB4b2ZmLCBmbG9hdCB5b2ZmLCBmbG9hdCB3aWR0aCwgZmxv YXQgaGVpZ2h0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lk IHNldF9jbGlwX3RvX2FsbG9jYXRpb24gKGJvb2wgY2xpcF9zZXQpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9jb250ZW50IChDbHV0dGVyLkNvbnRl bnQ/IGNvbnRlbnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2 b2lkIHNldF9jb250ZW50X2dyYXZpdHkgKENsdXR0ZXIuQ29udGVudEdyYXZpdHkgZ3Jhdml0eSk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2NvbnRl bnRfcmVwZWF0IChDbHV0dGVyLkNvbnRlbnRSZXBlYXQgcmVwZWF0KTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfY29udGVudF9zY2FsaW5nX2ZpbHRl cnMgKENsdXR0ZXIuU2NhbGluZ0ZpbHRlciBtaW5fZmlsdGVyLCBDbHV0dGVyLlNjYWxpbmdGaWx0 ZXIgbWFnX2ZpbHRlcik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0 ZWRfc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2RlcHRoIChmbG9hdCBkZXB0 aCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2Vh c2luZ19kZWxheSAodWludCBtc2Vjcyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQor KwkJcHVibGljIHZvaWQgc2V0X2Vhc2luZ19kdXJhdGlvbiAodWludCBtc2Vjcyk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2Vhc2luZ19tb2RlIChD bHV0dGVyLkFuaW1hdGlvbk1vZGUgbW9kZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44Iild CisrCQlwdWJsaWMgdm9pZCBzZXRfZml4ZWRfcG9zaXRpb25fc2V0IChib29sIGlzX3NldCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfZmxhZ3MgKENs dXR0ZXIuQWN0b3JGbGFncyBmbGFncyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisr CQlwdWJsaWMgdm9pZCBzZXRfaGVpZ2h0IChmbG9hdCBoZWlnaHQpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9sYXlvdXRfbWFuYWdlciAoQ2x1dHRl ci5MYXlvdXRNYW5hZ2VyPyBtYW5hZ2VyKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIild CisrCQlwdWJsaWMgdm9pZCBzZXRfbWFyZ2luIChDbHV0dGVyLk1hcmdpbiBtYXJnaW4pOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9tYXJnaW5fYm90 dG9tIChmbG9hdCBtYXJnaW4pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1 YmxpYyB2b2lkIHNldF9tYXJnaW5fbGVmdCAoZmxvYXQgbWFyZ2luKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbWFyZ2luX3JpZ2h0IChmbG9hdCBt YXJnaW4pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNl dF9tYXJnaW5fdG9wIChmbG9hdCBtYXJnaW4pOworKwkJcHVibGljIHZvaWQgc2V0X25hbWUgKHN0 cmluZyBuYW1lKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lk IHNldF9vZmZzY3JlZW5fcmVkaXJlY3QgKENsdXR0ZXIuT2Zmc2NyZWVuUmVkaXJlY3QgcmVkaXJl Y3QpOworKwkJcHVibGljIHZvaWQgc2V0X29wYWNpdHkgKHVpbnQ4IG9wYWNpdHkpOworKwkJcHVi bGljIHZvaWQgc2V0X29wYWNpdHlfb3ZlcnJpZGUgKGludCBvcGFjaXR5KTsKKysJCVtWZXJzaW9u IChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIildCisrCQlwdWJs aWMgdm9pZCBzZXRfcGFyZW50IChDbHV0dGVyLkFjdG9yIHBhcmVudCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3Bpdm90X3BvaW50IChmbG9hdCBw aXZvdF94LCBmbG9hdCBwaXZvdF95KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisr CQlwdWJsaWMgdm9pZCBzZXRfcGl2b3RfcG9pbnRfeiAoZmxvYXQgcGl2b3Rfeik7CisrCQlwdWJs aWMgdm9pZCBzZXRfcG9zaXRpb24gKGZsb2F0IHgsIGZsb2F0IHkpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3JlYWN0aXZlIChib29sIHJlYWN0aXZl KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9yZXF1 ZXN0X21vZGUgKENsdXR0ZXIuUmVxdWVzdE1vZGUgbW9kZSk7CisrCQlbVmVyc2lvbiAoZGVwcmVj YXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjAuOCIpXQor KwkJcHVibGljIHZvaWQgc2V0X3JvdGF0aW9uIChDbHV0dGVyLlJvdGF0ZUF4aXMgYXhpcywgZG91 YmxlIGFuZ2xlLCBmbG9hdCB4LCBmbG9hdCB5LCBmbG9hdCB6KTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBzZXRfcm90YXRpb25fYW5nbGUgKENsdXR0ZXIu Um90YXRlQXhpcyBheGlzLCBkb3VibGUgYW5nbGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAu MiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3NjYWxlIChkb3VibGUgc2NhbGVfeCwgZG91YmxlIHNj YWxlX3kpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNl ID0gIjEuMTIiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9zY2FsZV9mdWxs IChkb3VibGUgc2NhbGVfeCwgZG91YmxlIHNjYWxlX3ksIGZsb2F0IGNlbnRlcl94LCBmbG9hdCBj ZW50ZXJfeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQg c2V0X3NjYWxlX3ogKGRvdWJsZSBzY2FsZV96KTsKKysJCXB1YmxpYyB2b2lkIHNldF9zaXplIChm bG9hdCB3aWR0aCwgZmxvYXQgaGVpZ2h0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0K KysJCXB1YmxpYyB2b2lkIHNldF90ZXh0X2RpcmVjdGlvbiAoQ2x1dHRlci5UZXh0RGlyZWN0aW9u IHRleHRfZGlyKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9p ZCBzZXRfdHJhbnNmb3JtIChDbHV0dGVyLk1hdHJpeD8gdHJhbnNmb3JtKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBzZXRfdHJhbnNsYXRpb24gKGZsb2F0 IHRyYW5zbGF0ZV94LCBmbG9hdCB0cmFuc2xhdGVfeSwgZmxvYXQgdHJhbnNsYXRlX3opOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3dpZHRoIChmbG9h dCB3aWR0aCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdm9pZCBz ZXRfeCAoZmxvYXQgeCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IHZvaWQgc2V0X3hfYWxpZ24gKENsdXR0ZXIuQWN0b3JBbGlnbiB4X2FsaWduKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBzZXRfeF9leHBhbmQgKGJvb2wg ZXhwYW5kKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2b2lkIHNl dF95IChmbG9hdCB5KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMg dm9pZCBzZXRfeV9hbGlnbiAoQ2x1dHRlci5BY3RvckFsaWduIHlfYWxpZ24pOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF95X2V4cGFuZCAoYm9vbCBl eHBhbmQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIHNl dF96X3Bvc2l0aW9uIChmbG9hdCB6X3Bvc2l0aW9uKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVk ID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4wIildCisrCQlw dWJsaWMgdm9pZCBzZXRfel9yb3RhdGlvbl9mcm9tX2dyYXZpdHkgKGRvdWJsZSBhbmdsZSwgQ2x1 dHRlci5HcmF2aXR5IGdyYXZpdHkpOworKwkJcHVibGljIGJvb2wgc2hvdWxkX3BpY2tfcGFpbnQg KCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAi MS4xMCIsIHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBzaG93X2FsbCAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBib29sIHRyYW5zZm9y bV9zdGFnZV9wb2ludCAoZmxvYXQgeCwgZmxvYXQgeSwgb3V0IGZsb2F0IHhfb3V0LCBvdXQgZmxv YXQgeV9vdXQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZpcnR1 YWwgdm9pZCB1bm1hcCAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVj YXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMC4yIildCisrCQlwdWJsaWMgdm9pZCB1bnBh cmVudCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHVu c2V0X2ZsYWdzIChDbHV0dGVyLkFjdG9yRmxhZ3MgZmxhZ3MpOworKwkJW05vQWNjZXNzb3JNZXRo b2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgQ2x1dHRlci5BY3Rp b24gYWN0aW9ucyB7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvckJveCBhbGxvY2F0aW9uIHsg b3duZWQgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChkZXByZWNh dGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4wIildCisr CQlwdWJsaWMgQ2x1dHRlci5HcmF2aXR5IGFuY2hvcl9ncmF2aXR5IHsgZ2V0OyBzZXQ7IH0KKysJ CVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXBy ZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBmbG9hdCBh bmNob3JfeCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9u IChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAi MC44IildCisrCQlwdWJsaWMgZmxvYXQgYW5jaG9yX3kgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIGJhY2tncm91bmRf Y29sb3IgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGJvb2wgYmFja2dyb3VuZF9jb2xvcl9zZXQgeyBn ZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIi KV0KKysJCXB1YmxpYyBib29sIGNoaWxkX3RyYW5zZm9ybV9zZXQgeyBnZXQ7IH0KKysJCVtOb0Fj Y2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBH cmFwaGVuZS5SZWN0IGNsaXBfcmVjdCB7IG93bmVkIGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgYm9vbCBjbGlwX3RvX2FsbG9jYXRpb24geyBnZXQ7 IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40 IildCisrCQlwdWJsaWMgQ2x1dHRlci5Db25zdHJhaW50IGNvbnN0cmFpbnRzIHsgc2V0OyB9Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENsdXR0ZXIuQ29udGVudCBj b250ZW50IHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlw dWJsaWMgQ2x1dHRlci5BY3RvckJveCBjb250ZW50X2JveCB7IGdldDsgfQorKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbnRlbnRHcmF2aXR5IGNvbnRl bnRfZ3Jhdml0eSB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQor KwkJcHVibGljIENsdXR0ZXIuQ29udGVudFJlcGVhdCBjb250ZW50X3JlcGVhdCB7IGdldDsgc2V0 OyB9CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAi MS4xMiIsIHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIGZsb2F0IGRlcHRoIHsgZ2V0OyBzZXQ7 IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQor KwkJcHVibGljIENsdXR0ZXIuRWZmZWN0IGVmZmVjdCB7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFjdG9yIGZpcnN0X2NoaWxkIHsgZ2V0 OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgYm9vbCBmaXhlZF9w b3NpdGlvbl9zZXQgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgZmxvYXQgZml4ZWRfeCB7IGdldDsgc2V0 OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0K KysJCXB1YmxpYyBmbG9hdCBmaXhlZF95IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0 aG9kXQorKwkJcHVibGljIGJvb2wgaGFzX2NsaXAgeyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0 aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIGJvb2wgaGFzX3Bv aW50ZXIgeyBnZXQ7IH0KKysJCXB1YmxpYyBmbG9hdCBoZWlnaHQgeyBnZXQ7IHNldDsgfQorKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFjdG9yIGxhc3Rf Y2hpbGQgeyBnZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMg Q2x1dHRlci5MYXlvdXRNYW5hZ2VyIGxheW91dF9tYW5hZ2VyIHsgZ2V0OyBzZXQ7IH0KKysJCVtO b0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIENsdXR0ZXIuU2NhbGluZ0ZpbHRlciBtYWduaWZp Y2F0aW9uX2ZpbHRlciB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBib29sIG1hcHBlZCB7IGdldDsgfQor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBmbG9hdCBtYXJnaW5fYm90 dG9tIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJs aWMgZmxvYXQgbWFyZ2luX2xlZnQgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyBmbG9hdCBtYXJnaW5fcmlnaHQgeyBnZXQ7IHNldDsgfQorKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBmbG9hdCBtYXJnaW5fdG9wIHsg Z2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0g IjAuOCIpXQorKwkJcHVibGljIGZsb2F0IG1pbl9oZWlnaHQgeyBnZXQ7IHNldDsgfQorKwkJW05v QWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMg Ym9vbCBtaW5faGVpZ2h0X3NldCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0K KysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBmbG9hdCBtaW5fd2lkdGgg eyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMC44IildCisrCQlwdWJsaWMgYm9vbCBtaW5fd2lkdGhfc2V0IHsgZ2V0OyBzZXQ7IH0KKysJ CVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIENsdXR0ZXIuU2NhbGluZ0ZpbHRlciBtaW5p ZmljYXRpb25fZmlsdGVyIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIi KV0KKysJCXB1YmxpYyBzdHJpbmcgbmFtZSB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1l dGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBmbG9hdCBuYXR1 cmFsX2hlaWdodCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJz aW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBib29sIG5hdHVyYWxfaGVpZ2h0X3NldCB7 IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIwLjgiKV0KKysJCXB1YmxpYyBmbG9hdCBuYXR1cmFsX3dpZHRoIHsgZ2V0OyBzZXQ7IH0KKysJ CVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVi bGljIGJvb2wgbmF0dXJhbF93aWR0aF9zZXQgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuOCIpXQorKwkJcHVibGljIENsdXR0ZXIuT2Zmc2NyZWVuUmVkaXJlY3Qgb2Zmc2Ny ZWVuX3JlZGlyZWN0IHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyB1aW50IG9wYWNpdHkgeyBnZXQ7 IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MiIpXQorKwkJcHVibGljIEdyYXBoZW5lLlBvaW50IHBpdm90X3BvaW50IHsgb3duZWQgZ2V0OyBz ZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgZmxvYXQgcGl2 b3RfcG9pbnRfeiB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQgcG9zaXRpb24g eyBvd25lZCBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVi bGljIGJvb2wgcmVhY3RpdmUgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgYm9vbCByZWFsaXplZCB7IGdl dDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIENsdXR0ZXIuUmVx dWVzdE1vZGUgcmVxdWVzdF9tb2RlIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9k XQorKwkJcHVibGljIGZsb2F0IHJlc291cmNlX3NjYWxlIHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nv ck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBkb3VibGUg cm90YXRpb25fYW5nbGVfeCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBkb3VibGUgcm90YXRpb25fYW5n bGVfeSB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChz aW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBkb3VibGUgcm90YXRpb25fYW5nbGVfeiB7IGdldDsg c2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0g dHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMC42IildCisrCQlwdWJs aWMgR3JhcGhlbmUuUG9pbnQzRCByb3RhdGlvbl9jZW50ZXJfeCB7IG93bmVkIGdldDsgc2V0OyB9 CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwg ZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgR3Jh cGhlbmUuUG9pbnQzRCByb3RhdGlvbl9jZW50ZXJfeSB7IG93bmVkIGdldDsgc2V0OyB9CisrCQlb Tm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVj YXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgR3JhcGhlbmUu UG9pbnQzRCByb3RhdGlvbl9jZW50ZXJfeiB7IG93bmVkIGdldDsgc2V0OyB9CisrCQlbTm9BY2Nl c3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9z aW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgQ2x1dHRlci5HcmF2aXR5 IHJvdGF0aW9uX2NlbnRlcl96X2dyYXZpdHkgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JN ZXRob2RdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2Ug PSAiMS4xMiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IHNjYWxlX2NlbnRlcl94 IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKGRlcHJl Y2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjAiKV0K KysJCXB1YmxpYyBmbG9hdCBzY2FsZV9jZW50ZXJfeSB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nl c3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9z aW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgQ2x1dHRlci5HcmF2aXR5 IHNjYWxlX2dyYXZpdHkgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgZG91YmxlIHNjYWxlX3ggeyBnZXQ7 IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42 IildCisrCQlwdWJsaWMgZG91YmxlIHNjYWxlX3kgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBkb3VibGUgc2NhbGVfeiB7IGdldDsgc2V0OyB9 CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJ CXB1YmxpYyBib29sIHNob3dfb25fc2V0X3BhcmVudCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nl c3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgR3Jh cGhlbmUuU2l6ZSBzaXplIHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLlRleHREaXJlY3Rpb24gdGV4dF9kaXJlY3Rpb24g eyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMiIpXQorKwkJcHVibGljIGJvb2wgdHJhbnNmb3JtX3NldCB7IGdldDsgfQorKwkJW05v QWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGlj IGZsb2F0IHRyYW5zbGF0aW9uX3ggeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2Rd CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGZsb2F0IHRyYW5zbGF0 aW9uX3kgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGZsb2F0IHRyYW5zbGF0aW9uX3ogeyBnZXQ7IHNl dDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9vbCB2aXNpYmxlIHsgZ2V0 OyBzZXQ7IH0KKysJCXB1YmxpYyBmbG9hdCB3aWR0aCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMg ZmxvYXQgeCB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJ cHVibGljIENsdXR0ZXIuQWN0b3JBbGlnbiB4X2FsaWduIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgYm9vbCB4X2V4cGFuZCB7IGdldDsgc2V0 OyB9CisrCQlwdWJsaWMgZmxvYXQgeSB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMCIpXQorKwkJcHVibGljIENsdXR0ZXIuQWN0b3JBbGlnbiB5X2FsaWduIHsgZ2V0OyBz ZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgYm9vbCB5X2V4 cGFuZCB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVi bGljIGZsb2F0IHpfcG9zaXRpb24geyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMCIpXQorKwkJcHVibGljIHNpZ25hbCB2b2lkIGFsbG9jYXRpb25fY2hhbmdlZCAoQ2x1dHRl ci5BY3RvckJveCBib3gsIENsdXR0ZXIuQWxsb2NhdGlvbkZsYWdzIGZsYWdzKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCBib29sIGJ1dHRv bl9wcmVzc19ldmVudCAoQ2x1dHRlci5CdXR0b25FdmVudCBldmVudCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCBidXR0b25fcmVs ZWFzZV9ldmVudCAoQ2x1dHRlci5CdXR0b25FdmVudCBldmVudCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMC42IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCBjYXB0dXJlZF9ldmVu dCAoQ2x1dHRlci5FdmVudCBldmVudCk7CisrCQlbSGFzRW1pdHRlcl0KKysJCVtWZXJzaW9uIChz aW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGRlc3Ryb3kgKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwg Ym9vbCBlbnRlcl9ldmVudCAoQ2x1dHRlci5Dcm9zc2luZ0V2ZW50IGV2ZW50KTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCBib29sIGV2ZW50 IChDbHV0dGVyLkV2ZW50IGV2ZW50KTsKKysJCVtIYXNFbWl0dGVyXQorKwkJW1ZlcnNpb24gKHNp bmNlID0gIjAuMiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgaGlkZSAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lk IGtleV9mb2N1c19pbiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1Ymxp YyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGtleV9mb2N1c19vdXQgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMC42IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCBrZXlfcHJlc3NfZXZl bnQgKENsdXR0ZXIuS2V5RXZlbnQgZXZlbnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIp XQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIGJvb2wga2V5X3JlbGVhc2VfZXZlbnQgKENsdXR0 ZXIuS2V5RXZlbnQgZXZlbnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVi bGljIHZpcnR1YWwgc2lnbmFsIGJvb2wgbGVhdmVfZXZlbnQgKENsdXR0ZXIuQ3Jvc3NpbmdFdmVu dCBldmVudCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdmlydHVh bCBzaWduYWwgYm9vbCBtb3Rpb25fZXZlbnQgKENsdXR0ZXIuTW90aW9uRXZlbnQgZXZlbnQpOwor KwkJW0hhc0VtaXR0ZXJdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0 ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZpcnR1YWwgc2ln bmFsIHZvaWQgcGFpbnQgKENsdXR0ZXIuUGFpbnRDb250ZXh0IHBhaW50X2NvbnRleHQpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQg cGFyZW50X3NldCAoQ2x1dHRlci5BY3Rvcj8gb2xkX3BhcmVudCk7CisrCQlbSGFzRW1pdHRlcl0K KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2 b2lkIHBpY2sgKENsdXR0ZXIuUGlja0NvbnRleHQgcGlja19jb250ZXh0KTsKKysJCVtIYXNFbWl0 dGVyXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2ln bmFsIHZvaWQgcXVldWVfcmVsYXlvdXQgKCk7CisrCQlbSGFzRW1pdHRlcl0KKysJCVtWZXJzaW9u IChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2UgPSAi MC44IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCByZWFsaXplICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIGJvb2wgc2Ny b2xsX2V2ZW50IChDbHV0dGVyLlNjcm9sbEV2ZW50IGV2ZW50KTsKKysJCVtIYXNFbWl0dGVyXQor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZv aWQgc2hvdyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdmly dHVhbCBzaWduYWwgYm9vbCB0b3VjaF9ldmVudCAoQ2x1dHRlci5FdmVudCBldmVudCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHNpZ25hbCB2b2lkIHRyYW5zaXRp b25fc3RvcHBlZCAoc3RyaW5nIG5hbWUsIGJvb2wgaXNfZmluaXNoZWQpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCB0cmFuc2l0aW9uc19jb21w bGV0ZWQgKCk7CisrCQlbSGFzRW1pdHRlcl0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1 ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMg dmlydHVhbCBzaWduYWwgdm9pZCB1bnJlYWxpemUgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2FjdG9y X21ldGFfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJs aWMgYWJzdHJhY3QgY2xhc3MgQWN0b3JNZXRhIDogR0xpYi5Jbml0aWFsbHlVbm93bmVkIHsKKysJ CVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBB Y3Rvck1ldGEgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF9hY3RvciAo KTsKKysJCXB1YmxpYyBib29sIGdldF9lbmFibGVkICgpOworKwkJcHVibGljIHVub3duZWQgc3Ry aW5nIGdldF9uYW1lICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQg c2V0X2FjdG9yIChDbHV0dGVyLkFjdG9yPyBhY3Rvcik7CisrCQlwdWJsaWMgdm9pZCBzZXRfZW5h YmxlZCAoYm9vbCBpc19lbmFibGVkKTsKKysJCXB1YmxpYyB2b2lkIHNldF9uYW1lIChzdHJpbmcg bmFtZSk7CisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvciBhY3RvciB7IGdldDsgfQorKwkJcHVibGlj IGJvb2wgZW5hYmxlZCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgc3RyaW5nIG5hbWUgeyBnZXQ7 IHNldDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9hY3Rvcl9ub2RlX2dldF90eXBlICgpIildCisrCXB1 YmxpYyBjbGFzcyBBY3Rvck5vZGUgOiBDbHV0dGVyLlBhaW50Tm9kZSB7CisrCQlbQ0NvZGUgKGhh c19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyUGFpbnROb2RlKiIp XQorKwkJcHVibGljIEFjdG9yTm9kZSAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJj bHV0dGVyX2FsaWduX2NvbnN0cmFpbnRfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNl ID0gIjEuNCIpXQorKwlwdWJsaWMgY2xhc3MgQWxpZ25Db25zdHJhaW50IDogQ2x1dHRlci5Db25z dHJhaW50IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBl ID0gIkNsdXR0ZXJDb25zdHJhaW50KiIpXQorKwkJcHVibGljIEFsaWduQ29uc3RyYWludCAoQ2x1 dHRlci5BY3Rvcj8gc291cmNlLCBDbHV0dGVyLkFsaWduQXhpcyBheGlzLCBmbG9hdCBmYWN0b3Ip OworKwkJcHVibGljIENsdXR0ZXIuQWxpZ25BeGlzIGdldF9hbGlnbl9heGlzICgpOworKwkJcHVi bGljIGZsb2F0IGdldF9mYWN0b3IgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9y IGdldF9zb3VyY2UgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfYWxpZ25fYXhpcyAoQ2x1dHRlci5B bGlnbkF4aXMgYXhpcyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfZmFjdG9yIChmbG9hdCBmYWN0b3Ip OworKwkJcHVibGljIHZvaWQgc2V0X3NvdXJjZSAoQ2x1dHRlci5BY3Rvcj8gc291cmNlKTsKKysJ CXB1YmxpYyBDbHV0dGVyLkFsaWduQXhpcyBhbGlnbl9heGlzIHsgZ2V0OyBzZXQgY29uc3RydWN0 OyB9CisrCQlwdWJsaWMgZmxvYXQgZmFjdG9yIHsgZ2V0OyBzZXQgY29uc3RydWN0OyB9CisrCQlw dWJsaWMgQ2x1dHRlci5BY3RvciBzb3VyY2UgeyBnZXQ7IHNldCBjb25zdHJ1Y3Q7IH0KKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lk ID0gImNsdXR0ZXJfYWxwaGFfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQg PSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIwLjIiKV0KKysJcHVi bGljIGNsYXNzIEFscGhhIDogR0xpYi5Jbml0aWFsbHlVbm93bmVkLCBDbHV0dGVyLlNjcmlwdGFi bGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHVi bGljIEFscGhhICgpOworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2Up XQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEFscGhhLmZ1bGwgKENs dXR0ZXIuVGltZWxpbmUgdGltZWxpbmUsIHVsb25nIG1vZGUpOworKwkJcHVibGljIGRvdWJsZSBn ZXRfYWxwaGEgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdWxv bmcgZ2V0X21vZGUgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLlRpbWVsaW5lIGdldF90 aW1lbGluZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2b2lk IHNldF9jbG9zdXJlIChHTGliLkNsb3N1cmUgY2xvc3VyZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRf ZnVuYyAob3duZWQgQ2x1dHRlci5BbHBoYUZ1bmMgZnVuYyk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbW9kZSAodWxvbmcgbW9kZSk7CisrCQlwdWJs aWMgdm9pZCBzZXRfdGltZWxpbmUgKENsdXR0ZXIuVGltZWxpbmUgdGltZWxpbmUpOworKwkJcHVi bGljIGRvdWJsZSBhbHBoYSB7IGdldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwkJcHVibGljIHVsb25nIG1vZGUgeyBnZXQ7IHNldCBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBD bHV0dGVyLlRpbWVsaW5lIHRpbWVsaW5lIHsgZ2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJf YW5pbWF0aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwg ZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBjbGFz cyBBbmltYXRpb24gOiBHTGliLk9iamVjdCwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29k ZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1YmxpYyBBbmltYXRpb24g KCk7CisrCQlwdWJsaWMgdWludCBnZXRfZHVyYXRpb24gKCk7CisrCQlwdWJsaWMgdW5vd25lZCBD bHV0dGVyLkludGVydmFsIGdldF9pbnRlcnZhbCAoc3RyaW5nIHByb3BlcnR5X25hbWUpOworKwkJ cHVibGljIGJvb2wgZ2V0X2xvb3AgKCk7CisrCQlwdWJsaWMgdWxvbmcgZ2V0X21vZGUgKCk7Cisr CQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLlRpbWVsaW5lIGdldF90aW1lbGluZSAoKTsKKysJCXB1 YmxpYyBib29sIGhhc19wcm9wZXJ0eSAoc3RyaW5nIHByb3BlcnR5X25hbWUpOworKwkJcHVibGlj IHZvaWQgc2V0X2R1cmF0aW9uICh1aW50IG1zZWNzKTsKKysJCXB1YmxpYyB2b2lkIHNldF9sb29w IChib29sIGxvb3ApOworKwkJcHVibGljIHZvaWQgc2V0X21vZGUgKHVsb25nIG1vZGUpOworKwkJ cHVibGljIHZvaWQgc2V0X29iamVjdCAoR0xpYi5PYmplY3Qgb2JqZWN0KTsKKysJCXB1YmxpYyB2 b2lkIHNldF90aW1lbGluZSAoQ2x1dHRlci5UaW1lbGluZT8gdGltZWxpbmUpOworKwkJW05vQWNj ZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRf c2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIENsdXR0ZXIuQWxwaGEg YWxwaGEgeyBvd25lZCBnZXQ7IHNldDsgfQorKwkJcHVibGljIHVpbnQgZHVyYXRpb24geyBnZXQ7 IHNldDsgfQorKwkJcHVibGljIGJvb2wgbG9vcCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgdWxv bmcgbW9kZSB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBH TGliLk9iamVjdCBvYmplY3QgeyBvd25lZCBnZXQ7IHNldDsgfQorKwkJcHVibGljIENsdXR0ZXIu VGltZWxpbmUgdGltZWxpbmUgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFs IHZvaWQgY29tcGxldGVkICgpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgc3RhcnRl ZCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0NvbXBhY3RdCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIwLjIiKV0KKysJcHVibGljIGNsYXNzIEFueUV2ZW50IDogQ2x1dHRlci5FdmVudCB7Cisr CQlwdWJsaWMgQ2x1dHRlci5FdmVudEZsYWdzIGZsYWdzOworKwkJcHVibGljIHdlYWsgQ2x1dHRl ci5BY3RvciBzb3VyY2U7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLlN0YWdlIHN0YWdlOworKwkJ cHVibGljIHVpbnQzMiB0aW1lOworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRUeXBlIHR5cGU7Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlw ZV9pZCA9ICJjbHV0dGVyX2JhY2tlbmRfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNl ID0gIjAuNCIpXQorKwlwdWJsaWMgY2xhc3MgQmFja2VuZCA6IEdMaWIuT2JqZWN0IHsKKysJCVtD Q29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBCYWNr ZW5kICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgYWRkX29wdGlv bnMgKEdMaWIuT3B0aW9uR3JvdXAgZ3JvdXApOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2 aXJ0dWFsIGJvb2wgY3JlYXRlX2NvbnRleHQgKCkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlbTm9X cmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdW5vd25lZCBDbHV0dGVyLlN0YWdlV2luZG93IGNy ZWF0ZV9zdGFnZSAoQ2x1dHRlci5TdGFnZSB3cmFwcGVyKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJ CVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGVuc3VyZV9jb250ZXh0IChDbHV0 dGVyLlN0YWdlIHN0YWdlKTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuU2VhdCBnZXRfZGVm YXVsdF9zZWF0ICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIENsdXR0ZXIu RmVhdHVyZUZsYWdzIGdldF9mZWF0dXJlcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgi KV0KKysJCXB1YmxpYyB1bm93bmVkIENhaXJvLkZvbnRPcHRpb25zIGdldF9mb250X29wdGlvbnMg KCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLklucHV0TWV0aG9kIGdldF9pbnB1dF9tZXRo b2QgKCk7CisrCQlwdWJsaWMgZG91YmxlIGdldF9yZXNvbHV0aW9uICgpOworKwkJW05vV3JhcHBl cl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgaW5pdF9ldmVudHMgKCk7CisrCQlbTm9XcmFwcGVy XQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBpbml0X2ZlYXR1cmVzICgpOworKwkJW05vV3JhcHBl cl0KKysJCXB1YmxpYyB2aXJ0dWFsIGJvb2wgcG9zdF9wYXJzZSAoKSB0aHJvd3MgR0xpYi5FcnJv cjsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCBib29sIHByZV9wYXJzZSAoKSB0 aHJvd3MgR0xpYi5FcnJvcjsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lk IHJlZHJhdyAoQ2x1dHRlci5TdGFnZSBzdGFnZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44 IildCisrCQlwdWJsaWMgdm9pZCBzZXRfZm9udF9vcHRpb25zIChDYWlyby5Gb250T3B0aW9ucyBv cHRpb25zKTsKKysJCXB1YmxpYyB2b2lkIHNldF9pbnB1dF9tZXRob2QgKENsdXR0ZXIuSW5wdXRN ZXRob2QgbWV0aG9kKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBz aWduYWwgdm9pZCBmb250X2NoYW5nZWQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIild CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgcmVzb2x1dGlvbl9jaGFuZ2VkICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHNpZ25hbCB2b2lkIHNldHRpbmdzX2NoYW5n ZWQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2Jpbl9sYXlvdXRfZ2V0X3R5cGUgKCkiKV0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwlwdWJsaWMgY2xhc3MgQmluTGF5b3V0IDogQ2x1dHRl ci5MYXlvdXRNYW5hZ2VyIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZh bHNlLCB0eXBlID0gIkNsdXR0ZXJMYXlvdXRNYW5hZ2VyKiIpXQorKwkJcHVibGljIEJpbkxheW91 dCAoQ2x1dHRlci5CaW5BbGlnbm1lbnQgeF9hbGlnbiA9IENsdXR0ZXIuQmluQWxpZ25tZW50LlNU QVJULCBDbHV0dGVyLkJpbkFsaWdubWVudCB5X2FsaWduID0gQ2x1dHRlci5CaW5BbGlnbm1lbnQu U1RBUlQpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9 IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVi bGljIENsdXR0ZXIuQmluQWxpZ25tZW50IHhfYWxpZ24geyBnZXQ7IHNldDsgfQorKwkJW05vQWNj ZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRf c2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIENsdXR0ZXIuQmluQWxp Z25tZW50IHlfYWxpZ24geyBnZXQ7IHNldDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9iaW5kX2NvbnN0 cmFpbnRfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJs aWMgY2xhc3MgQmluZENvbnN0cmFpbnQgOiBDbHV0dGVyLkNvbnN0cmFpbnQgeworKwkJW0NDb2Rl IChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckNvbnN0cmFp bnQqIildCisrCQlwdWJsaWMgQmluZENvbnN0cmFpbnQgKENsdXR0ZXIuQWN0b3I/IHNvdXJjZSwg Q2x1dHRlci5CaW5kQ29vcmRpbmF0ZSBjb29yZGluYXRlLCBmbG9hdCBvZmZzZXQpOworKwkJcHVi bGljIENsdXR0ZXIuQmluZENvb3JkaW5hdGUgZ2V0X2Nvb3JkaW5hdGUgKCk7CisrCQlwdWJsaWMg ZmxvYXQgZ2V0X29mZnNldCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0 X3NvdXJjZSAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9jb29yZGluYXRlIChDbHV0dGVyLkJpbmRD b29yZGluYXRlIGNvb3JkaW5hdGUpOworKwkJcHVibGljIHZvaWQgc2V0X29mZnNldCAoZmxvYXQg b2Zmc2V0KTsKKysJCXB1YmxpYyB2b2lkIHNldF9zb3VyY2UgKENsdXR0ZXIuQWN0b3I/IHNvdXJj ZSk7CisrCQlwdWJsaWMgQ2x1dHRlci5CaW5kQ29vcmRpbmF0ZSBjb29yZGluYXRlIHsgZ2V0OyBz ZXQgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgZmxvYXQgb2Zmc2V0IHsgZ2V0OyBzZXQgY29uc3Ry dWN0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvciBzb3VyY2UgeyBnZXQ7IHNldCBjb25zdHJ1 Y3Q7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfYmluZGluZ19wb29sX2dldF90eXBlICgpIildCisrCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGNsYXNzIEJpbmRpbmdQb29sIDogR0xp Yi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQor KwkJcHVibGljIEJpbmRpbmdQb29sIChzdHJpbmcgbmFtZSk7CisrCQlwdWJsaWMgYm9vbCBhY3Rp dmF0ZSAodWludCBrZXlfdmFsLCBDbHV0dGVyLk1vZGlmaWVyVHlwZSBtb2RpZmllcnMsIEdMaWIu T2JqZWN0IGdvYmplY3QpOworKwkJcHVibGljIHZvaWQgYmxvY2tfYWN0aW9uIChzdHJpbmcgYWN0 aW9uX25hbWUpOworKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIENsdXR0ZXIuQmluZGluZ1Bvb2wg ZmluZCAoc3RyaW5nIG5hbWUpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGZpbmRfYWN0aW9u ICh1aW50IGtleV92YWwsIENsdXR0ZXIuTW9kaWZpZXJUeXBlIG1vZGlmaWVycyk7CisrCQlwdWJs aWMgc3RhdGljIHVub3duZWQgQ2x1dHRlci5CaW5kaW5nUG9vbCBnZXRfZm9yX2NsYXNzICh2b2lk KiBrbGFzcyk7CisrCQlwdWJsaWMgdm9pZCBpbnN0YWxsX2FjdGlvbiAoc3RyaW5nIGFjdGlvbl9u YW1lLCB1aW50IGtleV92YWwsIENsdXR0ZXIuTW9kaWZpZXJUeXBlIG1vZGlmaWVycywgb3duZWQg Q2x1dHRlci5CaW5kaW5nQWN0aW9uRnVuYyBjYWxsYmFjayk7CisrCQlwdWJsaWMgdm9pZCBpbnN0 YWxsX2Nsb3N1cmUgKHN0cmluZyBhY3Rpb25fbmFtZSwgdWludCBrZXlfdmFsLCBDbHV0dGVyLk1v ZGlmaWVyVHlwZSBtb2RpZmllcnMsIEdMaWIuQ2xvc3VyZSBjbG9zdXJlKTsKKysJCXB1YmxpYyB2 b2lkIG92ZXJyaWRlX2FjdGlvbiAodWludCBrZXlfdmFsLCBDbHV0dGVyLk1vZGlmaWVyVHlwZSBt b2RpZmllcnMsIG93bmVkIEdMaWIuQ2FsbGJhY2sgY2FsbGJhY2spOworKwkJcHVibGljIHZvaWQg b3ZlcnJpZGVfY2xvc3VyZSAodWludCBrZXlfdmFsLCBDbHV0dGVyLk1vZGlmaWVyVHlwZSBtb2Rp ZmllcnMsIEdMaWIuQ2xvc3VyZSBjbG9zdXJlKTsKKysJCXB1YmxpYyB2b2lkIHJlbW92ZV9hY3Rp b24gKHVpbnQga2V5X3ZhbCwgQ2x1dHRlci5Nb2RpZmllclR5cGUgbW9kaWZpZXJzKTsKKysJCXB1 YmxpYyB2b2lkIHVuYmxvY2tfYWN0aW9uIChzdHJpbmcgYWN0aW9uX25hbWUpOworKwkJW05vQWNj ZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgc3RyaW5nIG5hbWUgeyBvd25lZCBnZXQ7IGNvbnN0cnVj dDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9ibHVyX2VmZmVjdF9nZXRfdHlwZSAoKSIpXQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBjbGFzcyBCbHVyRWZmZWN0IDogQ2x1dHRl ci5PZmZzY3JlZW5FZmZlY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0g ZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckVmZmVjdCoiKV0KKysJCXB1YmxpYyBCbHVyRWZmZWN0ICgp OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IHR5cGVfaWQgPSAiY2x1dHRlcl9ib3hfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMiIpXQorKwlwdWJsaWMgY2xhc3MgQm94IDogQ2x1dHRlci5BY3RvciwgQXRrLkltcGxl bWVudG9yLCBDbHV0dGVyLkFuaW1hdGFibGUsIENsdXR0ZXIuQ29udGFpbmVyLCBDbHV0dGVyLlNj cmlwdGFibGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5 cGUgPSAiQ2x1dHRlckFjdG9yKiIpXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBk ZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBCb3gg KENsdXR0ZXIuTGF5b3V0TWFuYWdlciBtYW5hZ2VyKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVk ID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMS4yIildCisrCQlw dWJsaWMgQ2x1dHRlci5Db2xvciBnZXRfY29sb3IgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRl ZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjEuMiIpXQorKwkJ cHVibGljIHVub3duZWQgQ2x1dHRlci5MYXlvdXRNYW5hZ2VyIGdldF9sYXlvdXRfbWFuYWdlciAo KTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIx LjEwIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBwYWNrIChDbHV0dGVyLkFjdG9y IGFjdG9yLCAuLi4pOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVk X3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHBhY2tfYWZ0 ZXIgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIENsdXR0ZXIuQWN0b3I/IHNpYmxpbmcsIC4uLik7Cisr CQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIs IHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgcGFja19hdCAoQ2x1dHRlci5BY3RvciBh Y3RvciwgaW50IHBvc2l0aW9uLCAuLi4pOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVl LCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2 b2lkIHBhY2tfYmVmb3JlIChDbHV0dGVyLkFjdG9yIGFjdG9yLCBDbHV0dGVyLkFjdG9yPyBzaWJs aW5nLCAuLi4pOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3Np bmNlID0gIjEuMTAiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHBhY2t2IChDbHV0 dGVyLkFjdG9yIGFjdG9yLCBbQ0NvZGUgKGFycmF5X2xlbmd0aF9jbmFtZSA9ICJuX3Byb3BlcnRp ZXMiLCBhcnJheV9sZW5ndGhfcG9zID0gMS41LCBhcnJheV9sZW5ndGhfdHlwZSA9ICJndWludCIp XSBzdHJpbmdbXSBwcm9wZXJ0aWVzLCBbQ0NvZGUgKGFycmF5X2xlbmd0aF9jbmFtZSA9ICJuX3By b3BlcnRpZXMiLCBhcnJheV9sZW5ndGhfcG9zID0gMS41LCBhcnJheV9sZW5ndGhfdHlwZSA9ICJn dWludCIpXSBHTGliLlZhbHVlW10gdmFsdWVzKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0g dHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJs aWMgdm9pZCBzZXRfY29sb3IgKENsdXR0ZXIuQ29sb3I/IGNvbG9yKTsKKysJCVtWZXJzaW9uIChk ZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMS4y IildCisrCQlwdWJsaWMgdm9pZCBzZXRfbGF5b3V0X21hbmFnZXIgKENsdXR0ZXIuTGF5b3V0TWFu YWdlciBtYW5hZ2VyKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRl ZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgQ2x1dHRlci5Db2xv ciBjb2xvciB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9u IChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAi MS4yIildCisrCQlwdWJsaWMgYm9vbCBjb2xvcl9zZXQgeyBnZXQ7IHNldDsgfQorKwkJcHVibGlj IENsdXR0ZXIuTGF5b3V0TWFuYWdlciBsYXlvdXRfbWFuYWdlciB7IGdldDsgc2V0OyB9CisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9p ZCA9ICJjbHV0dGVyX2JveF9sYXlvdXRfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMiIpXQorKwlwdWJsaWMgY2xhc3MgQm94TGF5b3V0IDogQ2x1dHRlci5MYXlvdXRNYW5h Z2VyIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0g IkNsdXR0ZXJMYXlvdXRNYW5hZ2VyKiIpXQorKwkJcHVibGljIEJveExheW91dCAoKTsKKysJCVtW ZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2lu Y2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBnZXRfYWxpZ25tZW50IChDbHV0dGVyLkFjdG9y IGFjdG9yLCBvdXQgQ2x1dHRlci5Cb3hBbGlnbm1lbnQgeF9hbGlnbiwgb3V0IENsdXR0ZXIuQm94 QWxpZ25tZW50IHlfYWxpZ24pOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXBy ZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB1aW50IGdl dF9lYXNpbmdfZHVyYXRpb24gKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRl cHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHVsb25n IGdldF9lYXNpbmdfbW9kZSAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVw cmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgYm9vbCBn ZXRfZXhwYW5kIChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVk ID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4yIildCisrCQlw dWJsaWMgdm9pZCBnZXRfZmlsbCAoQ2x1dHRlci5BY3RvciBhY3Rvciwgb3V0IGJvb2wgeF9maWxs LCBvdXQgYm9vbCB5X2ZpbGwpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVi bGljIGJvb2wgZ2V0X2hvbW9nZW5lb3VzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIi KV0KKysJCXB1YmxpYyBDbHV0dGVyLk9yaWVudGF0aW9uIGdldF9vcmllbnRhdGlvbiAoKTsKKysJ CXB1YmxpYyBib29sIGdldF9wYWNrX3N0YXJ0ICgpOworKwkJcHVibGljIHVpbnQgZ2V0X3NwYWNp bmcgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2Ug PSAiMS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIGJvb2wgZ2V0X3VzZV9hbmltYXRp b25zICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNl ID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBib29sIGdldF92ZXJ0aWNhbCAo KTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIx LjEyIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBwYWNrIChDbHV0dGVyLkFjdG9y IGFjdG9yLCBib29sIGV4cGFuZCwgYm9vbCB4X2ZpbGwsIGJvb2wgeV9maWxsLCBDbHV0dGVyLkJv eEFsaWdubWVudCB4X2FsaWduLCBDbHV0dGVyLkJveEFsaWdubWVudCB5X2FsaWduKTsKKysJCVtW ZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2lu Y2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBzZXRfYWxpZ25tZW50IChDbHV0dGVyLkFjdG9y IGFjdG9yLCBDbHV0dGVyLkJveEFsaWdubWVudCB4X2FsaWduLCBDbHV0dGVyLkJveEFsaWdubWVu dCB5X2FsaWduKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9z aW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBzZXRfZWFzaW5n X2R1cmF0aW9uICh1aW50IG1zZWNzKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwg ZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9p ZCBzZXRfZWFzaW5nX21vZGUgKHVsb25nIG1vZGUpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQg PSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1 YmxpYyB2b2lkIHNldF9leHBhbmQgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIGJvb2wgZXhwYW5kKTsK KysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEy Iiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBzZXRfZmlsbCAoQ2x1dHRlci5BY3Rv ciBhY3RvciwgYm9vbCB4X2ZpbGwsIGJvb2wgeV9maWxsKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9ob21vZ2VuZW91cyAoYm9vbCBob21vZ2VuZW91 cyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X29y aWVudGF0aW9uIChDbHV0dGVyLk9yaWVudGF0aW9uIG9yaWVudGF0aW9uKTsKKysJCXB1YmxpYyB2 b2lkIHNldF9wYWNrX3N0YXJ0IChib29sIHBhY2tfc3RhcnQpOworKwkJcHVibGljIHZvaWQgc2V0 X3NwYWNpbmcgKHVpbnQgc3BhY2luZyk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUs IGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZv aWQgc2V0X3VzZV9hbmltYXRpb25zIChib29sIGFuaW1hdGUpOworKwkJW1ZlcnNpb24gKGRlcHJl Y2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0K KysJCXB1YmxpYyB2b2lkIHNldF92ZXJ0aWNhbCAoYm9vbCB2ZXJ0aWNhbCk7CisrCQlbVmVyc2lv biAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0g IjEuMiIpXQorKwkJcHVibGljIHVpbnQgZWFzaW5nX2R1cmF0aW9uIHsgZ2V0OyBzZXQ7IH0KKysJ CVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwg c2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdWxvbmcgZWFzaW5nX21vZGUgeyBnZXQ7IHNldDsg fQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIGJvb2wgaG9tb2dlbmVv dXMgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1Ymxp YyBDbHV0dGVyLk9yaWVudGF0aW9uIG9yaWVudGF0aW9uIHsgZ2V0OyBzZXQ7IH0KKysJCXB1Ymxp YyBib29sIHBhY2tfc3RhcnQgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIHVpbnQgc3BhY2luZyB7 IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRf c2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIGJvb2wgdXNlX2FuaW1h dGlvbnMgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXBy ZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBib29sIHZl cnRpY2FsIHsgZ2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfYnJpZ2h0bmVzc19jb250cmFz dF9lZmZlY3RfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJ cHVibGljIGNsYXNzIEJyaWdodG5lc3NDb250cmFzdEVmZmVjdCA6IENsdXR0ZXIuT2Zmc2NyZWVu RWZmZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBl ID0gIkNsdXR0ZXJFZmZlY3QqIildCisrCQlwdWJsaWMgQnJpZ2h0bmVzc0NvbnRyYXN0RWZmZWN0 ICgpOworKwkJcHVibGljIHZvaWQgZ2V0X2JyaWdodG5lc3MgKG91dCBmbG9hdCByZWQsIG91dCBm bG9hdCBncmVlbiwgb3V0IGZsb2F0IGJsdWUpOworKwkJcHVibGljIHZvaWQgZ2V0X2NvbnRyYXN0 IChvdXQgZmxvYXQgcmVkLCBvdXQgZmxvYXQgZ3JlZW4sIG91dCBmbG9hdCBibHVlKTsKKysJCXB1 YmxpYyB2b2lkIHNldF9icmlnaHRuZXNzIChmbG9hdCBicmlnaHRuZXNzKTsKKysJCXB1YmxpYyB2 b2lkIHNldF9icmlnaHRuZXNzX2Z1bGwgKGZsb2F0IHJlZCwgZmxvYXQgZ3JlZW4sIGZsb2F0IGJs dWUpOworKwkJcHVibGljIHZvaWQgc2V0X2NvbnRyYXN0IChmbG9hdCBjb250cmFzdCk7CisrCQlw dWJsaWMgdm9pZCBzZXRfY29udHJhc3RfZnVsbCAoZmxvYXQgcmVkLCBmbG9hdCBncmVlbiwgZmxv YXQgYmx1ZSk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9y IGJyaWdodG5lc3MgeyBvd25lZCBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisr CQlwdWJsaWMgQ2x1dHRlci5Db2xvciBjb250cmFzdCB7IG93bmVkIGdldDsgc2V0OyB9CisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5 cGVfaWQgPSBmYWxzZSldCisrCVtDb21wYWN0XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIild CisrCXB1YmxpYyBjbGFzcyBCdXR0b25FdmVudCA6IENsdXR0ZXIuRXZlbnQgeworKwkJcHVibGlj IGRvdWJsZSBheGVzOworKwkJcHVibGljIHVpbnQzMiBidXR0b247CisrCQlwdWJsaWMgdWludCBj bGlja19jb3VudDsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuSW5wdXREZXZpY2UgZGV2aWNlOwor KwkJcHVibGljIENsdXR0ZXIuRXZlbnRGbGFncyBmbGFnczsKKysJCXB1YmxpYyBDbHV0dGVyLk1v ZGlmaWVyVHlwZSBtb2RpZmllcl9zdGF0ZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuQWN0b3Ig c291cmNlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5TdGFnZSBzdGFnZTsKKysJCXB1YmxpYyB1 aW50MzIgdGltZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50VHlwZSB0eXBlOworKwkJcHVibGlj IGZsb2F0IHg7CisrCQlwdWJsaWMgZmxvYXQgeTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfY2FudmFzX2dl dF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBjbGFz cyBDYW52YXMgOiBHTGliLk9iamVjdCwgQ2x1dHRlci5Db250ZW50IHsKKysJCVtDQ29kZSAoaGFz X2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJDb250ZW50KiIpXQor KwkJcHVibGljIENhbnZhcyAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfc2NhbGVfZmFjdG9yICgp OworKwkJcHVibGljIHZvaWQgc2V0X3NjYWxlX2ZhY3RvciAoZmxvYXQgc2NhbGUpOworKwkJcHVi bGljIGJvb2wgc2V0X3NpemUgKGludCB3aWR0aCwgaW50IGhlaWdodCk7CisrCQlbTm9BY2Nlc3Nv ck1ldGhvZF0KKysJCXB1YmxpYyBpbnQgaGVpZ2h0IHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBm bG9hdCBzY2FsZV9mYWN0b3IgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisr CQlwdWJsaWMgaW50IHdpZHRoIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25h bCBib29sIGRyYXcgKENhaXJvLkNvbnRleHQgY3IsIGludCB3aWR0aCwgaW50IGhlaWdodCk7Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlw ZV9pZCA9ICJjbHV0dGVyX2NoaWxkX21ldGFfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNp bmNlID0gIjAuOCIpXQorKwlwdWJsaWMgYWJzdHJhY3QgY2xhc3MgQ2hpbGRNZXRhIDogR0xpYi5P YmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJ cHJvdGVjdGVkIENoaWxkTWV0YSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3Ig Z2V0X2FjdG9yICgpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5Db250YWluZXIgZ2V0X2Nv bnRhaW5lciAoKTsKKysJCXB1YmxpYyBDbHV0dGVyLkFjdG9yIGFjdG9yIHsgZ2V0OyBjb25zdHJ1 Y3Q7IH0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbnRhaW5lciBjb250YWluZXIgeyBnZXQ7IGNvbnN0 cnVjdDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9jbGlja19hY3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgY2xhc3MgQ2xpY2tBY3Rpb24gOiBD bHV0dGVyLkFjdGlvbiB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxz ZSwgdHlwZSA9ICJDbHV0dGVyQWN0aW9uKiIpXQorKwkJcHVibGljIENsaWNrQWN0aW9uICgpOwor KwkJcHVibGljIHVpbnQgZ2V0X2J1dHRvbiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgi KV0KKysJCXB1YmxpYyB2b2lkIGdldF9jb29yZHMgKG91dCBmbG9hdCBwcmVzc194LCBvdXQgZmxv YXQgcHJlc3NfeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgQ2x1 dHRlci5Nb2RpZmllclR5cGUgZ2V0X3N0YXRlICgpOworKwkJcHVibGljIHZvaWQgcmVsZWFzZSAo KTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wgaGVsZCB7IGdldDsgfQor KwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlw dWJsaWMgaW50IGxvbmdfcHJlc3NfZHVyYXRpb24geyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNz b3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgaW50IGxv bmdfcHJlc3NfdGhyZXNob2xkIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQor KwkJcHVibGljIGJvb2wgcHJlc3NlZCB7IGdldDsgfQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFs IHZvaWQgY2xpY2tlZCAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS44IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCBsb25nX3ByZXNzIChDbHV0 dGVyLkFjdG9yIGFjdG9yLCBDbHV0dGVyLkxvbmdQcmVzc1N0YXRlIHN0YXRlKTsKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0g ImNsdXR0ZXJfY2xpcF9ub2RlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEwIildCisrCXB1YmxpYyBjbGFzcyBDbGlwTm9kZSA6IENsdXR0ZXIuUGFpbnROb2RlIHsKKysJ CVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJQ YWludE5vZGUqIildCisrCQlwdWJsaWMgQ2xpcE5vZGUgKCk7CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2Ns b25lX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGlj IGNsYXNzIENsb25lIDogQ2x1dHRlci5BY3RvciwgQXRrLkltcGxlbWVudG9yLCBDbHV0dGVyLkFu aW1hdGFibGUsIENsdXR0ZXIuQ29udGFpbmVyLCBDbHV0dGVyLlNjcmlwdGFibGUgeworKwkJW0ND b2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFjdG9y KiIpXQorKwkJcHVibGljIENsb25lIChDbHV0dGVyLkFjdG9yIHNvdXJjZSk7CisrCQlwdWJsaWMg dW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF9zb3VyY2UgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRf c291cmNlIChDbHV0dGVyLkFjdG9yPyBzb3VyY2UpOworKwkJcHVibGljIENsdXR0ZXIuQWN0b3Ig c291cmNlIHsgZ2V0OyBzZXQgY29uc3RydWN0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2NvbG9yX25v ZGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGlj IGNsYXNzIENvbG9yTm9kZSA6IENsdXR0ZXIuUGlwZWxpbmVOb2RlIHsKKysJCVtDQ29kZSAoaGFz X2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJQYWludE5vZGUqIild CisrCQlwdWJsaWMgQ29sb3JOb2RlIChDbHV0dGVyLkNvbG9yPyBjb2xvcik7CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJj bHV0dGVyX2NvbG9yaXplX2VmZmVjdF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2Ug PSAiMS40IildCisrCXB1YmxpYyBjbGFzcyBDb2xvcml6ZUVmZmVjdCA6IENsdXR0ZXIuT2Zmc2Ny ZWVuRWZmZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0 eXBlID0gIkNsdXR0ZXJFZmZlY3QqIildCisrCQlwdWJsaWMgQ29sb3JpemVFZmZlY3QgKENsdXR0 ZXIuQ29sb3IgdGludCk7CisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBnZXRfdGludCAoKTsKKysJ CXB1YmxpYyB2b2lkIHNldF90aW50IChDbHV0dGVyLkNvbG9yIHRpbnQpOworKwkJcHVibGljIENs dXR0ZXIuQ29sb3IgdGludCB7IGdldDsgc2V0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2NvbnN0cmFp bnRfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMg YWJzdHJhY3QgY2xhc3MgQ29uc3RyYWludCA6IENsdXR0ZXIuQWN0b3JNZXRhIHsKKysJCVtDQ29k ZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBDb25zdHJh aW50ICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgdXBkYXRlX2Fs bG9jYXRpb24gKENsdXR0ZXIuQWN0b3IgYWN0b3IsIENsdXR0ZXIuQWN0b3JCb3ggYWxsb2NhdGlv bik7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCB1cGRhdGVfcHJlZmVy cmVkX3NpemUgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIENsdXR0ZXIuT3JpZW50YXRpb24gZGlyZWN0 aW9uLCBmbG9hdCBmb3Jfc2l6ZSwgZmxvYXQgbWluaW11bV9zaXplLCBmbG9hdCBuYXR1cmFsX3Np emUpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNpbmNl ID0gIjAuMiIpXQorKwlwdWJsaWMgY2xhc3MgQ3Jvc3NpbmdFdmVudCA6IENsdXR0ZXIuRXZlbnQg eworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5JbnB1dERldmljZSBkZXZpY2U7CisrCQlwdWJsaWMg Q2x1dHRlci5FdmVudEZsYWdzIGZsYWdzOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5BY3RvciBy ZWxhdGVkOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5FdmVudFNlcXVlbmNlIHNlcXVlbmNlOwor KwkJcHVibGljIHdlYWsgQ2x1dHRlci5BY3RvciBzb3VyY2U7CisrCQlwdWJsaWMgd2VhayBDbHV0 dGVyLlN0YWdlIHN0YWdlOworKwkJcHVibGljIHVpbnQzMiB0aW1lOworKwkJcHVibGljIENsdXR0 ZXIuRXZlbnRUeXBlIHR5cGU7CisrCQlwdWJsaWMgZmxvYXQgeDsKKysJCXB1YmxpYyBmbG9hdCB5 OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IHR5cGVfaWQgPSAiY2x1dHRlcl9kZWZvcm1fZWZmZWN0X2dldF90eXBlICgpIildCisrCVtWZXJz aW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGFic3RyYWN0IGNsYXNzIERlZm9ybUVmZmVj dCA6IENsdXR0ZXIuT2Zmc2NyZWVuRWZmZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9m dW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBEZWZvcm1FZmZlY3QgKCk7CisrCQlbTm9X cmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBkZWZvcm1fdmVydGV4IChmbG9hdCB3aWR0 aCwgZmxvYXQgaGVpZ2h0LCBDb2dsLlRleHR1cmVWZXJ0ZXggdmVydGV4KTsKKysJCXB1YmxpYyB1 bm93bmVkIENvZ2wuSGFuZGxlIGdldF9iYWNrX21hdGVyaWFsICgpOworKwkJcHVibGljIHZvaWQg Z2V0X25fdGlsZXMgKG91dCB1aW50IHhfdGlsZXMsIG91dCB1aW50IHlfdGlsZXMpOworKwkJcHVi bGljIHZvaWQgaW52YWxpZGF0ZSAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9iYWNrX21hdGVyaWFs IChDb2dsLkhhbmRsZT8gbWF0ZXJpYWwpOworKwkJcHVibGljIHZvaWQgc2V0X25fdGlsZXMgKHVp bnQgeF90aWxlcywgdWludCB5X3RpbGVzKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVi bGljIHVpbnQgeF90aWxlcyB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJ CXB1YmxpYyB1aW50IHlfdGlsZXMgeyBnZXQ7IHNldDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9kZXNh dHVyYXRlX2VmZmVjdF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40Iild CisrCXB1YmxpYyBjbGFzcyBEZXNhdHVyYXRlRWZmZWN0IDogQ2x1dHRlci5PZmZzY3JlZW5FZmZl Y3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAi Q2x1dHRlckVmZmVjdCoiKV0KKysJCXB1YmxpYyBEZXNhdHVyYXRlRWZmZWN0IChkb3VibGUgZmFj dG9yKTsKKysJCXB1YmxpYyBkb3VibGUgZ2V0X2ZhY3RvciAoKTsKKysJCXB1YmxpYyB2b2lkIHNl dF9mYWN0b3IgKGRvdWJsZSBmYWN0b3IpOworKwkJcHVibGljIGRvdWJsZSBmYWN0b3IgeyBnZXQ7 IHNldDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9kcmFnX2FjdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlb VmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBjbGFzcyBEcmFnQWN0aW9uIDogQ2x1 dHRlci5BY3Rpb24geworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2Us IHR5cGUgPSAiQ2x1dHRlckFjdGlvbioiKV0KKysJCXB1YmxpYyBEcmFnQWN0aW9uICgpOworKwkJ cHVibGljIGJvb2wgZ2V0X2RyYWdfYXJlYSAoR3JhcGhlbmUuUmVjdCBkcmFnX2FyZWEpOworKwkJ cHVibGljIENsdXR0ZXIuRHJhZ0F4aXMgZ2V0X2RyYWdfYXhpcyAoKTsKKysJCXB1YmxpYyB1bm93 bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X2RyYWdfaGFuZGxlICgpOworKwkJcHVibGljIHZvaWQgZ2V0 X2RyYWdfdGhyZXNob2xkIChvdXQgdWludCB4X3RocmVzaG9sZCwgb3V0IHVpbnQgeV90aHJlc2hv bGQpOworKwkJcHVibGljIHZvaWQgZ2V0X21vdGlvbl9jb29yZHMgKG91dCBmbG9hdCBtb3Rpb25f eCwgb3V0IGZsb2F0IG1vdGlvbl95KTsKKysJCXB1YmxpYyB2b2lkIGdldF9wcmVzc19jb29yZHMg KG91dCBmbG9hdCBwcmVzc194LCBvdXQgZmxvYXQgcHJlc3NfeSk7CisrCQlwdWJsaWMgdm9pZCBz ZXRfZHJhZ19hcmVhIChHcmFwaGVuZS5SZWN0PyBkcmFnX2FyZWEpOworKwkJcHVibGljIHZvaWQg c2V0X2RyYWdfYXhpcyAoQ2x1dHRlci5EcmFnQXhpcyBheGlzKTsKKysJCXB1YmxpYyB2b2lkIHNl dF9kcmFnX2hhbmRsZSAoQ2x1dHRlci5BY3Rvcj8gaGFuZGxlKTsKKysJCXB1YmxpYyB2b2lkIHNl dF9kcmFnX3RocmVzaG9sZCAoaW50IHhfdGhyZXNob2xkLCBpbnQgeV90aHJlc2hvbGQpOworKwkJ W05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVi bGljIEdyYXBoZW5lLlJlY3QgZHJhZ19hcmVhIHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJCVtOb0Fj Y2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBi b29sIGRyYWdfYXJlYV9zZXQgeyBnZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLkRyYWdBeGlzIGRy YWdfYXhpcyB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvciBkcmFnX2hhbmRs ZSB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBpbnQgeF9k cmFnX3RocmVzaG9sZCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1 YmxpYyBpbnQgeV9kcmFnX3RocmVzaG9sZCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgdmlydHVh bCBzaWduYWwgdm9pZCBkcmFnX2JlZ2luIChDbHV0dGVyLkFjdG9yIGFjdG9yLCBmbG9hdCBldmVu dF94LCBmbG9hdCBldmVudF95LCBDbHV0dGVyLk1vZGlmaWVyVHlwZSBtb2RpZmllcnMpOworKwkJ cHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgZHJhZ19lbmQgKENsdXR0ZXIuQWN0b3IgYWN0b3Is IGZsb2F0IGV2ZW50X3gsIGZsb2F0IGV2ZW50X3ksIENsdXR0ZXIuTW9kaWZpZXJUeXBlIG1vZGlm aWVycyk7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBkcmFnX21vdGlvbiAoQ2x1dHRl ci5BY3RvciBhY3RvciwgZmxvYXQgZGVsdGFfeCwgZmxvYXQgZGVsdGFfeSk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIGJvb2wgZHJhZ19w cm9ncmVzcyAoQ2x1dHRlci5BY3RvciBhY3RvciwgZmxvYXQgZGVsdGFfeCwgZmxvYXQgZGVsdGFf eSk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgdHlwZV9pZCA9ICJjbHV0dGVyX2Ryb3BfYWN0aW9uX2dldF90eXBlICgpIildCisrCVtWZXJz aW9uIChzaW5jZSA9ICIxLjgiKV0KKysJcHVibGljIGNsYXNzIERyb3BBY3Rpb24gOiBDbHV0dGVy LkFjdGlvbiB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlw ZSA9ICJDbHV0dGVyQWN0aW9uKiIpXQorKwkJcHVibGljIERyb3BBY3Rpb24gKCk7CisrCQlwdWJs aWMgdmlydHVhbCBzaWduYWwgYm9vbCBjYW5fZHJvcCAoQ2x1dHRlci5BY3RvciBhY3RvciwgZmxv YXQgZXZlbnRfeCwgZmxvYXQgZXZlbnRfeSk7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9p ZCBkcm9wIChDbHV0dGVyLkFjdG9yIGFjdG9yLCBmbG9hdCBldmVudF94LCBmbG9hdCBldmVudF95 KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgc2lnbmFsIHZvaWQg ZHJvcF9jYW5jZWwgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIGZsb2F0IGV2ZW50X3gsIGZsb2F0IGV2 ZW50X3kpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgb3Zlcl9pbiAoQ2x1dHRlci5B Y3RvciBhY3Rvcik7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBvdmVyX291dCAoQ2x1 dHRlci5BY3RvciBhY3Rvcik7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2VmZmVjdF9nZXRfdHlwZSAoKSIp XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBF ZmZlY3QgOiBDbHV0dGVyLkFjdG9yTWV0YSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVu Y3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgRWZmZWN0ICgpOworKwkJW05vV3JhcHBlcl0K KysJCXB1YmxpYyB2aXJ0dWFsIGJvb2wgbW9kaWZ5X3BhaW50X3ZvbHVtZSAoQ2x1dHRlci5QYWlu dFZvbHVtZSB2b2x1bWUpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQg cGFpbnQgKENsdXR0ZXIuUGFpbnRDb250ZXh0IHBhaW50X2NvbnRleHQsIENsdXR0ZXIuRWZmZWN0 UGFpbnRGbGFncyBmbGFncyk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9p ZCBwaWNrIChDbHV0dGVyLlBpY2tDb250ZXh0IHBpY2tfY29udGV4dCk7CisrCQlbTm9XcmFwcGVy XQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBwb3N0X3BhaW50IChDbHV0dGVyLlBhaW50Q29udGV4 dCBwYWludF9jb250ZXh0KTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCBib29s IHByZV9wYWludCAoQ2x1dHRlci5QYWludENvbnRleHQgcGFpbnRfY29udGV4dCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBxdWV1ZV9yZXBhaW50ICgpOwor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNv cHlfZnVuY3Rpb24gPSAiZ19ib3hlZF9jb3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2Zy ZWUiLCB0eXBlX2lkID0gImNsdXR0ZXJfZXZlbnRfZ2V0X3R5cGUgKCkiKV0KKysJW0NvbXBhY3Rd CisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJcHVibGljIGNsYXNzIEV2ZW50IHsKKysJ CXB1YmxpYyBDbHV0dGVyLkV2ZW50VHlwZSB0eXBlOworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0 X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHVibGljIEV2ZW50IChDbHV0dGVyLkV2ZW50VHlwZSB0 eXBlKTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50IGNvcHkgKCk7CisrCQlwdWJsaWMgdm9pZCBm cmVlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBkb3VibGUg Z2V0X2FuZ2xlIChDbHV0dGVyLkV2ZW50IHRhcmdldCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS42IildCisrCQlwdWJsaWMgZG91YmxlIGdldF9heGVzIChvdXQgdWludCBuX2F4ZXMpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVpbnQzMiBnZXRfYnV0dG9uICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVpbnQgZ2V0X2NsaWNr X2NvdW50ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwkJcHVibGljIHZvaWQg Z2V0X2Nvb3JkcyAob3V0IGZsb2F0IHgsIG91dCBmbG9hdCB5KTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuSW5wdXREZXZpY2UgZ2V0X2Rl dmljZSAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0X2RldmljZV9pZCAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjI4IildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLklucHV0RGV2aWNlVG9v bCBnZXRfZGV2aWNlX3Rvb2wgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlw dWJsaWMgQ2x1dHRlci5JbnB1dERldmljZVR5cGUgZ2V0X2RldmljZV90eXBlICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfZGlzdGFuY2UgKENs dXR0ZXIuRXZlbnQgdGFyZ2V0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlw dWJsaWMgdW5vd25lZCBDbHV0dGVyLkV2ZW50U2VxdWVuY2UgZ2V0X2V2ZW50X3NlcXVlbmNlICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIENsdXR0ZXIuRXZlbnRG bGFncyBnZXRfZmxhZ3MgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yNCIpXQorKwkJcHVi bGljIHZvaWQgZ2V0X2dlc3R1cmVfbW90aW9uX2RlbHRhIChvdXQgZG91YmxlIGR4LCBvdXQgZG91 YmxlIGR5KTsKKysJCXB1YmxpYyBDbHV0dGVyLlRvdWNocGFkR2VzdHVyZVBoYXNlIGdldF9nZXN0 dXJlX3BoYXNlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjQiKV0KKysJCXB1YmxpYyBk b3VibGUgZ2V0X2dlc3R1cmVfcGluY2hfYW5nbGVfZGVsdGEgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4yNCIpXQorKwkJcHVibGljIGRvdWJsZSBnZXRfZ2VzdHVyZV9waW5jaF9zY2FsZSAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1aW50MTYgZ2V0X2tl eV9jb2RlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVpbnQg Z2V0X2tleV9zeW1ib2wgKCk7CisrCQlwdWJsaWMgdW5pY2hhciBnZXRfa2V5X3VuaWNvZGUgKCk7 CisrCQlwdWJsaWMgdWludCBnZXRfbW9kZV9ncm91cCAoKTsKKysJCXB1YmxpYyBib29sIGdldF9w YWRfZXZlbnRfZGV0YWlscyAob3V0IHVpbnQgbnVtYmVyLCBvdXQgdWludCBtb2RlLCBvdXQgZG91 YmxlIHZhbHVlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9p ZCBnZXRfcG9zaXRpb24gKEdyYXBoZW5lLlBvaW50IHBvc2l0aW9uKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X3JlbGF0 ZWQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgZ2V0 X3Njcm9sbF9kZWx0YSAob3V0IGRvdWJsZSBkeCwgb3V0IGRvdWJsZSBkeSk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgQ2x1dHRlci5TY3JvbGxEaXJlY3Rpb24gZ2V0 X3Njcm9sbF9kaXJlY3Rpb24gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yNiIpXQorKwkJ cHVibGljIENsdXR0ZXIuU2Nyb2xsRmluaXNoRmxhZ3MgZ2V0X3Njcm9sbF9maW5pc2hfZmxhZ3Mg KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yNiIpXQorKwkJcHVibGljIENsdXR0ZXIuU2Ny b2xsU291cmNlIGdldF9zY3JvbGxfc291cmNlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAu NiIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfc291cmNlICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5JbnB1 dERldmljZSBnZXRfc291cmNlX2RldmljZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgi KV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuU3RhZ2UgZ2V0X3N0YWdlICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwkJcHVibGljIENsdXR0ZXIuTW9kaWZpZXJUeXBlIGdl dF9zdGF0ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2IildCisrCQlwdWJsaWMgdm9p ZCBnZXRfc3RhdGVfZnVsbCAob3V0IENsdXR0ZXIuTW9kaWZpZXJUeXBlIGJ1dHRvbl9zdGF0ZSwg b3V0IENsdXR0ZXIuTW9kaWZpZXJUeXBlIGJhc2Vfc3RhdGUsIG91dCBDbHV0dGVyLk1vZGlmaWVy VHlwZSBsYXRjaGVkX3N0YXRlLCBvdXQgQ2x1dHRlci5Nb2RpZmllclR5cGUgbG9ja2VkX3N0YXRl LCBvdXQgQ2x1dHRlci5Nb2RpZmllclR5cGUgZWZmZWN0aXZlX3N0YXRlKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIwLjQiKV0KKysJCXB1YmxpYyB1aW50MzIgZ2V0X3RpbWUgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4yNCIpXQorKwkJcHVibGljIHVpbnQgZ2V0X3RvdWNocGFkX2dlc3R1 cmVfZmluZ2VyX2NvdW50ICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX2V2ZW50X3R5 cGUiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50VHlwZSBnZXRfdHlwZSAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgYm9vbCBoYXNfY29udHJvbF9tb2RpZmll ciAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgYm9vbCBoYXNf c2hpZnRfbW9kaWZpZXIgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVi bGljIGJvb2wgaXNfcG9pbnRlcl9lbXVsYXRlZCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIw LjYiKV0KKysJCXB1YmxpYyB2b2lkIHB1dCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgi KV0KKysJCXB1YmxpYyB2b2lkIHNldF9idXR0b24gKHVpbnQzMiBidXR0b24pOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2Nvb3JkcyAoZmxvYXQgeCwg ZmxvYXQgeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgdm9pZCBz ZXRfZGV2aWNlIChDbHV0dGVyLklucHV0RGV2aWNlPyBkZXZpY2UpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9kZXZpY2VfdG9vbCAoQ2x1dHRlci5J bnB1dERldmljZVRvb2w/IHRvb2wpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJ cHVibGljIHZvaWQgc2V0X2ZsYWdzIChDbHV0dGVyLkV2ZW50RmxhZ3MgZmxhZ3MpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2tleV9jb2RlICh1aW50 MTYga2V5X2NvZGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZv aWQgc2V0X2tleV9zeW1ib2wgKHVpbnQga2V5X3N5bSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS44IildCisrCQlwdWJsaWMgdm9pZCBzZXRfa2V5X3VuaWNvZGUgKHVuaWNoYXIga2V5X3VuaWNv ZGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3Jl bGF0ZWQgKENsdXR0ZXIuQWN0b3I/IGFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEw IildCisrCQlwdWJsaWMgdm9pZCBzZXRfc2Nyb2xsX2RlbHRhIChkb3VibGUgZHgsIGRvdWJsZSBk eSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBzZXRfc2Ny b2xsX2RpcmVjdGlvbiAoQ2x1dHRlci5TY3JvbGxEaXJlY3Rpb24gZGlyZWN0aW9uKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9zb3VyY2UgKENsdXR0 ZXIuQWN0b3I/IGFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1Ymxp YyB2b2lkIHNldF9zb3VyY2VfZGV2aWNlIChDbHV0dGVyLklucHV0RGV2aWNlPyBkZXZpY2UpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3N0YWdlIChD bHV0dGVyLlN0YWdlPyBzdGFnZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlw dWJsaWMgdm9pZCBzZXRfc3RhdGUgKENsdXR0ZXIuTW9kaWZpZXJUeXBlIHN0YXRlKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF90aW1lICh1aW50MzIg dGltZV8pOworKwkJcHVibGljIENsdXR0ZXIuQW55RXZlbnQgYW55IHtbQ0NvZGUgKGNuYW1lID0g IihDbHV0dGVyQW55RXZlbnQgKikiKV0gIGdldDsgfQorKwkJcHVibGljIENsdXR0ZXIuQnV0dG9u RXZlbnQgYnV0dG9uIHtbQ0NvZGUgKGNuYW1lID0gIihDbHV0dGVyQnV0dG9uRXZlbnQgKikiKV0g IGdldDsgfQorKwkJcHVibGljIENsdXR0ZXIuQ3Jvc3NpbmdFdmVudCBjcm9zc2luZyB7W0NDb2Rl IChjbmFtZSA9ICIoQ2x1dHRlckNyb3NzaW5nRXZlbnQgKikiKV0gIGdldDsgfQorKwkJcHVibGlj IENsdXR0ZXIuS2V5RXZlbnQga2V5IHtbQ0NvZGUgKGNuYW1lID0gIihDbHV0dGVyS2V5RXZlbnQg KikiKV0gIGdldDsgfQorKwkJcHVibGljIENsdXR0ZXIuTW90aW9uRXZlbnQgbW90aW9uIHtbQ0Nv ZGUgKGNuYW1lID0gIihDbHV0dGVyTW90aW9uRXZlbnQgKikiKV0gIGdldDsgfQorKwkJcHVibGlj IENsdXR0ZXIuU2Nyb2xsRXZlbnQgc2Nyb2xsIHtbQ0NvZGUgKGNuYW1lID0gIihDbHV0dGVyU2Ny b2xsRXZlbnQgKikiKV0gIGdldDsgfQorKwkJcHVibGljIENsdXR0ZXIuU3RhZ2VTdGF0ZUV2ZW50 IHN0YWdlX3N0YXRlIHtbQ0NvZGUgKGNuYW1lID0gIihDbHV0dGVyU3RhZ2VTdGF0ZUV2ZW50ICop IildICBnZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLlRvdWNoRXZlbnQgdG91Y2gge1tDQ29kZSAo Y25hbWUgPSAiKENsdXR0ZXJUb3VjaEV2ZW50ICopIildICBnZXQ7IH0KKysJCXB1YmxpYyBDbHV0 dGVyLlRvdWNocGFkUGluY2hFdmVudCB0b3VjaHBhZF9waW5jaCB7W0NDb2RlIChjbmFtZSA9ICIo Q2x1dHRlclRvdWNocGFkUGluY2hFdmVudCAqKSIpXSAgZ2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRl ci5Ub3VjaHBhZFN3aXBlRXZlbnQgdG91Y2hwYWRfc3dpcGUge1tDQ29kZSAoY25hbWUgPSAiKENs dXR0ZXJUb3VjaHBhZFN3aXBlRXZlbnQgKikiKV0gIGdldDsgfQorKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNvcHlfZnVuY3Rpb24gPSAiZ19i b3hlZF9jb3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0eXBlX2lkID0gImNs dXR0ZXJfZXZlbnRfc2VxdWVuY2VfZ2V0X3R5cGUgKCkiKV0KKysJW0NvbXBhY3RdCisrCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEyIildCisrCXB1YmxpYyBjbGFzcyBFdmVudFNlcXVlbmNlIHsKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBl X2lkID0gImNsdXR0ZXJfZml4ZWRfbGF5b3V0X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChz aW5jZSA9ICIxLjIiKV0KKysJcHVibGljIGNsYXNzIEZpeGVkTGF5b3V0IDogQ2x1dHRlci5MYXlv dXRNYW5hZ2VyIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0 eXBlID0gIkNsdXR0ZXJMYXlvdXRNYW5hZ2VyKiIpXQorKwkJcHVibGljIEZpeGVkTGF5b3V0ICgp OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IHR5cGVfaWQgPSAiY2x1dHRlcl9mbG93X2xheW91dF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBjbGFzcyBGbG93TGF5b3V0IDogQ2x1dHRlci5M YXlvdXRNYW5hZ2VyIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNl LCB0eXBlID0gIkNsdXR0ZXJMYXlvdXRNYW5hZ2VyKiIpXQorKwkJcHVibGljIEZsb3dMYXlvdXQg KENsdXR0ZXIuRmxvd09yaWVudGF0aW9uIG9yaWVudGF0aW9uKTsKKysJCXB1YmxpYyBmbG9hdCBn ZXRfY29sdW1uX3NwYWNpbmcgKCk7CisrCQlwdWJsaWMgdm9pZCBnZXRfY29sdW1uX3dpZHRoIChv dXQgZmxvYXQgbWluX3dpZHRoLCBvdXQgZmxvYXQgbWF4X3dpZHRoKTsKKysJCXB1YmxpYyBib29s IGdldF9ob21vZ2VuZW91cyAoKTsKKysJCXB1YmxpYyBDbHV0dGVyLkZsb3dPcmllbnRhdGlvbiBn ZXRfb3JpZW50YXRpb24gKCk7CisrCQlwdWJsaWMgdm9pZCBnZXRfcm93X2hlaWdodCAob3V0IGZs b2F0IG1pbl9oZWlnaHQsIG91dCBmbG9hdCBtYXhfaGVpZ2h0KTsKKysJCXB1YmxpYyBmbG9hdCBn ZXRfcm93X3NwYWNpbmcgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNiIpXQorKwkJcHVi bGljIGJvb2wgZ2V0X3NuYXBfdG9fZ3JpZCAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9jb2x1bW5f c3BhY2luZyAoZmxvYXQgc3BhY2luZyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfY29sdW1uX3dpZHRo IChmbG9hdCBtaW5fd2lkdGgsIGZsb2F0IG1heF93aWR0aCk7CisrCQlwdWJsaWMgdm9pZCBzZXRf aG9tb2dlbmVvdXMgKGJvb2wgaG9tb2dlbmVvdXMpOworKwkJcHVibGljIHZvaWQgc2V0X29yaWVu dGF0aW9uIChDbHV0dGVyLkZsb3dPcmllbnRhdGlvbiBvcmllbnRhdGlvbik7CisrCQlwdWJsaWMg dm9pZCBzZXRfcm93X2hlaWdodCAoZmxvYXQgbWluX2hlaWdodCwgZmxvYXQgbWF4X2hlaWdodCk7 CisrCQlwdWJsaWMgdm9pZCBzZXRfcm93X3NwYWNpbmcgKGZsb2F0IHNwYWNpbmcpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9zbmFwX3RvX2dyaWQg KGJvb2wgc25hcF90b19ncmlkKTsKKysJCXB1YmxpYyBmbG9hdCBjb2x1bW5fc3BhY2luZyB7IGdl dDsgc2V0OyB9CisrCQlwdWJsaWMgYm9vbCBob21vZ2VuZW91cyB7IGdldDsgc2V0OyB9CisrCQlb Tm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBmbG9hdCBtYXhfY29sdW1uX3dpZHRoIHsgZ2V0 OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGZsb2F0IG1heF9yb3df aGVpZ2h0IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGZs b2F0IG1pbl9jb2x1bW5fd2lkdGggeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2Rd CisrCQlwdWJsaWMgZmxvYXQgbWluX3Jvd19oZWlnaHQgeyBnZXQ7IHNldDsgfQorKwkJcHVibGlj IENsdXR0ZXIuRmxvd09yaWVudGF0aW9uIG9yaWVudGF0aW9uIHsgZ2V0OyBzZXQgY29uc3RydWN0 OyB9CisrCQlwdWJsaWMgZmxvYXQgcm93X3NwYWNpbmcgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTYiKV0KKysJCXB1YmxpYyBib29sIHNuYXBfdG9fZ3JpZCB7IGdldDsg c2V0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2dlc3R1cmVfYWN0aW9uX2dldF90eXBlICgpIildCisr CVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJcHVibGljIGNsYXNzIEdlc3R1cmVBY3Rpb24g OiBDbHV0dGVyLkFjdGlvbiB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBm YWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0aW9uKiIpXQorKwkJcHVibGljIEdlc3R1cmVBY3Rpb24g KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQgY2FuY2Vs ICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIGJvb2wgZ2VzdHVyZV9wcmVw YXJlIChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIild CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLklucHV0RGV2aWNlIGdldF9kZXZpY2UgKHVpbnQg cG9pbnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTQiKV0KKysJCXB1YmxpYyB1bm93bmVk IENsdXR0ZXIuRXZlbnQgZ2V0X2xhc3RfZXZlbnQgKHVpbnQgcG9pbnQpOworKwkJcHVibGljIHZv aWQgZ2V0X21vdGlvbl9jb29yZHMgKHVpbnQgcG9pbnQsIG91dCBmbG9hdCBtb3Rpb25feCwgb3V0 IGZsb2F0IG1vdGlvbl95KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJs aWMgZmxvYXQgZ2V0X21vdGlvbl9kZWx0YSAodWludCBwb2ludCwgb3V0IGZsb2F0IGRlbHRhX3gs IG91dCBmbG9hdCBkZWx0YV95KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlw dWJsaWMgdWludCBnZXRfbl9jdXJyZW50X3BvaW50cyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEyIildCisrCQlwdWJsaWMgaW50IGdldF9uX3RvdWNoX3BvaW50cyAoKTsKKysJCXB1Ymxp YyB2b2lkIGdldF9wcmVzc19jb29yZHMgKHVpbnQgcG9pbnQsIG91dCBmbG9hdCBwcmVzc194LCBv dXQgZmxvYXQgcHJlc3NfeSk7CisrCQlwdWJsaWMgdm9pZCBnZXRfcmVsZWFzZV9jb29yZHMgKHVp bnQgcG9pbnQsIG91dCBmbG9hdCByZWxlYXNlX3gsIG91dCBmbG9hdCByZWxlYXNlX3kpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuRXZl bnRTZXF1ZW5jZSBnZXRfc2VxdWVuY2UgKHVpbnQgcG9pbnQpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTgiKV0KKysJCXB1YmxpYyB2b2lkIGdldF90aHJlc2hvbGRfdHJpZ2dlcl9kaXN0YW5j ZSAob3V0IGZsb2F0IHgsIG91dCBmbG9hdCB5KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIw IildCisrCQlwdWJsaWMgQ2x1dHRlci5HZXN0dXJlVHJpZ2dlckVkZ2UgZ2V0X3RocmVzaG9sZF90 cmlnZ2VyX2VkZ2UgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0 ZWRfc2luY2UgPSAiMS4yMCIsIHNpbmNlID0gIjEuMTgiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkdl c3R1cmVUcmlnZ2VyRWRnZSBnZXRfdGhyZXNob2xkX3RyaWdnZXJfZWdkZSAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3ZlbG9jaXR5ICh1aW50 IHBvaW50LCBvdXQgZmxvYXQgdmVsb2NpdHlfeCwgb3V0IGZsb2F0IHZlbG9jaXR5X3kpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9uX3RvdWNoX3Bv aW50cyAoaW50IG5iX3BvaW50cyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xOCIpXQorKwkJ cHVibGljIHZvaWQgc2V0X3RocmVzaG9sZF90cmlnZ2VyX2Rpc3RhbmNlIChmbG9hdCB4LCBmbG9h dCB5KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE4IildCisrCQlwdWJsaWMgdm9pZCBzZXRf dGhyZXNob2xkX3RyaWdnZXJfZWRnZSAoQ2x1dHRlci5HZXN0dXJlVHJpZ2dlckVkZ2UgZWRnZSk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNiIpXQorKwkJcHVibGljIGludCBuX3RvdWNoX3Bv aW50cyB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjE4IildCisrCQlwdWJsaWMgZmxvYXQgdGhyZXNob2xkX3RyaWdnZXJfZGlzdGFu Y2VfeCB7IGdldDsgY29uc3RydWN0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjE4IildCisrCQlwdWJsaWMgZmxvYXQgdGhyZXNob2xkX3RyaWdnZXJf ZGlzdGFuY2VfeSB7IGdldDsgY29uc3RydWN0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x OCIpXQorKwkJcHVibGljIENsdXR0ZXIuR2VzdHVyZVRyaWdnZXJFZGdlIHRocmVzaG9sZF90cmln Z2VyX2VkZ2UgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIGJv b2wgZ2VzdHVyZV9iZWdpbiAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCQlwdWJsaWMgdmlydHVh bCBzaWduYWwgdm9pZCBnZXN0dXJlX2NhbmNlbCAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCQlw dWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBnZXN0dXJlX2VuZCAoQ2x1dHRlci5BY3RvciBhY3Rv cik7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCBnZXN0dXJlX3Byb2dyZXNzIChDbHV0 dGVyLkFjdG9yIGFjdG9yKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfZ3JpZF9sYXlvdXRfZ2V0X3R5cGUg KCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJcHVibGljIGNsYXNzIEdyaWRM YXlvdXQgOiBDbHV0dGVyLkxheW91dE1hbmFnZXIgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0 X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckxheW91dE1hbmFnZXIqIildCisrCQlw dWJsaWMgR3JpZExheW91dCAoKTsKKysJCXB1YmxpYyB2b2lkIGF0dGFjaCAoQ2x1dHRlci5BY3Rv ciBjaGlsZCwgaW50IGxlZnQsIGludCB0b3AsIGludCB3aWR0aCwgaW50IGhlaWdodCk7CisrCQlw dWJsaWMgdm9pZCBhdHRhY2hfbmV4dF90byAoQ2x1dHRlci5BY3RvciBjaGlsZCwgQ2x1dHRlci5B Y3Rvcj8gc2libGluZywgQ2x1dHRlci5HcmlkUG9zaXRpb24gc2lkZSwgaW50IHdpZHRoLCBpbnQg aGVpZ2h0KTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X2NoaWxkX2F0IChp bnQgbGVmdCwgaW50IHRvcCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfY29sdW1uX2hvbW9nZW5lb3Vz ICgpOworKwkJcHVibGljIHVpbnQgZ2V0X2NvbHVtbl9zcGFjaW5nICgpOworKwkJcHVibGljIENs dXR0ZXIuT3JpZW50YXRpb24gZ2V0X29yaWVudGF0aW9uICgpOworKwkJcHVibGljIGJvb2wgZ2V0 X3Jvd19ob21vZ2VuZW91cyAoKTsKKysJCXB1YmxpYyB1aW50IGdldF9yb3dfc3BhY2luZyAoKTsK KysJCXB1YmxpYyB2b2lkIGluc2VydF9jb2x1bW4gKGludCBwb3NpdGlvbik7CisrCQlwdWJsaWMg dm9pZCBpbnNlcnRfbmV4dF90byAoQ2x1dHRlci5BY3RvciBzaWJsaW5nLCBDbHV0dGVyLkdyaWRQ b3NpdGlvbiBzaWRlKTsKKysJCXB1YmxpYyB2b2lkIGluc2VydF9yb3cgKGludCBwb3NpdGlvbik7 CisrCQlwdWJsaWMgdm9pZCBzZXRfY29sdW1uX2hvbW9nZW5lb3VzIChib29sIGhvbW9nZW5lb3Vz KTsKKysJCXB1YmxpYyB2b2lkIHNldF9jb2x1bW5fc3BhY2luZyAodWludCBzcGFjaW5nKTsKKysJ CXB1YmxpYyB2b2lkIHNldF9vcmllbnRhdGlvbiAoQ2x1dHRlci5PcmllbnRhdGlvbiBvcmllbnRh dGlvbik7CisrCQlwdWJsaWMgdm9pZCBzZXRfcm93X2hvbW9nZW5lb3VzIChib29sIGhvbW9nZW5l b3VzKTsKKysJCXB1YmxpYyB2b2lkIHNldF9yb3dfc3BhY2luZyAodWludCBzcGFjaW5nKTsKKysJ CXB1YmxpYyBib29sIGNvbHVtbl9ob21vZ2VuZW91cyB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMg dWludCBjb2x1bW5fc3BhY2luZyB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5Pcmll bnRhdGlvbiBvcmllbnRhdGlvbiB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgYm9vbCByb3dfaG9t b2dlbmVvdXMgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIHVpbnQgcm93X3NwYWNpbmcgeyBnZXQ7 IHNldDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9ncm91cF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMC4yIildCisrCXB1YmxpYyBjbGFzcyBHcm91cCA6IENsdXR0ZXIuQWN0b3Is IEF0ay5JbXBsZW1lbnRvciwgQ2x1dHRlci5BbmltYXRhYmxlLCBDbHV0dGVyLkNvbnRhaW5lciwg Q2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9 IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3RvcioiKV0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVk ID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgR3JvdXAgKCk7 CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4x MCIsIHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIGludCBnZXRfbl9jaGlsZHJlbiAoKTsKKysJ CVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwg c2luY2UgPSAiMC4yIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF9udGhf Y2hpbGQgKGludCBpbmRleF8pOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXBy ZWNhdGVkX3NpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHJlbW92ZV9hbGwgKCk7Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlw ZV9pZCA9ICJjbHV0dGVyX2ltYWdlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEwIildCisrCXB1YmxpYyBjbGFzcyBJbWFnZSA6IEdMaWIuT2JqZWN0LCBDbHV0dGVyLkNv bnRlbnQgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUg PSAiQ2x1dHRlckNvbnRlbnQqIildCisrCQlwdWJsaWMgSW1hZ2UgKCk7CisrCQlwdWJsaWMgdW5v d25lZCBDb2dsLlRleHR1cmUgZ2V0X3RleHR1cmUgKCk7CisrCQlwdWJsaWMgYm9vbCBzZXRfYXJl YSAoW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIHVpbnQ4W10gZGF0YSwgQ29nbC5QaXhl bEZvcm1hdCBwaXhlbF9mb3JtYXQsIENhaXJvLlJlY3RhbmdsZUludCByZWN0LCB1aW50IHJvd19z dHJpZGUpIHRocm93cyBHTGliLkVycm9yOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0K KysJCXB1YmxpYyBib29sIHNldF9ieXRlcyAoR0xpYi5CeXRlcyBkYXRhLCBDb2dsLlBpeGVsRm9y bWF0IHBpeGVsX2Zvcm1hdCwgdWludCB3aWR0aCwgdWludCBoZWlnaHQsIHVpbnQgcm93X3N0cmlk ZSkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlwdWJsaWMgYm9vbCBzZXRfZGF0YSAoW0NDb2RlIChh cnJheV9sZW5ndGggPSBmYWxzZSldIHVpbnQ4W10gZGF0YSwgQ29nbC5QaXhlbEZvcm1hdCBwaXhl bF9mb3JtYXQsIHVpbnQgd2lkdGgsIHVpbnQgaGVpZ2h0LCB1aW50IHJvd19zdHJpZGUpIHRocm93 cyBHTGliLkVycm9yOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9pbnB1dF9kZXZpY2VfZ2V0X3R5cGUgKCki KV0KKysJcHVibGljIGNsYXNzIElucHV0RGV2aWNlIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2Rl IChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIElucHV0RGV2 aWNlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIHVub3duZWQg Q2x1dHRlci5JbnB1dERldmljZSBnZXRfYXNzb2NpYXRlZF9kZXZpY2UgKCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgQ2x1dHRlci5JbnB1dEF4aXMgZ2V0X2F4aXMg KHVpbnQgaW5kZXhfKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBi b29sIGdldF9heGlzX3ZhbHVlIChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gZG91Ymxl W10gYXhlcywgQ2x1dHRlci5JbnB1dEF4aXMgYXhpcywgb3V0IGRvdWJsZSB2YWx1ZSk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGJvb2wgZ2V0X2Nvb3JkcyAoQ2x1 dHRlci5FdmVudFNlcXVlbmNlPyBzZXF1ZW5jZSwgR3JhcGhlbmUuUG9pbnQgcG9pbnQpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGludCBnZXRfZGV2aWNlX2lkICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIENsdXR0ZXIuSW5wdXRN b2RlIGdldF9kZXZpY2VfbW9kZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJ CXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfZGV2aWNlX25hbWUgKCk7CisrCQlwdWJsaWMgdW5v d25lZCBzdHJpbmcgZ2V0X2RldmljZV9ub2RlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MCIpXQorKwkJcHVibGljIENsdXR0ZXIuSW5wdXREZXZpY2VUeXBlIGdldF9kZXZpY2VfdHlwZSAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBib29sIGdldF9lbmFi bGVkICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1bm93bmVk IENsdXR0ZXIuQWN0b3IgZ2V0X2dyYWJiZWRfYWN0b3IgKCk7CisrCQlwdWJsaWMgdmlydHVhbCBp bnQgZ2V0X2dyb3VwX25fbW9kZXMgKGludCBncm91cCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS42IildCisrCQlwdWJsaWMgYm9vbCBnZXRfaGFzX2N1cnNvciAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBib29sIGdldF9rZXkgKHVpbnQgaW5kZXhfLCBvdXQg dWludCBrZXl2YWwsIG91dCBDbHV0dGVyLk1vZGlmaWVyVHlwZSBtb2RpZmllcnMpOworKwkJcHVi bGljIENsdXR0ZXIuSW5wdXREZXZpY2VNYXBwaW5nIGdldF9tYXBwaW5nX21vZGUgKCk7CisrCQlw dWJsaWMgaW50IGdldF9tb2RlX3N3aXRjaF9idXR0b25fZ3JvdXAgKHVpbnQgYnV0dG9uKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2IildCisrCQlwdWJsaWMgQ2x1dHRlci5Nb2RpZmllclR5 cGUgZ2V0X21vZGlmaWVyX3N0YXRlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQor KwkJcHVibGljIHVpbnQgZ2V0X25fYXhlcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYi KV0KKysJCXB1YmxpYyB1aW50IGdldF9uX2tleXMgKCk7CisrCQlwdWJsaWMgaW50IGdldF9uX21v ZGVfZ3JvdXBzICgpOworKwkJcHVibGljIGludCBnZXRfbl9yaW5ncyAoKTsKKysJCXB1YmxpYyBp bnQgZ2V0X25fc3RyaXBzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVi bGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfcG9pbnRlcl9hY3RvciAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuU3RhZ2UgZ2V0 X3BvaW50ZXJfc3RhZ2UgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yMiIpXQorKwkJcHVi bGljIHVub3duZWQgc3RyaW5nIGdldF9wcm9kdWN0X2lkICgpOworKwkJcHVibGljIHVub3duZWQg Q2x1dHRlci5TZWF0IGdldF9zZWF0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQor KwkJcHVibGljIEdMaWIuTGlzdDx3ZWFrIENsdXR0ZXIuSW5wdXREZXZpY2U+IGdldF9zbGF2ZV9k ZXZpY2VzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjIiKV0KKysJCXB1YmxpYyB1bm93 bmVkIHN0cmluZyBnZXRfdmVuZG9yX2lkICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAi KV0KKysJCXB1YmxpYyB2b2lkIGdyYWIgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwkJcHVibGlj IHZpcnR1YWwgYm9vbCBpc19ncm91cGVkIChDbHV0dGVyLklucHV0RGV2aWNlIG90aGVyX2Rldmlj ZSk7CisrCQlwdWJsaWMgdmlydHVhbCBib29sIGlzX21vZGVfc3dpdGNoX2J1dHRvbiAodWludCBn cm91cCwgdWludCBidXR0b24pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1 YmxpYyB2aXJ0dWFsIGJvb2wga2V5Y29kZV90b19ldmRldiAodWludCBoYXJkd2FyZV9rZXljb2Rl LCB1aW50IGV2ZGV2X2tleWNvZGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJ CXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3Igc2VxdWVuY2VfZ2V0X2dyYWJiZWRfYWN0b3Ig KENsdXR0ZXIuRXZlbnRTZXF1ZW5jZSBzZXF1ZW5jZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMiIpXQorKwkJcHVibGljIHZvaWQgc2VxdWVuY2VfZ3JhYiAoQ2x1dHRlci5FdmVudFNlcXVl bmNlIHNlcXVlbmNlLCBDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBzZXF1ZW5jZV91bmdyYWIgKENsdXR0ZXIuRXZlbnRT ZXF1ZW5jZSBzZXF1ZW5jZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJs aWMgdm9pZCBzZXRfZW5hYmxlZCAoYm9vbCBlbmFibGVkKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9rZXkgKHVpbnQgaW5kZXhfLCB1aW50IGtleXZh bCwgQ2x1dHRlci5Nb2RpZmllclR5cGUgbW9kaWZpZXJzKTsKKysJCXB1YmxpYyB2b2lkIHNldF9t YXBwaW5nX21vZGUgKENsdXR0ZXIuSW5wdXREZXZpY2VNYXBwaW5nIG1hcHBpbmcpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHVuZ3JhYiAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHVwZGF0ZV9mcm9tX2V2ZW50 IChDbHV0dGVyLkV2ZW50IGV2ZW50LCBib29sIHVwZGF0ZV9zdGFnZSk7CisrCQlbTm9XcmFwcGVy XQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCB1cGRhdGVfZnJvbV90b29sIChDbHV0dGVyLklucHV0 RGV2aWNlVG9vbCB0b29sKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuNiIpXQorKwkJcHVibGljIENsdXR0ZXIuQmFja2VuZCBiYWNrZW5kIHsgb3duZWQg Z2V0OyBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBDbHV0dGVyLklucHV0TW9kZSBkZXZpY2VfbW9k ZSB7IGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgc3RyaW5nIGRldmljZV9ub2RlIHsgZ2V0 OyBjb25zdHJ1Y3Q7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBD bHV0dGVyLklucHV0RGV2aWNlVHlwZSBkZXZpY2VfdHlwZSB7IGdldDsgY29uc3RydWN0OyB9Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgYm9vbCBlbmFibGVkIHsgZ2V0 OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBib29sIGhh c19jdXJzb3IgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgaW50IGlkIHsgZ2V0OyBjb25zdHJ1 Y3Q7IH0KKysJCXB1YmxpYyBDbHV0dGVyLklucHV0RGV2aWNlTWFwcGluZyBtYXBwaW5nX21vZGUg eyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIHVp bnQgbl9heGVzIHsgZ2V0OyB9CisrCQlwdWJsaWMgaW50IG5fbW9kZV9ncm91cHMgeyBnZXQ7IGNv bnN0cnVjdDsgfQorKwkJcHVibGljIGludCBuX3JpbmdzIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJ CXB1YmxpYyBpbnQgbl9zdHJpcHMgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJW05vQWNjZXNzb3JN ZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgc3RyaW5nIG5h bWUgeyBvd25lZCBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjIi KV0KKysJCXB1YmxpYyBzdHJpbmcgcHJvZHVjdF9pZCB7IGdldDsgY29uc3RydWN0OyB9CisrCQlw dWJsaWMgQ2x1dHRlci5TZWF0IHNlYXQgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMjIiKV0KKysJCXB1YmxpYyBzdHJpbmcgdmVuZG9yX2lkIHsgZ2V0OyBjb25z dHJ1Y3Q7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfaW5wdXRfZGV2aWNlX3Rvb2xfZ2V0X3R5cGUgKCki KV0KKysJcHVibGljIGFic3RyYWN0IGNsYXNzIElucHV0RGV2aWNlVG9vbCA6IEdMaWIuT2JqZWN0 IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3Rl Y3RlZCBJbnB1dERldmljZVRvb2wgKCk7CisrCQlwdWJsaWMgdWludDY0IGdldF9pZCAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjI4IildCisrCQlwdWJsaWMgdWludDY0IGdldF9zZXJpYWwg KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yOCIpXQorKwkJcHVibGljIENsdXR0ZXIuSW5w dXREZXZpY2VUb29sVHlwZSBnZXRfdG9vbF90eXBlICgpOworKwkJcHVibGljIHVpbnQ2NCBpZCB7 IGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgdWludDY0IHNlcmlhbCB7IGdldDsgY29uc3Ry dWN0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBDbHV0dGVyLklucHV0RGV2 aWNlVG9vbFR5cGUgdHlwZSB7IGdldDsgY29uc3RydWN0OyB9CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2lu cHV0X2ZvY3VzX2dldF90eXBlICgpIildCisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBJbnB1dEZv Y3VzIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0g ZmFsc2UpXQorKwkJcHJvdGVjdGVkIElucHV0Rm9jdXMgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJ cHVibGljIHZpcnR1YWwgdm9pZCBjb21taXRfdGV4dCAoc3RyaW5nIHRleHQpOworKwkJW05vV3Jh cHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgZGVsZXRlX3N1cnJvdW5kaW5nICh1aW50IG9m ZnNldCwgdWludCBsZW4pOworKwkJcHVibGljIGJvb2wgZmlsdGVyX2tleV9ldmVudCAoQ2x1dHRl ci5LZXlFdmVudCBrZXkpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQg Zm9jdXNfaW4gKENsdXR0ZXIuSW5wdXRNZXRob2QgaW5wdXRfbWV0aG9kKTsKKysJCVtOb1dyYXBw ZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGZvY3VzX291dCAoKTsKKysJCXB1YmxpYyBib29s IGlzX2ZvY3VzZWQgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBy ZXF1ZXN0X3N1cnJvdW5kaW5nICgpOworKwkJcHVibGljIHZvaWQgcmVzZXQgKCk7CisrCQlwdWJs aWMgdm9pZCBzZXRfY2FuX3Nob3dfcHJlZWRpdCAoYm9vbCBjYW5fc2hvd19wcmVlZGl0KTsKKysJ CXB1YmxpYyB2b2lkIHNldF9jb250ZW50X2hpbnRzIChDbHV0dGVyLklucHV0Q29udGVudEhpbnRG bGFncyBoaW50KTsKKysJCXB1YmxpYyB2b2lkIHNldF9jb250ZW50X3B1cnBvc2UgKENsdXR0ZXIu SW5wdXRDb250ZW50UHVycG9zZSBwdXJwb3NlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9jdXJzb3Jf bG9jYXRpb24gKEdyYXBoZW5lLlJlY3QgcmVjdCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfaW5wdXRf cGFuZWxfc3RhdGUgKENsdXR0ZXIuSW5wdXRQYW5lbFN0YXRlIHN0YXRlKTsKKysJCVtOb1dyYXBw ZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHNldF9wcmVlZGl0X3RleHQgKHN0cmluZyBwcmVl ZGl0LCB1aW50IGN1cnNvcik7CisrCQlwdWJsaWMgdm9pZCBzZXRfc3Vycm91bmRpbmcgKHN0cmlu ZyB0ZXh0LCB1aW50IGN1cnNvciwgdWludCBhbmNob3IpOworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9pbnB1 dF9tZXRob2RfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGFic3RyYWN0IGNsYXNzIElucHV0TWV0 aG9kIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0g ZmFsc2UpXQorKwkJcHJvdGVjdGVkIElucHV0TWV0aG9kICgpOworKwkJW05vV3JhcHBlcl0KKysJ CXB1YmxpYyB2aXJ0dWFsIGJvb2wgZmlsdGVyX2tleV9ldmVudCAoQ2x1dHRlci5FdmVudCBrZXkp OworKwkJcHVibGljIHZpcnR1YWwgdm9pZCBmb2N1c19pbiAoQ2x1dHRlci5JbnB1dEZvY3VzIGFj dG9yKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgZm9jdXNfb3V0ICgpOworKwkJcHVibGljIHZv aWQgZm9yd2FyZF9rZXkgKHVpbnQzMiBrZXl2YWwsIHVpbnQzMiBrZXljb2RlLCB1aW50MzIgc3Rh dGUsIHVpbnQ2NCB0aW1lXywgYm9vbCBwcmVzcyk7CisrCQlwdWJsaWMgdm9pZCBub3RpZnlfa2V5 X2V2ZW50IChDbHV0dGVyLkV2ZW50IGV2ZW50LCBib29sIGZpbHRlcmVkKTsKKysJCVtOb1dyYXBw ZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHJlc2V0ICgpOworKwkJW05vV3JhcHBlcl0KKysJ CXB1YmxpYyB2aXJ0dWFsIHZvaWQgc2V0X2N1cnNvcl9sb2NhdGlvbiAoR3JhcGhlbmUuUmVjdCBy ZWN0KTsKKysJCXB1YmxpYyB2b2lkIHNldF9pbnB1dF9wYW5lbF9zdGF0ZSAoQ2x1dHRlci5JbnB1 dFBhbmVsU3RhdGUgc3RhdGUpOworKwkJcHVibGljIHZvaWQgc2V0X3ByZWVkaXRfdGV4dCAoc3Ry aW5nPyBwcmVlZGl0LCB1aW50IGN1cnNvcik7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZp cnR1YWwgdm9pZCBzZXRfc3Vycm91bmRpbmcgKHN0cmluZyB0ZXh0LCB1aW50IGN1cnNvciwgdWlu dCBhbmNob3IpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgdXBkYXRl X2NvbnRlbnRfaGludHMgKENsdXR0ZXIuSW5wdXRDb250ZW50SGludEZsYWdzIGhpbnQpOworKwkJ W05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgdXBkYXRlX2NvbnRlbnRfcHVycG9z ZSAoQ2x1dHRlci5JbnB1dENvbnRlbnRQdXJwb3NlIHB1cnBvc2UpOworKwkJW05vQWNjZXNzb3JN ZXRob2RdCisrCQlwdWJsaWMgYm9vbCBjYW5fc2hvd19wcmVlZGl0IHsgZ2V0OyBzZXQ7IH0KKysJ CVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIENsdXR0ZXIuSW5wdXRDb250ZW50SGludEZs YWdzIGNvbnRlbnRfaGludHMgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisr CQlwdWJsaWMgQ2x1dHRlci5JbnB1dENvbnRlbnRQdXJwb3NlIGNvbnRlbnRfcHVycG9zZSB7IGdl dDsgc2V0OyB9CisrCQlbSGFzRW1pdHRlcl0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCBjb21taXQg KHN0cmluZyB0ZXh0KTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBjdXJzb3JfbG9jYXRpb25fY2hh bmdlZCAoR3JhcGhlbmUuUmVjdCBvYmplY3QpOworKwkJW0hhc0VtaXR0ZXJdCisrCQlwdWJsaWMg c2lnbmFsIHZvaWQgZGVsZXRlX3N1cnJvdW5kaW5nICh1aW50IG9mZnNldCwgdWludCBsZW4pOwor KwkJcHVibGljIHNpZ25hbCB2b2lkIGlucHV0X3BhbmVsX3N0YXRlIChDbHV0dGVyLklucHV0UGFu ZWxTdGF0ZSBvYmplY3QpOworKwkJW0hhc0VtaXR0ZXJdCisrCQlwdWJsaWMgc2lnbmFsIHZvaWQg cmVxdWVzdF9zdXJyb3VuZGluZyAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfaW50ZXJ2YWxfZ2V0X3R5 cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgY2xhc3MgSW50 ZXJ2YWwgOiBHTGliLkluaXRpYWxseVVub3duZWQsIENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlb Q0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwdWJsaWMgSW50ZXJ2 YWwgKEdMaWIuVHlwZSBndHlwZSwgLi4uKTsKKysJCXB1YmxpYyBDbHV0dGVyLkludGVydmFsIGNs b25lICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHVub3duZWQg R0xpYi5WYWx1ZT8gY29tcHV0ZSAoZG91YmxlIGZhY3Rvcik7CisrCQlwdWJsaWMgdmlydHVhbCBi b29sIGNvbXB1dGVfdmFsdWUgKGRvdWJsZSBmYWN0b3IsIG91dCBHTGliLlZhbHVlIHZhbHVlKTsK KysJCXB1YmxpYyBHTGliLlZhbHVlIGdldF9maW5hbF92YWx1ZSAoKTsKKysJCXB1YmxpYyBHTGli LlZhbHVlIGdldF9pbml0aWFsX3ZhbHVlICgpOworKwkJcHVibGljIHZvaWQgZ2V0X2ludGVydmFs ICguLi4pOworKwkJcHVibGljIEdMaWIuVHlwZSBnZXRfdmFsdWVfdHlwZSAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgYm9vbCBpc192YWxpZCAoKTsKKysJCXB1 YmxpYyB1bm93bmVkIEdMaWIuVmFsdWU/IHBlZWtfZmluYWxfdmFsdWUgKCk7CisrCQlwdWJsaWMg dW5vd25lZCBHTGliLlZhbHVlPyBwZWVrX2luaXRpYWxfdmFsdWUgKCk7CisrCQlwdWJsaWMgc3Rh dGljIHZvaWQgcmVnaXN0ZXJfcHJvZ3Jlc3NfZnVuYyAoR0xpYi5UeXBlIHZhbHVlX3R5cGUsIENs dXR0ZXIuUHJvZ3Jlc3NGdW5jIGZ1bmMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0K KysJCXB1YmxpYyB2b2lkIHNldF9maW5hbCAoLi4uKTsKKysJCXB1YmxpYyB2b2lkIHNldF9maW5h bF92YWx1ZSAoR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIp XQorKwkJcHVibGljIHZvaWQgc2V0X2luaXRpYWwgKC4uLik7CisrCQlwdWJsaWMgdm9pZCBzZXRf aW5pdGlhbF92YWx1ZSAoR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfaW50 ZXJ2YWwgKC4uLik7CisrCQlwdWJsaWMgdmlydHVhbCBib29sIHZhbGlkYXRlIChHTGliLlBhcmFt U3BlYyBwc3BlYyk7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSld CisrCQlwdWJsaWMgSW50ZXJ2YWwud2l0aF92YWx1ZXMgKEdMaWIuVHlwZSBndHlwZSwgR0xpYi5W YWx1ZT8gaW5pdGlhbCwgR0xpYi5WYWx1ZT8gZmluYWwpOworKwkJW05vQWNjZXNzb3JNZXRob2Rd CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIEdMaWIuVmFsdWUgZmlu YWwgeyBvd25lZCBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIEdMaWIuVmFsdWUgaW5pdGlhbCB7IG93bmVk IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgR0xpYi5UeXBlIHZhbHVlX3R5cGUgeyBnZXQ7IGNvbnN0 cnVjdDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNp bmNlID0gIjAuMiIpXQorKwlwdWJsaWMgY2xhc3MgS2V5RXZlbnQgOiBDbHV0dGVyLkV2ZW50IHsK KysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuSW5wdXREZXZpY2UgZGV2aWNlOworKwkJcHVibGljIENs dXR0ZXIuRXZlbnRGbGFncyBmbGFnczsKKysJCXB1YmxpYyB1aW50MTYgaGFyZHdhcmVfa2V5Y29k ZTsKKysJCXB1YmxpYyB1aW50IGtleXZhbDsKKysJCXB1YmxpYyBDbHV0dGVyLk1vZGlmaWVyVHlw ZSBtb2RpZmllcl9zdGF0ZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuQWN0b3Igc291cmNlOwor KwkJcHVibGljIHdlYWsgQ2x1dHRlci5TdGFnZSBzdGFnZTsKKysJCXB1YmxpYyB1aW50MzIgdGlt ZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50VHlwZSB0eXBlOworKwkJcHVibGljIHVuaWNoYXIg dW5pY29kZV92YWx1ZTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfa2V5ZnJhbWVfdHJhbnNpdGlvbl9nZXRf dHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwlwdWJsaWMgY2xhc3Mg S2V5ZnJhbWVUcmFuc2l0aW9uIDogQ2x1dHRlci5Qcm9wZXJ0eVRyYW5zaXRpb24sIENsdXR0ZXIu U2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwg dHlwZSA9ICJDbHV0dGVyVHJhbnNpdGlvbioiKV0KKysJCXB1YmxpYyBLZXlmcmFtZVRyYW5zaXRp b24gKHN0cmluZyBwcm9wZXJ0eV9uYW1lKTsKKysJCXB1YmxpYyB2b2lkIGNsZWFyICgpOworKwkJ cHVibGljIHZvaWQgZ2V0X2tleV9mcmFtZSAodWludCBpbmRleF8sIG91dCBkb3VibGUga2V5LCBv dXQgQ2x1dHRlci5BbmltYXRpb25Nb2RlIG1vZGUsIG91dCBHTGliLlZhbHVlIHZhbHVlKTsKKysJ CXB1YmxpYyB1aW50IGdldF9uX2tleV9mcmFtZXMgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfa2V5 X2ZyYW1lICh1aW50IGluZGV4XywgZG91YmxlIGtleSwgQ2x1dHRlci5BbmltYXRpb25Nb2RlIG1v ZGUsIEdMaWIuVmFsdWUgdmFsdWUpOworKwkJcHVibGljIHZvaWQgc2V0X2tleV9mcmFtZXMgKFtD Q29kZSAoYXJyYXlfbGVuZ3RoX2NuYW1lID0gIm5fa2V5X2ZyYW1lcyIsIGFycmF5X2xlbmd0aF9w b3MgPSAwLjUsIGFycmF5X2xlbmd0aF90eXBlID0gImd1aW50IildIGRvdWJsZVtdIGtleV9mcmFt ZXMpOworKwkJcHVibGljIHZvaWQgc2V0X21vZGVzIChbQ0NvZGUgKGFycmF5X2xlbmd0aF9jbmFt ZSA9ICJuX21vZGVzIiwgYXJyYXlfbGVuZ3RoX3BvcyA9IDAuNSwgYXJyYXlfbGVuZ3RoX3R5cGUg PSAiZ3VpbnQiKV0gQ2x1dHRlci5BbmltYXRpb25Nb2RlW10gbW9kZXMpOworKwkJcHVibGljIHZv aWQgc2V0X3ZhbHVlcyAoW0NDb2RlIChhcnJheV9sZW5ndGhfY25hbWUgPSAibl92YWx1ZXMiLCBh cnJheV9sZW5ndGhfcG9zID0gMC41LCBhcnJheV9sZW5ndGhfdHlwZSA9ICJndWludCIpXSBHTGli LlZhbHVlW10gdmFsdWVzKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfa2V5bWFwX2dldF90eXBlICgpIild CisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBLZXltYXAgOiBHTGliLk9iamVjdCB7CisrCQlbQ0Nv ZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgS2V5bWFw ICgpOworKwkJcHVibGljIHZpcnR1YWwgYm9vbCBnZXRfY2Fwc19sb2NrX3N0YXRlICgpOworKwkJ cHVibGljIHZpcnR1YWwgUGFuZ28uRGlyZWN0aW9uIGdldF9kaXJlY3Rpb24gKCk7CisrCQlwdWJs aWMgdmlydHVhbCBib29sIGdldF9udW1fbG9ja19zdGF0ZSAoKTsKKysJCXB1YmxpYyBzaWduYWwg dm9pZCBzdGF0ZV9jaGFuZ2VkICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9sYXllcl9ub2RlX2dldF90 eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBMYXllck5vZGUgOiBDbHV0dGVyLlBhaW50Tm9kZSB7 CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0 dGVyUGFpbnROb2RlKiIpXQorKwkJcHVibGljIExheWVyTm9kZSAoQ29nbC5NYXRyaXggcHJvamVj dGlvbiwgQ2Fpcm8uUmVjdGFuZ2xlIHZpZXdwb3J0LCBmbG9hdCB3aWR0aCwgZmxvYXQgaGVpZ2h0 LCB1aW50OCBvcGFjaXR5KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfbGF5b3V0X21hbmFnZXJfZ2V0X3R5 cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwlwdWJsaWMgYWJzdHJhY3Qg Y2xhc3MgTGF5b3V0TWFuYWdlciA6IEdMaWIuSW5pdGlhbGx5VW5vd25lZCB7CisrCQlbQ0NvZGUg KGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgTGF5b3V0TWFu YWdlciAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgYWxsb2NhdGUgKENsdXR0ZXIuQ29udGFp bmVyIGNvbnRhaW5lciwgQ2x1dHRlci5BY3RvckJveCBhbGxvY2F0aW9uLCBDbHV0dGVyLkFsbG9j YXRpb25GbGFncyBmbGFncyk7CisrCQlwdWJsaWMgdm9pZCBjaGlsZF9nZXQgKENsdXR0ZXIuQ29u dGFpbmVyIGNvbnRhaW5lciwgQ2x1dHRlci5BY3RvciBhY3RvciwgLi4uKTsKKysJCXB1YmxpYyB2 b2lkIGNoaWxkX2dldF9wcm9wZXJ0eSAoQ2x1dHRlci5Db250YWluZXIgY29udGFpbmVyLCBDbHV0 dGVyLkFjdG9yIGFjdG9yLCBzdHJpbmcgcHJvcGVydHlfbmFtZSwgR0xpYi5WYWx1ZSB2YWx1ZSk7 CisrCQlwdWJsaWMgdm9pZCBjaGlsZF9zZXQgKENsdXR0ZXIuQ29udGFpbmVyIGNvbnRhaW5lciwg Q2x1dHRlci5BY3RvciBhY3RvciwgLi4uKTsKKysJCXB1YmxpYyB2b2lkIGNoaWxkX3NldF9wcm9w ZXJ0eSAoQ2x1dHRlci5Db250YWluZXIgY29udGFpbmVyLCBDbHV0dGVyLkFjdG9yIGFjdG9yLCBz dHJpbmcgcHJvcGVydHlfbmFtZSwgR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlbTm9XcmFwcGVyXQor KwkJcHVibGljIHZpcnR1YWwgdW5vd25lZCBDbHV0dGVyLkxheW91dE1ldGEgY3JlYXRlX2NoaWxk X21ldGEgKENsdXR0ZXIuQ29udGFpbmVyIGNvbnRhaW5lciwgQ2x1dHRlci5BY3RvciBhY3Rvcik7 CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBlbmRfYW5pbWF0aW9uICgp OworKwkJcHVibGljIHVub3duZWQgR0xpYi5QYXJhbVNwZWMgZmluZF9jaGlsZF9wcm9wZXJ0eSAo c3RyaW5nIG5hbWUpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIGRvdWJsZSBn ZXRfYW5pbWF0aW9uX3Byb2dyZXNzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5MYXlvdXRNZXRhIGdldF9jaGlsZF9tZXRhIChDbHV0 dGVyLkNvbnRhaW5lciBjb250YWluZXIsIENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwkJW05vV3Jh cHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIEdMaWIuVHlwZSBnZXRfY2hpbGRfbWV0YV90eXBlICgp OworKwkJcHVibGljIHZpcnR1YWwgdm9pZCBnZXRfcHJlZmVycmVkX2hlaWdodCAoQ2x1dHRlci5D b250YWluZXIgY29udGFpbmVyLCBmbG9hdCBmb3Jfd2lkdGgsIG91dCBmbG9hdCBtaW5faGVpZ2h0 X3AsIG91dCBmbG9hdCBuYXRfaGVpZ2h0X3ApOworKwkJcHVibGljIHZpcnR1YWwgdm9pZCBnZXRf cHJlZmVycmVkX3dpZHRoIChDbHV0dGVyLkNvbnRhaW5lciBjb250YWluZXIsIGZsb2F0IGZvcl9o ZWlnaHQsIG91dCBmbG9hdCBtaW5fd2lkdGhfcCwgb3V0IGZsb2F0IG5hdF93aWR0aF9wKTsKKysJ CVtDQ29kZSAoYXJyYXlfbGVuZ3RoX3BvcyA9IDAuMSwgYXJyYXlfbGVuZ3RoX3R5cGUgPSAiZ3Vp bnQiKV0KKysJCXB1YmxpYyBHTGliLlBhcmFtU3BlY1tdIGxpc3RfY2hpbGRfcHJvcGVydGllcyAo KTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgc2V0X2NvbnRhaW5lciAoQ2x1dHRlci5Db250YWlu ZXI/IGNvbnRhaW5lcik7CisrCQlbSGFzRW1pdHRlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25h bCB2b2lkIGxheW91dF9jaGFuZ2VkICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9sYXlvdXRfbWV0YV9n ZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBhYnN0 cmFjdCBjbGFzcyBMYXlvdXRNZXRhIDogQ2x1dHRlci5DaGlsZE1ldGEgeworKwkJW0NDb2RlICho YXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIExheW91dE1ldGEg KCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkxheW91dE1hbmFnZXIgZ2V0X21hbmFnZXIg KCk7CisrCQlwdWJsaWMgQ2x1dHRlci5MYXlvdXRNYW5hZ2VyIG1hbmFnZXIgeyBnZXQ7IGNvbnN0 cnVjdDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNvcHlfZnVuY3Rpb24gPSAiZ19ib3hlZF9jb3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJn X2JveGVkX2ZyZWUiLCB0eXBlX2lkID0gImNsdXR0ZXJfbWFyZ2luX2dldF90eXBlICgpIildCisr CVtDb21wYWN0XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgY2xhc3Mg TWFyZ2luIHsKKysJCXB1YmxpYyBmbG9hdCBib3R0b207CisrCQlwdWJsaWMgZmxvYXQgbGVmdDsK KysJCXB1YmxpYyBmbG9hdCByaWdodDsKKysJCXB1YmxpYyBmbG9hdCB0b3A7CisrCQlbQ0NvZGUg KGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwdWJsaWMgTWFyZ2luICgpOwor KwkJcHVibGljIENsdXR0ZXIuTWFyZ2luIGNvcHkgKCk7CisrCQlwdWJsaWMgdm9pZCBmcmVlICgp OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNpbmNlID0g IjAuMiIpXQorKwlwdWJsaWMgY2xhc3MgTW90aW9uRXZlbnQgOiBDbHV0dGVyLkV2ZW50IHsKKysJ CXB1YmxpYyBkb3VibGUgYXhlczsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuSW5wdXREZXZpY2Ug ZGV2aWNlOworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRGbGFncyBmbGFnczsKKysJCXB1YmxpYyBD bHV0dGVyLk1vZGlmaWVyVHlwZSBtb2RpZmllcl9zdGF0ZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0 ZXIuQWN0b3Igc291cmNlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5TdGFnZSBzdGFnZTsKKysJ CXB1YmxpYyB1aW50MzIgdGltZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50VHlwZSB0eXBlOwor KwkJcHVibGljIGZsb2F0IHg7CisrCQlwdWJsaWMgZmxvYXQgeTsKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJf b2Zmc2NyZWVuX2VmZmVjdF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40 IildCisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBPZmZzY3JlZW5FZmZlY3QgOiBDbHV0dGVyLkVm ZmVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlw cm90ZWN0ZWQgT2Zmc2NyZWVuRWZmZWN0ICgpOworKwkJcHVibGljIHZpcnR1YWwgQ29nbC5IYW5k bGUgY3JlYXRlX3RleHR1cmUgKGZsb2F0IHdpZHRoLCBmbG9hdCBoZWlnaHQpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTQiKV0KKysJCXB1YmxpYyBib29sIGdldF90YXJnZXRfcmVjdCAob3V0 IHVub3duZWQgR3JhcGhlbmUuUmVjdCByZWN0KTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0g dHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE0Iiwgc2luY2UgPSAiMS44IildCisrCQlwdWJs aWMgYm9vbCBnZXRfdGFyZ2V0X3NpemUgKG91dCBmbG9hdCB3aWR0aCwgb3V0IGZsb2F0IGhlaWdo dCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHVub3duZWQgQ29n bC5IYW5kbGUgZ2V0X3RleHR1cmUgKCk7CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHBhaW50X3Rh cmdldCAoQ2x1dHRlci5QYWludENvbnRleHQgcGFpbnRfY29udGV4dCk7CisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0 dGVyX3BhZ2VfdHVybl9lZmZlY3RfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0g IjEuNCIpXQorKwlwdWJsaWMgY2xhc3MgUGFnZVR1cm5FZmZlY3QgOiBDbHV0dGVyLkRlZm9ybUVm ZmVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9 ICJDbHV0dGVyRWZmZWN0KiIpXQorKwkJcHVibGljIFBhZ2VUdXJuRWZmZWN0IChkb3VibGUgcGVy aW9kLCBkb3VibGUgYW5nbGUsIGZsb2F0IHJhZGl1cyk7CisrCQlwdWJsaWMgZG91YmxlIGdldF9h bmdsZSAoKTsKKysJCXB1YmxpYyBkb3VibGUgZ2V0X3BlcmlvZCAoKTsKKysJCXB1YmxpYyBmbG9h dCBnZXRfcmFkaXVzICgpOworKwkJcHVibGljIHZvaWQgc2V0X2FuZ2xlIChkb3VibGUgYW5nbGUp OworKwkJcHVibGljIHZvaWQgc2V0X3BlcmlvZCAoZG91YmxlIHBlcmlvZCk7CisrCQlwdWJsaWMg dm9pZCBzZXRfcmFkaXVzIChmbG9hdCByYWRpdXMpOworKwkJcHVibGljIGRvdWJsZSBhbmdsZSB7 IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgZG91YmxlIHBlcmlvZCB7IGdldDsgc2V0OyB9CisrCQlw dWJsaWMgZmxvYXQgcmFkaXVzIHsgZ2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCByZWZfZnVuY3Rpb24gPSAiY2x1dHRlcl9w YWludF9jb250ZXh0X3JlZiIsIHR5cGVfaWQgPSAiY2x1dHRlcl9wYWludF9jb250ZXh0X2dldF90 eXBlICgpIiwgdW5yZWZfZnVuY3Rpb24gPSAiY2x1dHRlcl9wYWludF9jb250ZXh0X3VucmVmIild CisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3MgUGFpbnRDb250ZXh0IHsKKysJCXB1YmxpYyB2 b2lkIGRlc3Ryb3kgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDb2dsLkZyYW1lYnVmZmVyIGdldF9m cmFtZWJ1ZmZlciAoKTsKKysJCXB1YmxpYyB2b2lkIHBvcF9mcmFtZWJ1ZmZlciAoKTsKKysJCXB1 YmxpYyB2b2lkIHB1c2hfZnJhbWVidWZmZXIgKENvZ2wuRnJhbWVidWZmZXIgZnJhbWVidWZmZXIp OworKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5QYWludENvbnRleHQgQHJlZiAoKTsKKysJCXB1 YmxpYyB2b2lkIHVucmVmICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9wYWludF9ub2RlX2dldF90eXBl ICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBhYnN0cmFjdCBj bGFzcyBQYWludE5vZGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFs c2UpXQorKwkJcHJvdGVjdGVkIFBhaW50Tm9kZSAoKTsKKysJCXB1YmxpYyB2b2lkIGFkZF9jaGls ZCAoQ2x1dHRlci5QYWludE5vZGUgY2hpbGQpOworKwkJcHVibGljIHZvaWQgYWRkX211bHRpdGV4 dHVyZV9yZWN0YW5nbGUgKENsdXR0ZXIuQWN0b3JCb3ggcmVjdCwgZmxvYXQgdGV4dF9jb29yZHMs IHVpbnQgdGV4dF9jb29yZHNfbGVuKTsKKysJCXB1YmxpYyB2b2lkIGFkZF9yZWN0YW5nbGUgKENs dXR0ZXIuQWN0b3JCb3ggcmVjdCk7CisrCQlwdWJsaWMgdm9pZCBhZGRfdGV4dHVyZV9yZWN0YW5n bGUgKENsdXR0ZXIuQWN0b3JCb3ggcmVjdCwgZmxvYXQgeF8xLCBmbG9hdCB5XzEsIGZsb2F0IHhf MiwgZmxvYXQgeV8yKTsKKysJCXB1YmxpYyB1bm93bmVkIENvZ2wuRnJhbWVidWZmZXIgZ2V0X2Zy YW1lYnVmZmVyICgpOworKwkJcHVibGljIHZvaWQgcGFpbnQgKENsdXR0ZXIuUGFpbnRDb250ZXh0 IHBhaW50X2NvbnRleHQpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5QYWludE5vZGUgQHJl ZiAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9uYW1lIChzdHJpbmcgbmFtZSk7CisrCQlwdWJsaWMg dm9pZCB1bnJlZiAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVuY3Rp b24gPSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3BhaW50X3ZvbHVtZV9nZXRf dHlwZSAoKSIpXQorKwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlw dWJsaWMgY2xhc3MgUGFpbnRWb2x1bWUgeworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQor KwkJcHVibGljIENsdXR0ZXIuUGFpbnRWb2x1bWUgY29weSAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB2b2lkIGZyZWUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS42IildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X2RlcHRoICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuNiIpXQorKwkJcHVibGljIGZsb2F0IGdldF9oZWlnaHQgKCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgdm9pZCBnZXRfb3JpZ2luIChvdXQgdW5vd25l ZCBHcmFwaGVuZS5Qb2ludDNEIHZlcnRleCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42Iild CisrCQlwdWJsaWMgZmxvYXQgZ2V0X3dpZHRoICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu NiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2RlcHRoIChmbG9hdCBkZXB0aCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgYm9vbCBzZXRfZnJvbV9hbGxvY2F0aW9uIChD bHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1 YmxpYyB2b2lkIHNldF9oZWlnaHQgKGZsb2F0IGhlaWdodCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS42IildCisrCQlwdWJsaWMgdm9pZCBzZXRfb3JpZ2luIChHcmFwaGVuZS5Qb2ludDNEIG9y aWdpbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgdm9pZCBzZXRf d2lkdGggKGZsb2F0IHdpZHRoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1 YmxpYyB2b2lkIHVuaW9uIChDbHV0dGVyLlBhaW50Vm9sdW1lIGFub3RoZXJfcHYpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHVuaW9uX2JveCAoQ2x1dHRl ci5BY3RvckJveCBib3gpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9wYW5fYWN0aW9uX2dldF90eXBlICgp IildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCXB1YmxpYyBjbGFzcyBQYW5BY3Rp b24gOiBDbHV0dGVyLkdlc3R1cmVBY3Rpb24geworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1 bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFjdGlvbioiKV0KKysJCXB1YmxpYyBQYW5B Y3Rpb24gKCk7CisrCQlwdWJsaWMgZG91YmxlIGdldF9hY2NlbGVyYXRpb25fZmFjdG9yICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjQiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfY29uc3Ry YWluZWRfbW90aW9uX2RlbHRhICh1aW50IHBvaW50LCBvdXQgZmxvYXQgZGVsdGFfeCwgb3V0IGZs b2F0IGRlbHRhX3kpOworKwkJcHVibGljIGRvdWJsZSBnZXRfZGVjZWxlcmF0aW9uICgpOworKwkJ cHVibGljIGJvb2wgZ2V0X2ludGVycG9sYXRlICgpOworKwkJcHVibGljIHZvaWQgZ2V0X2ludGVy cG9sYXRlZF9jb29yZHMgKG91dCBmbG9hdCBpbnRlcnBvbGF0ZWRfeCwgb3V0IGZsb2F0IGludGVy cG9sYXRlZF95KTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfaW50ZXJwb2xhdGVkX2RlbHRhIChvdXQg ZmxvYXQgZGVsdGFfeCwgb3V0IGZsb2F0IGRlbHRhX3kpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTQiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9tb3Rpb25fY29vcmRzICh1aW50IHBvaW50LCBv dXQgZmxvYXQgbW90aW9uX3gsIG91dCBmbG9hdCBtb3Rpb25feSk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xNCIpXQorKwkJcHVibGljIGZsb2F0IGdldF9tb3Rpb25fZGVsdGEgKHVpbnQgcG9p bnQsIG91dCBmbG9hdCBkZWx0YV94LCBvdXQgZmxvYXQgZGVsdGFfeSk7CisrCQlwdWJsaWMgQ2x1 dHRlci5QYW5BeGlzIGdldF9wYW5fYXhpcyAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9hY2NlbGVy YXRpb25fZmFjdG9yIChkb3VibGUgZmFjdG9yKTsKKysJCXB1YmxpYyB2b2lkIHNldF9kZWNlbGVy YXRpb24gKGRvdWJsZSByYXRlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9pbnRlcnBvbGF0ZSAoYm9v bCBzaG91bGRfaW50ZXJwb2xhdGUpOworKwkJcHVibGljIHZvaWQgc2V0X3Bhbl9heGlzIChDbHV0 dGVyLlBhbkF4aXMgYXhpcyk7CisrCQlwdWJsaWMgZG91YmxlIGFjY2VsZXJhdGlvbl9mYWN0b3Ig eyBnZXQ7IHNldDsgfQorKwkJcHVibGljIGRvdWJsZSBkZWNlbGVyYXRpb24geyBnZXQ7IHNldDsg fQorKwkJcHVibGljIGJvb2wgaW50ZXJwb2xhdGUgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIENs dXR0ZXIuUGFuQXhpcyBwYW5fYXhpcyB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgdmlydHVhbCBz aWduYWwgYm9vbCBwYW4gKENsdXR0ZXIuQWN0b3IgYWN0b3IsIGJvb2wgaXNfaW50ZXJwb2xhdGVk KTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIHBhbl9zdG9wcGVkIChDbHV0dGVyLkFj dG9yIGFjdG9yKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBsb3dlcl9jYXNlX2NzdWZmaXggPSAicGFyYW1fdW5pdHMiLCB0eXBlX2lkID0g ImNsdXR0ZXJfcGFyYW1fdW5pdHNfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFBhcmFt U3BlY1VuaXQgOiBHTGliLlBhcmFtU3BlYyB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVu Y3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgUGFyYW1TcGVjVW5pdCAoKTsKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0g ImNsdXR0ZXJfcGF0aF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIild CisrCXB1YmxpYyBjbGFzcyBQYXRoIDogR0xpYi5Jbml0aWFsbHlVbm93bmVkIHsKKysJCVtDQ29k ZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1YmxpYyBQYXRoICgpOwor KwkJcHVibGljIHZvaWQgYWRkX2NhaXJvX3BhdGggKENhaXJvLlBhdGggY3BhdGgpOworKwkJcHVi bGljIHZvaWQgYWRkX2Nsb3NlICgpOworKwkJcHVibGljIHZvaWQgYWRkX2N1cnZlX3RvIChpbnQg eF8xLCBpbnQgeV8xLCBpbnQgeF8yLCBpbnQgeV8yLCBpbnQgeF8zLCBpbnQgeV8zKTsKKysJCXB1 YmxpYyB2b2lkIGFkZF9saW5lX3RvIChpbnQgeCwgaW50IHkpOworKwkJcHVibGljIHZvaWQgYWRk X21vdmVfdG8gKGludCB4LCBpbnQgeSk7CisrCQlwdWJsaWMgdm9pZCBhZGRfbm9kZSAoQ2x1dHRl ci5QYXRoTm9kZSBub2RlKTsKKysJCXB1YmxpYyB2b2lkIGFkZF9yZWxfY3VydmVfdG8gKGludCB4 XzEsIGludCB5XzEsIGludCB4XzIsIGludCB5XzIsIGludCB4XzMsIGludCB5XzMpOworKwkJcHVi bGljIHZvaWQgYWRkX3JlbF9saW5lX3RvIChpbnQgeCwgaW50IHkpOworKwkJcHVibGljIHZvaWQg YWRkX3JlbF9tb3ZlX3RvIChpbnQgeCwgaW50IHkpOworKwkJcHVibGljIGJvb2wgYWRkX3N0cmlu ZyAoc3RyaW5nIHN0cik7CisrCQlwdWJsaWMgdm9pZCBjbGVhciAoKTsKKysJCXB1YmxpYyB2b2lk IEBmb3JlYWNoIChDbHV0dGVyLlBhdGhDYWxsYmFjayBjYWxsYmFjayk7CisrCQlwdWJsaWMgc3Ry aW5nIGdldF9kZXNjcmlwdGlvbiAoKTsKKysJCXB1YmxpYyB1aW50IGdldF9sZW5ndGggKCk7Cisr CQlwdWJsaWMgdWludCBnZXRfbl9ub2RlcyAoKTsKKysJCXB1YmxpYyBDbHV0dGVyLlBhdGhOb2Rl IGdldF9ub2RlICh1aW50IGluZGV4Xyk7CisrCQlwdWJsaWMgR0xpYi5TTGlzdDx3ZWFrIENsdXR0 ZXIuUGF0aE5vZGU/PiBnZXRfbm9kZXMgKCk7CisrCQlwdWJsaWMgdWludCBnZXRfcG9zaXRpb24g KGRvdWJsZSBwcm9ncmVzcywgb3V0IENsdXR0ZXIuS25vdCBwb3NpdGlvbik7CisrCQlwdWJsaWMg dm9pZCBpbnNlcnRfbm9kZSAoaW50IGluZGV4XywgQ2x1dHRlci5QYXRoTm9kZSBub2RlKTsKKysJ CXB1YmxpYyB2b2lkIHJlbW92ZV9ub2RlICh1aW50IGluZGV4Xyk7CisrCQlwdWJsaWMgdm9pZCBy ZXBsYWNlX25vZGUgKHVpbnQgaW5kZXhfLCBDbHV0dGVyLlBhdGhOb2RlIG5vZGUpOworKwkJcHVi bGljIGJvb2wgc2V0X2Rlc2NyaXB0aW9uIChzdHJpbmcgc3RyKTsKKysJCXB1YmxpYyB2b2lkIHRv X2NhaXJvX3BhdGggKENhaXJvLkNvbnRleHQgY3IpOworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0 X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHVibGljIFBhdGgud2l0aF9kZXNjcmlwdGlvbiAoc3Ry aW5nIGRlc2MpOworKwkJcHVibGljIHN0cmluZyBkZXNjcmlwdGlvbiB7IG93bmVkIGdldDsgc2V0 OyB9CisrCQlwdWJsaWMgdWludCBsZW5ndGggeyBnZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfcGF0 aF9jb25zdHJhaW50X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0K KysJcHVibGljIGNsYXNzIFBhdGhDb25zdHJhaW50IDogQ2x1dHRlci5Db25zdHJhaW50IHsKKysJ CVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJD b25zdHJhaW50KiIpXQorKwkJcHVibGljIFBhdGhDb25zdHJhaW50IChDbHV0dGVyLlBhdGg/IHBh dGgsIGZsb2F0IG9mZnNldCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X29mZnNldCAoKTsKKysJCXB1 YmxpYyB1bm93bmVkIENsdXR0ZXIuUGF0aCBnZXRfcGF0aCAoKTsKKysJCXB1YmxpYyB2b2lkIHNl dF9vZmZzZXQgKGZsb2F0IG9mZnNldCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfcGF0aCAoQ2x1dHRl ci5QYXRoPyBwYXRoKTsKKysJCXB1YmxpYyBmbG9hdCBvZmZzZXQgeyBnZXQ7IHNldDsgfQorKwkJ cHVibGljIENsdXR0ZXIuUGF0aCBwYXRoIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBzaWduYWwg dm9pZCBub2RlX3JlYWNoZWQgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIHVpbnQgaW5kZXgpOworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHJlZl9m dW5jdGlvbiA9ICJjbHV0dGVyX3BpY2tfY29udGV4dF9yZWYiLCB0eXBlX2lkID0gImNsdXR0ZXJf cGlja19jb250ZXh0X2dldF90eXBlICgpIiwgdW5yZWZfZnVuY3Rpb24gPSAiY2x1dHRlcl9waWNr X2NvbnRleHRfdW5yZWYiKV0KKysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFzcyBQaWNrQ29udGV4 dCB7CisrCQlwdWJsaWMgdm9pZCBkZXN0cm95ICgpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRl ci5QaWNrQ29udGV4dCBAcmVmICgpOworKwkJcHVibGljIHZvaWQgdW5yZWYgKCk7CisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9 ICJjbHV0dGVyX3BpcGVsaW5lX25vZGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTAiKV0KKysJcHVibGljIGNsYXNzIFBpcGVsaW5lTm9kZSA6IENsdXR0ZXIuUGFpbnRO b2RlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXBy b3RlY3RlZCBQaXBlbGluZU5vZGUgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3Byb3BlcnR5X3RyYW5z aXRpb25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVi bGljIGNsYXNzIFByb3BlcnR5VHJhbnNpdGlvbiA6IENsdXR0ZXIuVHJhbnNpdGlvbiwgQ2x1dHRl ci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNl LCB0eXBlID0gIkNsdXR0ZXJUcmFuc2l0aW9uKiIpXQorKwkJcHVibGljIFByb3BlcnR5VHJhbnNp dGlvbiAoc3RyaW5nPyBwcm9wZXJ0eV9uYW1lKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBn ZXRfcHJvcGVydHlfbmFtZSAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9wcm9wZXJ0eV9uYW1lIChz dHJpbmc/IHByb3BlcnR5X25hbWUpOworKwkJcHVibGljIHN0cmluZyBwcm9wZXJ0eV9uYW1lIHsg Z2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfcmVjdGFuZ2xlX2dldF90eXBlICgpIildCisr CVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJcHVibGljIGNsYXNzIFJlY3RhbmdsZSA6IENs dXR0ZXIuQWN0b3IsIEF0ay5JbXBsZW1lbnRvciwgQ2x1dHRlci5BbmltYXRhYmxlLCBDbHV0dGVy LkNvbnRhaW5lciwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVj dF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3RvcioiKV0KKysJCVtWZXJzaW9u IChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIildCisrCQlwdWJs aWMgUmVjdGFuZ2xlICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNh dGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkNv bG9yIGdldF9ib3JkZXJfY29sb3IgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUs IGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIHVp bnQgZ2V0X2JvcmRlcl93aWR0aCAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwg ZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBnZXRf Y29sb3IgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2lu Y2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2JvcmRlcl9jb2xvciAoQ2x1dHRlci5D b2xvciBjb2xvcik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRf c2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2JvcmRl cl93aWR0aCAodWludCB3aWR0aCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRl cHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2NvbG9yIChDbHV0 dGVyLkNvbG9yIGNvbG9yKTsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZh bHNlLCB0eXBlID0gIkNsdXR0ZXJBY3RvcioiKV0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0g dHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgUmVjdGFuZ2xlLndp dGhfY29sb3IgKENsdXR0ZXIuQ29sb3IgY29sb3IpOworKwkJcHVibGljIENsdXR0ZXIuQ29sb3Ig Ym9yZGVyX2NvbG9yIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyB1aW50IGJvcmRlcl93aWR0aCB7 IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBjb2xvciB7IGdldDsgc2V0OyB9 CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIGhhc19ib3JkZXIgeyBnZXQ7 IHNldDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9yb290X25vZGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVi bGljIGNsYXNzIFJvb3ROb2RlIDogQ2x1dHRlci5QYWludE5vZGUgeworKwkJW0NDb2RlIChoYXNf Y29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlclBhaW50Tm9kZSoiKV0K KysJCXB1YmxpYyBSb290Tm9kZSAoQ29nbC5GcmFtZWJ1ZmZlciBmcmFtZWJ1ZmZlciwgQ2x1dHRl ci5Db2xvciBjbGVhcl9jb2xvciwgQ29nbC5CdWZmZXJCaXQgY2xlYXJfZmxhZ3MpOworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQg PSAiY2x1dHRlcl9yb3RhdGVfYWN0aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEyIildCisrCXB1YmxpYyBjbGFzcyBSb3RhdGVBY3Rpb24gOiBDbHV0dGVyLkdlc3R1 cmVBY3Rpb24geworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5 cGUgPSAiQ2x1dHRlckFjdGlvbioiKV0KKysJCXB1YmxpYyBSb3RhdGVBY3Rpb24gKCk7CisrCQlw dWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCByb3RhdGUgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIGRv dWJsZSBhbmdsZSk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3NjcmlwdF9nZXRfdHlwZSAoKSIpXQorKwlb VmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCXB1YmxpYyBjbGFzcyBTY3JpcHQgOiBHTGliLk9i amVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlw dWJsaWMgU2NyaXB0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGlj IHZvaWQgYWRkX3NlYXJjaF9wYXRocyAoW0NDb2RlIChhcnJheV9sZW5ndGhfY25hbWUgPSAibl9w YXRocyIsIGFycmF5X2xlbmd0aF9wb3MgPSAxLjEsIGFycmF5X2xlbmd0aF90eXBlID0gImdzaXpl IildIHN0cmluZ1tdIHBhdGhzKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVw cmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBh ZGRfc3RhdGVzIChzdHJpbmc/IG5hbWUsIENsdXR0ZXIuU3RhdGUgc3RhdGUpOworKwkJcHVibGlj IHZvaWQgY29ubmVjdF9zaWduYWxzICh2b2lkKiB1c2VyX2RhdGEpOworKwkJcHVibGljIHZvaWQg Y29ubmVjdF9zaWduYWxzX2Z1bGwgKENsdXR0ZXIuU2NyaXB0Q29ubmVjdEZ1bmMgZnVuYyk7Cisr CQlwdWJsaWMgdm9pZCBlbnN1cmVfb2JqZWN0cyAoKTsKKysJCXB1YmxpYyB1bm93bmVkIEdMaWIu T2JqZWN0IGdldF9vYmplY3QgKHN0cmluZyBuYW1lKTsKKysJCXB1YmxpYyBpbnQgZ2V0X29iamVj dHMgKC4uLik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2lu Y2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5T dGF0ZSBnZXRfc3RhdGVzIChzdHJpbmc/IG5hbWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTAiKV0KKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfdHJhbnNsYXRpb25fZG9tYWluICgp OworKwkJcHVibGljIHZpcnR1YWwgR0xpYi5UeXBlIGdldF90eXBlX2Zyb21fbmFtZSAoc3RyaW5n IHR5cGVfbmFtZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgR0xp Yi5MaXN0PHdlYWsgR0xpYi5PYmplY3Q+IGxpc3Rfb2JqZWN0cyAoKTsKKysJCXB1YmxpYyB1aW50 IGxvYWRfZnJvbV9kYXRhIChzdHJpbmcgZGF0YSwgc3NpemVfdCBsZW5ndGgpIHRocm93cyBHTGli LkVycm9yOworKwkJcHVibGljIHVpbnQgbG9hZF9mcm9tX2ZpbGUgKHN0cmluZyBmaWxlbmFtZSkg dGhyb3dzIEdMaWIuRXJyb3I7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVi bGljIHVpbnQgbG9hZF9mcm9tX3Jlc291cmNlIChzdHJpbmcgcmVzb3VyY2VfcGF0aCkgdGhyb3dz IEdMaWIuRXJyb3I7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgc3Ry aW5nIGxvb2t1cF9maWxlbmFtZSAoc3RyaW5nIGZpbGVuYW1lKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfdHJhbnNsYXRpb25fZG9tYWluIChzdHJp bmc/IGRvbWFpbik7CisrCQlwdWJsaWMgdm9pZCB1bm1lcmdlX29iamVjdHMgKHVpbnQgbWVyZ2Vf aWQpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgc3RyaW5nIGZpbGVuYW1lIHsg b3duZWQgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIGZpbGVu YW1lX3NldCB7IGdldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1Ymxp YyBzdHJpbmcgdHJhbnNsYXRpb25fZG9tYWluIHsgZ2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0 ZXJfc2Nyb2xsX2FjdG9yX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEy IildCisrCXB1YmxpYyBjbGFzcyBTY3JvbGxBY3RvciA6IENsdXR0ZXIuQWN0b3IsIEF0ay5JbXBs ZW1lbnRvciwgQ2x1dHRlci5BbmltYXRhYmxlLCBDbHV0dGVyLkNvbnRhaW5lciwgQ2x1dHRlci5T Y3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0 eXBlID0gIkNsdXR0ZXJBY3RvcioiKV0KKysJCXB1YmxpYyBTY3JvbGxBY3RvciAoKTsKKysJCXB1 YmxpYyBDbHV0dGVyLlNjcm9sbE1vZGUgZ2V0X3Njcm9sbF9tb2RlICgpOworKwkJcHVibGljIHZv aWQgc2Nyb2xsX3RvX3BvaW50IChHcmFwaGVuZS5Qb2ludCBwb2ludCk7CisrCQlwdWJsaWMgdm9p ZCBzY3JvbGxfdG9fcmVjdCAoR3JhcGhlbmUuUmVjdCByZWN0KTsKKysJCXB1YmxpYyB2b2lkIHNl dF9zY3JvbGxfbW9kZSAoQ2x1dHRlci5TY3JvbGxNb2RlIG1vZGUpOworKwkJcHVibGljIENsdXR0 ZXIuU2Nyb2xsTW9kZSBzY3JvbGxfbW9kZSB7IGdldDsgc2V0OyB9CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBmYWxz ZSldCisrCVtDb21wYWN0XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCXB1YmxpYyBj bGFzcyBTY3JvbGxFdmVudCA6IENsdXR0ZXIuRXZlbnQgeworKwkJcHVibGljIGRvdWJsZSBheGVz OworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5JbnB1dERldmljZSBkZXZpY2U7CisrCQlwdWJsaWMg Q2x1dHRlci5TY3JvbGxEaXJlY3Rpb24gZGlyZWN0aW9uOworKwkJcHVibGljIENsdXR0ZXIuU2Ny b2xsRmluaXNoRmxhZ3MgZmluaXNoX2ZsYWdzOworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRGbGFn cyBmbGFnczsKKysJCXB1YmxpYyBDbHV0dGVyLk1vZGlmaWVyVHlwZSBtb2RpZmllcl9zdGF0ZTsK KysJCXB1YmxpYyBDbHV0dGVyLlNjcm9sbFNvdXJjZSBzY3JvbGxfc291cmNlOworKwkJcHVibGlj IHdlYWsgQ2x1dHRlci5BY3RvciBzb3VyY2U7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLlN0YWdl IHN0YWdlOworKwkJcHVibGljIHVpbnQzMiB0aW1lOworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRU eXBlIHR5cGU7CisrCQlwdWJsaWMgZmxvYXQgeDsKKysJCXB1YmxpYyBmbG9hdCB5OworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQg PSAiY2x1dHRlcl9zZWF0X2dldF90eXBlICgpIildCisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBT ZWF0IDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0g ZmFsc2UpXQorKwkJcHJvdGVjdGVkIFNlYXQgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGlj IHZpcnR1YWwgdm9pZCBhcHBseV9rYmRfYTExeV9zZXR0aW5ncyAoQ2x1dHRlci5LYmRBMTF5U2V0 dGluZ3Mgc2V0dGluZ3MpOworKwkJcHVibGljIHZpcnR1YWwgdm9pZCBiZWxsX25vdGlmeSAoKTsK KysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgY29tcHJlc3NfbW90aW9uIChDbHV0dGVyLkV2ZW50IGV2 ZW50LCBDbHV0dGVyLkV2ZW50IHRvX2Rpc2NhcmQpOworKwkJW05vV3JhcHBlcl0KKysJCXB1Ymxp YyB2aXJ0dWFsIHZvaWQgY29weV9ldmVudF9kYXRhIChDbHV0dGVyLkV2ZW50IHNyYywgQ2x1dHRl ci5FdmVudCBkZXN0KTsKKysJCXB1YmxpYyB2aXJ0dWFsIENsdXR0ZXIuVmlydHVhbElucHV0RGV2 aWNlIGNyZWF0ZV92aXJ0dWFsX2RldmljZSAoQ2x1dHRlci5JbnB1dERldmljZVR5cGUgZGV2aWNl X3R5cGUpOworKwkJcHVibGljIHZvaWQgZW5zdXJlX2ExMXlfc3RhdGUgKCk7CisrCQlbTm9XcmFw cGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBmcmVlX2V2ZW50X2RhdGEgKENsdXR0ZXIuRXZl bnQgZXZlbnQpOworKwkJcHVibGljIHZvaWQgZ2V0X2tiZF9hMTF5X3NldHRpbmdzIChDbHV0dGVy LktiZEExMXlTZXR0aW5ncyBzZXR0aW5ncyk7CisrCQlwdWJsaWMgdmlydHVhbCB1bm93bmVkIENs dXR0ZXIuSW5wdXREZXZpY2UgZ2V0X2tleWJvYXJkICgpOworKwkJcHVibGljIHZpcnR1YWwgdW5v d25lZCBDbHV0dGVyLktleW1hcCBnZXRfa2V5bWFwICgpOworKwkJcHVibGljIHZpcnR1YWwgdW5v d25lZCBDbHV0dGVyLklucHV0RGV2aWNlIGdldF9wb2ludGVyICgpOworKwkJcHVibGljIHZvaWQg Z2V0X3BvaW50ZXJfYTExeV9zZXR0aW5ncyAoQ2x1dHRlci5Qb2ludGVyQTExeVNldHRpbmdzIHNl dHRpbmdzKTsKKysJCXB1YmxpYyB2aXJ0dWFsIENsdXR0ZXIuVmlydHVhbERldmljZVR5cGUgZ2V0 X3N1cHBvcnRlZF92aXJ0dWFsX2RldmljZV90eXBlcyAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIEdM aWIuTGlzdDx3ZWFrIENsdXR0ZXIuSW5wdXREZXZpY2U+IGxpc3RfZGV2aWNlcyAoKTsKKysJCXB1 YmxpYyB2b2lkIHNldF9rYmRfYTExeV9zZXR0aW5ncyAoQ2x1dHRlci5LYmRBMTF5U2V0dGluZ3Mg c2V0dGluZ3MpOworKwkJcHVibGljIHZvaWQgc2V0X3BvaW50ZXJfYTExeV9kd2VsbF9jbGlja190 eXBlIChDbHV0dGVyLlBvaW50ZXJBMTF5RHdlbGxDbGlja1R5cGUgY2xpY2tfdHlwZSk7CisrCQlw dWJsaWMgdm9pZCBzZXRfcG9pbnRlcl9hMTF5X3NldHRpbmdzIChDbHV0dGVyLlBvaW50ZXJBMTF5 U2V0dGluZ3Mgc2V0dGluZ3MpOworKwkJcHVibGljIHZpcnR1YWwgdm9pZCB3YXJwX3BvaW50ZXIg KGludCB4LCBpbnQgeSk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBDbHV0dGVy LkJhY2tlbmQgYmFja2VuZCB7IG93bmVkIGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgc2ln bmFsIHZvaWQgZGV2aWNlX2FkZGVkIChDbHV0dGVyLklucHV0RGV2aWNlIG9iamVjdCk7CisrCQlw dWJsaWMgc2lnbmFsIHZvaWQgZGV2aWNlX3JlbW92ZWQgKENsdXR0ZXIuSW5wdXREZXZpY2Ugb2Jq ZWN0KTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBrYmRfYTExeV9mbGFnc19jaGFuZ2VkICh1aW50 IHNldHRpbmdzX2ZsYWdzLCB1aW50IGNoYW5nZWRfbWFzayk7CisrCQlwdWJsaWMgc2lnbmFsIHZv aWQga2JkX2ExMXlfbW9kc19zdGF0ZV9jaGFuZ2VkICh1aW50IGxhdGNoZWRfbWFzaywgdWludCBs b2NrZWRfbWFzayk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgcHRyX2ExMXlfZHdlbGxfY2xpY2tf dHlwZV9jaGFuZ2VkIChDbHV0dGVyLlBvaW50ZXJBMTF5RHdlbGxDbGlja1R5cGUgY2xpY2tfdHlw ZSk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgcHRyX2ExMXlfdGltZW91dF9zdGFydGVkIChDbHV0 dGVyLklucHV0RGV2aWNlIGRldmljZSwgQ2x1dHRlci5Qb2ludGVyQTExeVRpbWVvdXRUeXBlIHRp bWVvdXRfdHlwZSwgdWludCBkZWxheSk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgcHRyX2ExMXlf dGltZW91dF9zdG9wcGVkIChDbHV0dGVyLklucHV0RGV2aWNlIGRldmljZSwgQ2x1dHRlci5Qb2lu dGVyQTExeVRpbWVvdXRUeXBlIHRpbWVvdXRfdHlwZSwgYm9vbCBjbGlja2VkKTsKKysJCXB1Ymxp YyBzaWduYWwgdm9pZCB0b29sX2NoYW5nZWQgKENsdXR0ZXIuSW5wdXREZXZpY2Ugb2JqZWN0LCBD bHV0dGVyLklucHV0RGV2aWNlVG9vbCBwMCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3NldHRpbmdzX2dl dF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGNsYXNz IFNldHRpbmdzIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0 aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFNldHRpbmdzICgpOworKwkJcHVibGljIHN0YXRp YyB1bm93bmVkIENsdXR0ZXIuU2V0dGluZ3MgZ2V0X2RlZmF1bHQgKCk7CisrCQlbTm9BY2Nlc3Nv ck1ldGhvZF0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5j ZSA9ICIxLjEwIiwgc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgQ2x1dHRlci5CYWNrZW5kIGJh Y2tlbmQgeyBjb25zdHJ1Y3Q7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIGludCBkbmRfZHJhZ190aHJlc2hvbGQgeyBnZXQ7 IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgaW50IGRvdWJsZV9jbGlj a19kaXN0YW5jZSB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1Ymxp YyBpbnQgZG91YmxlX2NsaWNrX3RpbWUgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRo b2RdCisrCQlwdWJsaWMgaW50IGZvbnRfYW50aWFsaWFzIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0Fj Y2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGludCBmb250X2RwaSB7IGdldDsgc2V0OyB9CisrCQlb Tm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBzdHJpbmcgZm9udF9oaW50X3N0eWxlIHsgb3du ZWQgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGludCBmb250 X2hpbnRpbmcgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMg c3RyaW5nIGZvbnRfbmFtZSB7IG93bmVkIGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhv ZF0KKysJCXB1YmxpYyBzdHJpbmcgZm9udF9zdWJwaXhlbF9vcmRlciB7IG93bmVkIGdldDsgc2V0 OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyB1aW50IGZvbnRjb25maWdfdGlt ZXN0YW1wIHsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBpbnQgbG9uZ19wcmVzc19kdXJhdGlvbiB7IGdldDsgc2V0 OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyB1aW50IHBhc3N3b3JkX2hpbnRf dGltZSB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBpbnQg dW5zY2FsZWRfZm9udF9kcGkgeyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0NvbXBh Y3RdCisrCXB1YmxpYyBjbGFzcyBTaGFkZXIgeworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zaGFkZXJfZWZm ZWN0X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGlj IGNsYXNzIFNoYWRlckVmZmVjdCA6IENsdXR0ZXIuT2Zmc2NyZWVuRWZmZWN0IHsKKysJCVtDQ29k ZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJFZmZlY3Qq IildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgU2hhZGVyRWZmZWN0 IChDbHV0dGVyLlNoYWRlclR5cGUgc2hhZGVyX3R5cGUpOworKwkJcHVibGljIHVub3duZWQgQ29n bC5IYW5kbGUgZ2V0X3Byb2dyYW0gKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDb2dsLkhhbmRsZSBn ZXRfc2hhZGVyICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHN0cmluZyBn ZXRfc3RhdGljX3NoYWRlcl9zb3VyY2UgKCk7CisrCQlwdWJsaWMgYm9vbCBzZXRfc2hhZGVyX3Nv dXJjZSAoc3RyaW5nIHNvdXJjZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfdW5pZm9ybV92YWx1ZSAo c3RyaW5nIG5hbWUsIEdMaWIuVmFsdWUgdmFsdWUpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisr CQlwdWJsaWMgQ2x1dHRlci5TaGFkZXJUeXBlIHNoYWRlcl90eXBlIHsgY29uc3RydWN0OyB9Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlw ZV9pZCA9ICJjbHV0dGVyX3NoYWRlcl9mbG9hdF9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xh c3MgU2hhZGVyRmxvYXQgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFs c2UpXQorKwkJcHJvdGVjdGVkIFNoYWRlckZsb2F0ICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zaGFk ZXJfaW50X2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBTaGFkZXJJbnQgeworKwkJW0ND b2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFNoYWRl ckludCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfc2hhZGVyX21hdHJpeF9nZXRfdHlwZSAoKSIpXQor KwlwdWJsaWMgY2xhc3MgU2hhZGVyTWF0cml4IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9m dW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBTaGFkZXJNYXRyaXggKCk7CisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9 ICJjbHV0dGVyX3NuYXBfY29uc3RyYWludF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMS42IildCisrCXB1YmxpYyBjbGFzcyBTbmFwQ29uc3RyYWludCA6IENsdXR0ZXIuQ29u c3RyYWludCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlw ZSA9ICJDbHV0dGVyQ29uc3RyYWludCoiKV0KKysJCXB1YmxpYyBTbmFwQ29uc3RyYWludCAoQ2x1 dHRlci5BY3Rvcj8gc291cmNlLCBDbHV0dGVyLlNuYXBFZGdlIGZyb21fZWRnZSwgQ2x1dHRlci5T bmFwRWRnZSB0b19lZGdlLCBmbG9hdCBvZmZzZXQpOworKwkJcHVibGljIHZvaWQgZ2V0X2VkZ2Vz IChvdXQgQ2x1dHRlci5TbmFwRWRnZSBmcm9tX2VkZ2UsIG91dCBDbHV0dGVyLlNuYXBFZGdlIHRv X2VkZ2UpOworKwkJcHVibGljIGZsb2F0IGdldF9vZmZzZXQgKCk7CisrCQlwdWJsaWMgdW5vd25l ZCBDbHV0dGVyLkFjdG9yIGdldF9zb3VyY2UgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfZWRnZXMg KENsdXR0ZXIuU25hcEVkZ2UgZnJvbV9lZGdlLCBDbHV0dGVyLlNuYXBFZGdlIHRvX2VkZ2UpOwor KwkJcHVibGljIHZvaWQgc2V0X29mZnNldCAoZmxvYXQgb2Zmc2V0KTsKKysJCXB1YmxpYyB2b2lk IHNldF9zb3VyY2UgKENsdXR0ZXIuQWN0b3I/IHNvdXJjZSk7CisrCQlbTm9BY2Nlc3Nvck1ldGhv ZF0KKysJCXB1YmxpYyBDbHV0dGVyLlNuYXBFZGdlIGZyb21fZWRnZSB7IGdldDsgc2V0IGNvbnN0 cnVjdDsgfQorKwkJcHVibGljIGZsb2F0IG9mZnNldCB7IGdldDsgc2V0IGNvbnN0cnVjdDsgfQor KwkJcHVibGljIENsdXR0ZXIuQWN0b3Igc291cmNlIHsgZ2V0OyBzZXQgY29uc3RydWN0OyB9Cisr CQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBDbHV0dGVyLlNuYXBFZGdlIHRvX2VkZ2Ug eyBnZXQ7IHNldCBjb25zdHJ1Y3Q7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfc3RhZ2VfZ2V0X3R5cGUg KCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwlwdWJsaWMgY2xhc3MgU3RhZ2Ug OiBDbHV0dGVyLkdyb3VwLCBBdGsuSW1wbGVtZW50b3IsIENsdXR0ZXIuQW5pbWF0YWJsZSwgQ2x1 dHRlci5Db250YWluZXIsIENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25z dHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0b3IqIildCisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgU3RhZ2UgKCk7CisrCQlwdWJsaWMgYm9v bCBjYXB0dXJlIChib29sIHBhaW50LCBDYWlyby5SZWN0YW5nbGVJbnQgcmVjdCwgQ2x1dHRlci5D YXB0dXJlIGNhcHR1cmVzLCBpbnQgbl9jYXB0dXJlcyk7CisrCQlwdWJsaWMgdm9pZCBjYXB0dXJl X2ludG8gKGJvb2wgcGFpbnQsIENhaXJvLlJlY3RhbmdsZUludCByZWN0LCB1aW50OCBkYXRhKTsK KysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl9zdGFnZV9ldmVudCIpXQorKwkJW1ZlcnNpb24g KHNpbmNlID0gIjAuNCIpXQorKwkJcHVibGljIGJvb2wgZW1pdF9ldmVudCAoQ2x1dHRlci5FdmVu dCBldmVudCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIHNpbmNlID0gIjAuOCIp XQorKwkJcHVibGljIHZvaWQgZW5zdXJlX2N1cnJlbnQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCBlbnN1cmVfcmVkcmF3ICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgZW5zdXJlX3ZpZXdwb3J0ICgpOworKwkJ cHVibGljIHZvaWQgZnJlZXplX3VwZGF0ZXMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42 IildCisrCQlwdWJsaWMgYm9vbCBnZXRfYWNjZXB0X2ZvY3VzICgpOworKwkJcHVibGljIHVub3du ZWQgQ2x1dHRlci5BY3RvciBnZXRfYWN0b3JfYXRfcG9zIChDbHV0dGVyLlBpY2tNb2RlIHBpY2tf bW9kZSwgZmxvYXQgeCwgZmxvYXQgeSk7CisrCQlwdWJsaWMgYm9vbCBnZXRfY2FwdHVyZV9maW5h bF9zaXplIChDYWlyby5SZWN0YW5nbGVJbnQgcmVjdCwgaW50IHdpZHRoLCBpbnQgaGVpZ2h0LCBm bG9hdCBzY2FsZSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRf c2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENsdXR0ZXIuQ29sb3IgZ2V0X2NvbG9yICgpOwor KwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAi KV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLlN0YWdlIGdldF9kZWZhdWx0ICgp OworKwkJcHVibGljIGludDY0IGdldF9mcmFtZV9jb3VudGVyICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjAuNiIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfa2V5X2Zv Y3VzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgZ2V0 X21pbmltdW1fc2l6ZSAob3V0IHVpbnQgd2lkdGgsIG91dCB1aW50IGhlaWdodCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgYm9vbCBnZXRfbW90aW9uX2V2ZW50c19l bmFibGVkICgpOworKwkJcHVibGljIENsdXR0ZXIuUGVyc3BlY3RpdmUgZ2V0X3BlcnNwZWN0aXZl ICgpOworKwkJcHVibGljIENhaXJvLlJlZ2lvbiBnZXRfcmVkcmF3X2NsaXAgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgYm9vbCBnZXRfdGhyb3R0bGVfbW90aW9u X2V2ZW50cyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJCXB1YmxpYyB1bm93 bmVkIHN0cmluZyBnZXRfdGl0bGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisr CQlwdWJsaWMgYm9vbCBnZXRfdXNlX2FscGhhICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAu NCIpXQorKwkJcHVibGljIHZvaWQgaGlkZV9jdXJzb3IgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVj YXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjAuOCIpXQor KwkJcHVibGljIGJvb2wgaXNfZGVmYXVsdCAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0g dHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMC44IildCisrCQlwdWJs aWMgdm9pZCBxdWV1ZV9yZWRyYXcgKCk7CisrCQlbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNl KV0KKysJCXB1YmxpYyB1aW50OFtdIHJlYWRfcGl4ZWxzIChpbnQgeCwgaW50IHksIGludCB3aWR0 aCA9IC0xLCBpbnQgaGVpZ2h0ID0gLTEpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX3Jl ZHJhdyIpXQorKwkJcHVibGljIHZvaWQgcmVkcmF3ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuNiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2FjY2VwdF9mb2N1cyAoYm9vbCBhY2NlcHRfZm9j dXMpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9jb2xvciAoQ2x1dHRlci5Db2xvciBjb2xvcik7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdm9pZCBzZXRfa2V5X2Zv Y3VzIChDbHV0dGVyLkFjdG9yPyBhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIild CisrCQlwdWJsaWMgdm9pZCBzZXRfbWluaW11bV9zaXplICh1aW50IHdpZHRoLCB1aW50IGhlaWdo dCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBzZXRfbW90 aW9uX2V2ZW50c19lbmFibGVkIChib29sIGVuYWJsZWQpOworKwkJcHVibGljIHZvaWQgc2V0X3Bl cnNwZWN0aXZlIChDbHV0dGVyLlBlcnNwZWN0aXZlIHBlcnNwZWN0aXZlKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF90aHJvdHRsZV9tb3Rpb25fZXZl bnRzIChib29sIHRocm90dGxlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJCXB1 YmxpYyB2b2lkIHNldF90aXRsZSAoc3RyaW5nIHRpdGxlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF91c2VfYWxwaGEgKGJvb2wgdXNlX2FscGhhKTsK KysJCXB1YmxpYyB2b2lkIHNob3dfY3Vyc29yICgpOworKwkJcHVibGljIHZvaWQgdGhhd191cGRh dGVzICgpOworKwkJcHVibGljIHZvaWQgdXBkYXRlX3Jlc291cmNlX3NjYWxlcyAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBib29sIGFjY2VwdF9mb2N1cyB7IGdl dDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2lu Y2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENsdXR0ZXIuQ29sb3IgY29sb3IgeyBnZXQ7IHNldDsg fQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9vbCBjdXJzb3JfdmlzaWJsZSB7 IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgQ2x1 dHRlci5BY3RvciBrZXlfZm9jdXMgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0g IjAuOCIpXQorKwkJcHVibGljIENsdXR0ZXIuUGVyc3BlY3RpdmUgcGVyc3BlY3RpdmUgeyBnZXQ7 IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwkJcHVibGljIHN0cmluZyB0 aXRsZSB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJs aWMgYm9vbCB1c2VfYWxwaGEgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAu NiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgYWN0aXZhdGUgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4yMCIpXQorKwkJcHVibGljIHNpZ25hbCB2b2lkIGFmdGVyX3BhaW50 ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2ln bmFsIHZvaWQgZGVhY3RpdmF0ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJ CXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCBib29sIGRlbGV0ZV9ldmVudCAoQ2x1dHRlci5FdmVudCBl dmVudCk7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBwYWludF92aWV3IChDbHV0dGVy LlN0YWdlVmlldyB2aWV3KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfc3RhZ2VfbWFuYWdlcl9nZXRfdHlw ZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBjbGFzcyBTdGFn ZU1hbmFnZXIgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rp b24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgU3RhZ2VNYW5hZ2VyICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIENsdXR0ZXIuU3RhZ2VN YW5hZ2VyIGdldF9kZWZhdWx0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJ cHVibGljIHVub3duZWQgQ2x1dHRlci5TdGFnZSBnZXRfZGVmYXVsdF9zdGFnZSAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBHTGliLlNMaXN0PHdlYWsgQ2x1dHRl ci5TdGFnZT4gbGlzdF9zdGFnZXMgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBHTGliLlNMaXN0PENs dXR0ZXIuU3RhZ2U+IHBlZWtfc3RhZ2VzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIp XQorKwkJcHVibGljIENsdXR0ZXIuU3RhZ2UgZGVmYXVsdF9zdGFnZSB7IGdldDsgfQorKwkJW1Zl cnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgc3Rh Z2VfYWRkZWQgKENsdXR0ZXIuU3RhZ2Ugc3RhZ2UpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAu OCIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgc3RhZ2VfcmVtb3ZlZCAoQ2x1dHRl ci5TdGFnZSBzdGFnZSk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtDb21wYWN0XQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMC4yIildCisrCXB1YmxpYyBjbGFzcyBTdGFnZVN0YXRlRXZlbnQgOiBD bHV0dGVyLkV2ZW50IHsKKysJCXB1YmxpYyBDbHV0dGVyLlN0YWdlU3RhdGUgY2hhbmdlZF9tYXNr OworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRGbGFncyBmbGFnczsKKysJCXB1YmxpYyBDbHV0dGVy LlN0YWdlU3RhdGUgbmV3X3N0YXRlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5BY3RvciBzb3Vy Y2U7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLlN0YWdlIHN0YWdlOworKwkJcHVibGljIHVpbnQz MiB0aW1lOworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRUeXBlIHR5cGU7CisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0 dGVyX3N0YWdlX3ZpZXdfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFN0YWdlVmlldyA6 IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNl KV0KKysJCXByb3RlY3RlZCBTdGFnZVZpZXcgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDb2dsLkZy YW1lYnVmZmVyIGdldF9mcmFtZWJ1ZmZlciAoKTsKKysJCXB1YmxpYyB2b2lkIGdldF9sYXlvdXQg KENhaXJvLlJlY3RhbmdsZUludCByZWN0KTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgZ2V0X29m ZnNjcmVlbl90cmFuc2Zvcm1hdGlvbl9tYXRyaXggKENvZ2wuTWF0cml4IG1hdHJpeCk7CisrCQlw dWJsaWMgdW5vd25lZCBDb2dsLkZyYW1lYnVmZmVyIGdldF9vbnNjcmVlbiAoKTsKKysJCXB1Ymxp YyBmbG9hdCBnZXRfc2NhbGUgKCk7CisrCQlwdWJsaWMgdm9pZCBpbnZhbGlkYXRlX29mZnNjcmVl bl9ibGl0X3BpcGVsaW5lICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZv aWQgc2V0dXBfb2Zmc2NyZWVuX2JsaXRfcGlwZWxpbmUgKENvZ2wuUGlwZWxpbmUgcGlwZWxpbmUp OworKwkJcHVibGljIHZvaWQgdHJhbnNmb3JtX3RvX29uc2NyZWVuIChmbG9hdCB4LCBmbG9hdCB5 KTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIENhaXJvLlJlY3RhbmdsZUludCBs YXlvdXQgeyBvd25lZCBnZXQ7IHNldCBjb25zdHJ1Y3Q7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9k XQorKwkJcHVibGljIGZsb2F0IHNjYWxlIHsgZ2V0OyBzZXQgY29uc3RydWN0OyB9CisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9 ICJjbHV0dGVyX3N0YXRlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQi KV0KKysJcHVibGljIGNsYXNzIFN0YXRlIDogR0xpYi5PYmplY3QsIENsdXR0ZXIuU2NyaXB0YWJs ZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlbVmVy c2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNl ID0gIjEuNCIpXQorKwkJcHVibGljIFN0YXRlICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQg PSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjQiKV0KKysJCXB1 YmxpYyB1aW50IGdldF9kdXJhdGlvbiAoc3RyaW5nPyBzb3VyY2Vfc3RhdGVfbmFtZSwgc3RyaW5n PyB0YXJnZXRfc3RhdGVfbmFtZSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRl cHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHVub3du ZWQgc3RyaW5nIGdldF9zdGF0ZSAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwg ZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgR0xp Yi5MaXN0PHdlYWsgc3RyaW5nPiBnZXRfc3RhdGVzICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0 ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjQiKV0KKysJ CXB1YmxpYyB2b2lkIHNldF9kdXJhdGlvbiAoc3RyaW5nPyBzb3VyY2Vfc3RhdGVfbmFtZSwgc3Ry aW5nPyB0YXJnZXRfc3RhdGVfbmFtZSwgdWludCBkdXJhdGlvbik7CisrCQlbVmVyc2lvbiAoZGVw cmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuNCIp XQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5TdGF0ZSBzZXRfa2V5IChzdHJpbmc/IHNvdXJj ZV9zdGF0ZV9uYW1lLCBzdHJpbmcgdGFyZ2V0X3N0YXRlX25hbWUsIEdMaWIuT2JqZWN0IG9iamVj dCwgc3RyaW5nIHByb3BlcnR5X25hbWUsIHVpbnQgbW9kZSwgR0xpYi5WYWx1ZSB2YWx1ZSwgZG91 YmxlIHByZV9kZWxheSwgZG91YmxlIHBvc3RfZGVsYXkpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0 ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjQiKV0KKysJ CXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuVGltZWxpbmUgc2V0X3N0YXRlIChzdHJpbmcgdGFyZ2V0 X3N0YXRlX25hbWUpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVk X3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0 ZXIuVGltZWxpbmUgd2FycF90b19zdGF0ZSAoc3RyaW5nIHRhcmdldF9zdGF0ZV9uYW1lKTsKKysJ CVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXBy ZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB1aW50IGR1 cmF0aW9uIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24g KGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIx LjQiKV0KKysJCXB1YmxpYyBzdHJpbmcgc3RhdGUgeyBvd25lZCBnZXQ7IHNldDsgfQorKwkJW1Zl cnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5j ZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGNvbXBsZXRlZCAoKTsK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj b3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24gPSAiZ19ib3hlZF9m cmVlIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3N0YXRlX2tleV9nZXRfdHlwZSAoKSIpXQorKwlbQ29t cGFjdF0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgY2xhc3MgU3RhdGVL ZXkgeworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0g IjEuMTIiLCBzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBHTGliLlR5cGUgZ2V0X3Byb3BlcnR5 X3R5cGUgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3N3aXBlX2FjdGlvbl9nZXRfdHlwZSAoKSIpXQor KwlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCXB1YmxpYyBjbGFzcyBTd2lwZUFjdGlvbiA6 IENsdXR0ZXIuR2VzdHVyZUFjdGlvbiB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rp b24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0aW9uKiIpXQorKwkJcHVibGljIFN3aXBlQWN0 aW9uICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNl ID0gIjEuMTQiLCBzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lk IHN3ZXB0IChDbHV0dGVyLkFjdG9yIGFjdG9yLCBDbHV0dGVyLlN3aXBlRGlyZWN0aW9uIGRpcmVj dGlvbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNCIpXQorKwkJcHVibGljIHZpcnR1YWwg c2lnbmFsIGJvb2wgc3dpcGUgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIENsdXR0ZXIuU3dpcGVEaXJl Y3Rpb24gZGlyZWN0aW9uKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfdGFwX2FjdGlvbl9nZXRfdHlwZSAo KSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNCIpXQorKwlwdWJsaWMgY2xhc3MgVGFwQWN0 aW9uIDogQ2x1dHRlci5HZXN0dXJlQWN0aW9uIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9m dW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3Rpb24qIildCisrCQlwdWJsaWMgVGFw QWN0aW9uICgpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgdGFwIChDbHV0dGVyLkFj dG9yIGFjdG9yKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfdGV4dF9nZXRfdHlwZSAoKSIpXQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBjbGFzcyBUZXh0IDogQ2x1dHRlci5BY3Rv ciwgQXRrLkltcGxlbWVudG9yLCBDbHV0dGVyLkFuaW1hdGFibGUsIENsdXR0ZXIuQ29udGFpbmVy LCBDbHV0dGVyLlNjcmlwdGFibGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9u ID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFjdG9yKiIpXQorKwkJcHVibGljIFRleHQgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGludCBjb29yZHNfdG9fcG9z aXRpb24gKGZsb2F0IHgsIGZsb2F0IHkpOworKwkJcHVibGljIHZvaWQgZGVsZXRlX2NoYXJzICh1 aW50IG5fY2hhcnMpOworKwkJcHVibGljIGJvb2wgZGVsZXRlX3NlbGVjdGlvbiAoKTsKKysJCVtD Q29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3Rv cioiKV0KKysJCXB1YmxpYyBUZXh0LmZ1bGwgKHN0cmluZyBmb250X25hbWUsIHN0cmluZyB0ZXh0 LCBDbHV0dGVyLkNvbG9yIGNvbG9yKTsKKysJCXB1YmxpYyBib29sIGdldF9hY3RpdmF0YWJsZSAo KTsKKysJCXB1YmxpYyB1bm93bmVkIFBhbmdvLkF0dHJMaXN0IGdldF9hdHRyaWJ1dGVzICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIu VGV4dEJ1ZmZlciBnZXRfYnVmZmVyICgpOworKwkJcHVibGljIHN0cmluZyBnZXRfY2hhcnMgKHNz aXplX3Qgc3RhcnRfcG9zLCBzc2l6ZV90IGVuZF9wb3MpOworKwkJcHVibGljIENsdXR0ZXIuQ29s b3IgZ2V0X2NvbG9yICgpOworKwkJcHVibGljIENsdXR0ZXIuQ29sb3IgZ2V0X2N1cnNvcl9jb2xv ciAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0X2N1cnNvcl9wb3NpdGlvbiAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjE2IildCisrCQlwdWJsaWMgdm9pZCBnZXRfY3Vyc29yX3JlY3QgKG91dCB1 bm93bmVkIEdyYXBoZW5lLlJlY3QgcmVjdCk7CisrCQlwdWJsaWMgdWludCBnZXRfY3Vyc29yX3Np emUgKCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfY3Vyc29yX3Zpc2libGUgKCk7CisrCQlwdWJsaWMg Ym9vbCBnZXRfZWRpdGFibGUgKCk7CisrCQlwdWJsaWMgUGFuZ28uRWxsaXBzaXplTW9kZSBnZXRf ZWxsaXBzaXplICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIFBh bmdvLkZvbnREZXNjcmlwdGlvbiBnZXRfZm9udF9kZXNjcmlwdGlvbiAoKTsKKysJCXB1YmxpYyB1 bm93bmVkIHN0cmluZyBnZXRfZm9udF9uYW1lICgpOworKwkJcHVibGljIENsdXR0ZXIuSW5wdXRD b250ZW50SGludEZsYWdzIGdldF9pbnB1dF9oaW50cyAoKTsKKysJCXB1YmxpYyBDbHV0dGVyLklu cHV0Q29udGVudFB1cnBvc2UgZ2V0X2lucHV0X3B1cnBvc2UgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMC42IildCisrCQlwdWJsaWMgYm9vbCBnZXRfanVzdGlmeSAoKTsKKysJCXB1YmxpYyB1 bm93bmVkIFBhbmdvLkxheW91dCBnZXRfbGF5b3V0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuOCIpXQorKwkJcHVibGljIHZvaWQgZ2V0X2xheW91dF9vZmZzZXRzIChvdXQgaW50IHgsIG91 dCBpbnQgeSk7CisrCQlwdWJsaWMgUGFuZ28uQWxpZ25tZW50IGdldF9saW5lX2FsaWdubWVudCAo KTsKKysJCXB1YmxpYyBib29sIGdldF9saW5lX3dyYXAgKCk7CisrCQlwdWJsaWMgUGFuZ28uV3Jh cE1vZGUgZ2V0X2xpbmVfd3JhcF9tb2RlICgpOworKwkJcHVibGljIGludCBnZXRfbWF4X2xlbmd0 aCAoKTsKKysJCXB1YmxpYyB1bmljaGFyIGdldF9wYXNzd29yZF9jaGFyICgpOworKwkJcHVibGlj IGJvb2wgZ2V0X3NlbGVjdGFibGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisr CQlwdWJsaWMgQ2x1dHRlci5Db2xvciBnZXRfc2VsZWN0ZWRfdGV4dF9jb2xvciAoKTsKKysJCXB1 YmxpYyBzdHJpbmcgZ2V0X3NlbGVjdGlvbiAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0X3NlbGVjdGlv bl9ib3VuZCAoKTsKKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIGdldF9zZWxlY3Rpb25fY29sb3Ig KCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfc2luZ2xlX2xpbmVfbW9kZSAoKTsKKysJCXB1YmxpYyB1 bm93bmVkIHN0cmluZyBnZXRfdGV4dCAoKTsKKysJCXB1YmxpYyBib29sIGdldF91c2VfbWFya3Vw ICgpOworKwkJcHVibGljIGJvb2wgaGFzX3ByZWVkaXQgKCk7CisrCQlwdWJsaWMgdm9pZCBpbnNl cnRfdGV4dCAoc3RyaW5nIHRleHQsIHNzaXplX3QgcG9zaXRpb24pOworKwkJcHVibGljIHZvaWQg aW5zZXJ0X3VuaWNoYXIgKHVuaWNoYXIgd2MpOworKwkJcHVibGljIGJvb2wgcG9zaXRpb25fdG9f Y29vcmRzIChpbnQgcG9zaXRpb24sIG91dCBmbG9hdCB4LCBvdXQgZmxvYXQgeSwgb3V0IGZsb2F0 IGxpbmVfaGVpZ2h0ID0gbnVsbCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfYWN0aXZhdGFibGUgKGJv b2wgYWN0aXZhdGFibGUpOworKwkJcHVibGljIHZvaWQgc2V0X2F0dHJpYnV0ZXMgKFBhbmdvLkF0 dHJMaXN0PyBhdHRycyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IHZvaWQgc2V0X2J1ZmZlciAoQ2x1dHRlci5UZXh0QnVmZmVyIGJ1ZmZlcik7CisrCQlwdWJsaWMg dm9pZCBzZXRfY29sb3IgKENsdXR0ZXIuQ29sb3IgY29sb3IpOworKwkJcHVibGljIHZvaWQgc2V0 X2N1cnNvcl9jb2xvciAoQ2x1dHRlci5Db2xvcj8gY29sb3IpOworKwkJcHVibGljIHZvaWQgc2V0 X2N1cnNvcl9wb3NpdGlvbiAoaW50IHBvc2l0aW9uKTsKKysJCXB1YmxpYyB2b2lkIHNldF9jdXJz b3Jfc2l6ZSAoaW50IHNpemUpOworKwkJcHVibGljIHZvaWQgc2V0X2N1cnNvcl92aXNpYmxlIChi b29sIGN1cnNvcl92aXNpYmxlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9lZGl0YWJsZSAoYm9vbCBl ZGl0YWJsZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfZWxsaXBzaXplIChQYW5nby5FbGxpcHNpemVN b2RlIG1vZGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQg c2V0X2ZvbnRfZGVzY3JpcHRpb24gKFBhbmdvLkZvbnREZXNjcmlwdGlvbiBmb250X2Rlc2MpOwor KwkJcHVibGljIHZvaWQgc2V0X2ZvbnRfbmFtZSAoc3RyaW5nPyBmb250X25hbWUpOworKwkJcHVi bGljIHZvaWQgc2V0X2lucHV0X2hpbnRzIChDbHV0dGVyLklucHV0Q29udGVudEhpbnRGbGFncyBo aW50cyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfaW5wdXRfcHVycG9zZSAoQ2x1dHRlci5JbnB1dENv bnRlbnRQdXJwb3NlIHB1cnBvc2UpOworKwkJcHVibGljIHZvaWQgc2V0X2p1c3RpZnkgKGJvb2wg anVzdGlmeSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfbGluZV9hbGlnbm1lbnQgKFBhbmdvLkFsaWdu bWVudCBhbGlnbm1lbnQpOworKwkJcHVibGljIHZvaWQgc2V0X2xpbmVfd3JhcCAoYm9vbCBsaW5l X3dyYXApOworKwkJcHVibGljIHZvaWQgc2V0X2xpbmVfd3JhcF9tb2RlIChQYW5nby5XcmFwTW9k ZSB3cmFwX21vZGUpOworKwkJcHVibGljIHZvaWQgc2V0X21hcmt1cCAoc3RyaW5nPyBtYXJrdXAp OworKwkJcHVibGljIHZvaWQgc2V0X21heF9sZW5ndGggKGludCBtYXgpOworKwkJcHVibGljIHZv aWQgc2V0X3Bhc3N3b3JkX2NoYXIgKHVuaWNoYXIgd2MpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3ByZWVkaXRfc3RyaW5nIChzdHJpbmc/IHByZWVk aXRfc3RyLCBQYW5nby5BdHRyTGlzdD8gcHJlZWRpdF9hdHRycywgdWludCBjdXJzb3JfcG9zKTsK KysJCXB1YmxpYyB2b2lkIHNldF9zZWxlY3RhYmxlIChib29sIHNlbGVjdGFibGUpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3NlbGVjdGVkX3RleHRf Y29sb3IgKENsdXR0ZXIuQ29sb3I/IGNvbG9yKTsKKysJCXB1YmxpYyB2b2lkIHNldF9zZWxlY3Rp b24gKHNzaXplX3Qgc3RhcnRfcG9zLCBzc2l6ZV90IGVuZF9wb3MpOworKwkJcHVibGljIHZvaWQg c2V0X3NlbGVjdGlvbl9ib3VuZCAoaW50IHNlbGVjdGlvbl9ib3VuZCk7CisrCQlwdWJsaWMgdm9p ZCBzZXRfc2VsZWN0aW9uX2NvbG9yIChDbHV0dGVyLkNvbG9yPyBjb2xvcik7CisrCQlwdWJsaWMg dm9pZCBzZXRfc2luZ2xlX2xpbmVfbW9kZSAoYm9vbCBzaW5nbGVfbGluZSk7CisrCQlwdWJsaWMg dm9pZCBzZXRfdGV4dCAoc3RyaW5nPyB0ZXh0KTsKKysJCXB1YmxpYyB2b2lkIHNldF91c2VfbWFy a3VwIChib29sIHNldHRpbmcpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX3RleHRfYWN0 aXZhdGUiKV0KKysJCXB1YmxpYyBib29sIHRyeV9hY3RpdmF0ZSAoKTsKKysJCVtDQ29kZSAoaGFz X2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3RvcioiKV0KKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgVGV4dC53aXRoX2J1ZmZlciAo Q2x1dHRlci5UZXh0QnVmZmVyIGJ1ZmZlcik7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVu Y3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0b3IqIildCisrCQlwdWJsaWMgVGV4dC53 aXRoX3RleHQgKHN0cmluZz8gZm9udF9uYW1lLCBzdHJpbmcgdGV4dCk7CisrCQlwdWJsaWMgYm9v bCBhY3RpdmF0YWJsZSB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgUGFuZ28uQXR0ckxpc3QgYXR0 cmlidXRlcyB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlw dWJsaWMgQ2x1dHRlci5UZXh0QnVmZmVyIGJ1ZmZlciB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMg Q2x1dHRlci5Db2xvciBjb2xvciB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5Db2xv ciBjdXJzb3JfY29sb3IgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlw dWJsaWMgYm9vbCBjdXJzb3JfY29sb3Jfc2V0IHsgZ2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMiIpXQorKwkJcHVibGljIGludCBjdXJzb3JfcG9zaXRpb24geyBnZXQ7IHNldDsgfQor KwkJcHVibGljIGludCBjdXJzb3Jfc2l6ZSB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgYm9vbCBj dXJzb3JfdmlzaWJsZSB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgYm9vbCBlZGl0YWJsZSB7IGdl dDsgc2V0OyB9CisrCQlwdWJsaWMgUGFuZ28uRWxsaXBzaXplTW9kZSBlbGxpcHNpemUgeyBnZXQ7 IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIFBhbmdvLkZv bnREZXNjcmlwdGlvbiBmb250X2Rlc2NyaXB0aW9uIHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJCXB1 YmxpYyBzdHJpbmcgZm9udF9uYW1lIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLklu cHV0Q29udGVudEhpbnRGbGFncyBpbnB1dF9oaW50cyB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMg Q2x1dHRlci5JbnB1dENvbnRlbnRQdXJwb3NlIGlucHV0X3B1cnBvc2UgeyBnZXQ7IHNldDsgfQor KwkJcHVibGljIGJvb2wganVzdGlmeSB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgUGFuZ28uQWxp Z25tZW50IGxpbmVfYWxpZ25tZW50IHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBib29sIGxpbmVf d3JhcCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgUGFuZ28uV3JhcE1vZGUgbGluZV93cmFwX21v ZGUgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIGludCBtYXhfbGVuZ3RoIHsgZ2V0OyBzZXQ7IH0K KysJCXB1YmxpYyB1aW50IHBhc3N3b3JkX2NoYXIgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNz b3JNZXRob2RdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2lu Y2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGludCBwb3NpdGlvbiB7IGdl dDsgc2V0OyB9CisrCQlwdWJsaWMgYm9vbCBzZWxlY3RhYmxlIHsgZ2V0OyBzZXQ7IH0KKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIHNlbGVjdGVk X3RleHRfY29sb3IgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgYm9vbCBzZWxlY3RlZF90ZXh0X2NvbG9y X3NldCB7IGdldDsgfQorKwkJcHVibGljIGludCBzZWxlY3Rpb25fYm91bmQgeyBnZXQ7IHNldDsg fQorKwkJcHVibGljIENsdXR0ZXIuQ29sb3Igc2VsZWN0aW9uX2NvbG9yIHsgZ2V0OyBzZXQ7IH0K KysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wgc2VsZWN0aW9uX2NvbG9yX3Nl dCB7IGdldDsgfQorKwkJcHVibGljIGJvb2wgc2luZ2xlX2xpbmVfbW9kZSB7IGdldDsgc2V0OyB9 CisrCQlwdWJsaWMgc3RyaW5nIHRleHQgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIGJvb2wgdXNl X21hcmt1cCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBhY3Rp dmF0ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2IildCisrCQlwdWJsaWMgdmlydHVh bCBzaWduYWwgdm9pZCBjdXJzb3JfY2hhbmdlZCAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVk ID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2UgPSAiMS4wIildCisrCQlw dWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBjdXJzb3JfZXZlbnQgKEdyYXBoZW5lLlJlY3QgcmVj dCk7CisrCQlbSGFzRW1pdHRlcl0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1 YmxpYyBzaWduYWwgdm9pZCBkZWxldGVfdGV4dCAoaW50IHN0YXJ0X3BvcywgaW50IGVuZF9wb3Mp OworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgdGV4dF9jaGFuZ2VkICgpOworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQg PSAiY2x1dHRlcl90ZXh0X2J1ZmZlcl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMCIpXQorKwlwdWJsaWMgY2xhc3MgVGV4dEJ1ZmZlciA6IEdMaWIuT2JqZWN0IHsKKysJ CVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1YmxpYyBUZXh0 QnVmZmVyICgpOworKwkJcHVibGljIHZpcnR1YWwgdWludCBkZWxldGVfdGV4dCAodWludCBwb3Np dGlvbiwgdWludCBuX2NoYXJzKTsKKysJCXB1YmxpYyB2b2lkIGVtaXRfZGVsZXRlZF90ZXh0ICh1 aW50IHBvc2l0aW9uLCB1aW50IG5fY2hhcnMpOworKwkJcHVibGljIHZvaWQgZW1pdF9pbnNlcnRl ZF90ZXh0ICh1aW50IHBvc2l0aW9uLCBzdHJpbmcgY2hhcnMsIHVpbnQgbl9jaGFycyk7CisrCQlw dWJsaWMgc2l6ZV90IGdldF9ieXRlcyAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHVpbnQgZ2V0X2xl bmd0aCAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0X21heF9sZW5ndGggKCk7CisrCQlwdWJsaWMgdW5v d25lZCBzdHJpbmcgZ2V0X3RleHQgKCk7CisrCQlbQ0NvZGUgKHZmdW5jX25hbWUgPSAiZ2V0X3Rl eHQiKV0KKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB1bm93bmVkIHN0cmluZyBn ZXRfdGV4dF93aXRoX2xlbmd0aCAoc2l6ZV90IG5fYnl0ZXMpOworKwkJcHVibGljIHZpcnR1YWwg dWludCBpbnNlcnRfdGV4dCAodWludCBwb3NpdGlvbiwgc3RyaW5nIGNoYXJzLCB1aW50IG5fY2hh cnMpOworKwkJcHVibGljIHZvaWQgc2V0X21heF9sZW5ndGggKGludCBtYXhfbGVuZ3RoKTsKKysJ CXB1YmxpYyB2b2lkIHNldF90ZXh0IChzdHJpbmcgY2hhcnMsIGludCBuX2NoYXJzKTsKKysJCVtD Q29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1YmxpYyBUZXh0QnVm ZmVyLndpdGhfdGV4dCAoc3RyaW5nPyB0ZXh0LCBzc2l6ZV90IHRleHRfbGVuKTsKKysJCXB1Ymxp YyB1aW50IGxlbmd0aCB7IGdldDsgfQorKwkJcHVibGljIGludCBtYXhfbGVuZ3RoIHsgZ2V0OyBz ZXQ7IH0KKysJCXB1YmxpYyBzdHJpbmcgdGV4dCB7IGdldDsgfQorKwkJcHVibGljIHZpcnR1YWwg c2lnbmFsIHZvaWQgZGVsZXRlZF90ZXh0ICh1aW50IHBvc2l0aW9uLCB1aW50IG5fY2hhcnMpOwor KwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgaW5zZXJ0ZWRfdGV4dCAodWludCBwb3NpdGlv biwgc3RyaW5nIGNoYXJzLCB1aW50IG5fY2hhcnMpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl90ZXh0X25v ZGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGlj IGNsYXNzIFRleHROb2RlIDogQ2x1dHRlci5QYWludE5vZGUgeworKwkJW0NDb2RlIChoYXNfY29u c3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlclBhaW50Tm9kZSoiKV0KKysJ CXB1YmxpYyBUZXh0Tm9kZSAoUGFuZ28uTGF5b3V0PyBsYXlvdXQsIENsdXR0ZXIuQ29sb3I/IGNv bG9yKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfdGV4dHVyZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMg Y2xhc3MgVGV4dHVyZSA6IENsdXR0ZXIuQWN0b3IgeworKwkJcHVibGljIENvZ2wuTWF0ZXJpYWwg Y29nbF9tYXRlcmlhbCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgQ29nbC5UZXh0dXJlIGNvZ2xf dGV4dHVyZSB7IGdldDsgc2V0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3RleHR1cmVfbm9kZV9nZXRf dHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgY2xhc3Mg VGV4dHVyZU5vZGUgOiBDbHV0dGVyLlBpcGVsaW5lTm9kZSB7CisrCQlbQ0NvZGUgKGhhc19jb25z dHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyUGFpbnROb2RlKiIpXQorKwkJ cHVibGljIFRleHR1cmVOb2RlIChDb2dsLlRleHR1cmUgdGV4dHVyZSwgQ2x1dHRlci5Db2xvcj8g Y29sb3IsIENsdXR0ZXIuU2NhbGluZ0ZpbHRlciBtaW5fZmlsdGVyLCBDbHV0dGVyLlNjYWxpbmdG aWx0ZXIgbWFnX2ZpbHRlcik7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3RpbWVsaW5lX2dldF90eXBlICgp IildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJcHVibGljIGNsYXNzIFRpbWVsaW5l IDogR0xpYi5PYmplY3QsIENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25z dHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisr CQlwdWJsaWMgVGltZWxpbmUgKHVpbnQgbXNlY3MpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTQiKV0KKysJCXB1YmxpYyB2b2lkIGFkZF9tYXJrZXIgKHN0cmluZyBtYXJrZXJfbmFtZSwgZG91 YmxlIHByb2dyZXNzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2 b2lkIGFkZF9tYXJrZXJfYXRfdGltZSAoc3RyaW5nIG1hcmtlcl9uYW1lLCB1aW50IG1zZWNzKTsK KysJCXB1YmxpYyB2b2lkIGFkdmFuY2UgKHVpbnQgbXNlY3MpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjAuOCIpXQorKwkJcHVibGljIHZvaWQgYWR2YW5jZV90b19tYXJrZXIgKHN0cmluZyBtYXJr ZXJfbmFtZSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2lu Y2UgPSAiMS4xMCIsIHNpbmNlID0gIjAuNCIpXQorKwkJcHVibGljIENsdXR0ZXIuVGltZWxpbmUg Y2xvbmUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgYm9vbCBn ZXRfYXV0b19yZXZlcnNlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1 YmxpYyBib29sIGdldF9jdWJpY19iZXppZXJfcHJvZ3Jlc3MgKEdyYXBoZW5lLlBvaW50IGNfMSwg R3JhcGhlbmUuUG9pbnQgY18yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlw dWJsaWMgaW50IGdldF9jdXJyZW50X3JlcGVhdCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIw LjQiKV0KKysJCXB1YmxpYyB1aW50IGdldF9kZWxheSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIwLjYiKV0KKysJCXB1YmxpYyB1aW50IGdldF9kZWx0YSAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBDbHV0dGVyLlRpbWVsaW5lRGlyZWN0aW9uIGdldF9kaXJl Y3Rpb24gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdWludCBn ZXRfZHVyYXRpb24gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IGludDY0IGdldF9kdXJhdGlvbl9oaW50ICgpOworKwkJcHVibGljIHVpbnQgZ2V0X2VsYXBzZWRf dGltZSAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5j ZSA9ICIxLjEwIildCisrCQlwdWJsaWMgYm9vbCBnZXRfbG9vcCAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBkb3VibGUgZ2V0X3Byb2dyZXNzICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFuaW1hdGlvbk1vZGUg Z2V0X3Byb2dyZXNzX21vZGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJ cHVibGljIGludCBnZXRfcmVwZWF0X2NvdW50ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTIiKV0KKysJCXB1YmxpYyBib29sIGdldF9zdGVwX3Byb2dyZXNzIChvdXQgaW50IG5fc3RlcHMs IG91dCBDbHV0dGVyLlN0ZXBNb2RlIHN0ZXBfbW9kZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MC44IildCisrCQlwdWJsaWMgYm9vbCBoYXNfbWFya2VyIChzdHJpbmcgbWFya2VyX25hbWUpOwor KwkJcHVibGljIGJvb2wgaXNfcGxheWluZyAoKTsKKysJCVtDQ29kZSAoYXJyYXlfbGVuZ3RoID0g dHJ1ZSwgYXJyYXlfbGVuZ3RoX3BvcyA9IDEuMSwgYXJyYXlfbGVuZ3RoX3R5cGUgPSAiZ3NpemUi LCBhcnJheV9udWxsX3Rlcm1pbmF0ZWQgPSB0cnVlKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIw LjgiKV0KKysJCXB1YmxpYyBzdHJpbmdbXSBsaXN0X21hcmtlcnMgKGludCBtc2Vjcyk7CisrCQlw dWJsaWMgdm9pZCBwYXVzZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1 YmxpYyB2b2lkIHJlbW92ZV9tYXJrZXIgKHN0cmluZyBtYXJrZXJfbmFtZSk7CisrCQlwdWJsaWMg dm9pZCByZXdpbmQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMg dm9pZCBzZXRfYXV0b19yZXZlcnNlIChib29sIHJldmVyc2UpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9jdWJpY19iZXppZXJfcHJvZ3Jlc3MgKEdy YXBoZW5lLlBvaW50IGNfMSwgR3JhcGhlbmUuUG9pbnQgY18yKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIwLjQiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9kZWxheSAodWludCBtc2Vjcyk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdm9pZCBzZXRfZGlyZWN0aW9uIChD bHV0dGVyLlRpbWVsaW5lRGlyZWN0aW9uIGRpcmVjdGlvbik7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMC42IildCisrCQlwdWJsaWMgdm9pZCBzZXRfZHVyYXRpb24gKHVpbnQgbXNlY3MpOworKwkJ W1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiKV0K KysJCXB1YmxpYyB2b2lkIHNldF9sb29wIChib29sIGxvb3ApOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9wcm9ncmVzc19mdW5jIChvd25lZCBDbHV0 dGVyLlRpbWVsaW5lUHJvZ3Jlc3NGdW5jPyBmdW5jKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfcHJvZ3Jlc3NfbW9kZSAoQ2x1dHRlci5BbmltYXRp b25Nb2RlIG1vZGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2 b2lkIHNldF9yZXBlYXRfY291bnQgKGludCBjb3VudCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3N0ZXBfcHJvZ3Jlc3MgKGludCBuX3N0ZXBzLCBD bHV0dGVyLlN0ZXBNb2RlIHN0ZXBfbW9kZSk7CisrCQlwdWJsaWMgdm9pZCBza2lwICh1aW50IG1z ZWNzKTsKKysJCXB1YmxpYyB2b2lkIHN0YXJ0ICgpOworKwkJcHVibGljIHZvaWQgc3RvcCAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBib29sIGF1dG9fcmV2ZXJz ZSB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCQlwdWJsaWMg dWludCBkZWxheSB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisr CQlwdWJsaWMgQ2x1dHRlci5UaW1lbGluZURpcmVjdGlvbiBkaXJlY3Rpb24geyBnZXQ7IHNldDsg fQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHVpbnQgZHVyYXRpb24g eyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVk X3NpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBib29sIGxvb3AgeyBnZXQ7IHNldDsgfQorKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFuaW1hdGlvbk1v ZGUgcHJvZ3Jlc3NfbW9kZSB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MCIpXQorKwkJcHVibGljIGludCByZXBlYXRfY291bnQgeyBnZXQ7IHNldDsgfQorKwkJcHVibGlj IHZpcnR1YWwgc2lnbmFsIHZvaWQgY29tcGxldGVkICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjAuOCIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgbWFya2VyX3JlYWNoZWQgKHN0 cmluZyBtYXJrZXJfbmFtZSwgaW50IG1zZWNzKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2 b2lkIG5ld19mcmFtZSAoaW50IG1zZWNzKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lk IHBhdXNlZCAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIHN0YXJ0ZWQgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZv aWQgc3RvcHBlZCAoYm9vbCBpc19maW5pc2hlZCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xh c3MgVGltZW91dFBvb2wgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFs c2UpXQorKwkJcHVibGljIFRpbWVvdXRQb29sIChpbnQgcHJpb3JpdHkpOworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGhhc190eXBlX2lkID0g ZmFsc2UpXQorKwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVi bGljIGNsYXNzIFRvdWNoRXZlbnQgOiBDbHV0dGVyLkV2ZW50IHsKKysJCXB1YmxpYyBkb3VibGUg YXhlczsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuSW5wdXREZXZpY2UgZGV2aWNlOworKwkJcHVi bGljIENsdXR0ZXIuRXZlbnRGbGFncyBmbGFnczsKKysJCXB1YmxpYyBDbHV0dGVyLk1vZGlmaWVy VHlwZSBtb2RpZmllcl9zdGF0ZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuRXZlbnRTZXF1ZW5j ZSBzZXF1ZW5jZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuQWN0b3Igc291cmNlOworKwkJcHVi bGljIHdlYWsgQ2x1dHRlci5TdGFnZSBzdGFnZTsKKysJCXB1YmxpYyB1aW50MzIgdGltZTsKKysJ CXB1YmxpYyBDbHV0dGVyLkV2ZW50VHlwZSB0eXBlOworKwkJcHVibGljIGZsb2F0IHg7CisrCQlw dWJsaWMgZmxvYXQgeTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0NvbXBhY3RdCisrCVtWZXJz aW9uIChzaW5jZSA9ICIxLjI0IildCisrCXB1YmxpYyBjbGFzcyBUb3VjaHBhZFBpbmNoRXZlbnQg OiBDbHV0dGVyLkV2ZW50IHsKKysJCXB1YmxpYyBmbG9hdCBhbmdsZV9kZWx0YTsKKysJCXB1Ymxp YyBmbG9hdCBkeDsKKysJCXB1YmxpYyBmbG9hdCBkeTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50 RmxhZ3MgZmxhZ3M7CisrCQlwdWJsaWMgdWludCBuX2ZpbmdlcnM7CisrCQlwdWJsaWMgQ2x1dHRl ci5Ub3VjaHBhZEdlc3R1cmVQaGFzZSBwaGFzZTsKKysJCXB1YmxpYyBmbG9hdCBzY2FsZTsKKysJ CXB1YmxpYyB3ZWFrIENsdXR0ZXIuQWN0b3Igc291cmNlOworKwkJcHVibGljIHdlYWsgQ2x1dHRl ci5TdGFnZSBzdGFnZTsKKysJCXB1YmxpYyB1aW50MzIgdGltZTsKKysJCXB1YmxpYyBDbHV0dGVy LkV2ZW50VHlwZSB0eXBlOworKwkJcHVibGljIGZsb2F0IHg7CisrCQlwdWJsaWMgZmxvYXQgeTsK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBo YXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0NvbXBhY3RdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIx LjI0IildCisrCXB1YmxpYyBjbGFzcyBUb3VjaHBhZFN3aXBlRXZlbnQgOiBDbHV0dGVyLkV2ZW50 IHsKKysJCXB1YmxpYyBmbG9hdCBkeDsKKysJCXB1YmxpYyBmbG9hdCBkeTsKKysJCXB1YmxpYyBD bHV0dGVyLkV2ZW50RmxhZ3MgZmxhZ3M7CisrCQlwdWJsaWMgdWludCBuX2ZpbmdlcnM7CisrCQlw dWJsaWMgQ2x1dHRlci5Ub3VjaHBhZEdlc3R1cmVQaGFzZSBwaGFzZTsKKysJCXB1YmxpYyB3ZWFr IENsdXR0ZXIuQWN0b3Igc291cmNlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5TdGFnZSBzdGFn ZTsKKysJCXB1YmxpYyB1aW50MzIgdGltZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50VHlwZSB0 eXBlOworKwkJcHVibGljIGZsb2F0IHg7CisrCQlwdWJsaWMgZmxvYXQgeTsKKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNs dXR0ZXJfdHJhbnNmb3JtX25vZGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFRyYW5z Zm9ybU5vZGUgOiBDbHV0dGVyLlBhaW50Tm9kZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3Rf ZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyUGFpbnROb2RlKiIpXQorKwkJcHVibGlj IFRyYW5zZm9ybU5vZGUgKENvZ2wuTWF0cml4IHByb2plY3Rpb24pOworKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRl cl90cmFuc2l0aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIild CisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBUcmFuc2l0aW9uIDogQ2x1dHRlci5UaW1lbGluZSwg Q2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9 IGZhbHNlKV0KKysJCXByb3RlY3RlZCBUcmFuc2l0aW9uICgpOworKwkJW05vV3JhcHBlcl0KKysJ CXB1YmxpYyB2aXJ0dWFsIHZvaWQgYXR0YWNoZWQgKENsdXR0ZXIuQW5pbWF0YWJsZSBhbmltYXRh YmxlKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGNvbXB1dGVfdmFs dWUgKENsdXR0ZXIuQW5pbWF0YWJsZSBhbmltYXRhYmxlLCBDbHV0dGVyLkludGVydmFsIGludGVy dmFsLCBkb3VibGUgcHJvZ3Jlc3MpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFs IHZvaWQgZGV0YWNoZWQgKENsdXR0ZXIuQW5pbWF0YWJsZSBhbmltYXRhYmxlKTsKKysJCXB1Ymxp YyB1bm93bmVkIENsdXR0ZXIuQW5pbWF0YWJsZSBnZXRfYW5pbWF0YWJsZSAoKTsKKysJCXB1Ymxp YyB1bm93bmVkIENsdXR0ZXIuSW50ZXJ2YWwgZ2V0X2ludGVydmFsICgpOworKwkJcHVibGljIGJv b2wgZ2V0X3JlbW92ZV9vbl9jb21wbGV0ZSAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9hbmltYXRh YmxlIChDbHV0dGVyLkFuaW1hdGFibGU/IGFuaW1hdGFibGUpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9mcm9tX3ZhbHVlIChHTGliLlZhbHVlIHZh bHVlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9pbnRlcnZhbCAoQ2x1dHRlci5JbnRlcnZhbD8gaW50 ZXJ2YWwpOworKwkJcHVibGljIHZvaWQgc2V0X3JlbW92ZV9vbl9jb21wbGV0ZSAoYm9vbCByZW1v dmVfY29tcGxldGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2 b2lkIHNldF90b192YWx1ZSAoR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlwdWJsaWMgQ2x1dHRlci5B bmltYXRhYmxlIGFuaW1hdGFibGUgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIENsdXR0ZXIuSW50 ZXJ2YWwgaW50ZXJ2YWwgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIGJvb2wgcmVtb3ZlX29uX2Nv bXBsZXRlIHsgZ2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfdHJhbnNpdGlvbl9ncm91cF9n ZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwlwdWJsaWMgY2xh c3MgVHJhbnNpdGlvbkdyb3VwIDogQ2x1dHRlci5UcmFuc2l0aW9uLCBDbHV0dGVyLlNjcmlwdGFi bGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAi Q2x1dHRlclRyYW5zaXRpb24qIildCisrCQlwdWJsaWMgVHJhbnNpdGlvbkdyb3VwICgpOworKwkJ cHVibGljIHZvaWQgYWRkX3RyYW5zaXRpb24gKENsdXR0ZXIuVHJhbnNpdGlvbiB0cmFuc2l0aW9u KTsKKysJCXB1YmxpYyB2b2lkIHJlbW92ZV9hbGwgKCk7CisrCQlwdWJsaWMgdm9pZCByZW1vdmVf dHJhbnNpdGlvbiAoQ2x1dHRlci5UcmFuc2l0aW9uIHRyYW5zaXRpb24pOworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1 dHRlcl92aXJ0dWFsX2lucHV0X2RldmljZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3Mg VmlydHVhbElucHV0RGV2aWNlIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3Ry dWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFZpcnR1YWxJbnB1dERldmljZSAo KTsKKysJCXB1YmxpYyBpbnQgZ2V0X2RldmljZV90eXBlICgpOworKwkJcHVibGljIHZpcnR1YWwg dm9pZCBub3RpZnlfYWJzb2x1dGVfbW90aW9uICh1aW50NjQgdGltZV91cywgZG91YmxlIHgsIGRv dWJsZSB5KTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgbm90aWZ5X2J1dHRvbiAodWludDY0IHRp bWVfdXMsIHVpbnQzMiBidXR0b24sIENsdXR0ZXIuQnV0dG9uU3RhdGUgYnV0dG9uX3N0YXRlKTsK KysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgbm90aWZ5X2Rpc2NyZXRlX3Njcm9sbCAodWludDY0IHRp bWVfdXMsIENsdXR0ZXIuU2Nyb2xsRGlyZWN0aW9uIGRpcmVjdGlvbiwgQ2x1dHRlci5TY3JvbGxT b3VyY2Ugc2Nyb2xsX3NvdXJjZSk7CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIG5vdGlmeV9rZXkg KHVpbnQ2NCB0aW1lX3VzLCB1aW50MzIga2V5LCBDbHV0dGVyLktleVN0YXRlIGtleV9zdGF0ZSk7 CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIG5vdGlmeV9rZXl2YWwgKHVpbnQ2NCB0aW1lX3VzLCB1 aW50MzIga2V5dmFsLCBDbHV0dGVyLktleVN0YXRlIGtleV9zdGF0ZSk7CisrCQlwdWJsaWMgdmly dHVhbCB2b2lkIG5vdGlmeV9yZWxhdGl2ZV9tb3Rpb24gKHVpbnQ2NCB0aW1lX3VzLCBkb3VibGUg ZHgsIGRvdWJsZSBkeSk7CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIG5vdGlmeV9zY3JvbGxfY29u dGludW91cyAodWludDY0IHRpbWVfdXMsIGRvdWJsZSBkeCwgZG91YmxlIGR5LCBDbHV0dGVyLlNj cm9sbFNvdXJjZSBzY3JvbGxfc291cmNlLCBDbHV0dGVyLlNjcm9sbEZpbmlzaEZsYWdzIGZpbmlz aF9mbGFncyk7CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIG5vdGlmeV90b3VjaF9kb3duICh1aW50 NjQgdGltZV91cywgaW50IHNsb3QsIGRvdWJsZSB4LCBkb3VibGUgeSk7CisrCQlwdWJsaWMgdmly dHVhbCB2b2lkIG5vdGlmeV90b3VjaF9tb3Rpb24gKHVpbnQ2NCB0aW1lX3VzLCBpbnQgc2xvdCwg ZG91YmxlIHgsIGRvdWJsZSB5KTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgbm90aWZ5X3RvdWNo X3VwICh1aW50NjQgdGltZV91cywgaW50IHNsb3QpOworKwkJcHVibGljIENsdXR0ZXIuSW5wdXRE ZXZpY2VUeXBlIGRldmljZV90eXBlIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtOb0FjY2Vzc29y TWV0aG9kXQorKwkJcHVibGljIENsdXR0ZXIuU2VhdCBzZWF0IHsgb3duZWQgZ2V0OyBjb25zdHJ1 Y3Q7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfem9vbV9hY3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJcHVibGljIGNsYXNzIFpvb21BY3Rpb24gOiBDbHV0 dGVyLkdlc3R1cmVBY3Rpb24geworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0g ZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFjdGlvbioiKV0KKysJCXB1YmxpYyBab29tQWN0aW9uICgp OworKwkJcHVibGljIHZvaWQgZ2V0X2ZvY2FsX3BvaW50IChHcmFwaGVuZS5Qb2ludCBwb2ludCk7 CisrCQlwdWJsaWMgdm9pZCBnZXRfdHJhbnNmb3JtZWRfZm9jYWxfcG9pbnQgKEdyYXBoZW5lLlBv aW50IHBvaW50KTsKKysJCXB1YmxpYyBDbHV0dGVyLlpvb21BeGlzIGdldF96b29tX2F4aXMgKCk7 CisrCQlwdWJsaWMgdm9pZCBzZXRfem9vbV9heGlzIChDbHV0dGVyLlpvb21BeGlzIGF4aXMpOwor KwkJcHVibGljIENsdXR0ZXIuWm9vbUF4aXMgem9vbV9heGlzIHsgZ2V0OyBzZXQ7IH0KKysJCXB1 YmxpYyB2aXJ0dWFsIHNpZ25hbCBib29sIHpvb20gKENsdXR0ZXIuQWN0b3IgYWN0b3IsIEdyYXBo ZW5lLlBvaW50IGZvY2FsX3BvaW50LCBkb3VibGUgZmFjdG9yKTsKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2NuYW1lID0gIkNsdXR0 ZXJBbmltYXRhYmxlSW50ZXJmYWNlIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2FuaW1hdGFibGVfZ2V0 X3R5cGUgKCkiKV0KKysJcHVibGljIGludGVyZmFjZSBBbmltYXRhYmxlIDogR0xpYi5PYmplY3Qg eworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyBhYnN0cmFjdCBib29sIGFuaW1hdGVfcHJvcGVy dHkgKENsdXR0ZXIuQW5pbWF0aW9uIGFuaW1hdGlvbiwgc3RyaW5nIHByb3BlcnR5X25hbWUsIEdM aWIuVmFsdWUgaW5pdGlhbF92YWx1ZSwgR0xpYi5WYWx1ZSBmaW5hbF92YWx1ZSwgZG91YmxlIHBy b2dyZXNzLCBHTGliLlZhbHVlIHZhbHVlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0K KysJCXB1YmxpYyBhYnN0cmFjdCB1bm93bmVkIEdMaWIuUGFyYW1TcGVjIGZpbmRfcHJvcGVydHkg KHN0cmluZyBwcm9wZXJ0eV9uYW1lKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJ CXB1YmxpYyBhYnN0cmFjdCB2b2lkIGdldF9pbml0aWFsX3N0YXRlIChzdHJpbmcgcHJvcGVydHlf bmFtZSwgR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisr CQlwdWJsaWMgYWJzdHJhY3QgYm9vbCBpbnRlcnBvbGF0ZV92YWx1ZSAoc3RyaW5nIHByb3BlcnR5 X25hbWUsIENsdXR0ZXIuSW50ZXJ2YWwgaW50ZXJ2YWwsIGRvdWJsZSBwcm9ncmVzcywgb3V0IEdM aWIuVmFsdWUgdmFsdWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGlj IGFic3RyYWN0IHZvaWQgc2V0X2ZpbmFsX3N0YXRlIChzdHJpbmcgcHJvcGVydHlfbmFtZSwgR0xp Yi5WYWx1ZSB2YWx1ZSk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2NvbnRhaW5lcl9nZXRfdHlwZSAoKSIp XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCXB1YmxpYyBpbnRlcmZhY2UgQ29udGFp bmVyIDogR0xpYi5PYmplY3QgeworKwkJcHVibGljIHZvaWQgYWRkIChwYXJhbXMgQ2x1dHRlci5B Y3RvcltdIGFjdG9ycyk7CisrCQlbQ0NvZGUgKHZmdW5jX25hbWUgPSAiYWRkIildCisrCQlbVmVy c2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNl ID0gIjAuNCIpXQorKwkJcHVibGljIGFic3RyYWN0IHZvaWQgYWRkX2FjdG9yIChDbHV0dGVyLkFj dG9yIGFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2b2lk IGNoaWxkX2dldCAoQ2x1dHRlci5BY3RvciBhY3RvciwgLi4uKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2b2lkIGNoaWxkX2dldF9wcm9wZXJ0eSAoQ2x1dHRlci5B Y3RvciBjaGlsZCwgc3RyaW5nIHByb3BlcnR5LCBHTGliLlZhbHVlIHZhbHVlKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2b2lkIGNoaWxkX3NldCAoQ2x1dHRlci5B Y3RvciBhY3RvciwgLi4uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1Ymxp YyB2b2lkIGNoaWxkX3NldF9wcm9wZXJ0eSAoQ2x1dHRlci5BY3RvciBjaGlsZCwgc3RyaW5nIHBy b3BlcnR5LCBHTGliLlZhbHVlIHZhbHVlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0K KysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHTGliLlBhcmFtU3BlYyBjbGFzc19maW5kX2NoaWxk X3Byb3BlcnR5IChHTGliLk9iamVjdENsYXNzIGtsYXNzLCBzdHJpbmcgcHJvcGVydHlfbmFtZSk7 CisrCQlbQ0NvZGUgKGFycmF5X2xlbmd0aF9wb3MgPSAxLjEsIGFycmF5X2xlbmd0aF90eXBlID0g Imd1aW50IildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgc3RhdGlj IEdMaWIuUGFyYW1TcGVjW10gY2xhc3NfbGlzdF9jaGlsZF9wcm9wZXJ0aWVzIChHTGliLk9iamVj dENsYXNzIGtsYXNzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2 aXJ0dWFsIHZvaWQgY3JlYXRlX2NoaWxkX21ldGEgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBkZXN0cm95 X2NoaWxkX21ldGEgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjAuNiIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBmaW5kX2NoaWxkX2J5X25h bWUgKHN0cmluZyBjaGlsZF9uYW1lKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl9jb250 YWluZXJfY2xhc3NfZmluZF9jaGlsZF9wcm9wZXJ0eSIpXQorKwkJcHVibGljIGNsYXNzIHVub3du ZWQgR0xpYi5QYXJhbVNwZWMgZmluZF9jaGlsZF9wcm9wZXJ0eSAoc3RyaW5nIHByb3BlcnR5X25h bWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZpcnR1YWwgdW5v d25lZCBDbHV0dGVyLkNoaWxkTWV0YSBnZXRfY2hpbGRfbWV0YSAoQ2x1dHRlci5BY3RvciBhY3Rv cik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAi MS4xMCIsIHNpbmNlID0gIjAuNCIpXQorKwkJcHVibGljIEdMaWIuTGlzdDx3ZWFrIENsdXR0ZXIu QWN0b3I+IGdldF9jaGlsZHJlbiAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl9jb250 YWluZXJfY2xhc3NfbGlzdF9jaGlsZF9wcm9wZXJ0aWVzIildCisrCQlwdWJsaWMgY2xhc3MgdW5v d25lZCBHTGliLlBhcmFtU3BlY1tdIGxpc3RfY2hpbGRfcHJvcGVydGllcyAoKTsKKysJCVtDQ29k ZSAodmZ1bmNfbmFtZSA9ICJsb3dlciIpXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVl LCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2 aXJ0dWFsIHZvaWQgbG93ZXJfY2hpbGQgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIENsdXR0ZXIuQWN0 b3I/IHNpYmxpbmcgPSBudWxsKTsKKysJCVtDQ29kZSAodmZ1bmNfbmFtZSA9ICJyYWlzZSIpXQor KwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAi LCBzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgcmFpc2VfY2hpbGQgKENs dXR0ZXIuQWN0b3IgYWN0b3IsIENsdXR0ZXIuQWN0b3I/IHNpYmxpbmcgPSBudWxsKTsKKysJCVtW ZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2lu Y2UgPSAiMC40IildCisrCQlwdWJsaWMgdm9pZCByZW1vdmUgKC4uLik7CisrCQlbQ0NvZGUgKHZm dW5jX25hbWUgPSAicmVtb3ZlIildCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRl cHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjAuNCIpXQorKwkJcHVibGljIGFic3Ry YWN0IHZvaWQgcmVtb3ZlX2FjdG9yIChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJCVtWZXJzaW9u IChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAi MC42IildCisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBzb3J0X2RlcHRoX29yZGVyICgpOworKwkJ cHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgYWN0b3JfYWRkZWQgKENsdXR0ZXIuQWN0b3IgYWN0 b3IpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgYWN0b3JfcmVtb3ZlZCAoQ2x1dHRl ci5BY3RvciBhY3Rvcik7CisrCQlbSGFzRW1pdHRlcl0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIw LjgiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGNoaWxkX25vdGlmeSAoQ2x1dHRl ci5BY3RvciBjaGlsZCwgR0xpYi5QYXJhbVNwZWMgcHNwZWMpOworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfY25hbWUgPSAiQ2x1dHRl ckNvbnRlbnRJbnRlcmZhY2UiLCB0eXBlX2lkID0gImNsdXR0ZXJfY29udGVudF9nZXRfdHlwZSAo KSIpXQorKwlwdWJsaWMgaW50ZXJmYWNlIENvbnRlbnQgOiBHTGliLk9iamVjdCB7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGFic3RyYWN0IGJvb2wgZ2V0X3ByZWZl cnJlZF9zaXplIChvdXQgZmxvYXQgd2lkdGgsIG91dCBmbG9hdCBoZWlnaHQpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lkIGludmFsaWRhdGUg KCk7CisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBpbnZhbGlkYXRlX3NpemUgKCk7CisrCQlbTm9X cmFwcGVyXQorKwkJcHVibGljIGFic3RyYWN0IHZvaWQgcGFpbnRfY29udGVudCAoQ2x1dHRlci5B Y3RvciBhY3RvciwgQ2x1dHRlci5QYWludE5vZGUgbm9kZSwgQ2x1dHRlci5QYWludENvbnRleHQg cGFpbnRfY29udGV4dCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IHZpcnR1YWwgc2lnbmFsIHZvaWQgYXR0YWNoZWQgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lk IGRldGFjaGVkIChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfc2NyaXB0 YWJsZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCXB1Ymxp YyBpbnRlcmZhY2UgU2NyaXB0YWJsZSA6IEdMaWIuT2JqZWN0IHsKKysJCXB1YmxpYyBhYnN0cmFj dCB1bm93bmVkIHN0cmluZyBnZXRfaWQgKCk7CisrCQlwdWJsaWMgYWJzdHJhY3QgYm9vbCBwYXJz ZV9jdXN0b21fbm9kZSAoQ2x1dHRlci5TY3JpcHQgc2NyaXB0LCBHTGliLlZhbHVlIHZhbHVlLCBz dHJpbmcgbmFtZSwgSnNvbi5Ob2RlIG5vZGUpOworKwkJcHVibGljIGFic3RyYWN0IHZvaWQgc2V0 X2N1c3RvbV9wcm9wZXJ0eSAoQ2x1dHRlci5TY3JpcHQgc2NyaXB0LCBzdHJpbmcgbmFtZSwgR0xp Yi5WYWx1ZSB2YWx1ZSk7CisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBzZXRfaWQgKHN0cmluZyBp ZF8pOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIpXQorKwlwdWJsaWMgaW50ZXJmYWNlIFN0YWdlV2luZG93IDogR0xpYi5PYmplY3QgeworKwkJ W05vV3JhcHBlcl0KKysJCXB1YmxpYyBhYnN0cmFjdCBpbnQgZ2V0X3BlbmRpbmdfc3dhcHMgKCk7 CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIGFic3RyYWN0IHVub3duZWQgQ2x1dHRlci5BY3Rv ciBnZXRfd3JhcHBlciAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgYWJzdHJhY3QgYm9v bCBoYXNfcmVkcmF3X2NsaXBzICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyBhYnN0cmFj dCB2b2lkIGhpZGUgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIGFic3RyYWN0IGJvb2wg aWdub3JpbmdfcmVkcmF3X2NsaXBzICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyBhYnN0 cmFjdCBib29sIHJlYWxpemUgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIGFic3RyYWN0 IHZvaWQgcmVzaXplIChpbnQgd2lkdGgsIGludCBoZWlnaHQpOworKwkJW05vV3JhcHBlcl0KKysJ CXB1YmxpYyBhYnN0cmFjdCB2b2lkIHNldF9jdXJzb3JfdmlzaWJsZSAoYm9vbCBjdXJzb3Jfdmlz aWJsZSk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIGFic3RyYWN0IHZvaWQgc2V0X2Z1bGxz Y3JlZW4gKGJvb2wgaXNfZnVsbHNjcmVlbik7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIGFi c3RyYWN0IHZvaWQgc2V0X3RpdGxlIChzdHJpbmcgdGl0bGUpOworKwkJW05vV3JhcHBlcl0KKysJ CXB1YmxpYyBhYnN0cmFjdCB2b2lkIHNldF91c2VyX3Jlc2l6YWJsZSAoYm9vbCBpc19yZXNpemFi bGUpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lkIHNob3cgKGJvb2wg ZG9fcmFpc2UpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lkIHVucmVh bGl6ZSAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24gPSAi Z19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2FjdG9yX2JveF9nZXRfdHlwZSAoKSIp XQorKwlwdWJsaWMgc3RydWN0IEFjdG9yQm94IHsKKysJCXB1YmxpYyBmbG9hdCB4MTsKKysJCXB1 YmxpYyBmbG9hdCB5MTsKKysJCXB1YmxpYyBmbG9hdCB4MjsKKysJCXB1YmxpYyBmbG9hdCB5MjsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgc3RhdGljIENsdXR0ZXIu QWN0b3JCb3g/IGFsbG9jICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVi bGljIHN0YXRpYyB2b2lkIGNsYW1wX3RvX3BpeGVsIChyZWYgQ2x1dHRlci5BY3RvckJveCBib3gp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGJvb2wgY29udGFpbnMg KGZsb2F0IHgsIGZsb2F0IHkpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVi bGljIENsdXR0ZXIuQWN0b3JCb3g/IGNvcHkgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgYm9vbCBlcXVhbCAoQ2x1dHRlci5BY3RvckJveCBib3hfYik7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCBmcmVlICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF9hcmVhICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF9oZWlnaHQgKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCBnZXRfb3JpZ2lu IChvdXQgZmxvYXQgeCwgb3V0IGZsb2F0IHkpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIp XQorKwkJcHVibGljIHZvaWQgZ2V0X3NpemUgKG91dCBmbG9hdCB3aWR0aCwgb3V0IGZsb2F0IGhl aWdodCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0 X3dpZHRoICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0 IGdldF94ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0 IGdldF95ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1bm93 bmVkIENsdXR0ZXIuQWN0b3JCb3g/IGluaXQgKGZsb2F0IHhfMSwgZmxvYXQgeV8xLCBmbG9hdCB4 XzIsIGZsb2F0IHlfMik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IHZvaWQgaW5pdF9yZWN0IChmbG9hdCB4LCBmbG9hdCB5LCBmbG9hdCB3aWR0aCwgZmxvYXQgaGVp Z2h0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFj dG9yQm94IGludGVycG9sYXRlIChDbHV0dGVyLkFjdG9yQm94IGZpbmFsLCBkb3VibGUgcHJvZ3Jl c3MpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIHZvaWQgc2NhbGUg KGZsb2F0IHNjYWxlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB2 b2lkIHNldF9vcmlnaW4gKGZsb2F0IHgsIGZsb2F0IHkpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuNiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3NpemUgKGZsb2F0IHdpZHRoLCBmbG9hdCBoZWln aHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIENsdXR0ZXIuQWN0 b3JCb3ggdW5pb24gKENsdXR0ZXIuQWN0b3JCb3ggYik7CisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisr CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBzdHJ1Y3QgQWN0b3JJdGVyIHsK KysJCXB1YmxpYyB2b2lkIGRlc3Ryb3kgKCk7CisrCQlwdWJsaWMgdm9pZCBpbml0IChDbHV0dGVy LkFjdG9yIHJvb3QpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBi b29sIGlzX3ZhbGlkICgpOworKwkJcHVibGljIGJvb2wgbmV4dCAob3V0IHVub3duZWQgQ2x1dHRl ci5BY3RvciBjaGlsZCk7CisrCQlwdWJsaWMgYm9vbCBwcmV2IChvdXQgdW5vd25lZCBDbHV0dGVy LkFjdG9yIGNoaWxkKTsKKysJCXB1YmxpYyB2b2lkIHJlbW92ZSAoKTsKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBoYXNfdHlwZV9pZCA9IGZh bHNlKV0KKysJcHVibGljIHN0cnVjdCBDYXB0dXJlIHsKKysJCXB1YmxpYyB3ZWFrIENhaXJvLlN1 cmZhY2UgaW1hZ2U7CisrCQlwdWJsaWMgQ2Fpcm8uUmVjdGFuZ2xlSW50IHJlY3Q7CisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY29weV9mdW5j dGlvbiA9ICJnX2JveGVkX2NvcHkiLCBmcmVlX2Z1bmN0aW9uID0gImdfYm94ZWRfZnJlZSIsIHR5 cGVfaWQgPSAiQ0xVVFRFUl9UWVBFX0NPTE9SIildCisrCXB1YmxpYyBzdHJ1Y3QgQ29sb3Igewor KwkJcHVibGljIHVpbnQ4IHJlZDsKKysJCXB1YmxpYyB1aW50OCBncmVlbjsKKysJCXB1YmxpYyB1 aW50OCBibHVlOworKwkJcHVibGljIHVpbnQ4IGFscGhhOworKwkJcHVibGljIENsdXR0ZXIuQ29s b3IgYWRkIChDbHV0dGVyLkNvbG9yIGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0K KysJCXB1YmxpYyBzdGF0aWMgQ2x1dHRlci5Db2xvcj8gYWxsb2MgKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMC4yIildCisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvcj8gY29weSAoKTsKKysJCXB1 YmxpYyBDbHV0dGVyLkNvbG9yIGRhcmtlbiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIi KV0KKysJCXB1YmxpYyBib29sIGVxdWFsIChDbHV0dGVyLkNvbG9yIHYyKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyB2b2lkIGZyZWUgKCk7CisrCQlbQ0NvZGUgKGNu YW1lID0gImNsdXR0ZXJfY29sb3JfZnJvbV9obHMiKV0KKysJCXB1YmxpYyBDb2xvci5mcm9tX2hs cyAoZmxvYXQgaHVlLCBmbG9hdCBsdW1pbmFuY2UsIGZsb2F0IHNhdHVyYXRpb24pOworKwkJW0ND b2RlIChjbmFtZSA9ICJjbHV0dGVyX2NvbG9yX2Zyb21fcGl4ZWwiKV0KKysJCXB1YmxpYyBDb2xv ci5mcm9tX3BpeGVsICh1aW50MzIgcGl4ZWwpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVy X2NvbG9yX2Zyb21fc3RyaW5nIildCisrCQlwdWJsaWMgQ29sb3IuZnJvbV9zdHJpbmcgKHN0cmlu ZyBzdHIpOworKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIENsdXR0ZXIuQ29sb3I/IGdldF9zdGF0 aWMgKENsdXR0ZXIuU3RhdGljQ29sb3IgY29sb3IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MCIpXQorKwkJcHVibGljIHVpbnQgaGFzaCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEy IildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkNvbG9yPyBpbml0ICh1aW50OCByZWQsIHVp bnQ4IGdyZWVuLCB1aW50OCBibHVlLCB1aW50OCBhbHBoYSk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS42IildCisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBpbnRlcnBvbGF0ZSAoQ2x1dHRlci5D b2xvciBmaW5hbCwgZG91YmxlIHByb2dyZXNzKTsKKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIGxp Z2h0ZW4gKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfY29sb3JfZnJvbV9zdHJpbmci KV0KKysJCXB1YmxpYyBib29sIHBhcnNlX3N0cmluZyAoc3RyaW5nIHN0cik7CisrCQlwdWJsaWMg Q2x1dHRlci5Db2xvciBzaGFkZSAoZG91YmxlIGZhY3Rvcik7CisrCQlwdWJsaWMgQ2x1dHRlci5D b2xvciBzdWJ0cmFjdCAoQ2x1dHRlci5Db2xvciBiKTsKKysJCXB1YmxpYyB2b2lkIHRvX2hscyAo b3V0IGZsb2F0IGh1ZSwgb3V0IGZsb2F0IGx1bWluYW5jZSwgb3V0IGZsb2F0IHNhdHVyYXRpb24p OworKwkJcHVibGljIHVpbnQzMiB0b19waXhlbCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIw LjIiKV0KKysJCXB1YmxpYyBzdHJpbmcgdG9fc3RyaW5nICgpOworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGhhc190eXBlX2lkID0gZmFsc2Up XQorKwlwdWJsaWMgc3RydWN0IEtiZEExMXlTZXR0aW5ncyB7CisrCQlwdWJsaWMgQ2x1dHRlci5L ZXlib2FyZEExMXlGbGFncyBjb250cm9sczsKKysJCXB1YmxpYyBpbnQgc2xvd2tleXNfZGVsYXk7 CisrCQlwdWJsaWMgaW50IGRlYm91bmNlX2RlbGF5OworKwkJcHVibGljIGludCB0aW1lb3V0X2Rl bGF5OworKwkJcHVibGljIGludCBtb3VzZWtleXNfaW5pdF9kZWxheTsKKysJCXB1YmxpYyBpbnQg bW91c2VrZXlzX21heF9zcGVlZDsKKysJCXB1YmxpYyBpbnQgbW91c2VrZXlzX2FjY2VsX3RpbWU7 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y29weV9mdW5jdGlvbiA9ICJnX2JveGVkX2NvcHkiLCBmcmVlX2Z1bmN0aW9uID0gImdfYm94ZWRf ZnJlZSIsIHR5cGVfaWQgPSAiY2x1dHRlcl9rbm90X2dldF90eXBlICgpIildCisrCVtWZXJzaW9u IChzaW5jZSA9ICIwLjIiKV0KKysJcHVibGljIHN0cnVjdCBLbm90IHsKKysJCXB1YmxpYyBpbnQg eDsKKysJCXB1YmxpYyBpbnQgeTsKKysJCXB1YmxpYyBDbHV0dGVyLktub3Q/IGNvcHkgKCk7Cisr CQlwdWJsaWMgYm9vbCBlcXVhbCAoQ2x1dHRlci5Lbm90IGtub3RfYik7CisrCQlwdWJsaWMgdm9p ZCBmcmVlICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIpXQorKwlwdWJsaWMgc3RydWN0IE1hdHJpeCA6IENvZ2wuTWF0cml4IHsKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBoYXNfdHlw ZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBQYWRCdXR0b25FdmVudCB7CisrCQlwdWJs aWMgQ2x1dHRlci5FdmVudFR5cGUgdHlwZTsKKysJCXB1YmxpYyB1aW50MzIgdGltZTsKKysJCXB1 YmxpYyBDbHV0dGVyLkV2ZW50RmxhZ3MgZmxhZ3M7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLlN0 YWdlIHN0YWdlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5BY3RvciBzb3VyY2U7CisrCQlwdWJs aWMgdWludDMyIGJ1dHRvbjsKKysJCXB1YmxpYyB1aW50MzIgZ3JvdXA7CisrCQlwdWJsaWMgd2Vh ayBDbHV0dGVyLklucHV0RGV2aWNlIGRldmljZTsKKysJCXB1YmxpYyB1aW50MzIgbW9kZTsKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBoYXNf dHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBQYWRSaW5nRXZlbnQgeworKwkJcHVi bGljIENsdXR0ZXIuRXZlbnRUeXBlIHR5cGU7CisrCQlwdWJsaWMgdWludDMyIHRpbWU7CisrCQlw dWJsaWMgQ2x1dHRlci5FdmVudEZsYWdzIGZsYWdzOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5T dGFnZSBzdGFnZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuQWN0b3Igc291cmNlOworKwkJcHVi bGljIHdlYWsgQ2x1dHRlci5JbnB1dERldmljZSBkZXZpY2U7CisrCQlwdWJsaWMgQ2x1dHRlci5J bnB1dERldmljZVBhZFNvdXJjZSByaW5nX3NvdXJjZTsKKysJCXB1YmxpYyB1aW50MzIgcmluZ19u dW1iZXI7CisrCQlwdWJsaWMgdWludDMyIGdyb3VwOworKwkJcHVibGljIGRvdWJsZSBhbmdsZTsK KysJCXB1YmxpYyB1aW50MzIgbW9kZTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIHN0 cnVjdCBQYWRTdHJpcEV2ZW50IHsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50VHlwZSB0eXBlOwor KwkJcHVibGljIHVpbnQzMiB0aW1lOworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRGbGFncyBmbGFn czsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuU3RhZ2Ugc3RhZ2U7CisrCQlwdWJsaWMgd2VhayBD bHV0dGVyLkFjdG9yIHNvdXJjZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuSW5wdXREZXZpY2Ug ZGV2aWNlOworKwkJcHVibGljIENsdXR0ZXIuSW5wdXREZXZpY2VQYWRTb3VyY2Ugc3RyaXBfc291 cmNlOworKwkJcHVibGljIHVpbnQzMiBzdHJpcF9udW1iZXI7CisrCQlwdWJsaWMgdWludDMyIGdy b3VwOworKwkJcHVibGljIGRvdWJsZSB2YWx1ZTsKKysJCXB1YmxpYyB1aW50MzIgbW9kZTsKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjb3B5 X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24gPSAiZ19ib3hlZF9mcmVl IiwgdHlwZV9pZCA9ICJjbHV0dGVyX3BhdGhfbm9kZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBzdHJ1Y3QgUGF0aE5vZGUgeworKwkJcHVibGlj IENsdXR0ZXIuUGF0aE5vZGVUeXBlIHR5cGU7CisrCQlbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZh bHNlKV0KKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuS25vdCBwb2ludHNbM107CisrCQlwdWJsaWMg Q2x1dHRlci5QYXRoTm9kZT8gY29weSAoKTsKKysJCXB1YmxpYyBib29sIGVxdWFsIChDbHV0dGVy LlBhdGhOb2RlIG5vZGVfYik7CisrCQlwdWJsaWMgdm9pZCBmcmVlICgpOworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNvcHlfZnVuY3Rpb24g PSAiZ19ib3hlZF9jb3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0eXBlX2lk ID0gImNsdXR0ZXJfcGVyc3BlY3RpdmVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNl ID0gIjAuNCIpXQorKwlwdWJsaWMgc3RydWN0IFBlcnNwZWN0aXZlIHsKKysJCXB1YmxpYyBmbG9h dCBmb3Z5OworKwkJcHVibGljIGZsb2F0IGFzcGVjdDsKKysJCXB1YmxpYyBmbG9hdCB6X25lYXI7 CisrCQlwdWJsaWMgZmxvYXQgel9mYXI7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBz dHJ1Y3QgUG9pbnRlckExMXlTZXR0aW5ncyB7CisrCQlwdWJsaWMgQ2x1dHRlci5Qb2ludGVyQTEx eUZsYWdzIGNvbnRyb2xzOworKwkJcHVibGljIENsdXR0ZXIuUG9pbnRlckExMXlEd2VsbENsaWNr VHlwZSBkd2VsbF9jbGlja190eXBlOworKwkJcHVibGljIENsdXR0ZXIuUG9pbnRlckExMXlEd2Vs bE1vZGUgZHdlbGxfbW9kZTsKKysJCXB1YmxpYyBDbHV0dGVyLlBvaW50ZXJBMTF5RHdlbGxEaXJl Y3Rpb24gZHdlbGxfZ2VzdHVyZV9zaW5nbGU7CisrCQlwdWJsaWMgQ2x1dHRlci5Qb2ludGVyQTEx eUR3ZWxsRGlyZWN0aW9uIGR3ZWxsX2dlc3R1cmVfZG91YmxlOworKwkJcHVibGljIENsdXR0ZXIu UG9pbnRlckExMXlEd2VsbERpcmVjdGlvbiBkd2VsbF9nZXN0dXJlX2RyYWc7CisrCQlwdWJsaWMg Q2x1dHRlci5Qb2ludGVyQTExeUR3ZWxsRGlyZWN0aW9uIGR3ZWxsX2dlc3R1cmVfc2Vjb25kYXJ5 OworKwkJcHVibGljIGludCBzZWNvbmRhcnlfY2xpY2tfZGVsYXk7CisrCQlwdWJsaWMgaW50IGR3 ZWxsX2RlbGF5OworKwkJcHVibGljIGludCBkd2VsbF90aHJlc2hvbGQ7CisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBm YWxzZSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjI4IildCisrCXB1YmxpYyBzdHJ1Y3QgUHJv eGltaXR5RXZlbnQgeworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRUeXBlIHR5cGU7CisrCQlwdWJs aWMgdWludDMyIHRpbWU7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudEZsYWdzIGZsYWdzOworKwkJ cHVibGljIHdlYWsgQ2x1dHRlci5TdGFnZSBzdGFnZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIu QWN0b3Igc291cmNlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5JbnB1dERldmljZSBkZXZpY2U7 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y29weV9mdW5jdGlvbiA9ICJnX2JveGVkX2NvcHkiLCBmcmVlX2Z1bmN0aW9uID0gImdfYm94ZWRf ZnJlZSIsIHR5cGVfaWQgPSAiQ0xVVFRFUl9UWVBFX1VOSVRTIildCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjAiKV0KKysJcHVibGljIHN0cnVjdCBVbml0cyB7CisrCQlwdWJsaWMgQ2x1dHRlci5V bml0cz8gY29weSAoKTsKKysJCXB1YmxpYyB2b2lkIGZyZWUgKCk7CisrCQlbQ0NvZGUgKGNuYW1l ID0gImNsdXR0ZXJfdW5pdHNfZnJvbV9jbSIpXQorKwkJcHVibGljIFVuaXRzLmZyb21fY20gKGZs b2F0IGNtKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl91bml0c19mcm9tX2VtIildCisr CQlwdWJsaWMgVW5pdHMuZnJvbV9lbSAoZmxvYXQgZW0pOworKwkJW0NDb2RlIChjbmFtZSA9ICJj bHV0dGVyX3VuaXRzX2Zyb21fZW1fZm9yX2ZvbnQiKV0KKysJCXB1YmxpYyBVbml0cy5mcm9tX2Vt X2Zvcl9mb250IChzdHJpbmcgZm9udF9uYW1lLCBmbG9hdCBlbSk7CisrCQlbQ0NvZGUgKGNuYW1l ID0gImNsdXR0ZXJfdW5pdHNfZnJvbV9tbSIpXQorKwkJcHVibGljIFVuaXRzLmZyb21fbW0gKGZs b2F0IG1tKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl91bml0c19mcm9tX3BpeGVscyIp XQorKwkJcHVibGljIFVuaXRzLmZyb21fcGl4ZWxzIChpbnQgcHgpOworKwkJW0NDb2RlIChjbmFt ZSA9ICJjbHV0dGVyX3VuaXRzX2Zyb21fcHQiKV0KKysJCXB1YmxpYyBVbml0cy5mcm9tX3B0IChm bG9hdCBwdCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfdW5pdHNfZnJvbV9zdHJpbmci KV0KKysJCXB1YmxpYyBVbml0cy5mcm9tX3N0cmluZyAoc3RyaW5nIHN0cik7CisrCQlwdWJsaWMg Q2x1dHRlci5Vbml0VHlwZSBnZXRfdW5pdF90eXBlICgpOworKwkJcHVibGljIGZsb2F0IGdldF91 bml0X3ZhbHVlICgpOworKwkJcHVibGljIGZsb2F0IHRvX3BpeGVscyAoKTsKKysJCXB1YmxpYyBz dHJpbmcgdG9fc3RyaW5nICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9BQ1RPUl9BTElHTl8iLCB0eXBl X2lkID0gImNsdXR0ZXJfYWN0b3JfYWxpZ25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTAiKV0KKysJcHVibGljIGVudW0gQWN0b3JBbGlnbiB7CisrCQlGSUxMLAorKwkJ U1RBUlQsCisrCQlDRU5URVIsCisrCQlFTkQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfQUNUT1JfIiwgdHlw ZV9pZCA9ICJjbHV0dGVyX2FjdG9yX2ZsYWdzX2dldF90eXBlICgpIildCisrCVtGbGFnc10KKysJ cHVibGljIGVudW0gQWN0b3JGbGFncyB7CisrCQlNQVBQRUQsCisrCQlSRUFMSVpFRCwKKysJCVJF QUNUSVZFLAorKwkJVklTSUJMRSwKKysJCU5PX0xBWU9VVAorKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9BTElH Tl8iLCB0eXBlX2lkID0gImNsdXR0ZXJfYWxpZ25fYXhpc19nZXRfdHlwZSAoKSIpXQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBlbnVtIEFsaWduQXhpcyB7CisrCQlYX0FY SVMsCisrCQlZX0FYSVMsCisrCQlCT1RICisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSXyIsIHR5cGVfaWQgPSAi Y2x1dHRlcl9hbGxvY2F0aW9uX2ZsYWdzX2dldF90eXBlICgpIildCisrCVtGbGFnc10KKysJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgZW51bSBBbGxvY2F0aW9uRmxhZ3Mgewor KwkJQUxMT0NBVElPTl9OT05FLAorKwkJQUJTT0xVVEVfT1JJR0lOX0NIQU5HRUQsCisrCQlERUxF R0FURV9MQVlPVVQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2FuaW1h dGlvbl9tb2RlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJ cHVibGljIGVudW0gQW5pbWF0aW9uTW9kZSB7CisrCQlDVVNUT01fTU9ERSwKKysJCUxJTkVBUiwK KysJCUVBU0VfSU5fUVVBRCwKKysJCUVBU0VfT1VUX1FVQUQsCisrCQlFQVNFX0lOX09VVF9RVUFE LAorKwkJRUFTRV9JTl9DVUJJQywKKysJCUVBU0VfT1VUX0NVQklDLAorKwkJRUFTRV9JTl9PVVRf Q1VCSUMsCisrCQlFQVNFX0lOX1FVQVJULAorKwkJRUFTRV9PVVRfUVVBUlQsCisrCQlFQVNFX0lO X09VVF9RVUFSVCwKKysJCUVBU0VfSU5fUVVJTlQsCisrCQlFQVNFX09VVF9RVUlOVCwKKysJCUVB U0VfSU5fT1VUX1FVSU5ULAorKwkJRUFTRV9JTl9TSU5FLAorKwkJRUFTRV9PVVRfU0lORSwKKysJ CUVBU0VfSU5fT1VUX1NJTkUsCisrCQlFQVNFX0lOX0VYUE8sCisrCQlFQVNFX09VVF9FWFBPLAor KwkJRUFTRV9JTl9PVVRfRVhQTywKKysJCUVBU0VfSU5fQ0lSQywKKysJCUVBU0VfT1VUX0NJUkMs CisrCQlFQVNFX0lOX09VVF9DSVJDLAorKwkJRUFTRV9JTl9FTEFTVElDLAorKwkJRUFTRV9PVVRf RUxBU1RJQywKKysJCUVBU0VfSU5fT1VUX0VMQVNUSUMsCisrCQlFQVNFX0lOX0JBQ0ssCisrCQlF QVNFX09VVF9CQUNLLAorKwkJRUFTRV9JTl9PVVRfQkFDSywKKysJCUVBU0VfSU5fQk9VTkNFLAor KwkJRUFTRV9PVVRfQk9VTkNFLAorKwkJRUFTRV9JTl9PVVRfQk9VTkNFLAorKwkJU1RFUFMsCisr CQlTVEVQX1NUQVJULAorKwkJU1RFUF9FTkQsCisrCQlDVUJJQ19CRVpJRVIsCisrCQlFQVNFLAor KwkJRUFTRV9JTiwKKysJCUVBU0VfT1VULAorKwkJRUFTRV9JTl9PVVQsCisrCQlBTklNQVRJT05f TEFTVAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9CSU5fQUxJR05NRU5UXyIsIHR5cGVfaWQgPSAiY2x1dHRl cl9iaW5fYWxpZ25tZW50X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIi KV0KKysJcHVibGljIGVudW0gQmluQWxpZ25tZW50IHsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVk ID0gdHJ1ZSldCisrCQlGSVhFRCwKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSldCisr CQlGSUxMLAorKwkJU1RBUlQsCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUpXQorKwkJ RU5ELAorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlKV0KKysJCUNFTlRFUgorKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXgg PSAiQ0xVVFRFUl9CSU5EXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9iaW5kX2Nvb3JkaW5hdGVfZ2V0 X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgZW51bSBC aW5kQ29vcmRpbmF0ZSB7CisrCQlYLAorKwkJWSwKKysJCVdJRFRILAorKwkJSEVJR0hULAorKwkJ UE9TSVRJT04sCisrCQlTSVpFLAorKwkJQUxMCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0JPWF9BTElHTk1F TlRfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2JveF9hbGlnbm1lbnRfZ2V0X3R5cGUgKCkiKV0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwlwdWJsaWMgZW51bSBCb3hBbGlnbm1lbnQgewor KwkJU1RBUlQsCisrCQlFTkQsCisrCQlDRU5URVIKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfQlVUVE9OX1NU QVRFXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9idXR0b25fc3RhdGVfZ2V0X3R5cGUgKCkiKV0KKysJ cHVibGljIGVudW0gQnV0dG9uU3RhdGUgeworKwkJUkVMRUFTRUQsCisrCQlQUkVTU0VECisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZp eCA9ICJDTFVUVEVSX0NPTlRFTlRfR1JBVklUWV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfY29udGVu dF9ncmF2aXR5X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisr CXB1YmxpYyBlbnVtIENvbnRlbnRHcmF2aXR5IHsKKysJCVRPUF9MRUZULAorKwkJVE9QLAorKwkJ VE9QX1JJR0hULAorKwkJTEVGVCwKKysJCUNFTlRFUiwKKysJCVJJR0hULAorKwkJQk9UVE9NX0xF RlQsCisrCQlCT1RUT00sCisrCQlCT1RUT01fUklHSFQsCisrCQlSRVNJWkVfRklMTCwKKysJCVJF U0laRV9BU1BFQ1QKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfUkVQRUFUXyIsIHR5cGVfaWQgPSAiY2x1dHRl cl9jb250ZW50X3JlcGVhdF9nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEyIildCisrCXB1YmxpYyBlbnVtIENvbnRlbnRSZXBlYXQgeworKwkJTk9ORSwK KysJCVhfQVhJUywKKysJCVlfQVhJUywKKysJCUJPVEgKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfREVCVUdf IiwgdHlwZV9pZCA9ICJjbHV0dGVyX2RlYnVnX2ZsYWdfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdz XQorKwlwdWJsaWMgZW51bSBEZWJ1Z0ZsYWcgeworKwkJTUlTQywKKysJCUFDVE9SLAorKwkJVEVY VFVSRSwKKysJCUVWRU5ULAorKwkJUEFJTlQsCisrCQlQQU5HTywKKysJCUJBQ0tFTkQsCisrCQlT Q0hFRFVMRVIsCisrCQlTQ1JJUFQsCisrCQlTSEFERVIsCisrCQlNVUxUSVNUQUdFLAorKwkJQU5J TUFUSU9OLAorKwkJTEFZT1VULAorKwkJUElDSywKKysJCUVWRU5UTE9PUCwKKysJCUNMSVBQSU5H LAorKwkJT09CX1RSQU5TRk9STVMKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfRFJBR18iLCB0eXBlX2lkID0g ImNsdXR0ZXJfZHJhZ19heGlzX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIx LjQiKV0KKysJcHVibGljIGVudW0gRHJhZ0F4aXMgeworKwkJQVhJU19OT05FLAorKwkJWF9BWElT LAorKwkJWV9BWElTCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0RFQlVHXyIsIHR5cGVfaWQgPSAiY2x1dHRl cl9kcmF3X2RlYnVnX2ZsYWdfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlwdWJsaWMgZW51 bSBEcmF3RGVidWdGbGFnIHsKKysJCURJU0FCTEVfU1dBUF9FVkVOVFMsCisrCQlESVNBQkxFX0NM SVBQRURfUkVEUkFXUywKKysJCVJFRFJBV1MsCisrCQlQQUlOVF9WT0xVTUVTLAorKwkJRElTQUJM RV9DVUxMSU5HLAorKwkJRElTQUJMRV9PRkZTQ1JFRU5fUkVESVJFQ1QsCisrCQlDT05USU5VT1VT X1JFRFJBVywKKysJCVBBSU5UX0RFRk9STV9USUxFUywKKysJCVBBSU5UX0RBTUFHRV9SRUdJT04K KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj cHJlZml4ID0gIkNMVVRURVJfRUZGRUNUX1BBSU5UX0FDVE9SXyIsIHR5cGVfaWQgPSAiY2x1dHRl cl9lZmZlY3RfcGFpbnRfZmxhZ3NfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlwdWJsaWMg ZW51bSBFZmZlY3RQYWludEZsYWdzIHsKKysJCVtDQ29kZSAoY25hbWUgPSAiQ0xVVFRFUl9FRkZF Q1RfUEFJTlRfQUNUT1JfRElSVFkiKV0KKysJCUFDVE9SX0RJUlRZCisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVS X0VWRU5UXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9ldmVudF9mbGFnc19nZXRfdHlwZSAoKSIpXQor KwlbRmxhZ3NdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJcHVibGljIGVudW0gRXZl bnRGbGFncyB7CisrCQlOT05FLAorKwkJRkxBR19TWU5USEVUSUMsCisrCQlGTEFHX0lOUFVUX01F VEhPRCwKKysJCUZMQUdfUkVQRUFURUQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfIiwgdHlwZV9pZCA9ICJj bHV0dGVyX2V2ZW50X3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAu NCIpXQorKwlwdWJsaWMgZW51bSBFdmVudFR5cGUgeworKwkJTk9USElORywKKysJCUtFWV9QUkVT UywKKysJCUtFWV9SRUxFQVNFLAorKwkJTU9USU9OLAorKwkJRU5URVIsCisrCQlMRUFWRSwKKysJ CUJVVFRPTl9QUkVTUywKKysJCUJVVFRPTl9SRUxFQVNFLAorKwkJU0NST0xMLAorKwkJU1RBR0Vf U1RBVEUsCisrCQlERVNUUk9ZX05PVElGWSwKKysJCUNMSUVOVF9NRVNTQUdFLAorKwkJREVMRVRF LAorKwkJVE9VQ0hfQkVHSU4sCisrCQlUT1VDSF9VUERBVEUsCisrCQlUT1VDSF9FTkQsCisrCQlU T1VDSF9DQU5DRUwsCisrCQlUT1VDSFBBRF9QSU5DSCwKKysJCVRPVUNIUEFEX1NXSVBFLAorKwkJ UFJPWElNSVRZX0lOLAorKwkJUFJPWElNSVRZX09VVCwKKysJCVBBRF9CVVRUT05fUFJFU1MsCisr CQlQQURfQlVUVE9OX1JFTEVBU0UsCisrCQlQQURfU1RSSVAsCisrCQlQQURfUklORywKKysJCUVW RU5UX0xBU1QKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfRkVBVFVSRV8iLCB0eXBlX2lkID0gImNsdXR0ZXJf ZmVhdHVyZV9mbGFnc19nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIwLjQiKV0KKysJcHVibGljIGVudW0gRmVhdHVyZUZsYWdzIHsKKysJCVRFWFRVUkVfTlBP VCwKKysJCVNXQVBfVEhST1RUTEUsCisrCQlTVEFHRV9TVEFUSUMsCisrCQlTVEFHRV9DVVJTT1Is CisrCQlTSEFERVJTX0dMU0wsCisrCQlPRkZTQ1JFRU4sCisrCQlTVEFHRV9NVUxUSVBMRSwKKysJ CVNXQVBfRVZFTlRTOworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX2ZlYXR1cmVfYXZhaWxh YmxlIildCisrCQlwdWJsaWMgYm9vbCBpc19hdmFpbGFibGUgKCk7CisrCQlbQ0NvZGUgKGNuYW1l ID0gImNsdXR0ZXJfZmVhdHVyZV9nZXRfYWxsIildCisrCQlwdWJsaWMgc3RhdGljIENsdXR0ZXIu RmVhdHVyZUZsYWdzIEBnZXQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0ZMT1dfIiwgdHlwZV9pZCA9 ICJjbHV0dGVyX2Zsb3dfb3JpZW50YXRpb25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNp bmNlID0gIjEuMiIpXQorKwlwdWJsaWMgZW51bSBGbG93T3JpZW50YXRpb24geworKwkJSE9SSVpP TlRBTCwKKysJCVZFUlRJQ0FMCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0dFU1RVUkVfVFJJR0dFUl9FREdF XyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9nZXN0dXJlX3RyaWdnZXJfZWRnZV9nZXRfdHlwZSAoKSIp XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xOCIpXQorKwlwdWJsaWMgZW51bSBHZXN0dXJlVHJp Z2dlckVkZ2UgeworKwkJTk9ORSwKKysJCUFGVEVSLAorKwkJQkVGT1JFCisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVU VEVSX0dSQVZJVFlfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2dyYXZpdHlfZ2V0X3R5cGUgKCkiKV0K KysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMjIi LCBzaW5jZSA9ICIwLjIiKV0KKysJcHVibGljIGVudW0gR3Jhdml0eSB7CisrCQlOT05FLAorKwkJ Tk9SVEgsCisrCQlOT1JUSF9FQVNULAorKwkJRUFTVCwKKysJCVNPVVRIX0VBU1QsCisrCQlTT1VU SCwKKysJCVNPVVRIX1dFU1QsCisrCQlXRVNULAorKwkJTk9SVEhfV0VTVCwKKysJCUNFTlRFUgor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNw cmVmaXggPSAiQ0xVVFRFUl9HUklEX1BPU0lUSU9OXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9ncmlk X3Bvc2l0aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisr CXB1YmxpYyBlbnVtIEdyaWRQb3NpdGlvbiB7CisrCQlMRUZULAorKwkJUklHSFQsCisrCQlUT1As CisrCQlCT1RUT00KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfSU5JVF8iLCB0eXBlX2lkID0gImNsdXR0ZXJf aW5pdF9lcnJvcl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisr CXB1YmxpYyBlbnVtIEluaXRFcnJvciB7CisrCQlTVUNDRVNTLAorKwkJRVJST1JfVU5LTk9XTiwK KysJCUVSUk9SX1RIUkVBRFMsCisrCQlFUlJPUl9CQUNLRU5ELAorKwkJRVJST1JfSU5URVJOQUw7 CisrCQlwdWJsaWMgc3RhdGljIEdMaWIuUXVhcmsgcXVhcmsgKCk7CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVS X0lOUFVUX0FYSVNfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2lucHV0X2F4aXNfZ2V0X3R5cGUgKCki KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwlwdWJsaWMgZW51bSBJbnB1dEF4aXMg eworKwkJSUdOT1JFLAorKwkJWCwKKysJCVksCisrCQlQUkVTU1VSRSwKKysJCVhUSUxULAorKwkJ WVRJTFQsCisrCQlXSEVFTCwKKysJCURJU1RBTkNFLAorKwkJUk9UQVRJT04sCisrCQlTTElERVIs CisrCQlMQVNUCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0lOUFVUX0NPTlRFTlRfSElOVF8iLCB0eXBlX2lk ID0gImNsdXR0ZXJfaW5wdXRfY29udGVudF9oaW50X2ZsYWdzX2dldF90eXBlICgpIildCisrCVtG bGFnc10KKysJcHVibGljIGVudW0gSW5wdXRDb250ZW50SGludEZsYWdzIHsKKysJCUNPTVBMRVRJ T04sCisrCQlTUEVMTENIRUNLLAorKwkJQVVUT19DQVBJVEFMSVpBVElPTiwKKysJCUxPV0VSQ0FT RSwKKysJCVVQUEVSQ0FTRSwKKysJCVRJVExFQ0FTRSwKKysJCUhJRERFTl9URVhULAorKwkJU0VO U0lUSVZFX0RBVEEsCisrCQlMQVRJTiwKKysJCU1VTFRJTElORQorKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9J TlBVVF9DT05URU5UX1BVUlBPU0VfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2lucHV0X2NvbnRlbnRf cHVycG9zZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBJbnB1dENvbnRlbnRQdXJwb3Nl IHsKKysJCU5PUk1BTCwKKysJCUFMUEhBLAorKwkJRElHSVRTLAorKwkJTlVNQkVSLAorKwkJUEhP TkUsCisrCQlVUkwsCisrCQlFTUFJTCwKKysJCU5BTUUsCisrCQlQQVNTV09SRCwKKysJCURBVEUs CisrCQlUSU1FLAorKwkJREFURVRJTUUsCisrCQlURVJNSU5BTAorKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9J TlBVVF9ERVZJQ0VfTUFQUElOR18iLCB0eXBlX2lkID0gImNsdXR0ZXJfaW5wdXRfZGV2aWNlX21h cHBpbmdfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gSW5wdXREZXZpY2VNYXBwaW5nIHsK KysJCUFCU09MVVRFLAorKwkJUkVMQVRJVkUKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfSU5QVVRfREVWSUNF X1BBRF9TT1VSQ0VfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2lucHV0X2RldmljZV9wYWRfc291cmNl X2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIElucHV0RGV2aWNlUGFkU291cmNlIHsKKysJ CVVOS05PV04sCisrCQlGSU5HRVIKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfSU5QVVRfREVWSUNFX1RPT0xf IiwgdHlwZV9pZCA9ICJjbHV0dGVyX2lucHV0X2RldmljZV90b29sX3R5cGVfZ2V0X3R5cGUgKCki KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjgiKV0KKysJcHVibGljIGVudW0gSW5wdXREZXZp Y2VUb29sVHlwZSB7CisrCQlOT05FLAorKwkJUEVOLAorKwkJRVJBU0VSLAorKwkJQlJVU0gsCisr CQlQRU5DSUwsCisrCQlBSVJCUlVTSCwKKysJCU1PVVNFLAorKwkJTEVOUworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xV VFRFUl8iLCB0eXBlX2lkID0gImNsdXR0ZXJfaW5wdXRfZGV2aWNlX3R5cGVfZ2V0X3R5cGUgKCki KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgZW51bSBJbnB1dERldmlj ZVR5cGUgeworKwkJUE9JTlRFUl9ERVZJQ0UsCisrCQlLRVlCT0FSRF9ERVZJQ0UsCisrCQlFWFRF TlNJT05fREVWSUNFLAorKwkJSk9ZU1RJQ0tfREVWSUNFLAorKwkJVEFCTEVUX0RFVklDRSwKKysJ CVRPVUNIUEFEX0RFVklDRSwKKysJCVRPVUNIU0NSRUVOX0RFVklDRSwKKysJCVBFTl9ERVZJQ0Us CisrCQlFUkFTRVJfREVWSUNFLAorKwkJQ1VSU09SX0RFVklDRSwKKysJCVBBRF9ERVZJQ0UsCisr CQlOX0RFVklDRV9UWVBFUworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9JTlBVVF9NT0RFXyIsIHR5cGVfaWQg PSAiY2x1dHRlcl9pbnB1dF9tb2RlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjYiKV0KKysJcHVibGljIGVudW0gSW5wdXRNb2RlIHsKKysJCU1BU1RFUiwKKysJCVNMQVZF LAorKwkJRkxPQVRJTkcKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfSU5QVVRfUEFORUxfU1RBVEVfIiwgdHlw ZV9pZCA9ICJjbHV0dGVyX2lucHV0X3BhbmVsX3N0YXRlX2dldF90eXBlICgpIildCisrCXB1Ymxp YyBlbnVtIElucHV0UGFuZWxTdGF0ZSB7CisrCQlPRkYsCisrCQlPTiwKKysJCVRPR0dMRQorKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVm aXggPSAiQ0xVVFRFUl9JTlRFUlBPTEFUSU9OXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9pbnRlcnBv bGF0aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVw cmVjYXRlZF9zaW5jZSA9ICIxLjIyIiwgc2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBlbnVtIElu dGVycG9sYXRpb24geworKwkJTElORUFSLAorKwkJQ1VCSUMKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfS0VZ X1NUQVRFXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9rZXlfc3RhdGVfZ2V0X3R5cGUgKCkiKV0KKysJ cHVibGljIGVudW0gS2V5U3RhdGUgeworKwkJUkVMRUFTRUQsCisrCQlQUkVTU0VECisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9 ICJDTFVUVEVSX0ExMVlfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2tleWJvYXJkX2ExMXlfZmxhZ3Nf Z2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlwdWJsaWMgZW51bSBLZXlib2FyZEExMXlGbGFn cyB7CisrCQlLRVlCT0FSRF9FTkFCTEVELAorKwkJVElNRU9VVF9FTkFCTEVELAorKwkJTU9VU0Vf S0VZU19FTkFCTEVELAorKwkJU0xPV19LRVlTX0VOQUJMRUQsCisrCQlTTE9XX0tFWVNfQkVFUF9Q UkVTUywKKysJCVNMT1dfS0VZU19CRUVQX0FDQ0VQVCwKKysJCVNMT1dfS0VZU19CRUVQX1JFSkVD VCwKKysJCUJPVU5DRV9LRVlTX0VOQUJMRUQsCisrCQlCT1VOQ0VfS0VZU19CRUVQX1JFSkVDVCwK KysJCVRPR0dMRV9LRVlTX0VOQUJMRUQsCisrCQlTVElDS1lfS0VZU19FTkFCTEVELAorKwkJU1RJ Q0tZX0tFWVNfVFdPX0tFWV9PRkYsCisrCQlTVElDS1lfS0VZU19CRUVQLAorKwkJRkVBVFVSRV9T VEFURV9DSEFOR0VfQkVFUAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9MT05HX1BSRVNTXyIsIHR5cGVfaWQg PSAiY2x1dHRlcl9sb25nX3ByZXNzX3N0YXRlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChz aW5jZSA9ICIxLjgiKV0KKysJcHVibGljIGVudW0gTG9uZ1ByZXNzU3RhdGUgeworKwkJUVVFUlks CisrCQlBQ1RJVkFURSwKKysJCUNBTkNFTAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl8iLCB0eXBlX2lkID0g ImNsdXR0ZXJfbW9kaWZpZXJfdHlwZV9nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCVtWZXJz aW9uIChzaW5jZSA9ICIwLjQiKV0KKysJcHVibGljIGVudW0gTW9kaWZpZXJUeXBlIHsKKysJCVNI SUZUX01BU0ssCisrCQlMT0NLX01BU0ssCisrCQlDT05UUk9MX01BU0ssCisrCQlNT0QxX01BU0ss CisrCQlNT0QyX01BU0ssCisrCQlNT0QzX01BU0ssCisrCQlNT0Q0X01BU0ssCisrCQlNT0Q1X01B U0ssCisrCQlCVVRUT04xX01BU0ssCisrCQlCVVRUT04yX01BU0ssCisrCQlCVVRUT04zX01BU0ss CisrCQlCVVRUT040X01BU0ssCisrCQlCVVRUT041X01BU0ssCisrCQlNT0RJRklFUl9SRVNFUlZF RF8xM19NQVNLLAorKwkJTU9ESUZJRVJfUkVTRVJWRURfMTRfTUFTSywKKysJCU1PRElGSUVSX1JF U0VSVkVEXzE1X01BU0ssCisrCQlNT0RJRklFUl9SRVNFUlZFRF8xNl9NQVNLLAorKwkJTU9ESUZJ RVJfUkVTRVJWRURfMTdfTUFTSywKKysJCU1PRElGSUVSX1JFU0VSVkVEXzE4X01BU0ssCisrCQlN T0RJRklFUl9SRVNFUlZFRF8xOV9NQVNLLAorKwkJTU9ESUZJRVJfUkVTRVJWRURfMjBfTUFTSywK KysJCU1PRElGSUVSX1JFU0VSVkVEXzIxX01BU0ssCisrCQlNT0RJRklFUl9SRVNFUlZFRF8yMl9N QVNLLAorKwkJTU9ESUZJRVJfUkVTRVJWRURfMjNfTUFTSywKKysJCU1PRElGSUVSX1JFU0VSVkVE XzI0X01BU0ssCisrCQlNT0RJRklFUl9SRVNFUlZFRF8yNV9NQVNLLAorKwkJU1VQRVJfTUFTSywK KysJCUhZUEVSX01BU0ssCisrCQlNRVRBX01BU0ssCisrCQlNT0RJRklFUl9SRVNFUlZFRF8yOV9N QVNLLAorKwkJUkVMRUFTRV9NQVNLLAorKwkJTU9ESUZJRVJfTUFTSworKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRF Ul9PRkZTQ1JFRU5fUkVESVJFQ1RfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX29mZnNjcmVlbl9yZWRp cmVjdF9nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgi KV0KKysJcHVibGljIGVudW0gT2Zmc2NyZWVuUmVkaXJlY3QgeworKwkJQVVUT01BVElDX0ZPUl9P UEFDSVRZLAorKwkJQUxXQVlTCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX09SSUVOVEFUSU9OXyIsIHR5cGVf aWQgPSAiY2x1dHRlcl9vcmllbnRhdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMiIpXQorKwlwdWJsaWMgZW51bSBPcmllbnRhdGlvbiB7CisrCQlIT1JJWk9OVEFM LAorKwkJVkVSVElDQUwKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfUEFOXyIsIHR5cGVfaWQgPSAiY2x1dHRl cl9wYW5fYXhpc19nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQor KwlwdWJsaWMgZW51bSBQYW5BeGlzIHsKKysJCUFYSVNfTk9ORSwKKysJCVhfQVhJUywKKysJCVlf QVhJUywKKysJCUFYSVNfQVVUTworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9QQVRIXyIsIHR5cGVfaWQgPSAi Y2x1dHRlcl9wYXRoX25vZGVfdHlwZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCXB1YmxpYyBlbnVtIFBhdGhOb2RlVHlwZSB7CisrCQlNT1ZFX1RPLAorKwkJ TElORV9UTywKKysJCUNVUlZFX1RPLAorKwkJQ0xPU0UsCisrCQlSRUxfTU9WRV9UTywKKysJCVJF TF9MSU5FX1RPLAorKwkJUkVMX0NVUlZFX1RPCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0RFQlVHX05PUF8i LCB0eXBlX2lkID0gImNsdXR0ZXJfcGlja19kZWJ1Z19mbGFnX2dldF90eXBlICgpIildCisrCVtG bGFnc10KKysJcHVibGljIGVudW0gUGlja0RlYnVnRmxhZyB7CisrCQlQSUNLSU5HCisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9 ICJDTFVUVEVSX1BJQ0tfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3BpY2tfbW9kZV9nZXRfdHlwZSAo KSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBlbnVtIFBpY2tNb2Rl IHsKKysJCU5PTkUsCisrCQlSRUFDVElWRSwKKysJCUFMTAorKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9BMTFZ X0RXRUxMX0NMSUNLX1RZUEVfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3BvaW50ZXJfYTExeV9kd2Vs bF9jbGlja190eXBlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIFBvaW50ZXJBMTF5RHdl bGxDbGlja1R5cGUgeworKwkJTk9ORSwKKysJCVBSSU1BUlksCisrCQlTRUNPTkRBUlksCisrCQlN SURETEUsCisrCQlET1VCTEUsCisrCQlEUkFHCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0ExMVlfRFdFTExf RElSRUNUSU9OXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9wb2ludGVyX2ExMXlfZHdlbGxfZGlyZWN0 aW9uX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIFBvaW50ZXJBMTF5RHdlbGxEaXJlY3Rp b24geworKwkJTk9ORSwKKysJCUxFRlQsCisrCQlSSUdIVCwKKysJCVVQLAorKwkJRE9XTgorKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVm aXggPSAiQ0xVVFRFUl9BMTFZX0RXRUxMX01PREVfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3BvaW50 ZXJfYTExeV9kd2VsbF9tb2RlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIFBvaW50ZXJB MTF5RHdlbGxNb2RlIHsKKysJCVdJTkRPVywKKysJCUdFU1RVUkUKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJf QTExWV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfcG9pbnRlcl9hMTF5X2ZsYWdzX2dldF90eXBlICgp IildCisrCVtGbGFnc10KKysJcHVibGljIGVudW0gUG9pbnRlckExMXlGbGFncyB7CisrCQlTRUNP TkRBUllfQ0xJQ0tfRU5BQkxFRCwKKysJCURXRUxMX0VOQUJMRUQKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJf QTExWV9USU1FT1VUX1RZUEVfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3BvaW50ZXJfYTExeV90aW1l b3V0X3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gUG9pbnRlckExMXlUaW1lb3V0 VHlwZSB7CisrCQlTRUNPTkRBUllfQ0xJQ0ssCisrCQlEV0VMTCwKKysJCUdFU1RVUkUKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4 ID0gIkNMVVRURVJfUkVQQUlOVF9GTEFHU18iLCB0eXBlX2lkID0gImNsdXR0ZXJfcmVwYWludF9m bGFnc19nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEw IildCisrCXB1YmxpYyBlbnVtIFJlcGFpbnRGbGFncyB7CisrCQlQUkVfUEFJTlQsCisrCQlQT1NU X1BBSU5ULAorKwkJUVVFVUVfUkVEUkFXX09OX0FERAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9SRVFVRVNU XyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9yZXF1ZXN0X21vZGVfZ2V0X3R5cGUgKCkiKV0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwlwdWJsaWMgZW51bSBSZXF1ZXN0TW9kZSB7CisrCQlI RUlHSFRfRk9SX1dJRFRILAorKwkJV0lEVEhfRk9SX0hFSUdIVCwKKysJCUNPTlRFTlRfU0laRQor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNw cmVmaXggPSAiQ0xVVFRFUl8iLCB0eXBlX2lkID0gImNsdXR0ZXJfcm90YXRlX2F4aXNfZ2V0X3R5 cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwlwdWJsaWMgZW51bSBSb3Rh dGVBeGlzIHsKKysJCVhfQVhJUywKKysJCVlfQVhJUywKKysJCVpfQVhJUworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xV VFRFUl9ST1RBVEVfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3JvdGF0ZV9kaXJlY3Rpb25fZ2V0X3R5 cGUgKCkiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNl ID0gIjEuMjIiLCBzaW5jZSA9ICIwLjQiKV0KKysJcHVibGljIGVudW0gUm90YXRlRGlyZWN0aW9u IHsKKysJCUNXLAorKwkJQ0NXCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1NDQUxJTkdfRklMVEVSXyIsIHR5 cGVfaWQgPSAiY2x1dHRlcl9zY2FsaW5nX2ZpbHRlcl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgZW51bSBTY2FsaW5nRmlsdGVyIHsKKysJCUxJ TkVBUiwKKysJCU5FQVJFU1QsCisrCQlUUklMSU5FQVIKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfU0NST0xM XyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zY3JvbGxfZGlyZWN0aW9uX2dldF90eXBlICgpIildCisr CVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJcHVibGljIGVudW0gU2Nyb2xsRGlyZWN0aW9u IHsKKysJCVVQLAorKwkJRE9XTiwKKysJCUxFRlQsCisrCQlSSUdIVCwKKysJCVNNT09USAorKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVm aXggPSAiQ0xVVFRFUl9TQ1JPTExfRklOSVNIRURfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3Njcm9s bF9maW5pc2hfZmxhZ3NfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4yNiIpXQorKwlwdWJsaWMgZW51bSBTY3JvbGxGaW5pc2hGbGFncyB7CisrCQlOT05F LAorKwkJSE9SSVpPTlRBTCwKKysJCVZFUlRJQ0FMCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1NDUk9MTF8i LCB0eXBlX2lkID0gImNsdXR0ZXJfc2Nyb2xsX21vZGVfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdz XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwlwdWJsaWMgZW51bSBTY3JvbGxNb2Rl IHsKKysJCU5PTkUsCisrCQlIT1JJWk9OVEFMTFksCisrCQlWRVJUSUNBTExZLAorKwkJQk9USAor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNw cmVmaXggPSAiQ0xVVFRFUl9TQ1JPTExfU09VUkNFXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zY3Jv bGxfc291cmNlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjI2IildCisr CXB1YmxpYyBlbnVtIFNjcm9sbFNvdXJjZSB7CisrCQlVTktOT1dOLAorKwkJV0hFRUwsCisrCQlG SU5HRVIsCisrCQlDT05USU5VT1VTCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSXyIsIHR5cGVfaWQgPSAiY2x1 dHRlcl9zaGFkZXJfdHlwZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40 IildCisrCXB1YmxpYyBlbnVtIFNoYWRlclR5cGUgeworKwkJVkVSVEVYX1NIQURFUiwKKysJCUZS QUdNRU5UX1NIQURFUgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9TTkFQX0VER0VfIiwgdHlwZV9pZCA9ICJj bHV0dGVyX3NuYXBfZWRnZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS42 IildCisrCXB1YmxpYyBlbnVtIFNuYXBFZGdlIHsKKysJCVRPUCwKKysJCVJJR0hULAorKwkJQk9U VE9NLAorKwkJTEVGVAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9TVEFHRV9TVEFURV8iLCB0eXBlX2lkID0g ImNsdXR0ZXJfc3RhZ2Vfc3RhdGVfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMC40IildCisrCXB1YmxpYyBlbnVtIFN0YWdlU3RhdGUgeworKwkJQUNUSVZB VEVECisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY3ByZWZpeCA9ICJDTFVUVEVSX0NPTE9SXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zdGF0aWNf Y29sb3JfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwlwdWJs aWMgZW51bSBTdGF0aWNDb2xvciB7CisrCQlXSElURSwKKysJCUJMQUNLLAorKwkJUkVELAorKwkJ REFSS19SRUQsCisrCQlHUkVFTiwKKysJCURBUktfR1JFRU4sCisrCQlCTFVFLAorKwkJREFSS19C TFVFLAorKwkJQ1lBTiwKKysJCURBUktfQ1lBTiwKKysJCU1BR0VOVEEsCisrCQlEQVJLX01BR0VO VEEsCisrCQlZRUxMT1csCisrCQlEQVJLX1lFTExPVywKKysJCUdSQVksCisrCQlEQVJLX0dSQVks CisrCQlMSUdIVF9HUkFZLAorKwkJQlVUVEVSLAorKwkJQlVUVEVSX0xJR0hULAorKwkJQlVUVEVS X0RBUkssCisrCQlPUkFOR0UsCisrCQlPUkFOR0VfTElHSFQsCisrCQlPUkFOR0VfREFSSywKKysJ CUNIT0NPTEFURSwKKysJCUNIT0NPTEFURV9MSUdIVCwKKysJCUNIT0NPTEFURV9EQVJLLAorKwkJ Q0hBTUVMRU9OLAorKwkJQ0hBTUVMRU9OX0xJR0hULAorKwkJQ0hBTUVMRU9OX0RBUkssCisrCQlT S1lfQkxVRSwKKysJCVNLWV9CTFVFX0xJR0hULAorKwkJU0tZX0JMVUVfREFSSywKKysJCVBMVU0s CisrCQlQTFVNX0xJR0hULAorKwkJUExVTV9EQVJLLAorKwkJU0NBUkxFVF9SRUQsCisrCQlTQ0FS TEVUX1JFRF9MSUdIVCwKKysJCVNDQVJMRVRfUkVEX0RBUkssCisrCQlBTFVNSU5JVU1fMSwKKysJ CUFMVU1JTklVTV8yLAorKwkJQUxVTUlOSVVNXzMsCisrCQlBTFVNSU5JVU1fNCwKKysJCUFMVU1J TklVTV81LAorKwkJQUxVTUlOSVVNXzYsCisrCQlUUkFOU1BBUkVOVAorKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRF Ul9TVEVQX01PREVfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3N0ZXBfbW9kZV9nZXRfdHlwZSAoKSIp XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwlwdWJsaWMgZW51bSBTdGVwTW9kZSB7 CisrCQlTVEFSVCwKKysJCUVORAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9TV0lQRV9ESVJFQ1RJT05fIiwg dHlwZV9pZCA9ICJjbHV0dGVyX3N3aXBlX2RpcmVjdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbRmxh Z3NdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJcHVibGljIGVudW0gU3dpcGVEaXJl Y3Rpb24geworKwkJVVAsCisrCQlET1dOLAorKwkJTEVGVCwKKysJCVJJR0hUCisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJD TFVUVEVSX1RFWFRfRElSRUNUSU9OXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl90ZXh0X2RpcmVjdGlv bl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBl bnVtIFRleHREaXJlY3Rpb24geworKwkJREVGQVVMVCwKKysJCUxUUiwKKysJCVJUTAorKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXgg PSAiQ0xVVFRFUl9URVhUVVJFXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl90ZXh0dXJlX2ZsYWdzX2dl dF90eXBlICgpIildCisrCVtGbGFnc10KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBk ZXByZWNhdGVkX3NpbmNlID0gIjEuMjIiLCBzaW5jZSA9ICIwLjQiKV0KKysJcHVibGljIGVudW0g VGV4dHVyZUZsYWdzIHsKKysJCU5PTkUsCisrCQlSR0JfRkxBR19CR1IsCisrCQlSR0JfRkxBR19Q UkVNVUxULAorKwkJWVVWX0ZMQUdfWVVWMgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9URVhUVVJFX1FVQUxJ VFlfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3RleHR1cmVfcXVhbGl0eV9nZXRfdHlwZSAoKSIpXQor KwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4yMiIs IHNpbmNlID0gIjAuOCIpXQorKwlwdWJsaWMgZW51bSBUZXh0dXJlUXVhbGl0eSB7CisrCQlMT1cs CisrCQlNRURJVU0sCisrCQlISUdICisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1RJTUVMSU5FXyIsIHR5cGVf aWQgPSAiY2x1dHRlcl90aW1lbGluZV9kaXJlY3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjAuNiIpXQorKwlwdWJsaWMgZW51bSBUaW1lbGluZURpcmVjdGlvbiB7Cisr CQlGT1JXQVJELAorKwkJQkFDS1dBUkQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfVE9VQ0hQQURfR0VTVFVS RV9QSEFTRV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfdG91Y2hwYWRfZ2VzdHVyZV9waGFzZV9nZXRf dHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yNCIpXQorKwlwdWJsaWMgZW51bSBU b3VjaHBhZEdlc3R1cmVQaGFzZSB7CisrCQlCRUdJTiwKKysJCVVQREFURSwKKysJCUVORCwKKysJ CUNBTkNFTAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9VTklUXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl91bml0 X3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJs aWMgZW51bSBVbml0VHlwZSB7CisrCQlQSVhFTCwKKysJCUVNLAorKwkJTU0sCisrCQlQT0lOVCwK KysJCUNNCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1ZJUlRVQUxfREVWSUNFX1RZUEVfIiwgdHlwZV9pZCA9 ICJjbHV0dGVyX3ZpcnR1YWxfZGV2aWNlX3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQor KwlwdWJsaWMgZW51bSBWaXJ0dWFsRGV2aWNlVHlwZSB7CisrCQlOT05FLAorKwkJS0VZQk9BUkQs CisrCQlQT0lOVEVSLAorKwkJVE9VQ0hTQ1JFRU4KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfWk9PTV8iLCB0 eXBlX2lkID0gImNsdXR0ZXJfem9vbV9heGlzX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEyIildCisrCXB1YmxpYyBlbnVtIFpvb21BeGlzIHsKKysJCVhfQVhJUywKKysJ CVlfQVhJUywKKysJCUJPVEgKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfSU1BR0VfRVJST1JfSU5WQUxJRF8i KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGVycm9yZG9tYWluIElt YWdlRXJyb3IgeworKwkJREFUQTsKKysJCXB1YmxpYyBzdGF0aWMgR0xpYi5RdWFyayBxdWFyayAo KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjcHJlZml4ID0gIkNMVVRURVJfU0NSSVBUX0VSUk9SX0lOVkFMSURfIildCisrCVtWZXJzaW9u IChzaW5jZSA9ICIwLjYiKV0KKysJcHVibGljIGVycm9yZG9tYWluIFNjcmlwdEVycm9yIHsKKysJ CVRZUEVfRlVOQ1RJT04sCisrCQlQUk9QRVJUWSwKKysJCVZBTFVFOworKwkJcHVibGljIHN0YXRp YyBHTGliLlF1YXJrIHF1YXJrICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGluc3RhbmNlX3BvcyA9IDEuOSldCisrCVtWZXJzaW9uIChz aW5jZSA9ICIxLjI0IildCisrCXB1YmxpYyBkZWxlZ2F0ZSBDbHV0dGVyLkFjdG9yIEFjdG9yQ3Jl YXRlQ2hpbGRGdW5jIChHTGliLk9iamVjdCBpdGVtKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaW5zdGFuY2VfcG9zID0gMS45KV0KKysJW1ZlcnNp b24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9 ICIwLjIiKV0KKysJcHVibGljIGRlbGVnYXRlIGRvdWJsZSBBbHBoYUZ1bmMgKENsdXR0ZXIuQWxw aGEgYWxwaGEpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBpbnN0YW5jZV9wb3MgPSA0LjkpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisr CXB1YmxpYyBkZWxlZ2F0ZSBib29sIEJpbmRpbmdBY3Rpb25GdW5jIChHTGliLk9iamVjdCBnb2Jq ZWN0LCBzdHJpbmcgYWN0aW9uX25hbWUsIHVpbnQga2V5X3ZhbCwgQ2x1dHRlci5Nb2RpZmllclR5 cGUgbW9kaWZpZXJzKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgaW5zdGFuY2VfcG9zID0gMS45KV0KKysJcHVibGljIGRlbGVnYXRlIHZvaWQgQ2Fs bGJhY2sgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBoYXNfdGFyZ2V0ID0gZmFsc2UpXQorKwlwdWJsaWMgZGVs ZWdhdGUgdm9pZCBFbWl0SW5wdXREZXZpY2VFdmVudCAoQ2x1dHRlci5FdmVudCBldmVudCwgQ2x1 dHRlci5JbnB1dERldmljZSBkZXZpY2UpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBpbnN0YW5jZV9wb3MgPSAxLjkpXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xOCIpXQorKwlwdWJsaWMgZGVsZWdhdGUgYm9vbCBFdmVudEZpbHRlckZ1bmMgKENs dXR0ZXIuRXZlbnQgZXZlbnQpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBpbnN0YW5jZV9wb3MgPSAxLjkpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAi MS4wIildCisrCXB1YmxpYyBkZWxlZ2F0ZSB2b2lkIFBhdGhDYWxsYmFjayAoQ2x1dHRlci5QYXRo Tm9kZSBub2RlKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgaGFzX3RhcmdldCA9IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwlwdWJsaWMgZGVsZWdhdGUgYm9vbCBQcm9ncmVzc0Z1bmMgKEdMaWIuVmFsdWUgYSwgR0xpYi5W YWx1ZSBiLCBkb3VibGUgcHJvZ3Jlc3MsIEdMaWIuVmFsdWUgcmV0dmFsKTsKKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaW5zdGFuY2VfcG9zID0gNi45 KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwlwdWJsaWMgZGVsZWdhdGUgdm9pZCBT Y3JpcHRDb25uZWN0RnVuYyAoQ2x1dHRlci5TY3JpcHQgc2NyaXB0LCBHTGliLk9iamVjdCBvYmpl Y3QsIHN0cmluZyBzaWduYWxfbmFtZSwgc3RyaW5nIGhhbmRsZXJfbmFtZSwgR0xpYi5PYmplY3Qg Y29ubmVjdF9vYmplY3QsIEdMaWIuQ29ubmVjdEZsYWdzIGZsYWdzKTsKKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaW5zdGFuY2VfcG9zID0gMy45KV0K KysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGRlbGVnYXRlIGRvdWJsZSBU aW1lbGluZVByb2dyZXNzRnVuYyAoQ2x1dHRlci5UaW1lbGluZSB0aW1lbGluZSwgZG91YmxlIGVs YXBzZWQsIGRvdWJsZSB0b3RhbCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfQ09HTCIpXQorKwlbVmVyc2lvbiAoZGVw cmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjAuNCIp XQorKwlwdWJsaWMgY29uc3Qgc3RyaW5nIENPR0w7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfQ1VSUkVOVF9USU1FIild CisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJcHVibGljIGNvbnN0IGludCBDVVJSRU5U X1RJTUU7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfRkxBVk9VUiIpXQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRy dWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjAuNCIpXQorKwlwdWJsaWMg Y29uc3Qgc3RyaW5nIEZMQVZPVVI7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfUEFUSF9SRUxBVElWRSIpXQorKwlwdWJs aWMgY29uc3QgaW50IFBBVEhfUkVMQVRJVkU7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfUFJJT1JJVFlfUkVEUkFXIild CisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJcHVibGljIGNvbnN0IGludCBQUklPUklU WV9SRURSQVc7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgYmFzZV9pbml0ICgpOworKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTIiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIGNhaXJvX2NsZWFyIChDYWlyby5Db250ZXh0 IGNyKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIild CisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIGNhaXJv X3NldF9zb3VyY2VfY29sb3IgKENhaXJvLkNvbnRleHQgY3IsIENsdXR0ZXIuQ29sb3IgY29sb3Ip OworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGNoZWNrX3dp bmRvd2luZ19iYWNrZW5kIChzdHJpbmcgYmFja2VuZF90eXBlKTsKKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBj b2xvcl9mcm9tX2hscyAob3V0IENsdXR0ZXIuQ29sb3IgY29sb3IsIGZsb2F0IGh1ZSwgZmxvYXQg bHVtaW5hbmNlLCBmbG9hdCBzYXR1cmF0aW9uKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBjb2xvcl9mcm9t X3BpeGVsIChvdXQgQ2x1dHRlci5Db2xvciBjb2xvciwgdWludDMyIHBpeGVsKTsKKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChz aW5jZSA9ICIxLjAiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGNvbG9yX2Zyb21fc3RyaW5nIChv dXQgQ2x1dHRlci5Db2xvciBjb2xvciwgc3RyaW5nIHN0cik7CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS42 IildCisrCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLkNvbG9yPyBjb2xvcl9nZXRfc3Rh dGljIChDbHV0dGVyLlN0YXRpY0NvbG9yIGNvbG9yKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE0Iild CisrCXB1YmxpYyBzdGF0aWMgdm9pZCBkaXNhYmxlX2FjY2Vzc2liaWxpdHkgKCk7CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMC40IildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBkb19ldmVudCAoQ2x1dHRlci5F dmVudCBldmVudCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xOCIpXQorKwlwdWJsaWMgc3RhdGljIHVp bnQgZXZlbnRfYWRkX2ZpbHRlciAoQ2x1dHRlci5TdGFnZT8gc3RhZ2UsIFtDQ29kZSAoZGVsZWdh dGVfdGFyZ2V0X3BvcyA9IDIuMiwgZGVzdHJveV9ub3RpZnlfcG9zID0gMi4xKV0gb3duZWQgQ2x1 dHRlci5FdmVudEZpbHRlckZ1bmMgZnVuYyk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCXB1 YmxpYyBzdGF0aWMgQ2x1dHRlci5FdmVudCBldmVudF9nZXQgKCk7CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAi MC40IildCisrCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLkV2ZW50IGV2ZW50X3BlZWsg KCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQor KwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xOCIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgZXZlbnRf cmVtb3ZlX2ZpbHRlciAodWludCBpZCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCXB1Ymxp YyBzdGF0aWMgYm9vbCBldmVudHNfcGVuZGluZyAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0K KysJcHVibGljIHN0YXRpYyBib29sIGdldF9hY2Nlc3NpYmlsaXR5X2VuYWJsZWQgKCk7CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLkV2ZW50 IGdldF9jdXJyZW50X2V2ZW50ICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMg c3RhdGljIHVpbnQzMiBnZXRfY3VycmVudF9ldmVudF90aW1lICgpOworKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0g IjAuNCIpXQorKwlwdWJsaWMgc3RhdGljIHVub3duZWQgQ2x1dHRlci5CYWNrZW5kIGdldF9kZWZh dWx0X2JhY2tlbmQgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCXB1YmxpYyBzdGF0aWMg dWludCBnZXRfZGVmYXVsdF9mcmFtZV9yYXRlICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQor KwlwdWJsaWMgc3RhdGljIENsdXR0ZXIuVGV4dERpcmVjdGlvbiBnZXRfZGVmYXVsdF90ZXh0X2Rp cmVjdGlvbiAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIHN0YXRpYyB1bm93 bmVkIFBhbmdvLkZvbnRNYXAgZ2V0X2ZvbnRfbWFwICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIp XQorKwlwdWJsaWMgc3RhdGljIEdMaWIuT3B0aW9uR3JvdXAgZ2V0X29wdGlvbl9ncm91cCAoKTsK KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtW ZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJcHVibGljIHN0YXRpYyBHTGliLk9wdGlvbkdyb3Vw IGdldF9vcHRpb25fZ3JvdXBfd2l0aG91dF9pbml0ICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIp XQorKwlwdWJsaWMgc3RhdGljIHVub3duZWQgc3RyaW5nIGdldF9zY3JpcHRfaWQgKEdMaWIuT2Jq ZWN0IGdvYmplY3QpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiKV0KKysJcHVibGljIHN0YXRpYyBDbHV0dGVyLkluaXRFcnJvciBpbml0IChbQ0NvZGUg KGFycmF5X2xlbmd0aF9jbmFtZSA9ICJhcmdjIiwgYXJyYXlfbGVuZ3RoX3BvcyA9IDAuNSldIHJl ZiB1bm93bmVkIHN0cmluZ1tdPyBhcmd2KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJcHVi bGljIHN0YXRpYyBDbHV0dGVyLkluaXRFcnJvciBpbml0X3dpdGhfYXJncyAoW0NDb2RlIChhcnJh eV9sZW5ndGhfY25hbWUgPSAiYXJnYyIsIGFycmF5X2xlbmd0aF9wb3MgPSAwLjUpXSByZWYgdW5v d25lZCBzdHJpbmdbXT8gYXJndiwgc3RyaW5nPyBwYXJhbWV0ZXJfc3RyaW5nLCBbQ0NvZGUgKGFy cmF5X2xlbmd0aCA9IGZhbHNlKV0gR0xpYi5PcHRpb25FbnRyeVtdPyBlbnRyaWVzLCBzdHJpbmc/ IHRyYW5zbGF0aW9uX2RvbWFpbikgdGhyb3dzIEdMaWIuRXJyb3I7CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlwdWJsaWMgc3RhdGljIHVpbnQz MiBrZXlzeW1fdG9fdW5pY29kZSAodWludCBrZXl2YWwpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIG1haW4g KCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQor KwlwdWJsaWMgc3RhdGljIGludCBtYWluX2xldmVsICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIG1haW5f cXVpdCAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBzZXRfY3VzdG9tX2JhY2tlbmRfZnVuYyAodm9pZCog ZnVuYyk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIp XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgc3RhdGljIHVpbnQgdW5p Y29kZV90b19rZXlzeW0gKHVpbnQzMiB3Yyk7CisrfQorZGlmZiAtLWdpdCBhL3ZhcGkvbXV0dGVy LWNvZ2wtNi1jdXN0b20udmFsYSBiL3ZhcGkvbXV0dGVyLWNvZ2wtNi1jdXN0b20udmFsYQorbmV3 IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAwLi5hMmMxMDY0NQorLS0tIC9kZXYvbnVs bAorKysrIGIvdmFwaS9tdXR0ZXItY29nbC02LWN1c3RvbS52YWxhCitAQCAtMCwwICsxLDEyNSBA QAorK25hbWVzcGFjZSBDb2dsIHsKKysJW0NvbXBhY3RdCisrCVtDQ29kZSAoY25hbWUgPSAiQ29n bEhhbmRsZSIpXQorKwlwdWJsaWMgY2xhc3MgQml0bWFwOiBIYW5kbGUgeworKwkJcHVibGljIHN0 YXRpYyBCaXRtYXAgbmV3X2Zyb21fZmlsZSAoc3RyaW5nIGZpbGVuYW1lKSB0aHJvd3MgR0xpYi5F cnJvcjsKKysJfQorKworKwlbQ29tcGFjdF0KKysJW0NDb2RlIChjbmFtZSA9ICJDb2dsSGFuZGxl IildCisrCXB1YmxpYyBjbGFzcyBCdWZmZXI6IEhhbmRsZSB7CisrCQlwdWJsaWMgdWludCBnZXRf c2l6ZSAoKTsKKysJCXB1YmxpYyBib29sIHNldF9kYXRhIChzaXplX3Qgb2Zmc2V0LCBbQ0NvZGUg KGFycmF5X2xlbmd0aF90eXBlID0gInNpemVfdCIpXSB1aW50OFtdIGRhdGEpOworKwkJcHVibGlj IHZvaWQgdW5tYXAgKCk7CisrCX0KKysKKysJW0NDb2RlIChoYXNfdHlwZV9pZCA9IGZhbHNlKV0K KysJcHVibGljIHN0cnVjdCBDb2xvciB7CisrCQlwdWJsaWMgQ29sb3IuZnJvbV80ZiAoZmxvYXQg cmVkLCBmbG9hdCBncmVlbiwgZmxvYXQgYmx1ZSwgZmxvYXQgYWxwaGEpOworKwkJcHVibGljIENv bG9yLmZyb21fNHViICh1aW50OCByZWQsIHVpbnQ4IGdyZWVuLCB1aW50OCBibHVlLCB1aW50OCBh bHBoYSk7CisrCX0KKysKKysJW0NvbXBhY3RdCisrCVtDQ29kZSAocmVmX2Z1bmN0aW9uID0gImNv Z2xfaGFuZGxlX3JlZiIsIHVucmVmX2Z1bmN0aW9uID0gImNvZ2xfaGFuZGxlX3VucmVmIildCisr CXB1YmxpYyBjbGFzcyBIYW5kbGUgeworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2lzX2JpdG1h cCIpXQorKwkJcHVibGljIGJvb2wgaXNfYml0bWFwICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJj b2dsX2lzX2J1ZmZlciIpXQorKwkJcHVibGljIGJvb2wgaXNfYnVmZmVyICgpOworKwkJW0NDb2Rl IChjbmFtZSA9ICJjb2dsX2lzX21hdGVyaWFsIildCisrCQlwdWJsaWMgYm9vbCBpc19tYXRlcmlh bCAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9pc19vZmZzY3JlZW4iKV0KKysJCXB1Ymxp YyBib29sIGlzX29mZnNjcmVlbiAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9pc19waXhl bF9idWZmZXIiKV0KKysJCXB1YmxpYyBib29sIGlzX3BpeGVsX2J1ZmZlciAoKTsKKysJCVtDQ29k ZSAoY25hbWUgPSAiY29nbF9pc19wcm9ncmFtIildCisrCQlwdWJsaWMgYm9vbCBpc19wcm9ncmFt ICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2lzX3NoYWRlciIpXQorKwkJcHVibGljIGJv b2wgaXNfc2hhZGVyICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2lzX3RleHR1cmUiKV0K KysJCXB1YmxpYyBib29sIGlzX3RleHR1cmUgKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xf aXNfdmVydGV4X2J1ZmZlciIpXQorKwkJcHVibGljIGJvb2wgaXNfdmVydGV4X2J1ZmZlciAoKTsK KysJfQorKworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjb3B5 X2Z1bmN0aW9uID0gImNvZ2xfcGF0aF9jb3B5IildCisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xh c3MgUGF0aCB7CisrCQlwdWJsaWMgc3RhdGljIHZvaWQgQG5ldyAoKTsKKysJfQorKworKwlbQ29t cGFjdF0KKysJcHVibGljIGNsYXNzIFBpeGVsQnVmZmVyOiBIYW5kbGUgeworKwkJcHVibGljIFBp eGVsQnVmZmVyICh1aW50IHNpemUpOworKwkJcHVibGljIFBpeGVsQnVmZmVyLmZvcl9zaXplICh1 aW50IHdpZHRoLCB1aW50IGhlaWdodCwgQ29nbC5QaXhlbEZvcm1hdCBmb3JtYXQsIHVpbnQgc3Ry aWRlKTsKKysJfQorKworKwlbQ29tcGFjdF0KKysJW0NDb2RlIChjbmFtZSA9ICJDb2dsSGFuZGxl IiwgcmVmX2Z1bmN0aW9uID0gImNvZ2xfcHJvZ3JhbV9yZWYiLCB1bnJlZl9mdW5jdGlvbiA9ICJj b2dsX3Byb2dyYW1fdW5yZWYiKV0KKysJcHVibGljIGNsYXNzIFByb2dyYW06IEhhbmRsZSB7Cisr CQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfY3JlYXRlX3Byb2dyYW0iLCB0eXBlID0gIkNvZ2xIYW5k bGUqIiwgaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1YmxpYyBQcm9ncmFt ICgpOworKwkJcHVibGljIHZvaWQgYXR0YWNoX3NoYWRlciAoQ29nbC5TaGFkZXIgc2hhZGVyX2hh bmRsZSk7CisrCQlwdWJsaWMgaW50IGdldF91bmlmb3JtX2xvY2F0aW9uIChzdHJpbmcgdW5pZm9y bV9uYW1lKTsKKysJCXB1YmxpYyB2b2lkIGxpbmsgKCk7CisrCQlwdWJsaWMgc3RhdGljIHZvaWQg dW5pZm9ybV8xZiAoaW50IHVuaWZvcm1fbm8sIGZsb2F0IHZhbHVlKTsKKysJCXB1YmxpYyBzdGF0 aWMgdm9pZCB1bmlmb3JtXzFpIChpbnQgdW5pZm9ybV9ubywgaW50IHZhbHVlKTsKKysJCXB1Ymxp YyBzdGF0aWMgdm9pZCB1bmlmb3JtX2Zsb2F0IChpbnQgdW5pZm9ybV9ubywgaW50IHNpemUsIFtD Q29kZSAoYXJyYXlfbGVuZ3RoX3BvcyA9IDIuOSldIGZsb2F0W10gdmFsdWUpOworKwkJcHVibGlj IHN0YXRpYyB2b2lkIHVuaWZvcm1faW50IChpbnQgdW5pZm9ybV9ubywgaW50IHNpemUsIFtDQ29k ZSAoYXJyYXlfbGVuZ3RoX3BvcyA9IDIuOSldIGludFtdIHZhbHVlKTsKKysJCXB1YmxpYyBzdGF0 aWMgdm9pZCB1bmlmb3JtX21hdHJpeCAoaW50IHVuaWZvcm1fbm8sIGludCBzaXplLCBib29sIHRy YW5zcG9zZSwgW0NDb2RlIChhcnJheV9sZW5ndGhfcG9zID0gMi45KV0gZmxvYXRbXSB2YWx1ZSk7 CisrCQlwdWJsaWMgdm9pZCB1c2UgKCk7CisrCX0KKysKKysJW0NvbXBhY3RdCisrCVtDQ29kZSAo Y25hbWUgPSAiQ29nbEhhbmRsZSIsIHJlZl9mdW5jdGlvbiA9ICJjb2dsX3NoYWRlcl9yZWYiLCB1 bnJlZl9mdW5jdGlvbiA9ICJjb2dsX3NoYWRlcl91bnJlZiIpXQorKwlwdWJsaWMgY2xhc3MgU2hh ZGVyOiBIYW5kbGUgeworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2NyZWF0ZV9zaGFkZXIiLCB0 eXBlID0gIkNvZ2xIYW5kbGUqIiwgaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJ CXB1YmxpYyBTaGFkZXIgKENvZ2wuU2hhZGVyVHlwZSBzaGFkZXJfdHlwZSk7CisrCQlwdWJsaWMg dm9pZCBjb21waWxlICgpOworKwkJcHVibGljIHN0cmluZyBnZXRfaW5mb19sb2cgKCk7CisrCQlw dWJsaWMgQ29nbC5TaGFkZXJUeXBlIGdldF90eXBlICgpOworKwkJcHVibGljIGJvb2wgaXNfY29t cGlsZWQgKCk7CisrCQlwdWJsaWMgdm9pZCBzb3VyY2UgKHN0cmluZyBzb3VyY2UpOworKwl9Cisr CisrCVtDb21wYWN0XQorKwlbQ0NvZGUgKGNuYW1lID0gIkNvZ2xIYW5kbGUiLCByZWZfZnVuY3Rp b24gPSAiY29nbF92ZXJ0ZXhfYnVmZmVyX3JlZiIsIHVucmVmX2Z1bmN0aW9uID0gImNvZ2xfdmVy dGV4X2J1ZmZlcl91bnJlZiIpXQorKwlwdWJsaWMgY2xhc3MgVmVydGV4QnVmZmVyOiBIYW5kbGUg eworKwkJW0NDb2RlICh0eXBlID0gIkNvZ2xIYW5kbGUqIiwgaGFzX2NvbnN0cnVjdF9mdW5jdGlv biA9IGZhbHNlKV0KKysJCXB1YmxpYyBWZXJ0ZXhCdWZmZXIgKHVpbnQgbl92ZXJ0aWNlcyk7Cisr CQlwdWJsaWMgdm9pZCBhZGQgKHN0cmluZyBhdHRyaWJ1dGVfbmFtZSwgdWNoYXIgbl9jb21wb25l bnRzLCBDb2dsLkF0dHJpYnV0ZVR5cGUgdHlwZSwgYm9vbCBub3JtYWxpemVkLCB1aW50MTYgc3Ry aWRlLCB2b2lkKiBwb2ludGVyKTsKKysJCXB1YmxpYyB2b2lkIGRlbGV0ZSAoc3RyaW5nIGF0dHJp YnV0ZV9uYW1lKTsKKysJCXB1YmxpYyB2b2lkIGRpc2FibGUgKHN0cmluZyBhdHRyaWJ1dGVfbmFt ZSk7CisrCQlwdWJsaWMgdm9pZCBkcmF3IChDb2dsLlZlcnRpY2VzTW9kZSBtb2RlLCBpbnQgZmly c3QsIGludCBjb3VudCk7CisrCQlwdWJsaWMgdm9pZCBkcmF3X2VsZW1lbnRzIChDb2dsLlZlcnRp Y2VzTW9kZSBtb2RlLCBWZXJ0ZXhCdWZmZXJJbmRpY2VzIGluZGljZXMsIGludCBtaW5faW5kZXgs IGludCBtYXhfaW5kZXgsIGludCBpbmRpY2VzX29mZnNldCwgaW50IGNvdW50KTsKKysJCXB1Ymxp YyB2b2lkIGVuYWJsZSAoc3RyaW5nIGF0dHJpYnV0ZV9uYW1lKTsKKysJCXB1YmxpYyB1aW50IGdl dF9uX3ZlcnRpY2VzICgpOworKwkJcHVibGljIHZvaWQgc3VibWl0ICgpOworKwl9CisrCisrCVtD b21wYWN0XQorKwlbQ0NvZGUgKGNuYW1lID0gIkNvZ2xIYW5kbGUiKV0KKysJcHVibGljIGNsYXNz IFZlcnRleEJ1ZmZlckluZGljZXM6IEhhbmRsZSB7CisrCQlwdWJsaWMgVmVydGV4QnVmZmVySW5k aWNlcyAoQ29nbC5JbmRpY2VzVHlwZSBpbmRpY2VzX3R5cGUsIHZvaWQqIGluZGljZXNfYXJyYXks IGludCBpbmRpY2VzX2xlbik7CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgQ29nbC5WZXJ0ZXhC dWZmZXJJbmRpY2VzIGdldF9mb3JfcXVhZHMgKHVpbnQgbl9pbmRpY2VzKTsKKysJCXB1YmxpYyBD b2dsLkluZGljZXNUeXBlIGdldF90eXBlICgpOworKwl9CisrCisrCVtDQ29kZSAodHlwZV9pZCA9 ICJDT0dMX1RZUEVfTUFUUklYIiwgY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQor KwlwdWJsaWMgc3RydWN0IE1hdHJpeCB7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfbWF0cml4 X2luaXRfZnJvbV9hcnJheSIsIGFycmF5X2xlbmd0aCA9IGZhbHNlLCBhcnJheV9udWxsX3Rlcm1p bmF0ZWQgPSBmYWxzZSldCisrCQlwdWJsaWMgTWF0cml4LmZyb21fYXJyYXkgKFtDQ29kZSAoYXJy YXlfbGVuZ3RoID0gZmFsc2UpXSBmbG9hdFtdIGFycmF5KTsKKysJCVtDQ29kZSAoY25hbWUgPSAi Y29nbF9tYXRyaXhfaW5pdF9pZGVudGl0eSIpXQorKwkJcHVibGljIE1hdHJpeC5pZGVudGl0eSAo KTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9tYXRyaXhfbXVsdGlwbHkiKV0KKysJCXB1Ymxp YyBNYXRyaXgubXVsdGlwbHkgKENvZ2wuTWF0cml4IGEsIENvZ2wuTWF0cml4IGIpOworKwl9Cisr CisrCVtTaW1wbGVUeXBlXQorKwlbR0lSIChuYW1lID0gIkJvb2wiKV0KKysJW0Jvb2xlYW5UeXBl XQorKwlwdWJsaWMgc3RydWN0IEJvb2wgOiBib29sIHsKKysJfQorKworKwlwdWJsaWMgc3RhdGlj IEdMaWIuQ2FsbGJhY2sgZ2V0X3Byb2NfYWRkcmVzcyhzdHJpbmcgcyk7CisrfQorZGlmZiAtLWdp dCBhL3ZhcGkvbXV0dGVyLWNvZ2wtNi5kZXBzIGIvdmFwaS9tdXR0ZXItY29nbC02LmRlcHMKK25l dyBmaWxlIG1vZGUgMTAwNjQ0CitpbmRleCAwMDAwMDAwMC4uOThjY2FjNWIKKy0tLSAvZGV2L251 bGwKKysrKyBiL3ZhcGkvbXV0dGVyLWNvZ2wtNi5kZXBzCitAQCAtMCwwICsxIEBACisrcGFuZ28K K2RpZmYgLS1naXQgYS92YXBpL211dHRlci1jb2dsLTYudmFwaSBiL3ZhcGkvbXV0dGVyLWNvZ2wt Ni52YXBpCituZXcgZmlsZSBtb2RlIDEwMDY0NAoraW5kZXggMDAwMDAwMDAuLmM5YWI1ZDU3Cist LS0gL2Rldi9udWxsCisrKysgYi92YXBpL211dHRlci1jb2dsLTYudmFwaQorQEAgLTAsMCArMSwx MDc3IEBACisrLyogbXV0dGVyLWNvZ2wtNi52YXBpIGdlbmVyYXRlZCBieSB2YXBpZ2VuLCBkbyBu b3QgbW9kaWZ5LiAqLworKworK1tDQ29kZSAoY3ByZWZpeCA9ICJDb2dsIiwgZ2lyX25hbWVzcGFj ZSA9ICJDb2dsIiwgZ2lyX3ZlcnNpb24gPSAiNiIsIGxvd2VyX2Nhc2VfY3ByZWZpeCA9ICJjb2ds XyIpXQorK25hbWVzcGFjZSBDb2dsIHsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNv Z2wvY29nbC5oIiwgY25hbWUgPSAiQ29nbEhhbmRsZSIsIHR5cGVfaWQgPSAiY29nbF9iaXRtYXBf Z2V0X2d0eXBlICgpIildCisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3MgQml0bWFwIDogQ29n bC5IYW5kbGUgeworKwkJcHVibGljIHN0YXRpYyB1aW50MzIgZXJyb3JfcXVhcmsgKCk7CisrCQlb Q0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDb2dsQml0bWFw KiIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEJpdG1hcC5mcm9t X2ZpbGUgKHN0cmluZyBmaWxlbmFtZSkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENvZ2wuUGl4ZWxGb3JtYXQgZ2V0X2Zvcm1hdCAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgaW50IGdldF9oZWln aHQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGludCBnZXRf cm93c3RyaWRlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0 YXRpYyBib29sIGdldF9zaXplX2Zyb21fZmlsZSAoc3RyaW5nIGZpbGVuYW1lLCBvdXQgaW50IHdp ZHRoLCBvdXQgaW50IGhlaWdodCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJ cHVibGljIGludCBnZXRfd2lkdGggKCk7CisrCQlwdWJsaWMgc3RhdGljIENvZ2wuQml0bWFwIG5l d19mcm9tX2ZpbGUgKHN0cmluZyBmaWxlbmFtZSkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY25hbWUgPSAiQ29nbEhh bmRsZSIpXQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIEJ1ZmZlciA6IENvZ2wuSGFuZGxl IHsKKysJCXB1YmxpYyB1aW50IGdldF9zaXplICgpOworKwkJcHVibGljIGJvb2wgc2V0X2RhdGEg KHNpemVfdCBvZmZzZXQsIFtDQ29kZSAoYXJyYXlfbGVuZ3RoX3R5cGUgPSAic2l6ZV90IildIHVp bnQ4W10gZGF0YSk7CisrCQlwdWJsaWMgdm9pZCB1bm1hcCAoKTsKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCB0eXBlX2lkID0gImNvZ2xfY29udGV4dF9n ZXRfZ3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIENvbnRleHQgOiBDb2dsLk9iamVjdCB7Cisr CQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQg Q29udGV4dCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2ds LmgiLCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24gPSAiZ19i b3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJjb2dsX2ZyYW1lX2Nsb3N1cmVfZ2V0X2d0eXBlICgpIild CisrCVtDb21wYWN0XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNCIpXQorKwlwdWJsaWMgY2xh c3MgRnJhbWVDbG9zdXJlIHsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29n bC9jb2dsLmgiLCByZWZfZnVuY3Rpb24gPSAiY29nbF9oYW5kbGVfcmVmIiwgdW5yZWZfZnVuY3Rp b24gPSAiY29nbF9oYW5kbGVfdW5yZWYiKV0KKysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFzcyBI YW5kbGUgeworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2lzX2JpdG1hcCIpXQorKwkJcHVibGlj IGJvb2wgaXNfYml0bWFwICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2lzX2J1ZmZlciIp XQorKwkJcHVibGljIGJvb2wgaXNfYnVmZmVyICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2ds X2lzX21hdGVyaWFsIildCisrCQlwdWJsaWMgYm9vbCBpc19tYXRlcmlhbCAoKTsKKysJCVtDQ29k ZSAoY25hbWUgPSAiY29nbF9pc19vZmZzY3JlZW4iKV0KKysJCXB1YmxpYyBib29sIGlzX29mZnNj cmVlbiAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9pc19waXhlbF9idWZmZXIiKV0KKysJ CXB1YmxpYyBib29sIGlzX3BpeGVsX2J1ZmZlciAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29n bF9pc19wcm9ncmFtIildCisrCQlwdWJsaWMgYm9vbCBpc19wcm9ncmFtICgpOworKwkJW0NDb2Rl IChjbmFtZSA9ICJjb2dsX2lzX3NoYWRlciIpXQorKwkJcHVibGljIGJvb2wgaXNfc2hhZGVyICgp OworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2lzX3RleHR1cmUiKV0KKysJCXB1YmxpYyBib29s IGlzX3RleHR1cmUgKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfaXNfdmVydGV4X2J1ZmZl ciIpXQorKwkJcHVibGljIGJvb2wgaXNfdmVydGV4X2J1ZmZlciAoKTsKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjb3B5X2Z1bmN0aW9uID0gImdfYm94 ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJjb2ds X21hdGVyaWFsX2dldF90eXBlICgpIildCisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3MgTWF0 ZXJpYWwgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJ W1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiKV0K KysJCXB1YmxpYyBNYXRlcmlhbCAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwg ZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9p ZCBzZXRfYWxwaGFfdGVzdF9mdW5jdGlvbiAoQ29nbC5NYXRlcmlhbEFscGhhRnVuYyBhbHBoYV9m dW5jLCBmbG9hdCBhbHBoYV9yZWZlcmVuY2UpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0 cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1Ymxp YyBib29sIHNldF9ibGVuZCAoc3RyaW5nIGJsZW5kX3N0cmluZykgdGhyb3dzIEdMaWIuRXJyb3I7 CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4x NiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2JsZW5kX2NvbnN0YW50IChD b2dsLkNvbG9yIGNvbnN0YW50X2NvbG9yKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1 ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg dm9pZCBzZXRfY29sb3IgKENvZ2wuQ29sb3IgY29sb3IpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0 ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiLCBzaW5jZSA9ICIxLjAiKV0KKysJ CXB1YmxpYyB2b2lkIHNldF9jb2xvcjR1YiAodWludDggcmVkLCB1aW50OCBncmVlbiwgdWludDgg Ymx1ZSwgdWludDggYWxwaGEpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXBy ZWNhdGVkX3NpbmNlID0gIjEuMTYiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNl dF9sYXllciAoaW50IGxheWVyX2luZGV4LCBDb2dsLkhhbmRsZSB0ZXh0dXJlKTsKKysJCVtWZXJz aW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgYm9vbCBzZXRfbGF5ZXJfY29tYmluZSAoaW50IGxheWVyX2lu ZGV4LCBzdHJpbmcgYmxlbmRfc3RyaW5nKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJCVtWZXJzaW9u IChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2UgPSAi MS4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbGF5ZXJfY29tYmluZV9jb25zdGFudCAoaW50IGxh eWVyX2luZGV4LCBDb2dsLkNvbG9yIGNvbnN0YW50KTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVk ID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2IildCisrCQlwdWJsaWMgdm9pZCBzZXRf bGF5ZXJfZmlsdGVycyAoaW50IGxheWVyX2luZGV4LCBDb2dsLk1hdGVyaWFsRmlsdGVyIG1pbl9m aWx0ZXIsIENvZ2wuTWF0ZXJpYWxGaWx0ZXIgbWFnX2ZpbHRlcik7CisrCQlbVmVyc2lvbiAoZGVw cmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIpXQorKwkJcHVibGljIHZv aWQgc2V0X2xheWVyX21hdHJpeCAoaW50IGxheWVyX2luZGV4LCBDb2dsLk1hdHJpeCBtYXRyaXgp OworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEu MTYiLCBzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBib29sIHNldF9sYXllcl9wb2ludF9zcHJp dGVfY29vcmRzX2VuYWJsZWQgKGludCBsYXllcl9pbmRleCwgYm9vbCBlbmFibGUpIHRocm93cyBH TGliLkVycm9yOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3Np bmNlID0gIjEuMTYiLCBzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9wb2ludF9z aXplIChmbG9hdCBwb2ludF9zaXplKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwg ZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9p ZCBzZXRfdXNlcl9wcm9ncmFtIChDb2dsLkhhbmRsZSBwcm9ncmFtKTsKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0K KysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFzcyBNYXRlcmlhbExheWVyIHsKKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCB0eXBlX2lkID0gImNvZ2xfb2Jq ZWN0X2dldF9ndHlwZSAoKSIpXQorKwlwdWJsaWMgYWJzdHJhY3QgY2xhc3MgT2JqZWN0IHsKKysJ CVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBP YmplY3QgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5o IiwgdHlwZV9pZCA9ICJjb2dsX29mZnNjcmVlbl9nZXRfZ3R5cGUgKCkiKV0KKysJcHVibGljIGNs YXNzIE9mZnNjcmVlbiA6IENvZ2wuT2JqZWN0LCBDb2dsLkZyYW1lYnVmZmVyIHsKKysJCVtDQ29k ZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBPZmZzY3Jl ZW4gKCk7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlb VmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIpXQor KwkJcHVibGljIE9mZnNjcmVlbi50b190ZXh0dXJlIChDb2dsLlRleHR1cmUgdGV4dHVyZSk7Cisr CQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwdWJsaWMgT2Zm c2NyZWVuLndpdGhfdGV4dHVyZSAoQ29nbC5UZXh0dXJlIHRleHR1cmUpOworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIHR5cGVfaWQgPSAiY29nbF9vbnNj cmVlbl9nZXRfZ3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIE9uc2NyZWVuIDogQ29nbC5PYmpl Y3QsIENvZ2wuRnJhbWVidWZmZXIgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9u ID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIE9uc2NyZWVuICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTYiKV0KKysJCXB1YmxpYyBDb2dsLk9uc2NyZWVuRGlydHlDbG9zdXJlIGFkZF9kaXJ0 eV9jYWxsYmFjayAoW0NDb2RlIChkZWxlZ2F0ZV90YXJnZXRfcG9zID0gMS41KV0gQ29nbC5PbnNj cmVlbkRpcnR5Q2FsbGJhY2sgY2FsbGJhY2ssIENvZ2wuVXNlckRhdGFEZXN0cm95Q2FsbGJhY2s/ IGRlc3Ryb3kpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIENvZ2wu T25zY3JlZW5SZXNpemVDbG9zdXJlIGFkZF9yZXNpemVfY2FsbGJhY2sgKFtDQ29kZSAoZGVsZWdh dGVfdGFyZ2V0X3BvcyA9IDEuNSldIENvZ2wuT25zY3JlZW5SZXNpemVDYWxsYmFjayBjYWxsYmFj aywgQ29nbC5Vc2VyRGF0YURlc3Ryb3lDYWxsYmFjaz8gZGVzdHJveSk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xNCIpXQorKwkJcHVibGljIGludCBnZXRfYnVmZmVyX2FnZSAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjE0IildCisrCQlwdWJsaWMgaW50NjQgZ2V0X2ZyYW1lX2NvdW50 ZXIgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgYm9vbCBnZXRf cmVzaXphYmxlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZv aWQgaGlkZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2IildCisrCQlwdWJsaWMgdm9p ZCByZW1vdmVfZGlydHlfY2FsbGJhY2sgKENvZ2wuT25zY3JlZW5EaXJ0eUNsb3N1cmUgY2xvc3Vy ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNCIpXQorKwkJcHVibGljIHZvaWQgcmVtb3Zl X2ZyYW1lX2NhbGxiYWNrIChDb2dsLkZyYW1lQ2xvc3VyZSBjbG9zdXJlKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIHJlbW92ZV9yZXNpemVfY2FsbGJhY2sg KENvZ2wuT25zY3JlZW5SZXNpemVDbG9zdXJlIGNsb3N1cmUpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3Jlc2l6YWJsZSAoYm9vbCByZXNpemFibGUp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgc2hvdyAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzd2FwX2J1ZmZl cnMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNiIpXQorKwkJcHVibGljIHZvaWQgc3dh cF9idWZmZXJzX3dpdGhfZGFtYWdlIChpbnQgcmVjdGFuZ2xlcywgaW50IG5fcmVjdGFuZ2xlcyk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc3dhcF9yZWdp b24gKGludCByZWN0YW5nbGVzLCBpbnQgbl9yZWN0YW5nbGVzKTsKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRf Y29weSIsIGZyZWVfZnVuY3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJjb2dsX29u c2NyZWVuX2RpcnR5X2Nsb3N1cmVfZ2V0X2d0eXBlICgpIildCisrCVtDb21wYWN0XQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMS4xNiIpXQorKwlwdWJsaWMgY2xhc3MgT25zY3JlZW5EaXJ0eUNsb3N1 cmUgeworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNv cHlfZnVuY3Rpb24gPSAiZ19ib3hlZF9jb3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2Zy ZWUiLCB0eXBlX2lkID0gImNvZ2xfb25zY3JlZW5fcmVzaXplX2Nsb3N1cmVfZ2V0X2d0eXBlICgp IildCisrCVtDb21wYWN0XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCXB1YmxpYyBj bGFzcyBPbnNjcmVlblJlc2l6ZUNsb3N1cmUgeworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNvcHlfZnVuY3Rpb24gPSAiY29nbF9wYXRoX2NvcHkiKV0K KysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFzcyBQYXRoIHsKKysJCXB1YmxpYyBzdGF0aWMgdm9p ZCBAbmV3ICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wu aCIsIHR5cGVfaWQgPSAiY29nbF9waXBlbGluZV9nZXRfZ3R5cGUgKCkiKV0KKysJcHVibGljIGNs YXNzIFBpcGVsaW5lIDogQ29nbC5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1 bmN0aW9uID0gZmFsc2UpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGlj IFBpcGVsaW5lIChDb2dsLkNvbnRleHQgY29udGV4dCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi Mi4wIildCisrCQlwdWJsaWMgQ29nbC5QaXBlbGluZSBjb3B5ICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgZm9yZWFjaF9sYXllciAoQ29nbC5QaXBlbGlu ZUxheWVyQ2FsbGJhY2sgY2FsbGJhY2spOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQor KwkJcHVibGljIENvZ2wuUGlwZWxpbmVBbHBoYUZ1bmMgZ2V0X2FscGhhX3Rlc3RfZnVuY3Rpb24g KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X2Fs cGhhX3Rlc3RfcmVmZXJlbmNlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJ cHVibGljIENvZ2wuQ29sb3IgZ2V0X2NvbG9yICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIu MCIpXQorKwkJcHVibGljIENvZ2wuUGlwZWxpbmVDdWxsRmFjZU1vZGUgZ2V0X2N1bGxfZmFjZV9t b2RlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIENvZ2wuV2lu ZGluZyBnZXRfZnJvbnRfZmFjZV93aW5kaW5nICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTAiKV0KKysJCXB1YmxpYyBDb2dsLlBpcGVsaW5lRmlsdGVyIGdldF9sYXllcl9tYWdfZmlsdGVy IChpbnQgbGF5ZXJfaW5kZXgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1 YmxpYyBDb2dsLlBpcGVsaW5lRmlsdGVyIGdldF9sYXllcl9taW5fZmlsdGVyIChpbnQgbGF5ZXJf aW5kZXgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIGJvb2wgZ2V0 X2xheWVyX3BvaW50X3Nwcml0ZV9jb29yZHNfZW5hYmxlZCAoaW50IGxheWVyX2luZGV4KTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdW5vd25lZCBDb2dsLlRleHR1 cmUgZ2V0X2xheWVyX3RleHR1cmUgKGludCBsYXllcl9pbmRleCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS42IildCisrCQlwdWJsaWMgQ29nbC5QaXBlbGluZVdyYXBNb2RlIGdldF9sYXllcl93 cmFwX21vZGVfcyAoaW50IGxheWVyX2luZGV4KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYi KV0KKysJCXB1YmxpYyBDb2dsLlBpcGVsaW5lV3JhcE1vZGUgZ2V0X2xheWVyX3dyYXBfbW9kZV90 IChpbnQgbGF5ZXJfaW5kZXgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVi bGljIGludCBnZXRfbl9sYXllcnMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisr CQlwdWJsaWMgYm9vbCBnZXRfcGVyX3ZlcnRleF9wb2ludF9zaXplICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF9wb2ludF9zaXplICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIGludCBnZXRfdW5pZm9ybV9sb2Nh dGlvbiAoc3RyaW5nIHVuaWZvcm1fbmFtZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIild CisrCQlwdWJsaWMgdW5vd25lZCBDb2dsLkhhbmRsZSBnZXRfdXNlcl9wcm9ncmFtICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHJlbW92ZV9sYXllciAo aW50IGxheWVyX2luZGV4KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1Ymxp YyB2b2lkIHNldF9hbHBoYV90ZXN0X2Z1bmN0aW9uIChDb2dsLlBpcGVsaW5lQWxwaGFGdW5jIGFs cGhhX2Z1bmMsIGZsb2F0IGFscGhhX3JlZmVyZW5jZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi Mi4wIildCisrCQlwdWJsaWMgYm9vbCBzZXRfYmxlbmQgKHN0cmluZyBibGVuZF9zdHJpbmcpIHRo cm93cyBHTGliLkVycm9yOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGlj IHZvaWQgc2V0X2JsZW5kX2NvbnN0YW50IChDb2dsLkNvbG9yIGNvbnN0YW50X2NvbG9yKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9jb2xvciAoQ29n bC5Db2xvciBjb2xvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMg dm9pZCBzZXRfY29sb3I0ZiAoZmxvYXQgcmVkLCBmbG9hdCBncmVlbiwgZmxvYXQgYmx1ZSwgZmxv YXQgYWxwaGEpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQg c2V0X2NvbG9yNHViICh1aW50OCByZWQsIHVpbnQ4IGdyZWVuLCB1aW50OCBibHVlLCB1aW50OCBh bHBoYSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRf Y3VsbF9mYWNlX21vZGUgKENvZ2wuUGlwZWxpbmVDdWxsRmFjZU1vZGUgY3VsbF9mYWNlX21vZGUp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2Zyb250 X2ZhY2Vfd2luZGluZyAoQ29nbC5XaW5kaW5nIGZyb250X3dpbmRpbmcpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIGJvb2wgc2V0X2xheWVyX2NvbWJpbmUgKGludCBs YXllcl9pbmRleCwgc3RyaW5nIGJsZW5kX3N0cmluZykgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbGF5ZXJfY29tYmlu ZV9jb25zdGFudCAoaW50IGxheWVyX2luZGV4LCBDb2dsLkNvbG9yIGNvbnN0YW50KTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbGF5ZXJfZmlsdGVy cyAoaW50IGxheWVyX2luZGV4LCBDb2dsLlBpcGVsaW5lRmlsdGVyIG1pbl9maWx0ZXIsIENvZ2wu UGlwZWxpbmVGaWx0ZXIgbWFnX2ZpbHRlcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIp XQorKwkJcHVibGljIHZvaWQgc2V0X2xheWVyX21hdHJpeCAoaW50IGxheWVyX2luZGV4LCBDb2ds Lk1hdHJpeCBtYXRyaXgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1Ymxp YyB2b2lkIHNldF9sYXllcl9udWxsX3RleHR1cmUgKGludCBsYXllcl9pbmRleCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgYm9vbCBzZXRfbGF5ZXJfcG9pbnRfc3By aXRlX2Nvb3Jkc19lbmFibGVkIChpbnQgbGF5ZXJfaW5kZXgsIGJvb2wgZW5hYmxlKSB0aHJvd3Mg R0xpYi5FcnJvcjsKKysJCXB1YmxpYyB2b2lkIHNldF9sYXllcl90ZXh0dXJlIChpbnQgbGF5ZXJf aW5kZXgsIENvZ2wuVGV4dHVyZSB0ZXh0dXJlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAi KV0KKysJCXB1YmxpYyB2b2lkIHNldF9sYXllcl93cmFwX21vZGUgKGludCBsYXllcl9pbmRleCwg Q29nbC5QaXBlbGluZVdyYXBNb2RlIG1vZGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIp XQorKwkJcHVibGljIHZvaWQgc2V0X2xheWVyX3dyYXBfbW9kZV9zIChpbnQgbGF5ZXJfaW5kZXgs IENvZ2wuUGlwZWxpbmVXcmFwTW9kZSBtb2RlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAi KV0KKysJCXB1YmxpYyB2b2lkIHNldF9sYXllcl93cmFwX21vZGVfdCAoaW50IGxheWVyX2luZGV4 LCBDb2dsLlBpcGVsaW5lV3JhcE1vZGUgbW9kZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4w IildCisrCQlwdWJsaWMgYm9vbCBzZXRfcGVyX3ZlcnRleF9wb2ludF9zaXplIChib29sIGVuYWJs ZSkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlw dWJsaWMgdm9pZCBzZXRfcG9pbnRfc2l6ZSAoZmxvYXQgcG9pbnRfc2l6ZSk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfdW5pZm9ybV8xZiAoaW50IHVu aWZvcm1fbG9jYXRpb24sIGZsb2F0IHZhbHVlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAi KV0KKysJCXB1YmxpYyB2b2lkIHNldF91bmlmb3JtXzFpIChpbnQgdW5pZm9ybV9sb2NhdGlvbiwg aW50IHZhbHVlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lk IHNldF91bmlmb3JtX2Zsb2F0IChpbnQgdW5pZm9ybV9sb2NhdGlvbiwgaW50IG5fY29tcG9uZW50 cywgaW50IGNvdW50LCBmbG9hdCB2YWx1ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIild CisrCQlwdWJsaWMgdm9pZCBzZXRfdW5pZm9ybV9pbnQgKGludCB1bmlmb3JtX2xvY2F0aW9uLCBp bnQgbl9jb21wb25lbnRzLCBpbnQgY291bnQsIGludCB2YWx1ZSk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfdW5pZm9ybV9tYXRyaXggKGludCB1bmlm b3JtX2xvY2F0aW9uLCBpbnQgZGltZW5zaW9ucywgaW50IGNvdW50LCBib29sIHRyYW5zcG9zZSwg ZmxvYXQgdmFsdWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZv aWQgc2V0X3VzZXJfcHJvZ3JhbSAoQ29nbC5IYW5kbGUgcHJvZ3JhbSk7CisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtDb21wYWN0XQorKwlwdWJs aWMgY2xhc3MgUGl4ZWxCdWZmZXIgOiBDb2dsLkhhbmRsZSB7CisrCQlwdWJsaWMgUGl4ZWxCdWZm ZXIgKHVpbnQgc2l6ZSk7CisrCQlwdWJsaWMgUGl4ZWxCdWZmZXIuZm9yX3NpemUgKHVpbnQgd2lk dGgsIHVpbnQgaGVpZ2h0LCBDb2dsLlBpeGVsRm9ybWF0IGZvcm1hdCwgdWludCBzdHJpZGUpOwor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNuYW1lID0g IkNvZ2xIYW5kbGUiLCByZWZfZnVuY3Rpb24gPSAiY29nbF9wcm9ncmFtX3JlZiIsIHVucmVmX2Z1 bmN0aW9uID0gImNvZ2xfcHJvZ3JhbV91bnJlZiIpXQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNs YXNzIFByb2dyYW0gOiBDb2dsLkhhbmRsZSB7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfY3Jl YXRlX3Byb2dyYW0iLCBoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ29n bEhhbmRsZSoiKV0KKysJCXB1YmxpYyBQcm9ncmFtICgpOworKwkJcHVibGljIHZvaWQgYXR0YWNo X3NoYWRlciAoQ29nbC5TaGFkZXIgc2hhZGVyX2hhbmRsZSk7CisrCQlwdWJsaWMgaW50IGdldF91 bmlmb3JtX2xvY2F0aW9uIChzdHJpbmcgdW5pZm9ybV9uYW1lKTsKKysJCXB1YmxpYyB2b2lkIGxp bmsgKCk7CisrCQlwdWJsaWMgc3RhdGljIHZvaWQgdW5pZm9ybV8xZiAoaW50IHVuaWZvcm1fbm8s IGZsb2F0IHZhbHVlKTsKKysJCXB1YmxpYyBzdGF0aWMgdm9pZCB1bmlmb3JtXzFpIChpbnQgdW5p Zm9ybV9ubywgaW50IHZhbHVlKTsKKysJCXB1YmxpYyBzdGF0aWMgdm9pZCB1bmlmb3JtX2Zsb2F0 IChpbnQgdW5pZm9ybV9ubywgaW50IHNpemUsIFtDQ29kZSAoYXJyYXlfbGVuZ3RoX3BvcyA9IDIu OSldIGZsb2F0W10gdmFsdWUpOworKwkJcHVibGljIHN0YXRpYyB2b2lkIHVuaWZvcm1faW50IChp bnQgdW5pZm9ybV9ubywgaW50IHNpemUsIFtDQ29kZSAoYXJyYXlfbGVuZ3RoX3BvcyA9IDIuOSld IGludFtdIHZhbHVlKTsKKysJCXB1YmxpYyBzdGF0aWMgdm9pZCB1bmlmb3JtX21hdHJpeCAoaW50 IHVuaWZvcm1fbm8sIGludCBzaXplLCBib29sIHRyYW5zcG9zZSwgW0NDb2RlIChhcnJheV9sZW5n dGhfcG9zID0gMi45KV0gZmxvYXRbXSB2YWx1ZSk7CisrCQlwdWJsaWMgdm9pZCB1c2UgKCk7Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY25hbWUgPSAi Q29nbEhhbmRsZSIsIHJlZl9mdW5jdGlvbiA9ICJjb2dsX3NoYWRlcl9yZWYiLCB1bnJlZl9mdW5j dGlvbiA9ICJjb2dsX3NoYWRlcl91bnJlZiIpXQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNz IFNoYWRlciA6IENvZ2wuSGFuZGxlIHsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9jcmVhdGVf c2hhZGVyIiwgaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNvZ2xIYW5k bGUqIildCisrCQlwdWJsaWMgU2hhZGVyIChDb2dsLlNoYWRlclR5cGUgc2hhZGVyX3R5cGUpOwor KwkJcHVibGljIHZvaWQgY29tcGlsZSAoKTsKKysJCXB1YmxpYyBzdHJpbmcgZ2V0X2luZm9fbG9n ICgpOworKwkJcHVibGljIENvZ2wuU2hhZGVyVHlwZSBnZXRfdHlwZSAoKTsKKysJCXB1YmxpYyBi b29sIGlzX2NvbXBpbGVkICgpOworKwkJcHVibGljIHZvaWQgc291cmNlIChzdHJpbmcgc291cmNl KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBsb3dl cl9jYXNlX2NzdWZmaXggPSAidGV4dHVyZV8yZCIsIHR5cGVfaWQgPSAiY29nbF90ZXh0dXJlXzJk X2dldF9ndHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgVGV4dHVyZTJEIDogQ29nbC5PYmplY3Qs IENvZ2wuVGV4dHVyZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxz ZSldCisrCQlwcm90ZWN0ZWQgVGV4dHVyZTJEICgpOworKwkJcHVibGljIHZvaWQgZWdsX2ltYWdl X2V4dGVybmFsX2FsbG9jX2ZpbmlzaCAodm9pZCogdXNlcl9kYXRhLCBHTGliLkRlc3Ryb3lOb3Rp ZnkgZGVzdHJveSk7CisrCQlwdWJsaWMgdm9pZCBlZ2xfaW1hZ2VfZXh0ZXJuYWxfYmluZCAoKTsK KysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCVtWZXJzaW9u IChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyBUZXh0dXJlMkQuZnJvbV9iaXRtYXAgKENvZ2wu Qml0bWFwIGJpdG1hcCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wv Y29nbC5oIiwgbG93ZXJfY2FzZV9jc3VmZml4ID0gInRleHR1cmVfMmRfc2xpY2VkIiwgdHlwZV9p ZCA9ICJjb2dsX3RleHR1cmVfMmRfc2xpY2VkX2dldF9ndHlwZSAoKSIpXQorKwlwdWJsaWMgY2xh c3MgVGV4dHVyZTJEU2xpY2VkIDogQ29nbC5PYmplY3QsIENvZ2wuVGV4dHVyZSB7CisrCQlbQ0Nv ZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgVGV4dHVy ZTJEU2xpY2VkICgpOworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2Up XQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTYiKV0KKysJCXB1YmxpYyBUZXh0dXJlMkRTbGlj ZWQuZnJvbV9iaXRtYXAgKENvZ2wuQml0bWFwIGJtcCwgaW50IG1heF93YXN0ZSk7CisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY25hbWUgPSAiQ29nbEhh bmRsZSIsIHJlZl9mdW5jdGlvbiA9ICJjb2dsX3ZlcnRleF9idWZmZXJfcmVmIiwgdW5yZWZfZnVu Y3Rpb24gPSAiY29nbF92ZXJ0ZXhfYnVmZmVyX3VucmVmIildCisrCVtDb21wYWN0XQorKwlwdWJs aWMgY2xhc3MgVmVydGV4QnVmZmVyIDogQ29nbC5IYW5kbGUgeworKwkJW0NDb2RlIChoYXNfY29u c3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ29nbEhhbmRsZSoiKV0KKysJCXB1Ymxp YyBWZXJ0ZXhCdWZmZXIgKHVpbnQgbl92ZXJ0aWNlcyk7CisrCQlwdWJsaWMgdm9pZCBhZGQgKHN0 cmluZyBhdHRyaWJ1dGVfbmFtZSwgdWNoYXIgbl9jb21wb25lbnRzLCBDb2dsLkF0dHJpYnV0ZVR5 cGUgdHlwZSwgYm9vbCBub3JtYWxpemVkLCB1aW50MTYgc3RyaWRlLCB2b2lkKiBwb2ludGVyKTsK KysJCXB1YmxpYyB2b2lkIEBkZWxldGUgKHN0cmluZyBhdHRyaWJ1dGVfbmFtZSk7CisrCQlwdWJs aWMgdm9pZCBkaXNhYmxlIChzdHJpbmcgYXR0cmlidXRlX25hbWUpOworKwkJcHVibGljIHZvaWQg ZHJhdyAoQ29nbC5WZXJ0aWNlc01vZGUgbW9kZSwgaW50IGZpcnN0LCBpbnQgY291bnQpOworKwkJ cHVibGljIHZvaWQgZHJhd19lbGVtZW50cyAoQ29nbC5WZXJ0aWNlc01vZGUgbW9kZSwgQ29nbC5W ZXJ0ZXhCdWZmZXJJbmRpY2VzIGluZGljZXMsIGludCBtaW5faW5kZXgsIGludCBtYXhfaW5kZXgs IGludCBpbmRpY2VzX29mZnNldCwgaW50IGNvdW50KTsKKysJCXB1YmxpYyB2b2lkIGVuYWJsZSAo c3RyaW5nIGF0dHJpYnV0ZV9uYW1lKTsKKysJCXB1YmxpYyB1aW50IGdldF9uX3ZlcnRpY2VzICgp OworKwkJcHVibGljIHZvaWQgc3VibWl0ICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNuYW1lID0gIkNvZ2xIYW5kbGUiKV0KKysJW0NvbXBhY3Rd CisrCXB1YmxpYyBjbGFzcyBWZXJ0ZXhCdWZmZXJJbmRpY2VzIDogQ29nbC5IYW5kbGUgeworKwkJ cHVibGljIFZlcnRleEJ1ZmZlckluZGljZXMgKENvZ2wuSW5kaWNlc1R5cGUgaW5kaWNlc190eXBl LCB2b2lkKiBpbmRpY2VzX2FycmF5LCBpbnQgaW5kaWNlc19sZW4pOworKwkJcHVibGljIHN0YXRp YyB1bm93bmVkIENvZ2wuVmVydGV4QnVmZmVySW5kaWNlcyBnZXRfZm9yX3F1YWRzICh1aW50IG5f aW5kaWNlcyk7CisrCQlwdWJsaWMgQ29nbC5JbmRpY2VzVHlwZSBnZXRfdHlwZSAoKTsKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCB0eXBlX2lkID0gImNv Z2xfZnJhbWVidWZmZXJfZ2V0X2d0eXBlICgpIildCisrCXB1YmxpYyBpbnRlcmZhY2UgRnJhbWVi dWZmZXIgOiBDb2dsLk9iamVjdCB7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlw dWJsaWMgYm9vbCBhbGxvY2F0ZSAoKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIGNsZWFyICh1bG9uZyBidWZmZXJzLCBDb2ds LkNvbG9yIGNvbG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2 b2lkIGNsZWFyNGYgKHVsb25nIGJ1ZmZlcnMsIGZsb2F0IHJlZCwgZmxvYXQgZ3JlZW4sIGZsb2F0 IGJsdWUsIGZsb2F0IGFscGhhKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1 YmxpYyB2b2lkIGRpc2NhcmRfYnVmZmVycyAodWxvbmcgYnVmZmVycyk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgZHJhd19tdWx0aXRleHR1cmVkX3JlY3Rh bmdsZSAoQ29nbC5QaXBlbGluZSBwaXBlbGluZSwgZmxvYXQgeF8xLCBmbG9hdCB5XzEsIGZsb2F0 IHhfMiwgZmxvYXQgeV8yLCBbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gZmxvYXRbXSB0 ZXhfY29vcmRzLCBpbnQgdGV4X2Nvb3Jkc19sZW4pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTAiKV0KKysJCXB1YmxpYyB2b2lkIGRyYXdfcmVjdGFuZ2xlIChDb2dsLlBpcGVsaW5lIHBpcGVs aW5lLCBmbG9hdCB4XzEsIGZsb2F0IHlfMSwgZmxvYXQgeF8yLCBmbG9hdCB5XzIpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIGRyYXdfcmVjdGFuZ2xlcyAo Q29nbC5QaXBlbGluZSBwaXBlbGluZSwgW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIGZs b2F0W10gY29vcmRpbmF0ZXMsIHVpbnQgbl9yZWN0YW5nbGVzKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBkcmF3X3RleHR1cmVkX3JlY3RhbmdsZSAoQ29n bC5QaXBlbGluZSBwaXBlbGluZSwgZmxvYXQgeF8xLCBmbG9hdCB5XzEsIGZsb2F0IHhfMiwgZmxv YXQgeV8yLCBmbG9hdCBzXzEsIGZsb2F0IHRfMSwgZmxvYXQgc18yLCBmbG9hdCB0XzIpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIGRyYXdfdGV4dHVyZWRf cmVjdGFuZ2xlcyAoQ29nbC5QaXBlbGluZSBwaXBlbGluZSwgW0NDb2RlIChhcnJheV9sZW5ndGgg PSBmYWxzZSldIGZsb2F0W10gY29vcmRpbmF0ZXMsIHVpbnQgbl9yZWN0YW5nbGVzKTsKKysJCXB1 YmxpYyBzdGF0aWMgdWludDMyIGVycm9yX3F1YXJrICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIGZpbmlzaCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBmcnVzdHVtIChmbG9hdCBsZWZ0LCBmbG9hdCByaWdo dCwgZmxvYXQgYm90dG9tLCBmbG9hdCB0b3AsIGZsb2F0IHpfbmVhciwgZmxvYXQgel9mYXIpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIGludCBnZXRfYWxwaGFfYml0 cyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X2Js dWVfYml0cyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB1bm93 bmVkIENvZ2wuQ29udGV4dCBnZXRfY29udGV4dCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIy LjAiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X2RlcHRoX2JpdHMgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xOCIpXQorKwkJcHVibGljIGJvb2wgZ2V0X2RlcHRoX3dyaXRlX2VuYWJsZWQgKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgYm9vbCBnZXRfZGl0aGVy X2VuYWJsZWQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgaW50 IGdldF9ncmVlbl9iaXRzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVi bGljIGludCBnZXRfaGVpZ2h0ICgpOworKwkJcHVibGljIGJvb2wgZ2V0X2lzX3N0ZXJlbyAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ29nbC5NYXRyaXggZ2V0 X21vZGVsdmlld19tYXRyaXggKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJ cHVibGljIENvZ2wuTWF0cml4IGdldF9wcm9qZWN0aW9uX21hdHJpeCAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X3JlZF9iaXRzICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X3NhbXBsZXNfcGVyX3Bp eGVsICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjAiKV0KKysJCXB1YmxpYyBDb2dsLlN0 ZXJlb01vZGUgZ2V0X3N0ZXJlb19tb2RlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIp XQorKwkJcHVibGljIHZvaWQgZ2V0X3ZpZXdwb3J0NGZ2IChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9 IGZhbHNlKV0gb3V0IHVub3duZWQgZmxvYXQgdmlld3BvcnRbNF0pOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuOCIpXQorKwkJcHVibGljIGZsb2F0IGdldF92aWV3cG9ydF9oZWlnaHQgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3ZpZXdwb3J0 X3dpZHRoICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIGZsb2F0 IGdldF92aWV3cG9ydF94ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVi bGljIGZsb2F0IGdldF92aWV3cG9ydF95ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIp XQorKwkJcHVibGljIGludCBnZXRfd2lkdGggKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MCIpXQorKwkJcHVibGljIHZvaWQgaWRlbnRpdHlfbWF0cml4ICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIG9ydGhvZ3JhcGhpYyAoZmxvYXQgeF8xLCBm bG9hdCB5XzEsIGZsb2F0IHhfMiwgZmxvYXQgeV8yLCBmbG9hdCBuZWFyLCBmbG9hdCBmYXIpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHBlcnNwZWN0aXZl IChmbG9hdCBmb3ZfeSwgZmxvYXQgYXNwZWN0LCBmbG9hdCB6X25lYXIsIGZsb2F0IHpfZmFyKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBwb3BfY2xpcCAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBwb3BfbWF0 cml4ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHB1 c2hfbWF0cml4ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2 b2lkIHB1c2hfcmVjdGFuZ2xlX2NsaXAgKGZsb2F0IHhfMSwgZmxvYXQgeV8xLCBmbG9hdCB4XzIs IGZsb2F0IHlfMik7CisrCQlwdWJsaWMgdm9pZCBwdXNoX3JlZ2lvbl9jbGlwIChDYWlyby5SZWdp b24gcmVnaW9uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9p ZCBwdXNoX3NjaXNzb3JfY2xpcCAoaW50IHgsIGludCB5LCBpbnQgd2lkdGgsIGludCBoZWlnaHQp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBib29sIHJlYWRfcGl4 ZWxzIChpbnQgeCwgaW50IHksIGludCB3aWR0aCwgaW50IGhlaWdodCwgQ29nbC5QaXhlbEZvcm1h dCBmb3JtYXQsIHVpbnQ4IHBpeGVscyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQor KwkJcHVibGljIGJvb2wgcmVhZF9waXhlbHNfaW50b19iaXRtYXAgKGludCB4LCBpbnQgeSwgQ29n bC5SZWFkUGl4ZWxzRmxhZ3Mgc291cmNlLCBDb2dsLkJpdG1hcCBiaXRtYXApOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgcmVzb2x2ZV9zYW1wbGVzICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgcmVzb2x2ZV9zYW1w bGVzX3JlZ2lvbiAoaW50IHgsIGludCB5LCBpbnQgd2lkdGgsIGludCBoZWlnaHQpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHJvdGF0ZSAoZmxvYXQgYW5n bGUsIGZsb2F0IHgsIGZsb2F0IHksIGZsb2F0IHopOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIu MCIpXQorKwkJcHVibGljIHZvaWQgcm90YXRlX2V1bGVyIChHcmFwaGVuZS5FdWxlciBldWxlcik7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2NhbGUgKGZs b2F0IHgsIGZsb2F0IHksIGZsb2F0IHopOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTgiKV0K KysJCXB1YmxpYyB2b2lkIHNldF9kZXB0aF93cml0ZV9lbmFibGVkIChib29sIGRlcHRoX3dyaXRl X2VuYWJsZWQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQg c2V0X2RpdGhlcl9lbmFibGVkIChib29sIGRpdGhlcl9lbmFibGVkKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbW9kZWx2aWV3X21hdHJpeCAoQ29n bC5NYXRyaXggbWF0cml4KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJs aWMgdm9pZCBzZXRfcHJvamVjdGlvbl9tYXRyaXggKENvZ2wuTWF0cml4IG1hdHJpeCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBzZXRfc2FtcGxlc19wZXJf cGl4ZWwgKGludCBzYW1wbGVzX3Blcl9waXhlbCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4y MCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3N0ZXJlb19tb2RlIChDb2dsLlN0ZXJlb01vZGUgc3Rl cmVvX21vZGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQg c2V0X3ZpZXdwb3J0IChmbG9hdCB4LCBmbG9hdCB5LCBmbG9hdCB3aWR0aCwgZmxvYXQgaGVpZ2h0 KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCB0cmFuc2Zv cm0gKENvZ2wuTWF0cml4IG1hdHJpeCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQor KwkJcHVibGljIHZvaWQgdHJhbnNsYXRlIChmbG9hdCB4LCBmbG9hdCB5LCBmbG9hdCB6KTsKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCB0eXBlX2lkID0g ImNvZ2xfdGV4dHVyZV9nZXRfZ3R5cGUgKCkiKV0KKysJcHVibGljIGludGVyZmFjZSBUZXh0dXJl IDogQ29nbC5PYmplY3QgeworKwkJcHVibGljIGJvb2wgYWxsb2NhdGUgKCkgdGhyb3dzIEdMaWIu RXJyb3I7CisrCQlwdWJsaWMgc3RhdGljIHVpbnQzMiBlcnJvcl9xdWFyayAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjE4IildCisrCQlwdWJsaWMgQ29nbC5UZXh0dXJlQ29tcG9uZW50cyBn ZXRfY29tcG9uZW50cyAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0X2RhdGEgKENvZ2wuUGl4ZWxGb3Jt YXQgZm9ybWF0LCB1aW50IHJvd3N0cmlkZSwgdWludDggZGF0YSk7CisrCQlwdWJsaWMgYm9vbCBn ZXRfZ2xfdGV4dHVyZSAob3V0IHVpbnQgb3V0X2dsX2hhbmRsZSwgb3V0IHVpbnQgb3V0X2dsX3Rh cmdldCk7CisrCQlwdWJsaWMgdWludCBnZXRfaGVpZ2h0ICgpOworKwkJcHVibGljIGludCBnZXRf bWF4X3dhc3RlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTgiKV0KKysJCXB1YmxpYyBi b29sIGdldF9wcmVtdWx0aXBsaWVkICgpOworKwkJcHVibGljIHVpbnQgZ2V0X3dpZHRoICgpOwor KwkJcHVibGljIGJvb2wgaXNfc2xpY2VkICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0 cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTgiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1Ymxp YyBzdGF0aWMgQ29nbC5UZXh0dXJlIG5ld19mcm9tX2JpdG1hcCAoQ29nbC5CaXRtYXAgYml0bWFw LCBDb2dsLlRleHR1cmVGbGFncyBmbGFncywgQ29nbC5QaXhlbEZvcm1hdCBpbnRlcm5hbF9mb3Jt YXQpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0g IjEuMTgiLCBzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBzdGF0aWMgQ29nbC5UZXh0dXJlIG5l d19mcm9tX2RhdGEgKGludCB3aWR0aCwgaW50IGhlaWdodCwgQ29nbC5UZXh0dXJlRmxhZ3MgZmxh Z3MsIENvZ2wuUGl4ZWxGb3JtYXQgZm9ybWF0LCBDb2dsLlBpeGVsRm9ybWF0IGludGVybmFsX2Zv cm1hdCwgaW50IHJvd3N0cmlkZSwgdWludDggZGF0YSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRl ZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xOCIsIHNpbmNlID0gIjAuOCIpXQorKwkJ cHVibGljIHN0YXRpYyBDb2dsLlRleHR1cmUgbmV3X2Zyb21fZmlsZSAoc3RyaW5nIGZpbGVuYW1l LCBDb2dsLlRleHR1cmVGbGFncyBmbGFncywgQ29nbC5QaXhlbEZvcm1hdCBpbnRlcm5hbF9mb3Jt YXQpIHRocm93cyBHTGliLkVycm9yOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBk ZXByZWNhdGVkX3NpbmNlID0gIjEuMTgiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBDb2ds LlRleHR1cmUgbmV3X2Zyb21fc3ViX3RleHR1cmUgKGludCBzdWJfeCwgaW50IHN1Yl95LCBpbnQg c3ViX3dpZHRoLCBpbnQgc3ViX2hlaWdodCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRy dWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xOCIsIHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGlj IHN0YXRpYyBDb2dsLlRleHR1cmUgbmV3X3dpdGhfc2l6ZSAodWludCB3aWR0aCwgdWludCBoZWln aHQsIENvZ2wuVGV4dHVyZUZsYWdzIGZsYWdzLCBDb2dsLlBpeGVsRm9ybWF0IGludGVybmFsX2Zv cm1hdCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xOCIpXQorKwkJcHVibGljIHZvaWQgc2V0 X2NvbXBvbmVudHMgKENvZ2wuVGV4dHVyZUNvbXBvbmVudHMgY29tcG9uZW50cyk7CisrCQlwdWJs aWMgYm9vbCBzZXRfZGF0YSAoQ29nbC5QaXhlbEZvcm1hdCBmb3JtYXQsIGludCByb3dzdHJpZGUs IHVpbnQ4IGRhdGEsIGludCBsZXZlbCkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3ByZW11bHRpcGxpZWQgKGJvb2wg cHJlbXVsdGlwbGllZCk7CisrCQlwdWJsaWMgYm9vbCBzZXRfcmVnaW9uIChpbnQgc3JjX3gsIGlu dCBzcmNfeSwgaW50IGRzdF94LCBpbnQgZHN0X3ksIHVpbnQgZHN0X3dpZHRoLCB1aW50IGRzdF9o ZWlnaHQsIGludCB3aWR0aCwgaW50IGhlaWdodCwgQ29nbC5QaXhlbEZvcm1hdCBmb3JtYXQsIHVp bnQgcm93c3RyaWRlLCB1aW50OCBkYXRhKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0K KysJCXB1YmxpYyBib29sIHNldF9yZWdpb25fZnJvbV9iaXRtYXAgKGludCBzcmNfeCwgaW50IHNy Y195LCBpbnQgZHN0X3gsIGludCBkc3RfeSwgdWludCBkc3Rfd2lkdGgsIHVpbnQgZHN0X2hlaWdo dCwgQ29nbC5CaXRtYXAgYml0bWFwKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY29nbC9jb2dsLmgiKV0KKysJW1NpbXBsZVR5cGVdCisrCXB1YmxpYyBzdHJ1Y3QgQW5nbGUg OiBpbnQzMiB7CisrCX0KKysJW0Jvb2xlYW5UeXBlXQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW0dJUiAobmFtZSA9ICJCb29sIildCisrCVtTaW1wbGVU eXBlXQorKwlwdWJsaWMgc3RydWN0IEJvb2wgOiBib29sIHsKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgc3RydWN0IENvbG9yIHsKKysJCXB1Ymxp YyBDb2dsLkNvbG9yPyBjb3B5ICgpOworKwkJcHVibGljIENvbG9yLmZyb21fNGYgKGZsb2F0IHJl ZCwgZmxvYXQgZ3JlZW4sIGZsb2F0IGJsdWUsIGZsb2F0IGFscGhhKTsKKysJCXB1YmxpYyBDb2xv ci5mcm9tXzR1YiAodWludDggcmVkLCB1aW50OCBncmVlbiwgdWludDggYmx1ZSwgdWludDggYWxw aGEpOworKwkJcHVibGljIGZsb2F0IGdldF9hbHBoYSAoKTsKKysJCXB1YmxpYyB1aW50OCBnZXRf YWxwaGFfYnl0ZSAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfYWxwaGFfZmxvYXQgKCk7CisrCQlw dWJsaWMgZmxvYXQgZ2V0X2JsdWUgKCk7CisrCQlwdWJsaWMgdWludDggZ2V0X2JsdWVfYnl0ZSAo KTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfYmx1ZV9mbG9hdCAoKTsKKysJCXB1YmxpYyBmbG9hdCBn ZXRfZ3JlZW4gKCk7CisrCQlwdWJsaWMgdWludDggZ2V0X2dyZWVuX2J5dGUgKCk7CisrCQlwdWJs aWMgZmxvYXQgZ2V0X2dyZWVuX2Zsb2F0ICgpOworKwkJcHVibGljIGZsb2F0IGdldF9yZWQgKCk7 CisrCQlwdWJsaWMgdWludDggZ2V0X3JlZF9ieXRlICgpOworKwkJcHVibGljIGZsb2F0IGdldF9y ZWRfZmxvYXQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9p ZCBpbml0X2Zyb21fNGYgKGZsb2F0IHJlZCwgZmxvYXQgZ3JlZW4sIGZsb2F0IGJsdWUsIGZsb2F0 IGFscGhhKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIGlu aXRfZnJvbV80ZnYgKGZsb2F0IGNvbG9yX2FycmF5KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjQiKV0KKysJCXB1YmxpYyB2b2lkIGluaXRfZnJvbV80dWIgKHVpbnQ4IHJlZCwgdWludDggZ3Jl ZW4sIHVpbnQ4IGJsdWUsIHVpbnQ4IGFscGhhKTsKKysJCXB1YmxpYyB2b2lkIHByZW11bHRpcGx5 ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2Fs cGhhIChmbG9hdCBhbHBoYSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJs aWMgdm9pZCBzZXRfYWxwaGFfYnl0ZSAodWludDggYWxwaGEpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2FscGhhX2Zsb2F0IChmbG9hdCBhbHBoYSk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBzZXRfYmx1ZSAo ZmxvYXQgYmx1ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9p ZCBzZXRfYmx1ZV9ieXRlICh1aW50OCBibHVlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQi KV0KKysJCXB1YmxpYyB2b2lkIHNldF9ibHVlX2Zsb2F0IChmbG9hdCBibHVlKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9ncmVlbiAoZmxvYXQgZ3Jl ZW4pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2dy ZWVuX2J5dGUgKHVpbnQ4IGdyZWVuKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJ CXB1YmxpYyB2b2lkIHNldF9ncmVlbl9mbG9hdCAoZmxvYXQgZ3JlZW4pOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3JlZCAoZmxvYXQgcmVkKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9yZWRfYnl0ZSAo dWludDggcmVkKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lk IHNldF9yZWRfZmxvYXQgKGZsb2F0IHJlZCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNiIp XQorKwkJcHVibGljIHZvaWQgdG9faHNsIChvdXQgZmxvYXQgaHVlLCBvdXQgZmxvYXQgc2F0dXJh dGlvbiwgb3V0IGZsb2F0IGx1bWluYW5jZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40Iild CisrCQlwdWJsaWMgdm9pZCB1bnByZW11bHRpcGx5ICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMS44IildCisrCXB1YmxpYyBzdHJ1Y3QgRGVidWdPYmplY3RUeXBlSW5m byB7CisrCQlwdWJsaWMgd2VhayBzdHJpbmcgbmFtZTsKKysJCXB1YmxpYyB1bG9uZyBpbnN0YW5j ZV9jb3VudDsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgi LCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24gPSAiZ19ib3hl ZF9mcmVlIiwgdHlwZV9pZCA9ICJDT0dMX1RZUEVfTUFUUklYIildCisrCXB1YmxpYyBzdHJ1Y3Qg TWF0cml4IHsKKysJCXB1YmxpYyBmbG9hdCB4eDsKKysJCXB1YmxpYyBmbG9hdCB5eDsKKysJCXB1 YmxpYyBmbG9hdCB6eDsKKysJCXB1YmxpYyBmbG9hdCB3eDsKKysJCXB1YmxpYyBmbG9hdCB4eTsK KysJCXB1YmxpYyBmbG9hdCB5eTsKKysJCXB1YmxpYyBmbG9hdCB6eTsKKysJCXB1YmxpYyBmbG9h dCB3eTsKKysJCXB1YmxpYyBmbG9hdCB4ejsKKysJCXB1YmxpYyBmbG9hdCB5ejsKKysJCXB1Ymxp YyBmbG9hdCB6ejsKKysJCXB1YmxpYyBmbG9hdCB3ejsKKysJCXB1YmxpYyBmbG9hdCB4dzsKKysJ CXB1YmxpYyBmbG9hdCB5dzsKKysJCXB1YmxpYyBmbG9hdCB6dzsKKysJCXB1YmxpYyBmbG9hdCB3 dzsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBDb2dsLk1hdHJpeD8g Y29weSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB2b2lkIGZy ZWUgKCk7CisrCQlbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlLCBhcnJheV9udWxsX3Rlcm1p bmF0ZWQgPSBmYWxzZSwgY25hbWUgPSAiY29nbF9tYXRyaXhfaW5pdF9mcm9tX2FycmF5IildCisr CQlwdWJsaWMgTWF0cml4LmZyb21fYXJyYXkgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2Up XSBmbG9hdFtdIGFycmF5KTsKKysJCXB1YmxpYyB2b2lkIGZydXN0dW0gKGZsb2F0IGxlZnQsIGZs b2F0IHJpZ2h0LCBmbG9hdCBib3R0b20sIGZsb2F0IHRvcCwgZmxvYXQgel9uZWFyLCBmbG9hdCB6 X2Zhcik7CisrCQlwdWJsaWMgdW5vd25lZCBmbG9hdFtdIGdldF9hcnJheSAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBib29sIGdldF9pbnZlcnNlIChvdXQgQ29n bC5NYXRyaXggaW52ZXJzZSk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfbWF0cml4X2luaXRf aWRlbnRpdHkiKV0KKysJCXB1YmxpYyBNYXRyaXguaWRlbnRpdHkgKCk7CisrCQlwdWJsaWMgdm9p ZCBpbml0X2Zyb21fZXVsZXIgKEdyYXBoZW5lLkV1bGVyIGV1bGVyKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIGluaXRfdHJhbnNsYXRpb24gKGZsb2F0IHR4 LCBmbG9hdCB0eSwgZmxvYXQgdHopOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJ cHVibGljIGJvb2wgaXNfaWRlbnRpdHkgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44Iild CisrCQlwdWJsaWMgdm9pZCBsb29rX2F0IChmbG9hdCBleWVfcG9zaXRpb25feCwgZmxvYXQgZXll X3Bvc2l0aW9uX3ksIGZsb2F0IGV5ZV9wb3NpdGlvbl96LCBmbG9hdCBvYmplY3RfeCwgZmxvYXQg b2JqZWN0X3ksIGZsb2F0IG9iamVjdF96LCBmbG9hdCB3b3JsZF91cF94LCBmbG9hdCB3b3JsZF91 cF95LCBmbG9hdCB3b3JsZF91cF96KTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9tYXRyaXhf bXVsdGlwbHkiKV0KKysJCXB1YmxpYyBNYXRyaXgubXVsdGlwbHkgKENvZ2wuTWF0cml4IGEsIENv Z2wuTWF0cml4IGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2 b2lkIG9ydGhvZ3JhcGhpYyAoZmxvYXQgeF8xLCBmbG9hdCB5XzEsIGZsb2F0IHhfMiwgZmxvYXQg eV8yLCBmbG9hdCBuZWFyLCBmbG9hdCBmYXIpOworKwkJcHVibGljIHZvaWQgcGVyc3BlY3RpdmUg KGZsb2F0IGZvdl95LCBmbG9hdCBhc3BlY3QsIGZsb2F0IHpfbmVhciwgZmxvYXQgel9mYXIpOwor KwkJcHVibGljIHZvaWQgcHJvamVjdF9wb2ludHMgKGludCBuX2NvbXBvbmVudHMsIHNpemVfdCBz dHJpZGVfaW4sIHZvaWQqIHBvaW50c19pbiwgc2l6ZV90IHN0cmlkZV9vdXQsIHZvaWQqIHBvaW50 c19vdXQsIGludCBuX3BvaW50cyk7CisrCQlwdWJsaWMgdm9pZCByb3RhdGUgKGZsb2F0IGFuZ2xl LCBmbG9hdCB4LCBmbG9hdCB5LCBmbG9hdCB6KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAi KV0KKysJCXB1YmxpYyB2b2lkIHJvdGF0ZV9ldWxlciAoR3JhcGhlbmUuRXVsZXIgZXVsZXIpOwor KwkJcHVibGljIHZvaWQgc2NhbGUgKGZsb2F0IHN4LCBmbG9hdCBzeSwgZmxvYXQgc3opOworKwkJ cHVibGljIHN0YXRpYyB2b2lkIHRyYW5zZm9ybV9wb2ludCAocmVmIENvZ2wuTWF0cml4IG1hdHJp eCwgcmVmIGZsb2F0IHgsIHJlZiBmbG9hdCB5LCByZWYgZmxvYXQgeiwgcmVmIGZsb2F0IHcpOwor KwkJcHVibGljIHZvaWQgdHJhbnNmb3JtX3BvaW50cyAoaW50IG5fY29tcG9uZW50cywgc2l6ZV90 IHN0cmlkZV9pbiwgdm9pZCogcG9pbnRzX2luLCBzaXplX3Qgc3RyaWRlX291dCwgdm9pZCogcG9p bnRzX291dCwgaW50IG5fcG9pbnRzKTsKKysJCXB1YmxpYyB2b2lkIHRyYW5zbGF0ZSAoZmxvYXQg eCwgZmxvYXQgeSwgZmxvYXQgeik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJ cHVibGljIHZvaWQgdHJhbnNwb3NlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQor KwkJcHVibGljIHZvaWQgdmlld18yZF9pbl9mcnVzdHVtIChmbG9hdCBsZWZ0LCBmbG9hdCByaWdo dCwgZmxvYXQgYm90dG9tLCBmbG9hdCB0b3AsIGZsb2F0IHpfbmVhciwgZmxvYXQgel8yZCwgZmxv YXQgd2lkdGhfMmQsIGZsb2F0IGhlaWdodF8yZCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44 IildCisrCQlwdWJsaWMgdm9pZCB2aWV3XzJkX2luX3BlcnNwZWN0aXZlIChmbG9hdCBmb3ZfeSwg ZmxvYXQgYXNwZWN0LCBmbG9hdCB6X25lYXIsIGZsb2F0IHpfMmQsIGZsb2F0IHdpZHRoXzJkLCBm bG9hdCBoZWlnaHRfMmQpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2ds L2NvZ2wuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4x NiIpXQorKwlwdWJsaWMgc3RydWN0IE9uc2NyZWVuRGlydHlJbmZvIHsKKysJCXB1YmxpYyBpbnQg eDsKKysJCXB1YmxpYyBpbnQgeTsKKysJCXB1YmxpYyBpbnQgd2lkdGg7CisrCQlwdWJsaWMgaW50 IGhlaWdodDsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgi LCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBUZXh0dXJlVmVydGV4IHsK KysJCXB1YmxpYyBmbG9hdCB4OworKwkJcHVibGljIGZsb2F0IHk7CisrCQlwdWJsaWMgZmxvYXQg ejsKKysJCXB1YmxpYyBmbG9hdCB0eDsKKysJCXB1YmxpYyBmbG9hdCB0eTsKKysJCXB1YmxpYyBD b2dsLkNvbG9yIGNvbG9yOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2ds L2NvZ2wuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40 IildCisrCXB1YmxpYyBzdHJ1Y3QgVXNlckRhdGFLZXkgeworKwkJcHVibGljIGludCB1bnVzZWQ7 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY25hbWUg PSAiX0NvZ2xDb2xvclNpemVDaGVjayIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMg c3RydWN0IF9Db2xvclNpemVDaGVjayB7CisrCQlbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNl KV0KKysJCXB1YmxpYyB3ZWFrIGNoYXJbXSBjb21waWxlX3RpbWVfYXNzZXJ0X0NvZ2xDb2xvcl9z aXplOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNu YW1lID0gIl9Db2dsTWF0cml4U2l6ZUNoZWNrIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1 YmxpYyBzdHJ1Y3QgX01hdHJpeFNpemVDaGVjayB7CisrCQlbQ0NvZGUgKGFycmF5X2xlbmd0aCA9 IGZhbHNlKV0KKysJCXB1YmxpYyB3ZWFrIGNoYXJbXSBjb21waWxlX3RpbWVfYXNzZXJ0X0NvZ2xN YXRyaXhfc2l6ZTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2ds LmgiLCBjbmFtZSA9ICJfQ29nbFRleHR1cmVWZXJ0ZXhTaXplQ2hlY2siLCBoYXNfdHlwZV9pZCA9 IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBfVGV4dHVyZVZlcnRleFNpemVDaGVjayB7CisrCQlb Q0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0KKysJCXB1YmxpYyB3ZWFrIGNoYXJbXSBjb21w aWxlX3RpbWVfYXNzZXJ0X0NvZ2xUZXh0dXJlVmVydGV4X3NpemU7CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX0FUVFJJQlVU RV9UWVBFXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCXB1YmxpYyBlbnVtIEF0dHJpYnV0ZVR5cGUgeworKwkJQllURSwKKysJCVVOU0lHTkVE X0JZVEUsCisrCQlTSE9SVCwKKysJCVVOU0lHTkVEX1NIT1JULAorKwkJRkxPQVQKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xf QklUTUFQX0VSUk9SXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2Ug PSAiMS40IildCisrCXB1YmxpYyBlbnVtIEJpdG1hcEVycm9yIHsKKysJCUZBSUxFRCwKKysJCVVO S05PV05fVFlQRSwKKysJCUNPUlJVUFRfSU1BR0UKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfQkxFTkRfU1RSSU5HX0VSUk9S XyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisr CXB1YmxpYyBlbnVtIEJsZW5kU3RyaW5nRXJyb3IgeworKwkJUEFSU0VfRVJST1IsCisrCQlBUkdV TUVOVF9QQVJTRV9FUlJPUiwKKysJCUlOVkFMSURfRVJST1IsCisrCQlHUFVfVU5TVVBQT1JURURf RVJST1I7CisrCQlwdWJsaWMgc3RhdGljIHVpbnQzMiBxdWFyayAoKTsKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfQlVGRkVS X0JJVF8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0ZsYWdzXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCXB1YmxpYyBlbnVtIEJ1ZmZlckJpdCB7CisrCQlDT0xPUiwKKysJCURF UFRILAorKwkJU1RFTkNJTAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2ds L2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0Zs YWdzXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCXB1YmxpYyBlbnVtIEJ1ZmZlclRh cmdldCB7CisrCQlXSU5ET1dfQlVGRkVSLAorKwkJT0ZGU0NSRUVOX0JVRkZFUgorKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9E RVBUSF9URVNUX0ZVTkNUSU9OXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgZW51 bSBEZXB0aFRlc3RGdW5jdGlvbiB7CisrCQlORVZFUiwKKysJCUxFU1MsCisrCQlFUVVBTCwKKysJ CUxFUVVBTCwKKysJCUdSRUFURVIsCisrCQlOT1RFUVVBTCwKKysJCUdFUVVBTCwKKysJCUFMV0FZ UworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVm aXggPSAiQ09HTF9FR0xfSU1BR0VfRkxBR18iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0Zs YWdzXQorKwlwdWJsaWMgZW51bSBFZ2xJbWFnZUZsYWdzIHsKKysJCU5PTkUsCisrCQlOT19HRVRf REFUQQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNw cmVmaXggPSAiQ09HTF9GRUFUVVJFX0lEXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgZW51bSBGZWF0dXJlSUQgeworKwkJW0ND b2RlIChjbmFtZSA9ICJDT0dMX0ZFQVRVUkVfSURfVU5TSUdORURfSU5UX0lORElDRVMiKV0KKysJ CU9HTF9GRUFUVVJFX0lEX1VOU0lHTkVEX0lOVF9JTkRJQ0VTLAorKwkJW0NDb2RlIChjbmFtZSA9 ICJDT0dMX0ZFQVRVUkVfSURfTUFQX0JVRkZFUl9GT1JfUkVBRCIpXQorKwkJT0dMX0ZFQVRVUkVf SURfTUFQX0JVRkZFUl9GT1JfUkVBRCwKKysJCVtDQ29kZSAoY25hbWUgPSAiQ09HTF9GRUFUVVJF X0lEX01BUF9CVUZGRVJfRk9SX1dSSVRFIildCisrCQlPR0xfRkVBVFVSRV9JRF9NQVBfQlVGRkVS X0ZPUl9XUklURSwKKysJCVtDQ29kZSAoY25hbWUgPSAiQ09HTF9GRUFUVVJFX0lEX1NXQVBfQlVG RkVSU19FVkVOVCIpXQorKwkJT0dMX0ZFQVRVUkVfSURfU1dBUF9CVUZGRVJTX0VWRU5ULAorKwkJ W0NDb2RlIChjbmFtZSA9ICJDT0dMX0ZFQVRVUkVfSURfUFJFU0VOVEFUSU9OX1RJTUUiKV0KKysJ CU9HTF9GRUFUVVJFX0lEX1BSRVNFTlRBVElPTl9USU1FLAorKwkJW0NDb2RlIChjbmFtZSA9ICJD T0dMX0ZFQVRVUkVfSURfRkVOQ0UiKV0KKysJCU9HTF9GRUFUVVJFX0lEX0ZFTkNFLAorKwkJW0ND b2RlIChjbmFtZSA9ICJDT0dMX0ZFQVRVUkVfSURfVEVYVFVSRV9SRyIpXQorKwkJT0dMX0ZFQVRV UkVfSURfVEVYVFVSRV9SRywKKysJCVtDQ29kZSAoY25hbWUgPSAiQ09HTF9GRUFUVVJFX0lEX0JV RkZFUl9BR0UiKV0KKysJCU9HTF9GRUFUVVJFX0lEX0JVRkZFUl9BR0UsCisrCQlbQ0NvZGUgKGNu YW1lID0gIkNPR0xfRkVBVFVSRV9JRF9URVhUVVJFX0VHTF9JTUFHRV9FWFRFUk5BTCIpXQorKwkJ T0dMX0ZFQVRVUkVfSURfVEVYVFVSRV9FR0xfSU1BR0VfRVhURVJOQUwKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfRklMVEVS XyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgZW51bSBGaWx0ZXJSZXR1cm4gewor KwkJQ09OVElOVUUsCisrCQlSRU1PVkUKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfRlJBTUVfRVZFTlRfIiwgaGFzX3R5cGVf aWQgPSBmYWxzZSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE0IildCisrCXB1YmxpYyBlbnVt IEZyYW1lRXZlbnQgeworKwkJU1lOQywKKysJCUNPTVBMRVRFCisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX0ZSQU1FQlVGRkVS X0VSUk9SXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgZW51bSBGcmFtZWJ1ZmZl ckVycm9yIHsKKysJCVtDQ29kZSAoY25hbWUgPSAiQ09HTF9GUkFNRUJVRkZFUl9FUlJPUl9BTExP Q0FURSIpXQorKwkJRlJBTUVCVUZGRVJfRVJST1JfQUxMT0NBVEU7CisrCQlwdWJsaWMgc3RhdGlj IHVpbnQzMiBxdWFyayAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29n bC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfR1JBUEhJQ1NfUkVTRVRfU1RBVFVTXyIsIGhhc190 eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgZW51bSBHcmFwaGljc1Jlc2V0U3RhdHVzIHsKKysJ CU5PX0VSUk9SLAorKwkJR1VJTFRZX0NPTlRFWFRfUkVTRVQsCisrCQlJTk5PQ0VOVF9DT05URVhU X1JFU0VULAorKwkJVU5LTk9XTl9DT05URVhUX1JFU0VULAorKwkJUFVSR0VEX0NPTlRFWFRfUkVT RVQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJl Zml4ID0gIkNPR0xfSU5ESUNFU19UWVBFX1VOU0lHTkVEXyIsIGhhc190eXBlX2lkID0gZmFsc2Up XQorKwlwdWJsaWMgZW51bSBJbmRpY2VzVHlwZSB7CisrCQlCWVRFLAorKwkJU0hPUlQsCisrCQlJ TlQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJl Zml4ID0gIkNPR0xfTUFURVJJQUxfQUxQSEFfRlVOQ18iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0K KysJcHVibGljIGVudW0gTWF0ZXJpYWxBbHBoYUZ1bmMgeworKwkJTkVWRVIsCisrCQlMRVNTLAor KwkJRVFVQUwsCisrCQlMRVFVQUwsCisrCQlHUkVBVEVSLAorKwkJTk9URVFVQUwsCisrCQlHRVFV QUwsCisrCQlBTFdBWVMKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9j b2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfTUFURVJJQUxfRklMVEVSXyIsIGhhc190eXBlX2lkID0g ZmFsc2UpXQorKwlwdWJsaWMgZW51bSBNYXRlcmlhbEZpbHRlciB7CisrCQlORUFSRVNULAorKwkJ TElORUFSLAorKwkJTkVBUkVTVF9NSVBNQVBfTkVBUkVTVCwKKysJCUxJTkVBUl9NSVBNQVBfTkVB UkVTVCwKKysJCU5FQVJFU1RfTUlQTUFQX0xJTkVBUiwKKysJCUxJTkVBUl9NSVBNQVBfTElORUFS CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZp eCA9ICJDT0dMX01BVEVSSUFMX1dSQVBfTU9ERV8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgZW51bSBNYXRlcmlhbFdyYXBNb2Rl IHsKKysJCVJFUEVBVCwKKysJCUNMQU1QX1RPX0VER0UsCisrCQlBVVRPTUFUSUMKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xf UElQRUxJTkVfQUxQSEFfRlVOQ18iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIGVu dW0gUGlwZWxpbmVBbHBoYUZ1bmMgeworKwkJTkVWRVIsCisrCQlMRVNTLAorKwkJRVFVQUwsCisr CQlMRVFVQUwsCisrCQlHUkVBVEVSLAorKwkJTk9URVFVQUwsCisrCQlHRVFVQUwsCisrCQlBTFdB WVMKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJl Zml4ID0gIkNPR0xfUElQRUxJTkVfQ1VMTF9GQUNFX01PREVfIiwgaGFzX3R5cGVfaWQgPSBmYWxz ZSldCisrCXB1YmxpYyBlbnVtIFBpcGVsaW5lQ3VsbEZhY2VNb2RlIHsKKysJCU5PTkUsCisrCQlG Uk9OVCwKKysJCUJBQ0ssCisrCQlCT1RICisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX1BJUEVMSU5FX0ZJTFRFUl8iLCBoYXNf dHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIGVudW0gUGlwZWxpbmVGaWx0ZXIgeworKwkJTkVB UkVTVCwKKysJCUxJTkVBUiwKKysJCU5FQVJFU1RfTUlQTUFQX05FQVJFU1QsCisrCQlMSU5FQVJf TUlQTUFQX05FQVJFU1QsCisrCQlORUFSRVNUX01JUE1BUF9MSU5FQVIsCisrCQlMSU5FQVJfTUlQ TUFQX0xJTkVBUgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wu aCIsIGNwcmVmaXggPSAiQ09HTF9QSVBFTElORV9XUkFQX01PREVfIiwgaGFzX3R5cGVfaWQgPSBm YWxzZSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJcHVibGljIGVudW0gUGlwZWxp bmVXcmFwTW9kZSB7CisrCQlSRVBFQVQsCisrCQlNSVJST1JFRF9SRVBFQVQsCisrCQlDTEFNUF9U T19FREdFLAorKwkJQVVUT01BVElDCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX1BJWEVMX0ZPUk1BVF8iLCBoYXNfdHlwZV9p ZCA9IGZhbHNlKV0KKysJW0ZsYWdzXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCXB1 YmxpYyBlbnVtIFBpeGVsRm9ybWF0IHsKKysJCUFOWSwKKysJCUFfOCwKKysJCVJHQl81NjUsCisr CQlSR0JBXzQ0NDQsCisrCQlSR0JBXzU1NTEsCisrCQlZVVYsCisrCQlHXzgsCisrCQlSR184OCwK KysJCVJHQl84ODgsCisrCQlCR1JfODg4LAorKwkJUkdCQV84ODg4LAorKwkJQkdSQV84ODg4LAor KwkJQVJHQl84ODg4LAorKwkJQUJHUl84ODg4LAorKwkJUkdCQV8xMDEwMTAyLAorKwkJQkdSQV8x MDEwMTAyLAorKwkJQVJHQl8yMTAxMDEwLAorKwkJQUJHUl8yMTAxMDEwLAorKwkJUkdCQV84ODg4 X1BSRSwKKysJCUJHUkFfODg4OF9QUkUsCisrCQlBUkdCXzg4ODhfUFJFLAorKwkJQUJHUl84ODg4 X1BSRSwKKysJCVJHQkFfNDQ0NF9QUkUsCisrCQlSR0JBXzU1NTFfUFJFLAorKwkJUkdCQV8xMDEw MTAyX1BSRSwKKysJCUJHUkFfMTAxMDEwMl9QUkUsCisrCQlBUkdCXzIxMDEwMTBfUFJFLAorKwkJ QUJHUl8yMTAxMDEwX1BSRSwKKysJCURFUFRIXzE2LAorKwkJREVQVEhfMzIsCisrCQlERVBUSF8y NF9TVEVOQ0lMXzg7CisrCQlwdWJsaWMgaW50IGdldF9ieXRlc19wZXJfcGl4ZWwgKGludCBwbGFu ZSk7CisrCQlwdWJsaWMgaW50IGdldF9uX3BsYW5lcyAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0 cmluZyB0b19zdHJpbmcgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNv Z2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX1JFQURfUElYRUxTX0NPTE9SXyIsIGhhc190eXBl X2lkID0gZmFsc2UpXQorKwlbRmxhZ3NdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJ cHVibGljIGVudW0gUmVhZFBpeGVsc0ZsYWdzIHsKKysJCVtDQ29kZSAoY25hbWUgPSAiQ09HTF9S RUFEX1BJWEVMU19DT0xPUl9CVUZGRVIiKV0KKysJCVJFQURfUElYRUxTX0NPTE9SX0JVRkZFUgor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXgg PSAiQ09HTF9SRU5ERVJFUl9FUlJPUl8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGlj IGVudW0gUmVuZGVyZXJFcnJvciB7CisrCQlYTElCX0RJU1BMQVlfT1BFTiwKKysJCUJBRF9DT05T VFJBSU5UCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwg Y3ByZWZpeCA9ICJDT0dMX1NIQURFUl9UWVBFXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlb VmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBlbnVtIFNoYWRlclR5cGUgeworKwkJ VkVSVEVYLAorKwkJRlJBR01FTlQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfU1RFUkVPXyIsIGhhc190eXBlX2lkID0gZmFs c2UpXQorKwlwdWJsaWMgZW51bSBTdGVyZW9Nb2RlIHsKKysJCUJPVEgsCisrCQlMRUZULAorKwkJ UklHSFQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBj cHJlZml4ID0gIkNPR0xfU1lTVEVNX0VSUk9SXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlb VmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBlbnVtIFN5c3RlbUVycm9yIHsKKysJ CVVOU1VQUE9SVEVELAorKwkJTk9fTUVNT1JZCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX1RFWFRVUkVfQ09NUE9ORU5UU18i LCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTgiKV0KKysJ cHVibGljIGVudW0gVGV4dHVyZUNvbXBvbmVudHMgeworKwkJQSwKKysJCVJHLAorKwkJUkdCLAor KwkJUkdCQSwKKysJCURFUFRICisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNv Z2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX1RFWFRVUkVfRVJST1JfIiwgaGFzX3R5cGVfaWQg PSBmYWxzZSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJcHVibGljIGVudW0gVGV4 dHVyZUVycm9yIHsKKysJCVNJWkUsCisrCQlGT1JNQVQsCisrCQlCQURfUEFSQU1FVEVSLAorKwkJ VFlQRTsKKysJCXB1YmxpYyBzdGF0aWMgdWludDMyIHF1YXJrICgpOworKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9URVhUVVJF XyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbRmxhZ3NdCisrCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjAiKV0KKysJcHVibGljIGVudW0gVGV4dHVyZUZsYWdzIHsKKysJCU5PTkUsCisrCQlOT19B VVRPX01JUE1BUCwKKysJCU5PX1NMSUNJTkcsCisrCQlOT19BVExBUworKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9WRVJUSUNF U19NT0RFXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCXB1YmxpYyBlbnVtIFZlcnRpY2VzTW9kZSB7CisrCQlQT0lOVFMsCisrCQlMSU5FUywK KysJCUxJTkVfTE9PUCwKKysJCUxJTkVfU1RSSVAsCisrCQlUUklBTkdMRVMsCisrCQlUUklBTkdM RV9TVFJJUCwKKysJCVRSSUFOR0xFX0ZBTgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9XSU5ESU5HXyIsIGhhc190eXBlX2lk ID0gZmFsc2UpXQorKwlwdWJsaWMgZW51bSBXaW5kaW5nIHsKKysJCUNMT0NLV0lTRSwKKysJCUNP VU5URVJfQ0xPQ0tXSVNFCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wv Y29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX1dJTlNZU19GRUFUVVJFXyIsIGhhc190eXBlX2lkID0g ZmFsc2UpXQorKwlwdWJsaWMgZW51bSBXaW5zeXNGZWF0dXJlIHsKKysJCU1VTFRJUExFX09OU0NS RUVOLAorKwkJU1dBUF9USFJPVFRMRSwKKysJCVZCTEFOS19DT1VOVEVSLAorKwkJVkJMQU5LX1dB SVQsCisrCQlURVhUVVJFX0ZST01fUElYTUFQLAorKwkJU1dBUF9CVUZGRVJTX0VWRU5ULAorKwkJ U1dBUF9SRUdJT04sCisrCQlTV0FQX1JFR0lPTl9USFJPVFRMRSwKKysJCVNXQVBfUkVHSU9OX1NZ TkNIUk9OSVpFRCwKKysJCUJVRkZFUl9BR0UsCisrCQlTWU5DX0FORF9DT01QTEVURV9FVkVOVCwK KysJCU5fRkVBVFVSRVMKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9j b2dsLmgiLCBpbnN0YW5jZV9wb3MgPSAxLjkpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS44Iild CisrCXB1YmxpYyBkZWxlZ2F0ZSB2b2lkIERlYnVnT2JqZWN0Rm9yZWFjaFR5cGVDYWxsYmFjayAo Q29nbC5EZWJ1Z09iamVjdFR5cGVJbmZvIGluZm8pOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY29nbC9jb2dsLmgiLCBpbnN0YW5jZV9wb3MgPSAxLjkpXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMC4xMCIpXQorKwlwdWJsaWMgZGVsZWdhdGUgdm9pZCBGZWF0dXJlQ2FsbGJhY2sgKENv Z2wuRmVhdHVyZUlEIGZlYXR1cmUpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29n bC9jb2dsLmgiLCBpbnN0YW5jZV9wb3MgPSAyLjkpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4x NiIpXQorKwlwdWJsaWMgZGVsZWdhdGUgdm9pZCBPbnNjcmVlbkRpcnR5Q2FsbGJhY2sgKENvZ2wu T25zY3JlZW4gb25zY3JlZW4sIENvZ2wuT25zY3JlZW5EaXJ0eUluZm8gaW5mbyk7CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGluc3RhbmNlX3BvcyA9IDMuOSld CisrCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJcHVibGljIGRlbGVnYXRlIHZvaWQgT25z Y3JlZW5SZXNpemVDYWxsYmFjayAoQ29nbC5PbnNjcmVlbiBvbnNjcmVlbiwgaW50IHdpZHRoLCBp bnQgaGVpZ2h0KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwg aW5zdGFuY2VfcG9zID0gMi45KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwlwdWJs aWMgZGVsZWdhdGUgYm9vbCBQaXBlbGluZUxheWVyQ2FsbGJhY2sgKENvZ2wuUGlwZWxpbmUgcGlw ZWxpbmUsIGludCBsYXllcl9pbmRleCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj b2dsL2NvZ2wuaCIsIGluc3RhbmNlX3BvcyA9IDEuOSldCisrCXB1YmxpYyBkZWxlZ2F0ZSBib29s IFRleHR1cmUyREVHTEltYWdlRXh0ZXJuYWxBbGxvYyAoQ29nbC5UZXh0dXJlMkQgdGV4XzJkKSB0 aHJvd3MgR0xpYi5FcnJvcjsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29n bC5oIiwgaGFzX3RhcmdldCA9IGZhbHNlKV0KKysJcHVibGljIGRlbGVnYXRlIHZvaWQgVXNlckRh dGFEZXN0cm95Q2FsbGJhY2sgKHZvaWQqIGRhdGEpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY29nbC9jb2dsLmgiLCBjbmFtZSA9ICJDT0dMX0FGSVJTVF9CSVQiKV0KKysJcHVibGlj IGNvbnN0IGludCBBRklSU1RfQklUOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29n bC9jb2dsLmgiLCBjbmFtZSA9ICJDT0dMX0FfQklUIildCisrCXB1YmxpYyBjb25zdCBpbnQgQV9C SVQ7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNuYW1lID0g IkNPR0xfQkdSX0JJVCIpXQorKwlwdWJsaWMgY29uc3QgaW50IEJHUl9CSVQ7CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNuYW1lID0gIkNPR0xfREVQVEhfQklU IildCisrCXB1YmxpYyBjb25zdCBpbnQgREVQVEhfQklUOworKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjbmFtZSA9ICJDT0dMX1BJWEVMX0ZPUk1BVF9NQVhfUExB TkVTIildCisrCXB1YmxpYyBjb25zdCBpbnQgUElYRUxfRk9STUFUX01BWF9QTEFORVM7CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNuYW1lID0gIkNPR0xfUFJF TVVMVF9CSVQiKV0KKysJcHVibGljIGNvbnN0IGludCBQUkVNVUxUX0JJVDsKKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY25hbWUgPSAiQ09HTF9TVEVOQ0lMX0JJ VCIpXQorKwlwdWJsaWMgY29uc3QgaW50IFNURU5DSUxfQklUOworKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjbmFtZSA9ICJDT0dMX1RFWFRVUkVfTUFYX1dBU1RF IildCisrCXB1YmxpYyBjb25zdCBpbnQgVEVYVFVSRV9NQVhfV0FTVEU7CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlwdWJsaWMgc3RhdGljIGJvb2wgYmxp dF9mcmFtZWJ1ZmZlciAoQ29nbC5GcmFtZWJ1ZmZlciBzcmMsIENvZ2wuRnJhbWVidWZmZXIgZGVz dCwgaW50IHNyY194LCBpbnQgc3JjX3ksIGludCBkc3RfeCwgaW50IGRzdF95LCBpbnQgd2lkdGgs IGludCBoZWlnaHQpIHRocm93cyBHTGliLkVycm9yOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY29nbC9jb2dsLmgiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGNsdXR0ZXJfd2luc3lz X2hhc19mZWF0dXJlX0NMVVRURVIgKENvZ2wuV2luc3lzRmVhdHVyZSBmZWF0dXJlKTsKKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjAiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGNvbG9yX2VxdWFsICh2b2lkKiB2MSwg dm9pZCogdjIpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0K KysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTYiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIGNvbG9y X2luaXRfZnJvbV9oc2wgKG91dCBDb2dsLkNvbG9yIGNvbG9yLCBmbG9hdCBodWUsIGZsb2F0IHNh dHVyYXRpb24sIGZsb2F0IGx1bWluYW5jZSk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCXB1YmxpYyBz dGF0aWMgdm9pZCBkZWJ1Z19tYXRyaXhfcHJpbnQgKENvZ2wuTWF0cml4IG1hdHJpeCk7CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMS44IildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBkZWJ1Z19vYmplY3RfZm9yZWFjaF90 eXBlIChDb2dsLkRlYnVnT2JqZWN0Rm9yZWFjaFR5cGVDYWxsYmFjayBmdW5jKTsKKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjgiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIGRlYnVnX29iamVjdF9wcmludF9pbnN0YW5j ZXMgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlb VmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBmbHVzaCAoKTsK KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBmb3JlYWNoX2ZlYXR1cmUg KENvZ2wuQ29udGV4dCBjb250ZXh0LCBDb2dsLkZlYXR1cmVDYWxsYmFjayBjYWxsYmFjayk7Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAo ZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIpXQorKwlwdWJsaWMg c3RhdGljIGJvb2wgZ2V0X2JhY2tmYWNlX2N1bGxpbmdfZW5hYmxlZCAoKTsKKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIx LjE0IildCisrCXB1YmxpYyBzdGF0aWMgaW50NjQgZ2V0X2Nsb2NrX3RpbWUgKENvZ2wuQ29udGV4 dCBjb250ZXh0KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIild CisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2 IildCisrCXB1YmxpYyBzdGF0aWMgYm9vbCBnZXRfZGVwdGhfdGVzdF9lbmFibGVkICgpOworKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJcHVibGljIHN0YXRp YyBDb2dsLkdyYXBoaWNzUmVzZXRTdGF0dXMgZ2V0X2dyYXBoaWNzX3Jlc2V0X3N0YXR1cyAoQ29n bC5Db250ZXh0IGNvbnRleHQpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9j b2dsLmgiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNl ID0gIjEuMTYiLCBzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIHN0YXRpYyBHTGliLk9wdGlvbkdy b3VwIGdldF9vcHRpb25fZ3JvdXAgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj b2dsL2NvZ2wuaCIpXQorKwlwdWJsaWMgc3RhdGljIEdMaWIuQ2FsbGJhY2sgZ2V0X3Byb2NfYWRk cmVzcyAoc3RyaW5nIHMpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2ds LmgiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0g IjEuMTgiKV0KKysJcHVibGljIHN0YXRpYyBHTGliLlR5cGUgZ3R5cGVfbWF0cml4X2dldF90eXBl ICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGhhc19mZWF0dXJl IChDb2dsLkNvbnRleHQgY29udGV4dCwgQ29nbC5GZWF0dXJlSUQgZmVhdHVyZSk7CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMCIpXQorKwlwdWJsaWMgc3RhdGljIGJvb2wgaXNfY29udGV4dCAodm9pZCogb2JqZWN0 KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBzdGF0aWMgYm9vbCBpc19mcmFtZWJ1ZmZl ciAodm9pZCogb2JqZWN0KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29n bC5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBzdGF0aWMgYm9v bCBpc19vbnNjcmVlbiAodm9pZCogb2JqZWN0KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJcHVibGlj IHN0YXRpYyBib29sIGlzX3BpcGVsaW5lICh2b2lkKiBvYmplY3QpOworKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGlzX3Rl eHR1cmVfMmQgKHZvaWQqIG9iamVjdCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj b2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgc3Rh dGljIGJvb2wgaXNfdGV4dHVyZV8yZF9zbGljZWQgKHZvaWQqIG9iamVjdCk7CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAi MS40IildCisrCXB1YmxpYyBzdGF0aWMgYm9vbCBtYXRyaXhfZXF1YWwgKHZvaWQqIHYxLCB2b2lk KiB2Mik7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlb VmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIpXQor KwlwdWJsaWMgc3RhdGljIHZvaWQgc2V0X2JhY2tmYWNlX2N1bGxpbmdfZW5hYmxlZCAoYm9vbCBz ZXR0aW5nKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisr CVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2Iild CisrCXB1YmxpYyBzdGF0aWMgdm9pZCBzZXRfZGVwdGhfdGVzdF9lbmFibGVkIChib29sIHNldHRp bmcpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1Zl cnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiKV0KKysJ cHVibGljIHN0YXRpYyB2b2lkIHNoYWRlcl9jb21waWxlIChDb2dsLkhhbmRsZSBoYW5kbGUpOwor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24g KGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiKV0KKysJcHVibGlj IHN0YXRpYyBzdHJpbmcgc2hhZGVyX2dldF9pbmZvX2xvZyAoQ29nbC5IYW5kbGUgaGFuZGxlKTsK KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9u IChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2IildCisrCXB1Ymxp YyBzdGF0aWMgQ29nbC5TaGFkZXJUeXBlIHNoYWRlcl9nZXRfdHlwZSAoQ29nbC5IYW5kbGUgaGFu ZGxlKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtW ZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2IildCisr CXB1YmxpYyBzdGF0aWMgYm9vbCBzaGFkZXJfaXNfY29tcGlsZWQgKENvZ2wuSGFuZGxlIGhhbmRs ZSk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVy c2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIpXQorKwlw dWJsaWMgc3RhdGljIHZvaWQgc2hhZGVyX3NvdXJjZSAoQ29nbC5IYW5kbGUgc2hhZGVyLCBzdHJp bmcgc291cmNlKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIild CisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE4 Iiwgc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBzdGF0aWMgQ29nbC5UZXh0dXJlIHRleHR1cmVf bmV3X2Zyb21fYml0bWFwIChDb2dsLkJpdG1hcCBiaXRtYXAsIENvZ2wuVGV4dHVyZUZsYWdzIGZs YWdzLCBDb2dsLlBpeGVsRm9ybWF0IGludGVybmFsX2Zvcm1hdCk7CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRy dWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xOCIsIHNpbmNlID0gIjAuOCIpXQorKwlwdWJsaWMg c3RhdGljIENvZ2wuVGV4dHVyZSB0ZXh0dXJlX25ld19mcm9tX2RhdGEgKGludCB3aWR0aCwgaW50 IGhlaWdodCwgQ29nbC5UZXh0dXJlRmxhZ3MgZmxhZ3MsIENvZ2wuUGl4ZWxGb3JtYXQgZm9ybWF0 LCBDb2dsLlBpeGVsRm9ybWF0IGludGVybmFsX2Zvcm1hdCwgaW50IHJvd3N0cmlkZSwgdWludDgg ZGF0YSk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlb VmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xOCIsIHNp bmNlID0gIjAuOCIpXQorKwlwdWJsaWMgc3RhdGljIENvZ2wuVGV4dHVyZSB0ZXh0dXJlX25ld19m cm9tX2ZpbGUgKHN0cmluZyBmaWxlbmFtZSwgQ29nbC5UZXh0dXJlRmxhZ3MgZmxhZ3MsIENvZ2wu UGl4ZWxGb3JtYXQgaW50ZXJuYWxfZm9ybWF0KSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChkZXByZWNh dGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE4Iiwgc2luY2UgPSAiMC44IildCisr CXB1YmxpYyBzdGF0aWMgQ29nbC5UZXh0dXJlIHRleHR1cmVfbmV3X3dpdGhfc2l6ZSAodWludCB3 aWR0aCwgdWludCBoZWlnaHQsIENvZ2wuVGV4dHVyZUZsYWdzIGZsYWdzLCBDb2dsLlBpeGVsRm9y bWF0IGludGVybmFsX2Zvcm1hdCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2ds L2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgc3RhdGlj IHVpbnQzMiB4MTFfb25zY3JlZW5fZ2V0X3dpbmRvd194aWQgKENvZ2wuT25zY3JlZW4gb25zY3Jl ZW4pOworK30KKy0tIAorMi4yNS4wCisKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvYnVkZ2llLWRlc2t0 b3AvdGVtcGxhdGUgYi9zcmNwa2dzL2J1ZGdpZS1kZXNrdG9wL3RlbXBsYXRlCmluZGV4IGIzMmU3 NzM0ZDNiLi4xODBjZGMwMmYxZiAxMDA2NDQKLS0tIGEvc3JjcGtncy9idWRnaWUtZGVza3RvcC90 ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2J1ZGdpZS1kZXNrdG9wL3RlbXBsYXRlCkBAIC0xLDIxICsx LDIyIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdidWRnaWUtZGVza3RvcCcKIHBrZ25hbWU9YnVk Z2llLWRlc2t0b3AKIHZlcnNpb249MTAuNS4xCi1yZXZpc2lvbj0zCityZXZpc2lvbj00CiBidWls ZF9zdHlsZT1tZXNvbgogYnVpbGRfaGVscGVyPWdpcgogY29uZmlndXJlX2FyZ3M9Ii1Ed2l0aC1n dGstZG9jPWZhbHNlIC1Ed2l0aC1kZXNrdG9wLWljb25zPW5vbmUiCiBob3N0bWFrZWRlcGVuZHM9 InBrZy1jb25maWcgaW50bHRvb2wgdmFsYSBnbGliLWRldmVsIGdvYmplY3QtaW50cm9zcGVjdGlv biBzYXNzYyIKIG1ha2VkZXBlbmRzPSJhbHNhLWxpYi1kZXZlbCBsaWJub3RpZnktZGV2ZWwgYWNj b3VudHNzZXJ2aWNlLWRldmVsIGxpYnBlYXMtZGV2ZWwgbGlid25jay1kZXZlbAotbXV0dGVyLWRl dmVsIGlidXMtZGV2ZWwgZ25vbWUtZGVza3RvcC1kZXZlbCBwdWxzZWF1ZGlvLWRldmVsIHVwb3dl ci1kZXZlbCBndGsrMy1kZXZlbCBwb2xraXQtZGV2ZWwKLWdub21lLWJsdWV0b290aC1kZXZlbCBn bm9tZS1tZW51cy1kZXZlbCBnbm9tZS1zZXR0aW5ncy1kYWVtb24tZGV2ZWwgdmFsYSBsaWJ1dWlk LWRldmVsIGxpYnVwb3dlci1nbGliMyIKLWRlcGVuZHM9Imdub21lLXNlc3Npb24gZ25vbWUtc2V0 dGluZ3MtZGFlbW9uIGdub21lLWNvbnRyb2wtY2VudGVyIGVsb2dpbmQiCisgbXV0dGVyLWRldmVs IGlidXMtZGV2ZWwgZ25vbWUtZGVza3RvcC1kZXZlbCBwdWxzZWF1ZGlvLWRldmVsIHVwb3dlci1k ZXZlbCBndGsrMy1kZXZlbCBwb2xraXQtZGV2ZWwKKyBnbm9tZS1ibHVldG9vdGgtZGV2ZWwgZ25v bWUtbWVudXMtZGV2ZWwgZ25vbWUtc2V0dGluZ3MtZGFlbW9uLWRldmVsIHZhbGEgbGlidXVpZC1k ZXZlbCBsaWJ1cG93ZXItZ2xpYjMiCitkZXBlbmRzPSJnbm9tZS1zZXNzaW9uIGdub21lLXNldHRp bmdzLWRhZW1vbiBnbm9tZS1jb250cm9sLWNlbnRlciBnbm9tZS10aGVtZXMtZXh0cmEgZWxvZ2lu ZCIKIHNob3J0X2Rlc2M9Ik1vZGVybiBkZXNrdG9wIGVudmlyb25tZW50IGZyb20gdGhlIFNvbHVz IFByb2plY3QiCiBtYWludGFpbmVyPSJMb3JlbSA8bm90bG9yZW1pcHN1bUBwcm90b25tYWlsLmNv bT4iCiBsaWNlbnNlPSJHUEwtMi4wLW9ubHksIExHUEwtMi4xLW9ubHkiCiBob21lcGFnZT0iaHR0 cHM6Ly9naXRodWIuY29tL3NvbHVzLXByb2plY3QvYnVkZ2llLWRlc2t0b3AiCiBkaXN0ZmlsZXM9 Imh0dHBzOi8vZ2l0aHViLmNvbS9zb2x1cy1wcm9qZWN0L2J1ZGdpZS1kZXNrdG9wL3JlbGVhc2Vz L2Rvd25sb2FkL3Yke3ZlcnNpb259L2J1ZGdpZS1kZXNrdG9wLSR7dmVyc2lvbn0udGFyLnh6Igog Y2hlY2tzdW09ZDAzNWVjNzY0ZTAwOTM3MjJhODMyNDExYWViNmFiYTI5NmMwOTk1ZDkyN2VhMDY5 YjIwNWIxOWM4NWFhZTU2NQorcGF0Y2hfYXJncz0iLU5wMSIKIAogcHJlX2NvbmZpZ3VyZSgpIHsK IAl2c2VkIC1pICdzL2V4ZWMgZ25vbWUtc2Vzc2lvbi9leGVjIGdub21lLXNlc3Npb24gLS1idWls dGluLycgc3JjL3Nlc3Npb24vYnVkZ2llLWRlc2t0b3AuaW4KCkZyb20gNDg3ZGE3MDVkYmVkYzYx MzE3M2I4M2MwZDY0M2M0NDgwNmVkMjdiNCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTog TmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogVGh1LCAzMCBBcHIgMjAyMCAxMzo0 NjoxNiArMDYwMApTdWJqZWN0OiBbUEFUQ0ggNDMvNTJdIHhkZy1kZXNrdG9wLXBvcnRhbC1ndGs6 IHJlYnVpbGQgYWdhaW5zdAogbGliZ25vbWUtZGVza3RvcC0zLnNvLjE5CgotLS0KIHNyY3BrZ3Mv eGRnLWRlc2t0b3AtcG9ydGFsLWd0ay90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAx IGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MveGRnLWRl c2t0b3AtcG9ydGFsLWd0ay90ZW1wbGF0ZSBiL3NyY3BrZ3MveGRnLWRlc2t0b3AtcG9ydGFsLWd0 ay90ZW1wbGF0ZQppbmRleCBkZWUwZTQ2MzM4Ni4uNTU4Yzc1ZjUzOWQgMTAwNjQ0Ci0tLSBhL3Ny Y3BrZ3MveGRnLWRlc2t0b3AtcG9ydGFsLWd0ay90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3hkZy1k ZXNrdG9wLXBvcnRhbC1ndGsvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZp bGUgZm9yICd4ZGctZGVza3RvcC1wb3J0YWwtZ3RrJwogcGtnbmFtZT14ZGctZGVza3RvcC1wb3J0 YWwtZ3RrCiB2ZXJzaW9uPTEuNi4wCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHls ZT1nbnUtY29uZmlndXJlCiBob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcgbGlieHNsdCBnbGli LWRldmVsIHhkZy1kZXNrdG9wLXBvcnRhbCBnZXR0ZXh0IgogbWFrZWRlcGVuZHM9ImZsYXRwYWst ZGV2ZWwgZ3RrKzMtZGV2ZWwgbGlieHNsdC1kZXZlbCBsaWJnbGliLWRldmVsCgpGcm9tIGNjYzBm M2UyYzFjZThlNTNjZGRiMDExNGUxMjM2NjIyNWFiNGY5ZmUgTW9uIFNlcCAxNyAwMDowMDowMCAy MDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFRodSwgMzAgQXBy IDIwMjAgMDI6NDk6MTMgKzA2MDAKU3ViamVjdDogW1BBVENIIDQ0LzUyXSBjaGVlc2U6IHJlYnVp bGQgYWdhaW5zdCBsaWJnbm9tZS1kZXNrdG9wLTMuc28uMTkKCi0tLQogc3JjcGtncy9jaGVlc2Uv dGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRp b24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2NoZWVzZS90ZW1wbGF0ZSBiL3NyY3BrZ3MvY2hl ZXNlL3RlbXBsYXRlCmluZGV4IDdhNTZiYTAzOWZiLi4wMzdjZGE0OWM5OCAxMDA2NDQKLS0tIGEv c3JjcGtncy9jaGVlc2UvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9jaGVlc2UvdGVtcGxhdGUKQEAg LTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdjaGVlc2UnCiBwa2duYW1lPWNoZWVz ZQogdmVyc2lvbj0zLjM0LjAKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxlPW1l c29uCiBidWlsZF9oZWxwZXI9ImdpciIKIGNvbmZpZ3VyZV9hcmdzPSItRGd0a19kb2M9JCh2b3B0 X2lmIGd0a19kb2MgJ3RydWUnICdmYWxzZScpCgpGcm9tIGUxZTgwZjNkYmVkOTUxY2EwZTAxZjVj NDI4MjU0NTU2NzBmMmYzMjIgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxt bmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFRodSwgMzAgQXByIDIwMjAgMDI6MzQ6NTQgKzA2 MDAKU3ViamVjdDogW1BBVENIIDQ1LzUyXSBnbm9tZS1ib29rczogcmVidWlsZCBhZ2FpbnN0IGxp Ymdub21lLWRlc2t0b3AtMy5zby4xOQoKLS0tCiBzcmNwa2dzL2dub21lLWJvb2tzL3RlbXBsYXRl IHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpk aWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1ib29rcy90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25vbWUt Ym9va3MvdGVtcGxhdGUKaW5kZXggMTE0YjllMDM0YzIuLjFkNDk3NGZlMTgzIDEwMDY0NAotLS0g YS9zcmNwa2dzL2dub21lLWJvb2tzL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtYm9va3Mv dGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbm9tZS1ib29r cycKIHBrZ25hbWU9Z25vbWUtYm9va3MKIHZlcnNpb249My4zNC4wCi1yZXZpc2lvbj0xCityZXZp c2lvbj0yCiBidWlsZF9oZWxwZXI9ImdpciIKIGJ1aWxkX3N0eWxlPW1lc29uCiBob3N0bWFrZWRl cGVuZHM9InBrZy1jb25maWcgdmFsYSBnbGliLWRldmVsIGxpYnJzdmcgZG9jYm9vay14c2wgbGli eHNsdAoKRnJvbSA4YmE0ZDdkMjZlNTRkZjc0ZDdmZDkwYzQ3ODE0NGQ5NjMxMjI3MTczIE1vbiBT ZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpE YXRlOiBUaHUsIDMwIEFwciAyMDIwIDAyOjQ3OjMxICswNjAwClN1YmplY3Q6IFtQQVRDSCA0Ni81 Ml0gZ25vbWUtY2hhcmFjdGVyczogcmVidWlsZCBhZ2FpbnN0CiBsaWJnbm9tZS1kZXNrdG9wLTMu c28uMTkKCi0tLQogc3JjcGtncy9nbm9tZS1jaGFyYWN0ZXJzL3RlbXBsYXRlIHwgMiArLQogMSBm aWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEv c3JjcGtncy9nbm9tZS1jaGFyYWN0ZXJzL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1jaGFyYWN0 ZXJzL3RlbXBsYXRlCmluZGV4IDg5ODY4ZjRiYzA0Li5hYzI2NGU1MWE2YSAxMDA2NDQKLS0tIGEv c3JjcGtncy9nbm9tZS1jaGFyYWN0ZXJzL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtY2hh cmFjdGVycy90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2du b21lLWNoYXJhY3RlcnMnCiBwa2duYW1lPWdub21lLWNoYXJhY3RlcnMKIHZlcnNpb249My4zNC4w Ci1yZXZpc2lvbj0yCityZXZpc2lvbj0zCiBidWlsZF9zdHlsZT1tZXNvbgogYnVpbGRfaGVscGVy PSJnaXIiCiBob3N0bWFrZWRlcGVuZHM9ImdldHRleHQgZ2pzIGdsaWItZGV2ZWwgaXRzdG9vbCBw a2ctY29uZmlnIgoKRnJvbSBjZGI0NTZlZjZiNWNjNGI2NzU4M2JlZDY5NzQzMmE0NjA4OWIwNTc4 IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2su Y29tPgpEYXRlOiBUaHUsIDMwIEFwciAyMDIwIDAyOjU1OjE4ICswNjAwClN1YmplY3Q6IFtQQVRD SCA0Ny81Ml0gZ25vbWUtZG9jdW1lbnRzOiByZWJ1aWxkIGFnYWluc3QKIGxpYmdub21lLWRlc2t0 b3AtMy5zby4xOQoKLS0tCiBzcmNwa2dzL2dub21lLWRvY3VtZW50cy90ZW1wbGF0ZSB8IDIgKy0K IDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdp dCBhL3NyY3BrZ3MvZ25vbWUtZG9jdW1lbnRzL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1kb2N1 bWVudHMvdGVtcGxhdGUKaW5kZXggOTdiNTNkNjM1ZDcuLjdlNDViODI1ZTcxIDEwMDY0NAotLS0g YS9zcmNwa2dzL2dub21lLWRvY3VtZW50cy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dub21lLWRv Y3VtZW50cy90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2du b21lLWRvY3VtZW50cycKIHBrZ25hbWU9Z25vbWUtZG9jdW1lbnRzCiB2ZXJzaW9uPTMuMzQuMAot cmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfaGVscGVyPSJnaXIiCiBidWlsZF9zdHlsZT1t ZXNvbgogaG9zdG1ha2VkZXBlbmRzPSJkb2Nib29rLXhzbCBnZXR0ZXh0IGl0c3Rvb2wgcGtnLWNv bmZpZyBnbGliLWRldmVsIGxpYnhzbHQgZ2RrLXBpeGJ1ZgoKRnJvbSBhODA0NWNlNDk1MDlmZDI5 ZWVhZDUxOGU0ZmI0NmYyZjVjMTY2NDk1IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBO YWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUaHUsIDMwIEFwciAyMDIwIDAyOjU2 OjU2ICswNjAwClN1YmplY3Q6IFtQQVRDSCA0OC81Ml0gZ25vbWUtZm9udC12aWV3ZXI6IHJlYnVp bGQgYWdhaW5zdAogbGliZ25vbWUtZGVza3RvcC0zLnNvLjE5CgotLS0KIHNyY3BrZ3MvZ25vbWUt Zm9udC12aWV3ZXIvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24o KyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLWZvbnQtdmlld2Vy L3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1mb250LXZpZXdlci90ZW1wbGF0ZQppbmRleCA2ZDAz NTM2NmQ0NC4uZjc0ZmNiY2IwMDAgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtZm9udC12aWV3 ZXIvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS1mb250LXZpZXdlci90ZW1wbGF0ZQpAQCAt MSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLWZvbnQtdmlld2VyJwogcGtn bmFtZT1nbm9tZS1mb250LXZpZXdlcgogdmVyc2lvbj0zLjM0LjAKLXJldmlzaW9uPTEKK3Jldmlz aW9uPTIKIGJ1aWxkX3N0eWxlPW1lc29uCiBob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcgZ2xp Yi1kZXZlbCIKIG1ha2VkZXBlbmRzPSJmb250Y29uZmlnLWRldmVsIGZyZWV0eXBlLWRldmVsIGds aWItZGV2ZWwgZ3RrKzMtZGV2ZWwKCkZyb20gMzNkZjc1ODIzOTJhZDRhMGUyYzI0ZWNkODcwZmQw ZDQxODEwODFjMiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4y NUBvdXRsb29rLmNvbT4KRGF0ZTogU3VuLCAzIE1heSAyMDIwIDAyOjI3OjE3ICswNjAwClN1Ympl Y3Q6IFtQQVRDSCA0OS81Ml0gZ25vbWUtc2NyZWVuc2F2ZXI6IHJlYnVpbGQgYWdhaW5zdAogbGli Z25vbWUtZGVza3RvcC0zLnNvLjE5CgotLS0KIC4uLi9wYXRjaGVzL2dub21lLWRlc2t0b3AtMy4z Ni5wYXRjaCAgICAgICAgICAgICAgICB8IDEzICsrKysrKysrKysrKysKIHNyY3BrZ3MvZ25vbWUt c2NyZWVuc2F2ZXIvdGVtcGxhdGUgICAgICAgICAgICAgICAgICB8ICA1ICsrKy0tCiAyIGZpbGVz IGNoYW5nZWQsIDE2IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAx MDA2NDQgc3JjcGtncy9nbm9tZS1zY3JlZW5zYXZlci9wYXRjaGVzL2dub21lLWRlc2t0b3AtMy4z Ni5wYXRjaAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtc2NyZWVuc2F2ZXIvcGF0Y2hlcy9n bm9tZS1kZXNrdG9wLTMuMzYucGF0Y2ggYi9zcmNwa2dzL2dub21lLXNjcmVlbnNhdmVyL3BhdGNo ZXMvZ25vbWUtZGVza3RvcC0zLjM2LnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw MDAwMDAwMDAwLi41OGQ5MmU0NjNhMwotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvZ25vbWUt c2NyZWVuc2F2ZXIvcGF0Y2hlcy9nbm9tZS1kZXNrdG9wLTMuMzYucGF0Y2gKQEAgLTAsMCArMSwx MyBAQAorZGlmZiAtTmF1ciBnbm9tZS1zY3JlZW5zYXZlci0zLjYuMS5vcmlnL3NyYy9ncy1tYW5h Z2VyLmMgZ25vbWUtc2NyZWVuc2F2ZXItMy42LjEvc3JjL2dzLW1hbmFnZXIuYworLS0tIGdub21l LXNjcmVlbnNhdmVyLTMuNi4xLm9yaWcvc3JjL2dzLW1hbmFnZXIuYwkyMDIwLTAzLTA4IDA4OjUz OjQ2LjQwODQzMTU3OCArMDAwMAorKysrIGdub21lLXNjcmVlbnNhdmVyLTMuNi4xL3NyYy9ncy1t YW5hZ2VyLmMJMjAyMC0wMy0wOCAwODo1NDozMS44NzU3Mzg3MzIgKzAwMDAKK0BAIC03ODgsOCAr Nzg4LDcgQEAKKyAgICAgICAgIHN1cmZhY2UgPSBnbm9tZV9iZ19jcmVhdGVfc3VyZmFjZSAobWFu YWdlci0+cHJpdi0+YmcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIGdka193aW5kb3csCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHdpZHRoLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBo ZWlnaHQsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZBTFNF KTsKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0KTsK KyAgICAgICAgIGdzX3dpbmRvd19zZXRfYmFja2dyb3VuZF9zdXJmYWNlICh3aW5kb3csIHN1cmZh Y2UpOworICAgICAgICAgY2Fpcm9fc3VyZmFjZV9kZXN0cm95IChzdXJmYWNlKTsKKyB9CmRpZmYg LS1naXQgYS9zcmNwa2dzL2dub21lLXNjcmVlbnNhdmVyL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9t ZS1zY3JlZW5zYXZlci90ZW1wbGF0ZQppbmRleCAzNjNmY2YxMmUxMC4uNTRhOWEzNWVjY2IgMTAw NjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtc2NyZWVuc2F2ZXIvdGVtcGxhdGUKKysrIGIvc3JjcGtn cy9nbm9tZS1zY3JlZW5zYXZlci90ZW1wbGF0ZQpAQCAtMSwxNSArMSwxNiBAQAogIyBUZW1wbGF0 ZSBmaWxlIGZvciAnZ25vbWUtc2NyZWVuc2F2ZXInCiBwa2duYW1lPWdub21lLXNjcmVlbnNhdmVy CiB2ZXJzaW9uPTMuNi4xCi1yZXZpc2lvbj0yCityZXZpc2lvbj0zCiBidWlsZF9zdHlsZT1nbnUt Y29uZmlndXJlCiBjb25maWd1cmVfYXJncz0iLS1lbmFibGUtY29tcGlsZS13YXJuaW5ncz1taW5p bXVtIgogaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIGF1dG9tYWtlIGludGx0b29sIGdsaWIt ZGV2ZWwiCiBtYWtlZGVwZW5kcz0iZ25vbWUtZGVza3RvcC1kZXZlbCBkYnVzLWdsaWItZGV2ZWwg cGFtLWRldmVsIgogZGVwZW5kcz0iZ25vbWUtZGVza3RvcCBsaWJnbm9tZWtiZCBkYnVzIgotc2hv cnRfZGVzYz0iQSBuZXcgc2NyZWVuc2F2ZXIgdGhhdCBjYW4gcmVwbGFjZSB4c2NyZWVuc2F2ZXIi CitzaG9ydF9kZXNjPSJOZXcgc2NyZWVuc2F2ZXIgdGhhdCBjYW4gcmVwbGFjZSB4c2NyZWVuc2F2 ZXIiCiBtYWludGFpbmVyPSJzaGl6b25pYyA8cmVhbHRpYXpAZ21haWwuY29tPiIKIGxpY2Vuc2U9 IkdQTC0zLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9Qcm9q ZWN0cy9Hbm9tZVNjcmVlbnNhdmVyIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFt ZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgogY2hlY2tzdW09 ZjM5Yjc4ZDRmN2ZlZDc0OGM3ZjBhMzFkNjk0MTEyZmI5MDdjNmQzYzRlNjNkYjIyZWI4NThkZjA3 ZTk2MmNkMAorcGF0Y2hfYXJncz0iLU5wMSIKCkZyb20gZTYzOTY5ZTMyZTYwZmViMTk2YmMyMGUy NWMyYjJiYjhjYTFkNTgxOCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1u YWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogU3VuLCAzIE1heSAyMDIwIDExOjQzOjE5ICswNjAw ClN1YmplY3Q6IFtQQVRDSCA1MC81Ml0gZ25vbWUtd2VhdGhlcjogcmVidWlsZCBhZ2FpbnN0IGxp Ymdub21lLWRlc2t0b3AtMy5zby4xOQoKLS0tCiBzcmNwa2dzL2dub21lLXdlYXRoZXIvdGVtcGxh dGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkK CmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLXdlYXRoZXIvdGVtcGxhdGUgYi9zcmNwa2dzL2du b21lLXdlYXRoZXIvdGVtcGxhdGUKaW5kZXggZDMwYmU5YmYxOTIuLmMwMjhlNDZiYTY1IDEwMDY0 NAotLS0gYS9zcmNwa2dzL2dub21lLXdlYXRoZXIvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9t ZS13ZWF0aGVyL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAn Z25vbWUtd2VhdGhlcicKIHBrZ25hbWU9Z25vbWUtd2VhdGhlcgogdmVyc2lvbj0zLjM2LjEKLXJl dmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX2hlbHBlcj0iZ2lyIgogYnVpbGRfc3R5bGU9bWVz b24KIGhvc3RtYWtlZGVwZW5kcz0iZ2V0dGV4dCBwa2ctY29uZmlnIGl0c3Rvb2wgZ2xpYi1kZXZl bCBnanMiCgpGcm9tIGZjNmZkYTIwZTdiMTU3ZTgxOTNmMDI5NzI0ZWFiNmIyYmVhNDIyNmMgTW9u IFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+ CkRhdGU6IFRodSwgMzAgQXByIDIwMjAgMDI6NTc6NTcgKzA2MDAKU3ViamVjdDogW1BBVENIIDUx LzUyXSB0b3RlbTogcmVidWlsZCBhZ2FpbnN0IGxpYmdub21lLWRlc2t0b3AtMy5zby4xOQoKLS0t CiBzcmNwa2dzL3RvdGVtL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0 aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy90b3RlbS90ZW1wbGF0 ZSBiL3NyY3BrZ3MvdG90ZW0vdGVtcGxhdGUKaW5kZXggODE1MjJiMzE0ODguLmU0MTg2NjMyMTUz IDEwMDY0NAotLS0gYS9zcmNwa2dzL3RvdGVtL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvdG90ZW0v dGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICd0b3RlbScKIHBr Z25hbWU9dG90ZW0KIHZlcnNpb249My4zNC4xCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWls ZF9zdHlsZT1tZXNvbgogYnVpbGRfaGVscGVyPSJnaXIiCiBjb25maWd1cmVfYXJncz0iLURlbmFi bGUtcHl0aG9uPW5vIC1EZW5hYmxlLW5hdXRpbHVzPXllcwoKRnJvbSBjMzg5MzFlODQ2YjdjODE2 NzA2YzI2YTg4Yzc5NTkxNjU5N2UwODUxIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBO YWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUaHUsIDMwIEFwciAyMDIwIDAzOjA0 OjA3ICswNjAwClN1YmplY3Q6IFtQQVRDSCA1Mi81Ml0gbHV0cmlzOiByZWJ1aWxkIGFnYWluc3Qg bGliZ25vbWUtZGVza3RvcC0zLnNvLjE5CgpbY2kgc2tpcF0KLS0tCiBzcmNwa2dzL2x1dHJpcy90 ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlv bigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbHV0cmlzL3RlbXBsYXRlIGIvc3JjcGtncy9sdXRy aXMvdGVtcGxhdGUKaW5kZXggYzNjNDczOTJmZjYuLjdlZTc0Y2M3OTkwIDEwMDY0NAotLS0gYS9z cmNwa2dzL2x1dHJpcy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2x1dHJpcy90ZW1wbGF0ZQpAQCAt MSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2x1dHJpcycKIHBrZ25hbWU9bHV0cmlz CiB2ZXJzaW9uPTAuNS42Ci1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBhcmNocz1ub2FyY2gKIGJ1 aWxkX3N0eWxlPXB5dGhvbjMtbW9kdWxlCiBidWlsZF9oZWxwZXI9ImdpciIK --===============2098308799546709752==--