From mboxrd@z Thu Jan 1 00:00:00 1970 Received: (qmail 23071 invoked from network); 7 Jul 2020 15:20:41 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 7 Jul 2020 15:20:41 -0000 Content-Type: multipart/mixed; boundary="===============8239383903060667052==" MIME-Version: 1.0 Subject: =?utf8?q?Re=3A_=5BPR_PATCH=5D_=5BUpdated=5D_gnome_3=2E36_updates?= To: ml@inbox.vuxu.org From: mnabid Reply-to: ml@inbox.vuxu.org In-Reply-To: References: Date: Tue, 07 Jul 2020 17:20:41 +0200 List-Id: Message-ID: <20200707152041.V0t-Em8mkPSAtn0MIfLcPlMWD2Q74Gua1MhZ-pk6KNw@z> GitHub notification mails are now in MIME to allow UTF8. --===============8239383903060667052== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkgbW5hYmlkIGFnYWluc3QgbWFzdGVy IG9uIHRoZSB2b2lkLXBhY2thZ2VzIHJlcG9zaXRvcnkKCmh0dHBzOi8vZ2l0aHViLmNvbS9tbmFi aWQvdm9pZC1wYWNrYWdlcyBnZWRpdApodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51eC92b2lk LXBhY2thZ2VzL3B1bGwvMjEzODIKCmdub21lIDMuMzYgdXBkYXRlcwo8ZGV0YWlscz4NCjxzdW1t YXJ5PjxpPkxpc3Qgb2YgdXBkYXRlcyA6IDwvaT48L3N1bW1hcnk+DQoNCiAqIGF0ayAtPiAyLjM2 LjANCiAqIGF0LXNwaTItYXRrIC0+IDIuMzQuMg0KICogYnVkZ2llLWRlc2t0b3AgLT4gKHJldmJ1 bXApDQogKiBjaGVlc2UgLT4gKHJldmJ1bXApDQogKiBkY29uZi1lZGl0b3IgLT4gMy4zNi4yDQog KiBkZXZoZWxwIC0+IDMuMzYuMg0KICogZW9nIC0+IDMuMzYuMg0KICogZXZpbmNlIC0+IDMuMzYu Mw0KICogZXZvbHV0aW9uIC0+IDMuMzYuMw0KICogZXZvbHV0aW9uLWRhdGEtc2VydmVyIC0+IDMu MzYuMw0KICogZXZvbHV0aW9uLWV3cyAtPiAzLjM2LjMNCiAqIGZpbGUtcm9sbGVyIC0+IDMuMzYu Mg0KICogZm9sa3MgLT4gMC4xNC4wDQogKiBnZG0gLT4gMy4zNi4yDQogKiBnZWRpdCAtPiAzLjM2 LjINCiAqIGdub21lLWJvb2tzIC0+IChyZXZidW1wKQ0KICogZ25vbWUtY2hhcmFjdGVycyAtPiAo cmV2YnVtcCkNCiAqIGdub21lLWNsb2NrcyAtPiAzLjM2LjINCiAqIGdub21lLWNvbnRhY3RzIC0+ IDMuMzYuMQ0KICogZ25vbWUtY29udHJvbC1jZW50ZXIgLT4gMy4zNi4zDQogKiBnbm9tZS1kZXNr dG9wIC0+IDMuMzYuMg0KICogZ25vbWUtZG9jdW1lbnRzIC0+IChyZXZidW1wKQ0KICogZ25vbWUt ZXB1Yi10aHVtYm5haWxlciAtPiAxLjYNCiAqIGdub21lLWZsYXNoYmFjayAtPiAzLjM2LjMNCiAq IGdub21lLWZvbnQtdmlld2VyIC0+IChyZXZidW1wKQ0KICogZ25vbWUtZ2V0dGluZy1zdGFydGVk LWRvY3MgLT4gMy4zNi4yDQogKiBnbm9tZS1pbml0aWFsLXNldHVwIC0+IDMuMzYuMw0KICogZ25v bWUtbWFwcyAtPiAzLjM2LjINCiAqIGdub21lLW1lbnVzIC0+IDMuMzYuMA0KICogZ25vbWUtbXVz aWMgLT4gMy4zNi4zDQogKiBnbm9tZS1wYW5lbCAtPiAzLjM2LjENCiAqIGdub21lLXBvZGNhc3Rz IC0+IDAuNC43DQogKiBnbm9tZS1zY3JlZW5zYXZlciAtPiAocmV2YnVtcCkNCiAqIGdub21lLXNl c3Npb24gLT4gMy4zNi4wDQogKiBnbm9tZS1zZXR0aW5ncy1kYWVtb24gLT4gMy4zNi4xDQogKiBn bm9tZS1zaGVsbCAtPiAzLjM2LjMNCiAqIGdub21lLXNoZWxsLWV4dGVuc2lvbnMgLT4gMy4zNi4y DQogKiBnbm9tZS10ZXJtaW5hbCAtPiAzLjM2LjINCiAqIGdub21lLXVzZXItZG9jcyAtPiAzLjM2 LjINCiAqIGdub21lLXdlYXRoZXIgLT4gKHJldmJ1bXApDQogKiBncmFwaGVuZSAtPiAxLjEwLjAN CiAqIGx1dHJpcyAtPiAocmV2YnVtcCkNCiAqIG1ldGFjaXR5IC0+IDMuMzYuMQ0KICogbXV0dGVy IC0+IDMuMzYuMw0KICogbmF1dGlsdXMgLT4gMy4zNi4zDQogKiBvcmNhIC0+IDMuMzYuMg0KICog cHl0aG9uLWF0c3BpIC0+IDIuMzYuMA0KICogcHl0aG9uMy1hdHNwaSAtPiAyLjM2LjANCiAqIHRv dGVtIC0+IChyZXZidW1wKQ0KICogdHJhY2tlciAtPiAyLjMuNA0KICogeGRnLWRlc2t0b3AtcG9y dGFsLWd0ayAtPiAocmV2YnVtcCkNCjwvZGV0YWlscz4NCg0KQnVpbHQgbmF0aXZlbHkgaW4gYHg4 Nl82NGAgYW5kIGNyb3NzYnVpbHQgZm9yIGBhcm12N2xgLgoKQSBwYXRjaCBmaWxlIGZyb20gaHR0 cHM6Ly9naXRodWIuY29tL3ZvaWQtbGludXgvdm9pZC1wYWNrYWdlcy9wdWxsLzIxMzgyLnBhdGNo IGlzIGF0dGFjaGVk --===============8239383903060667052== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-gedit-21382.patch" RnJvbSAwZGUxNWZhZDM4NDA3YmE5ZjBkYzQzNzYyNTQ2OWY5YmI5Yzg1MzhlIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBU dWUsIDE2IEp1biAyMDIwIDE5OjQyOjUzICswNjAwClN1YmplY3Q6IFtQQVRDSCAwMS82MV0gZ25v bWUtZGVza3RvcDogdXBkYXRlIHRvIDMuMzYuMi4KCkNsb3NlczogIzIxMzgyCi0tLQogY29tbW9u L3NobGlicyAgICAgICAgICAgICAgICAgIHwgMiArLQogc3JjcGtncy9nbm9tZS1kZXNrdG9wL3Rl bXBsYXRlIHwgOCArKysrLS0tLQogMiBmaWxlcyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDUg ZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvY29tbW9uL3NobGlicyBiL2NvbW1vbi9zaGxpYnMK aW5kZXggZWQxOTA2YmJiNzguLjcxNzkwYTEwNGZiIDEwMDY0NAotLS0gYS9jb21tb24vc2hsaWJz CisrKyBiL2NvbW1vbi9zaGxpYnMKQEAgLTExODIsNyArMTE4Miw3IEBAIGxpYmdzdGJhc2VjYW1l cmFiaW5zcmMtMS4wLnNvLjAgZ3N0LXBsdWdpbnMtYmFkMS0xLjAuMF8xCiBsaWJnc3Rjb2RlY3Bh cnNlcnMtMS4wLnNvLjAgZ3N0LXBsdWdpbnMtYmFkMS0xLjAuMF8xCiBsaWJnc3RwbGF5ZXItMS4w LnNvLjAgZ3N0LXBsdWdpbnMtYmFkMS0xLjAuMF8xCiBsaWJnc3RnbC0xLjAuc28uMCBnc3QtcGx1 Z2lucy1iYXNlMS0xLjE0LjBfMQotbGliZ25vbWUtZGVza3RvcC0zLnNvLjE4IGdub21lLWRlc2t0 b3AtMy4zNC4wXzEKK2xpYmdub21lLWRlc2t0b3AtMy5zby4xOSBnbm9tZS1kZXNrdG9wLTMuMzYu Ml8xCiBsaWJzZWNyZXQtMS5zby4wIGxpYnNlY3JldC0wLjEwXzEKIGxpYmd3ZWF0aGVyLTMuc28u MTYgbGliZ3dlYXRoZXItMy4zNC4wXzEKIGxpYmdub21la2JkLnNvLjggbGliZ25vbWVrYmQtMy42 LjBfMQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1kZXNrdG9wL3RlbXBsYXRlIGIvc3JjcGtn cy9nbm9tZS1kZXNrdG9wL3RlbXBsYXRlCmluZGV4IDk5MmNiMWZmMTZhLi5jMWE3NDA4YzIwNyAx MDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1kZXNrdG9wL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mv Z25vbWUtZGVza3RvcC90ZW1wbGF0ZQpAQCAtMSwxMSArMSwxMSBAQAogIyBUZW1wbGF0ZSBmaWxl IGZvciAnZ25vbWUtZGVza3RvcCcKIHBrZ25hbWU9Z25vbWUtZGVza3RvcAotdmVyc2lvbj0zLjM0 LjEKK3ZlcnNpb249My4zNi4yCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1tZXNvbgogYnVpbGRf aGVscGVyPSJnaXIiCi1jb25maWd1cmVfYXJncz0iLURnbm9tZS1kaXN0cmlidXRvcj1Wb2lkTGlu dXggLUR1ZGV2PWVuYWJsZWQKLSAtRGludHJvc3BlY3Rpb249JCh2b3B0X2lmIGdpciB0cnVlIGZh bHNlKSIKK2NvbmZpZ3VyZV9hcmdzPSItRGdub21lX2Rpc3RyaWJ1dG9yPVZvaWRMaW51eCAtRHVk ZXY9ZW5hYmxlZAorIC1Ec3lzdGVtZD1kaXNhYmxlZCAtRGludHJvc3BlY3Rpb249JCh2b3B0X2lm IGdpciB0cnVlIGZhbHNlKSIKIGhvc3RtYWtlZGVwZW5kcz0iZ2V0dGV4dCBpdHN0b29sIHBrZy1j b25maWcgZ2xpYi1kZXZlbCIKIG1ha2VkZXBlbmRzPSJldWRldi1saWJ1ZGV2LWRldmVsIGdzZXR0 aW5ncy1kZXNrdG9wLXNjaGVtYXMtZGV2ZWwgZ3RrKzMtZGV2ZWwKICBpc28tY29kZXMgbGliZ2xp Yi1kZXZlbCBsaWJzZWNjb21wLWRldmVsIGxpYlgxMS1kZXZlbCBsaWJYZXh0LWRldmVsCkBAIC0x Niw3ICsxNiw3IEBAIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9y Zz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyLCBMR1BMLTIuMS1vci1sYXRlciIKIGhvbWVw YWdlPSJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtZGVza3RvcCIKIGRpc3Rm aWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0k e3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPWMxZGJlYjU2NjZkYWQyNzE2NmM3NjllNDhlMmFi NDFkZDVlZDc0NzE4ZWEzNWViNTdjODQ4ODc5MDY2MmRjNWEKK2NoZWNrc3VtPTM4Zjk5NGRjYjFl MWFlMDkzZDFjOTI5YzdhY2M0Zjg4ZTM5MTExZTQzYjVmZGMxMzEyNWIwZjZlMjMxMWM3ODkKIAog YnVpbGRfb3B0aW9ucz0iZ2lyIgogYnVpbGRfb3B0aW9uc19kZWZhdWx0PSJnaXIiCgpGcm9tIGRi YzcwM2M4Y2FjZTg5MDE1OGMwYzRmMzU0ZmE5MjY3ODhlMTU1YzYgTW9uIFNlcCAxNyAwMDowMDow MCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFR1ZSwgMTYg SnVuIDIwMjAgMTk6NDM6MTggKzA2MDAKU3ViamVjdDogW1BBVENIIDAyLzYxXSBnbm9tZS1zZXNz aW9uOiB1cGRhdGUgdG8gMy4zNi4wLgoKLS0tCiBzcmNwa2dzL2dub21lLXNlc3Npb24vdGVtcGxh dGUgfCAxMCArKysrKysrLS0tCiAxIGZpbGUgY2hhbmdlZCwgNyBpbnNlcnRpb25zKCspLCAzIGRl bGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtc2Vzc2lvbi90ZW1wbGF0ZSBi L3NyY3BrZ3MvZ25vbWUtc2Vzc2lvbi90ZW1wbGF0ZQppbmRleCA0NDQ0ZjE2MmJmMS4uODhkZWUy MGViNmUgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtc2Vzc2lvbi90ZW1wbGF0ZQorKysgYi9z cmNwa2dzL2dub21lLXNlc3Npb24vdGVtcGxhdGUKQEAgLTEsOSArMSw5IEBACiAjIFRlbXBsYXRl IGZpbGUgZm9yICdnbm9tZS1zZXNzaW9uJwogcGtnbmFtZT1nbm9tZS1zZXNzaW9uCi12ZXJzaW9u PTMuMzQuMQordmVyc2lvbj0zLjM2LjAKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPW1lc29uCi1j b25maWd1cmVfYXJncz0iLURzeXN0ZW1kX2pvdXJuYWw9ZmFsc2UiCitjb25maWd1cmVfYXJncz0i LURzeXN0ZW1kX3Nlc3Npb249ZGlzYWJsZSAtRHN5c3RlbWRfam91cm5hbD1mYWxzZSIKIGhvc3Rt YWtlZGVwZW5kcz0iZ2xpYi1kZXZlbCBpbnRsdG9vbCBwa2ctY29uZmlnIHhtbHRvIgogbWFrZWRl cGVuZHM9ImVsb2dpbmQtZGV2ZWwgZ25vbWUtZGVza3RvcC1kZXZlbCBndGsrMy1kZXZlbCBqc29u LWdsaWItZGV2ZWwKICBsaWJnbGliLWRldmVsIGxpYklDRS1kZXZlbCBsaWJTTS1kZXZlbCBsaWJY dHN0LWRldmVsIHN0YXJ0dXAtbm90aWZpY2F0aW9uLWRldmVsCkBAIC0xNSw0ICsxNSw4IEBAIG1h aW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJH UEwtMi4wLW9yLWxhdGVyLCBMR1BMLTIuMS1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL2dp dGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2Vzc2lvbiIKIGRpc3RmaWxlcz0iJHtHTk9NRV9T SVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54 eiIKLWNoZWNrc3VtPWQ3ODAxZmUyZDVhNzUxYjE5Y2I1ODA4MTc3MTMxNmE3NmFhYmQ1YzU1MGNk NThkNGU0YzZhNWE0ZWQzNTY2NjAKK2NoZWNrc3VtPWQ1NGIzOGI4MThjODEyZjY0YjgyY2M2YTEy NzllM2NhNWE2ZTM5MWVlNjYyNzkzMzIyYTM4Y2FiNTY3MGJiN2EKKworcG9zdF9pbnN0YWxsKCkg eworCXJtIC1yZiAke0RFU1RESVJ9L3Vzci9saWIvc3lzdGVtZAorfQoKRnJvbSBjOGFlZjUxN2Vh ZDgyMTFlODcxZTk4OWU3NjQ3MDAwMDcyYzMyYjg4IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpG cm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUdWUsIDE2IEp1biAyMDIw IDE5OjQzOjI1ICswNjAwClN1YmplY3Q6IFtQQVRDSCAwMy82MV0gbmF1dGlsdXM6IHVwZGF0ZSB0 byAzLjM2LjMuCgotLS0KIHNyY3BrZ3MvbmF1dGlsdXMvdGVtcGxhdGUgfCA2ICsrKy0tLQogMSBm aWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQg YS9zcmNwa2dzL25hdXRpbHVzL3RlbXBsYXRlIGIvc3JjcGtncy9uYXV0aWx1cy90ZW1wbGF0ZQpp bmRleCA1MzdhODUxOTczZi4uOTRjYjEwNDkyY2EgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvbmF1dGls dXMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9uYXV0aWx1cy90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYg QEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ25hdXRpbHVzJwogcGtnbmFtZT1uYXV0aWx1cwotdmVy c2lvbj0zLjM2LjEuMQordmVyc2lvbj0zLjM2LjMKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPW1l c29uCiBidWlsZF9oZWxwZXI9ImdpciIKQEAgLTE2LDggKzE2LDggQEAgc2hvcnRfZGVzYz0iR05P TUUgZmlsZSBtYW5hZ2VyIgogbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGlu dXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIsIExHUEwtMi4xLW9yLWxhdGVyIgog aG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcvTmF1dGlsdXMiCi1kaXN0ZmlsZXM9IiR7 R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb246OjR9LyR7cGtnbmFtZX0tJHt2ZXJzaW9u fS50YXIueHoiCi1jaGVja3N1bT1mOTI1MmY1MDgyMTFkOWYzNjhhNDlkYjY5Nzg5MGY4OTVkMDgw ZjA5NTkwYWVjYWYzMzgwM2E1MTlkZWY3YmRlCitkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtw a2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCitjaGVj a3N1bT1iNmNhZmM3YWIxZTcwYTY0MzgzZGUzOTFiNjA5N2ZjY2NiZjM2YjIwOGY4NTAyZDhjNDY0 MjMyMjRmZDMwZWY4CiAKIGJ1aWxkX29wdGlvbnM9ImdpciIKIGJ1aWxkX29wdGlvbnNfZGVmYXVs dD0iZ2lyIgoKRnJvbSBlNTRiMDI1YjM1MWVlMDdlMWU0NmMyZTBkMDNjOWUxNmMyNzJjYjlhIE1v biBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29t PgpEYXRlOiBUdWUsIDE2IEp1biAyMDIwIDE5OjQzOjMyICswNjAwClN1YmplY3Q6IFtQQVRDSCAw NC82MV0gZ25vbWUtbXVzaWM6IHVwZGF0ZSB0byAzLjM2LjMuCgotLS0KIHNyY3BrZ3MvZ25vbWUt bXVzaWMvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyks IDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1tdXNpYy90ZW1wbGF0 ZSBiL3NyY3BrZ3MvZ25vbWUtbXVzaWMvdGVtcGxhdGUKaW5kZXggMTI1MTE3MzY0MDcuLjIyNzNh YzFjYTE2IDEwMDY0NAotLS0gYS9zcmNwa2dzL2dub21lLW11c2ljL3RlbXBsYXRlCisrKyBiL3Ny Y3BrZ3MvZ25vbWUtbXVzaWMvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZp bGUgZm9yICdnbm9tZS1tdXNpYycKIHBrZ25hbWU9Z25vbWUtbXVzaWMKLXZlcnNpb249My4zNi4x Cit2ZXJzaW9uPTMuMzYuMwogcmV2aXNpb249MQogYnVpbGRfaGVscGVyPSJnaXIiCiBidWlsZF9z dHlsZT1tZXNvbgpAQCAtMTUsNSArMTUsNSBAQCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290 dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdl PSJodHRwczovL3dpa2kuZ25vbWUub3JnL0FwcHMvTXVzaWMiCiBkaXN0ZmlsZXM9IiR7R05PTUVf U0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIu eHoiCi1jaGVja3N1bT03YjgwZjYzMGQxNTgzMzQ5MzVhODc2MDI5NjU1MGNjOTFiNTBkNjA0ZmE2 OGI0MDJmZTUxNjViMTUzMWVjMzMyCitjaGVja3N1bT01NGY4ZDI0MGY4OTk1ZjRjZmY0ZGNlNWUx Y2JkYzYwYmVmYzgxZDc5YmY3MmMxZTRmZDgwN2VkMDVjMTE0MjM3CiBsaWIzMmRpc2FibGVkPXll cwoKRnJvbSA3ZGVkZDExNzEwZTgwN2NhZjc3Mzk5MjZhNjExMDlkZTBiYjNjYzk3IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRl OiBUdWUsIDE2IEp1biAyMDIwIDE5OjQzOjM4ICswNjAwClN1YmplY3Q6IFtQQVRDSCAwNS82MV0g ZGV2aGVscDogdXBkYXRlIHRvIDMuMzYuMi4KCi0tLQogc3JjcGtncy9kZXZoZWxwL3RlbXBsYXRl IHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygt KQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZGV2aGVscC90ZW1wbGF0ZSBiL3NyY3BrZ3MvZGV2aGVs cC90ZW1wbGF0ZQppbmRleCBhMWMyZGNiYjc2Mi4uYmE3NWRmZmRjZTcgMTAwNjQ0Ci0tLSBhL3Ny Y3BrZ3MvZGV2aGVscC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2RldmhlbHAvdGVtcGxhdGUKQEAg LTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdkZXZoZWxwJwogcGtnbmFtZT1kZXZo ZWxwCi12ZXJzaW9uPTMuMzYuMQordmVyc2lvbj0zLjM2LjIKIHJldmlzaW9uPTEKIGJ1aWxkX2hl bHBlcj0iZ2lyIgogYnVpbGRfc3R5bGU9bWVzb24KQEAgLTExLDcgKzExLDcgQEAgbWFpbnRhaW5l cj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAt b3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9BcHBzL0RldmhlbHAi CiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtn bmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT00Y2Y4ZWM5MzAyYmM0YTc5ZTAxYWM1 M2JkOWM4Yjk1YTU5NmY3MWYzNTM1MWY0OGI2MzI2MzIyN2YwOWE4YTNkCitjaGVja3N1bT04YjVh ODQzMTllZmJiMmVmMWJjNDAyMmVlM2VkMmQ2Njc4Nzk0ZWJhMmRmYTk5M2U1MGUwM2Q2ZTdiOTMw YzVlCiAKIGRldmhlbHAtZGV2ZWxfcGFja2FnZSgpIHsKIAlzaG9ydF9kZXNjKz0iIC0gZGV2ZWxv cG1lbnQgZmlsZXMiCgpGcm9tIGQ0YWFhNDhlNTEyMDMxM2U2MWY1MmU2NmIyMWRiNDY3ZWMzYzAz OWIgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9v ay5jb20+CkRhdGU6IFR1ZSwgMTYgSnVuIDIwMjAgMTk6NDM6NTEgKzA2MDAKU3ViamVjdDogW1BB VENIIDA2LzYxXSBlb2c6IHVwZGF0ZSB0byAzLjM2LjIuCgotLS0KIHNyY3BrZ3MvZW9nL3RlbXBs YXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9u cygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZW9nL3RlbXBsYXRlIGIvc3JjcGtncy9lb2cvdGVt cGxhdGUKaW5kZXggZTRjYWNiNzA3OWUuLmNmYTFjZjU3NTk0IDEwMDY0NAotLS0gYS9zcmNwa2dz L2VvZy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2VvZy90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAK ICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2VvZycKIHBrZ25hbWU9ZW9nCi12ZXJzaW9uPTMuMzYuMQor dmVyc2lvbj0zLjM2LjIKIHJldmlzaW9uPTEKIGJ1aWxkX2hlbHBlcj0iZ2lyIgogYnVpbGRfc3R5 bGU9bWVzb24KQEAgLTE0LDcgKzE0LDcgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRv eEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0i aHR0cHM6Ly93aWtpLmdub21lLm9yZy9BcHBzL0V5ZU9mR25vbWUiCiBkaXN0ZmlsZXM9IiR7R05P TUVfU0lURX0vZW9nLyR7dmVyc2lvbiUuKn0vZW9nLSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tz dW09ZTQ1NGExYTdhYTVlM2EzMzIxZWFiMDExNjc3ODExMGU1YTdhN2I2M2JjZjIxNjc2ZWRhMWE3 YmUxODdjOWM5NQorY2hlY2tzdW09NWMwNTZiMDI5NWE4ZTA2ZDA5M2I4ZmM2MGIxMGUyYThjMTlh YmRiN2JlYWUxYzdlN2UwNTk1ZWNlMmUxYjc4Ywogc2hsaWJfcHJvdmlkZXM9ImxpYmVvZy5zbyIK IGxpYjMyZGlzYWJsZWQ9eWVzCiAKCkZyb20gNWQwZjNiZDZkNGE4NjRmYzM3OTFhMTUyMjdhYjQw YzcyYjY3MGM0MiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4y NUBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCAxNiBKdW4gMjAyMCAxOTo0NDowNyArMDYwMApTdWJq ZWN0OiBbUEFUQ0ggMDcvNjFdIGdub21lLW1hcHM6IHVwZGF0ZSB0byAzLjM2LjIuCgouLi4gYW5k IHVubWFyayBub2Nyb3NzLgotLS0KIGNvbW1vbi9zaGxpYnMgICAgICAgICAgICAgICB8IDEgKwog c3JjcGtncy9nbm9tZS1tYXBzL3RlbXBsYXRlIHwgOCArKysrLS0tLQogMiBmaWxlcyBjaGFuZ2Vk LCA1IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvY29tbW9uL3No bGlicyBiL2NvbW1vbi9zaGxpYnMKaW5kZXggNzE3OTBhMTA0ZmIuLjA1ODY1YmY1NTc2IDEwMDY0 NAotLS0gYS9jb21tb24vc2hsaWJzCisrKyBiL2NvbW1vbi9zaGxpYnMKQEAgLTYyMiw2ICs2MjIs NyBAQCBsaWJjYW5iZXJyYS1ndGszLnNvLjAgbGliY2FuYmVycmEtZ3RrMy0wLjMwXzYKIGxpYmd0 b3AtMi4wLnNvLjExIGxpYmd0b3AtMi4zOC4wXzEKIGxpYnJhcmlhbi5zby4wIHJhcmlhbi0wLjgu MV8xCiBsaWJtdXNpa2NvcmUuc28gbXVzaWtjdWJlLTAuNjAuMV8xCitsaWJnbm9tZS1tYXBzLnNv LjAgZ25vbWUtbWFwcy0zLjM2LjJfMQogbGliZ25vbWUtbWVudS0zLnNvLjAgZ25vbWUtbWVudXMt Mi45MS42XzEKIGxpYmFydF9sZ3BsXzIuc28uMiBsaWJhcnQtMi4zLjIwXzEKIGxpYmdub21lY2Fu dmFzLTIuc28uMCBsaWJnbm9tZWNhbnZhcy0yLjMwLjFfMQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9n bm9tZS1tYXBzL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1tYXBzL3RlbXBsYXRlCmluZGV4IDAz MDBiZTYwNTk5Li5hNjdkODRmNDM5NiAxMDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1tYXBzL3Rl bXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtbWFwcy90ZW1wbGF0ZQpAQCAtMSw5ICsxLDEwIEBA CiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbm9tZS1tYXBzJwogcGtnbmFtZT1nbm9tZS1tYXBzCi12 ZXJzaW9uPTMuMzYuMQordmVyc2lvbj0zLjM2LjIKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPW1l c29uCi1ob3N0bWFrZWRlcGVuZHM9ImdsaWItZGV2ZWwgZ29iamVjdC1pbnRyb3NwZWN0aW9uIGlu dGx0b29sIHBrZy1jb25maWcgQXBwU3RyZWFtIgorYnVpbGRfaGVscGVyPSJnaXIiCitob3N0bWFr ZWRlcGVuZHM9ImdsaWItZGV2ZWwgZ2pzLWRldmVsIGludGx0b29sIHBrZy1jb25maWcgQXBwU3Ry ZWFtIgogbWFrZWRlcGVuZHM9ImZvbGtzLWRldmVsIGdlb2NsdWUyLWRldmVsIGdlb2NvZGUtZ2xp Yi1kZXZlbCBnanMtZGV2ZWwKICBnbm9tZS1kZXNrdG9wLWRldmVsIGxpYmNoYW1wbGFpbi1kZXZl bCByZXN0LWRldmVsIgogZGVwZW5kcz0iZ2VvY2x1ZTIgZ2ZiZ3JhcGggZ2pzIgpAQCAtMTIsNSAr MTMsNCBAQCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+Igog bGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUu b3JnL0FwcHMvTWFwcyIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVy c2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTFhMzJlZmQ5 NmFkODk4Zjc3YTYzNmQyZDA0NjNkNzU3MDA5YjRiODEyMjU5Yzg5ZmZkY2I5MWQ2YWZjMDUyZjkK LW5vY3Jvc3M9ImV2b2x1dGlvbi1kYXRhc2VydmVyIGNyb3NzIGdpciBkb2Vzbid0IHdvcmsiCitj aGVja3N1bT01YmEyMTliOWRlOTg2NzhjZWZhNTg0OGY2NTM4ZGI4ZGJkMDdmNmM3NDdmZDQzYTk5 MTY3YTI2Njg3OGE5Nzg0CgpGcm9tIDRjNzBiM2U2YzE5ODdlNmY0MWI4NDg3MWZjN2I5Y2RhZDAw ZjA4MWIgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0 bG9vay5jb20+CkRhdGU6IFR1ZSwgMTYgSnVuIDIwMjAgMTk6NDQ6MTQgKzA2MDAKU3ViamVjdDog W1BBVENIIDA4LzYxXSBnZWRpdDogdXBkYXRlIHRvIDMuMzYuMi4KCi0tLQogc3JjcGtncy9nZWRp dC90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBk ZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dlZGl0L3RlbXBsYXRlIGIvc3JjcGtn cy9nZWRpdC90ZW1wbGF0ZQppbmRleCA0ZTI3M2FhZjE4Mi4uZTNlYmVhMDVlYTcgMTAwNjQ0Ci0t LSBhL3NyY3BrZ3MvZ2VkaXQvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nZWRpdC90ZW1wbGF0ZQpA QCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dlZGl0JwogcGtnbmFtZT1nZWRp dAotdmVyc2lvbj0zLjM2LjEKK3ZlcnNpb249My4zNi4yCiByZXZpc2lvbj0xCiBidWlsZF9oZWxw ZXI9ImdpciIKIGJ1aWxkX3N0eWxlPW1lc29uCkBAIC0xNyw3ICsxNyw3IEBAIG1haW50YWluZXI9 IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9y LWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcvQXBwcy9HZWRpdCIKIGRp c3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1l fS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTZkYzM4ZWRhMjI3ZDFjMzY4ZTAzOWU5YmZm NDg1ZDBiZWU5YTQ5ZDVmOTU2MGMzODdlZTA4ZjU4MThhNGUzODcKK2NoZWNrc3VtPTY4ODc1NTQ2 NDNjNWIxYjM4NjJhYzM2NGQ5N2I3YjUwMjI0YmZmOTVlNjc1OGFlYWEwOGY0YTQ4MmI1NTQxOTcK IHNobGliX3Byb3ZpZGVzPSJsaWJnZWRpdC0zLjM2LnNvIgogcHl0aG9uX3ZlcnNpb249MwogCgpG cm9tIDFlOGYzYWVkMzlmYmVmM2NjMTY1NTM4YmM5ZTBjNzFjZjMwYWNlOTMgTW9uIFNlcCAxNyAw MDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFR1 ZSwgMTYgSnVuIDIwMjAgMTk6NDQ6MjEgKzA2MDAKU3ViamVjdDogW1BBVENIIDA5LzYxXSBnbm9t ZS1jb250YWN0czogdXBkYXRlIHRvIDMuMzYuMS4KCi0tLQogc3JjcGtncy9nbm9tZS1jb250YWN0 cy90ZW1wbGF0ZSB8IDggKysrKy0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyks IDQgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1jb250YWN0cy90ZW1w bGF0ZSBiL3NyY3BrZ3MvZ25vbWUtY29udGFjdHMvdGVtcGxhdGUKaW5kZXggMmE4MjEzYTcyNDAu LjAxZmI4MmI3ODI2IDEwMDY0NAotLS0gYS9zcmNwa2dzL2dub21lLWNvbnRhY3RzL3RlbXBsYXRl CisrKyBiL3NyY3BrZ3MvZ25vbWUtY29udGFjdHMvdGVtcGxhdGUKQEAgLTEsMTAgKzEsMTAgQEAK ICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLWNvbnRhY3RzJwogcGtnbmFtZT1nbm9tZS1jb250 YWN0cwotdmVyc2lvbj0zLjM0LjAKLXJldmlzaW9uPTIKK3ZlcnNpb249My4zNi4xCityZXZpc2lv bj0xCiB3cmtzcmM9Imdub21lLWNvbnRhY3RzLSR7dmVyc2lvbiUuKn0iCiBidWlsZF9zdHlsZT1t ZXNvbgotaG9zdG1ha2VkZXBlbmRzPSJkb2Nib29rLXhzbCBnZXR0ZXh0IGdsaWItZGV2ZWwgbGli eHNsdCBwa2ctY29uZmlnIHZhbGEiCitob3N0bWFrZWRlcGVuZHM9ImRvY2Jvb2steHNsIGZvbGtz LWRldmVsIGdldHRleHQgZ2xpYi1kZXZlbCBsaWJ4c2x0IHBrZy1jb25maWcgdmFsYSIKIG1ha2Vk ZXBlbmRzPSJjaGVlc2UtZGV2ZWwgZm9sa3MtZGV2ZWwgZ2VvY29kZS1nbGliLWRldmVsIGdub21l LWRlc2t0b3AtZGV2ZWwKICBsaWJjaGFtcGxhaW4tZGV2ZWwgbGlibm90aWZ5LWRldmVsIHZhbGEt ZGV2ZWwgbGliaGFuZHktZGV2ZWwiCiBkZXBlbmRzPSJkZXNrdG9wLWZpbGUtdXRpbHMiCkBAIC0x Myw0ICsxMyw0IEBAIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9y Zz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5n bm9tZS5vcmcvQXBwcy9Db250YWN0cyIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25h bWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb24lLip9LnRhci54eiIKLWNoZWNr c3VtPTk5NjAyZWM4ZDY2MGMxZjNjOTJjYWU2MzU2ZjY0ZjcyZmI2ZGI1OGU1NWJjZTI3YTU5OTMz MGJmN2I2MjJmMTIKK2NoZWNrc3VtPWVlY2JkMjIwOWQ5M2M4ZDMxZGY5MmY2Y2NmNzkxODNiNDU2 YzZlMDdhMjhhZTAxNTVjYmRhMThhYWJkMzZmN2IKCkZyb20gMDI1MmJlNWI1YzlkZGVkNDc0OTg0 YzFjNzFiZWJkOWE1Zjg1YjUzYSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMg PG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCAxNiBKdW4gMjAyMCAxOTo0NDoyOSAr MDYwMApTdWJqZWN0OiBbUEFUQ0ggMTAvNjFdIGdub21lLWNsb2NrczogdXBkYXRlIHRvIDMuMzYu Mi4KCi0tLQogc3JjcGtncy9nbm9tZS1jbG9ja3MvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBj aGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3Jj cGtncy9nbm9tZS1jbG9ja3MvdGVtcGxhdGUgYi9zcmNwa2dzL2dub21lLWNsb2Nrcy90ZW1wbGF0 ZQppbmRleCAzZTA0OWI0MmZiMS4uMzRiMTU5YWU2YTYgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25v bWUtY2xvY2tzL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtY2xvY2tzL3RlbXBsYXRlCkBA IC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ25vbWUtY2xvY2tzJwogcGtnbmFt ZT1nbm9tZS1jbG9ja3MKLXZlcnNpb249My4zNi4wCit2ZXJzaW9uPTMuMzYuMgogcmV2aXNpb249 MQogYnVpbGRfaGVscGVyPSJnaXIiCiBidWlsZF9zdHlsZT1tZXNvbgpAQCAtMTUsNCArMTUsNCBA QCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5z ZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL0Fw cHMvQ2xvY2tzIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9u JS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09NGM5NzhiMGM3Zjdi OWRhZWJkMjcyZDAxNzVmOGE1NDQxNWUyMDc4ZjEzNGY0OGFkZDVjZjI0MzYyZWVmNDljNgorY2hl Y2tzdW09ZjExYjFiMjJlYzFmMjg1ZTUwOTg4MzY4NGMwYjFmNGE1MTQ5NmFlYTEwNTU5MTIzOWU1 YjI2Zjg5ODY3NTFlNgoKRnJvbSBjMWY2ODkyMWNkYjUwNzNhYTRjYzViMzM2ZTE1M2U1NzE5YWMz ZTViIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxv b2suY29tPgpEYXRlOiBUdWUsIDE2IEp1biAyMDIwIDE5OjQ0OjM2ICswNjAwClN1YmplY3Q6IFtQ QVRDSCAxMS82MV0gZ25vbWUtZXB1Yi10aHVtYm5haWxlcjogdXBkYXRlIHRvIDEuNi4KCi0tLQog c3JjcGtncy9nbm9tZS1lcHViLXRodW1ibmFpbGVyL3RlbXBsYXRlIHwgNiArKystLS0KIDEgZmls ZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEv c3JjcGtncy9nbm9tZS1lcHViLXRodW1ibmFpbGVyL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1l cHViLXRodW1ibmFpbGVyL3RlbXBsYXRlCmluZGV4IGIxNmU3MDU0NzVmLi5kNjdiNzdmMWU0MyAx MDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1lcHViLXRodW1ibmFpbGVyL3RlbXBsYXRlCisrKyBi L3NyY3BrZ3MvZ25vbWUtZXB1Yi10aHVtYm5haWxlci90ZW1wbGF0ZQpAQCAtMSwxMyArMSwxMyBA QAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ25vbWUtZXB1Yi10aHVtYm5haWxlcicKIHBrZ25hbWU9 Z25vbWUtZXB1Yi10aHVtYm5haWxlcgotdmVyc2lvbj0xLjUKK3ZlcnNpb249MS42CiByZXZpc2lv bj0xCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBob3N0bWFrZWRlcGVuZHM9InBrZy1jb25m aWciCiBtYWtlZGVwZW5kcz0iZ2RrLXBpeGJ1Zi1kZXZlbCBsaWJhcmNoaXZlLWRldmVsIGxpYnht bDItZGV2ZWwiCiBzaG9ydF9kZXNjPSJUaHVtYm5haWxlciBmb3IgRVB1YiBhbmQgTU9CSSBib29r cyIKIG1haW50YWluZXI9IkFsaWYgUmFjaG1hd2FkaSA8YXJjaEBzdWJvc2l0by5jb20+IgotbGlj ZW5zZT0iR1BMLTMiCitsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBz Oi8vZ2l0Lmdub21lLm9yZy9icm93c2UvZ25vbWUtZXB1Yi10aHVtYm5haWxlciIKIGRpc3RmaWxl cz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbn0vJHtwa2duYW1lfS0ke3ZlcnNp b259LnRhci54eiIKLWNoZWNrc3VtPTMwODIxMGY1ODAwMjE5ZjY0Y2FlNDgyOGU1OWJiOGU2ZTRj NTNiODg4MDQ4Y2Y0ODcyMjFhZWI0MzM3ZDc5MWEKK2NoZWNrc3VtPWI1MDI0MjBkOWIwMmVhMGIw ZmM3OTg2ZWY1YTA5MWExMmIyMjg2YmUxNGZlZDllNDc1OTRmZTlmYTBjNTg5OGUKCkZyb20gYTY5 OTA3YzVlYTc4NDlkN2Y1NmMwNDU4NDU4NTZkYTk3MGJmODQ5ZSBNb24gU2VwIDE3IDAwOjAwOjAw IDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCAxNiBK dW4gMjAyMCAxOTo0NDo0NCArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMTIvNjFdIGdub21lLXRlcm1p bmFsOiB1cGRhdGUgdG8gMy4zNi4yLgoKLS0tCiBzcmNwa2dzL2dub21lLXRlcm1pbmFsL3RlbXBs YXRlIHwgNiArKystLS0KIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRp b25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS10ZXJtaW5hbC90ZW1wbGF0ZSBiL3Ny Y3BrZ3MvZ25vbWUtdGVybWluYWwvdGVtcGxhdGUKaW5kZXggYmYzZDViY2RkNDIuLjIyZGJjMTFi YWRhIDEwMDY0NAotLS0gYS9zcmNwa2dzL2dub21lLXRlcm1pbmFsL3RlbXBsYXRlCisrKyBiL3Ny Y3BrZ3MvZ25vbWUtdGVybWluYWwvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRl IGZpbGUgZm9yICdnbm9tZS10ZXJtaW5hbCcKIHBrZ25hbWU9Z25vbWUtdGVybWluYWwKLXZlcnNp b249My4zNi4xLjEKK3ZlcnNpb249My4zNi4yCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1nbnUt Y29uZmlndXJlCiBjb25maWd1cmVfYXJncz0iLS1kaXNhYmxlLXN0YXRpYyAtLXdpdGgtbmF1dGls dXMtZXh0ZW5zaW9uIgpAQCAtMTMsOCArMTMsOCBAQCBzaG9ydF9kZXNjPSJHTk9NRSB0ZXJtaW5h bCBlbXVsYXRvciBhcHBsaWNhdGlvbiIKIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hA dm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyLCBHRkRMLTEuMy1vbmx5 IgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcvQXBwcy9UZXJtaW5hbCIKLWRpc3Rm aWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbjowOjR9LyR7cGtnbmFtZX0t JHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT1mM2Q3MDhhMWU3NmQ3N2MxYzg1YjEyNmY2ZTAw MzIyMGExNWQ0YTQ2YTUwZmQ4MDcwZTFhM2FhYmU2NzhhMzc2CitkaXN0ZmlsZXM9IiR7R05PTUVf U0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIu eHoiCitjaGVja3N1bT00MWQxYjZhM2RjOTdjMDY2ZTI5NGFjZGI3ZjM2OTMxZTgxNjY4NjM4ZGNj OTJmZmEyNWJjYTNkZGViYWNkZjQ2CiBsaWIzMmRpc2FibGVkPXllcwogCiBpZiBbICIkQ1JPU1Nf QlVJTEQiIF07IHRoZW4KCkZyb20gNDFmNGFhMTU5ZGNlZjQ3OGMyMTA2Yzc2YjE2NjdhMmJlYmU5 MjkzZSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRs b29rLmNvbT4KRGF0ZTogVHVlLCAxNiBKdW4gMjAyMCAxOTo0NDo1MiArMDYwMApTdWJqZWN0OiBb UEFUQ0ggMTMvNjFdIGdub21lLXBvZGNhc3RzOiB1cGRhdGUgdG8gMC40LjcuCgotLS0KIC4uLi9n bm9tZS1wb2RjYXN0cy9wYXRjaGVzL2ZpeC1idWlsZC5wYXRjaCAgICB8IDIxIC0tLS0tLS0tLS0t LS0tLS0KIHNyY3BrZ3MvZ25vbWUtcG9kY2FzdHMvdGVtcGxhdGUgICAgICAgICAgICAgICB8IDI0 ICsrKysrKysrKystLS0tLS0tLS0KIDIgZmlsZXMgY2hhbmdlZCwgMTMgaW5zZXJ0aW9ucygrKSwg MzIgZGVsZXRpb25zKC0pCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9nbm9tZS1wb2RjYXN0 cy9wYXRjaGVzL2ZpeC1idWlsZC5wYXRjaAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtcG9k Y2FzdHMvcGF0Y2hlcy9maXgtYnVpbGQucGF0Y2ggYi9zcmNwa2dzL2dub21lLXBvZGNhc3RzL3Bh dGNoZXMvZml4LWJ1aWxkLnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBhZWI5 NTgxYmQ3OS4uMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9nbm9tZS1wb2RjYXN0cy9wYXRjaGVz L2ZpeC1idWlsZC5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDIxICswLDAgQEAKLS0tLSBwb2Rj YXN0cy1ndGsvc3JjL3dpZGdldHMvZXBpc29kZS5ycy5vcmlnCTIwMTktMDYtMDkgMTU6NTQ6NTku NzkzNDUxMDQ3ICswMjAwCi0rKysgcG9kY2FzdHMtZ3RrL3NyYy93aWRnZXRzL2VwaXNvZGUucnMJ MjAxOS0wNi0wOSAxNTo1NToxOS4xOTEzMTE1MTIgKzAyMDAKLUBAIC01NTksNyArNTU5LDcgQEAK LSAgICAgICAgICAgICAudG90YWxfc2l6ZQotICAgICAgICAgICAgIC5nZXRfdGV4dCgpCi0gICAg ICAgICAgICAgLmFzX3JlZigpCi0tICAgICAgICAgICAgLm1hcCh8c3wgcy50cmltX3JpZ2h0X21h dGNoZXMoIiBNQiIpKQotKyAgICAgICAgICAgIC5tYXAofHN8IHMudHJpbV9lbmRfbWF0Y2hlcygi IE1CIikpCi0gICAgICAgICAgICAgLmFuZF90aGVuKHxzfCBzLnBhcnNlOjo8aTMyPigpLm9rKCkp Ci0gICAgICAgICAgICAgLmlzX25vbmUoKQotICAgICAgICAgewotLS0tIHBvZGNhc3RzLWd0ay9z cmMvd2lkZ2V0cy9zaG93c192aWV3LnJzLm9yaWcJMjAxOS0wNi0wOSAxNTo1NDowMC4zMjA4Nzg4 NjcgKzAyMDAKLSsrKyBwb2RjYXN0cy1ndGsvc3JjL3dpZGdldHMvc2hvd3Nfdmlldy5ycwkyMDE5 LTA2LTA5IDE1OjU0OjEzLjE1MTc4NjU2MyArMDIwMAotQEAgLTgwLDcgKzgwLDYgQEAKLSB9Ci0g Ci0gZm4gb25fY2hpbGRfYWN0aXZhdGUoY2hpbGQ6ICZndGs6OkZsb3dCb3hDaGlsZCwgc2VuZGVy OiAmU2VuZGVyPEFjdGlvbj4pIC0+IFJlc3VsdDwoKSwgRXJyb3I+IHsKLS0gICAgdXNlIGd0azo6 V2lkZ2V0RXh0OwotIAotICAgICAvLyBUaGlzIGlzIHN1Y2ggYW4gdWdseSBoYWNrLi4uCi0gICAg IGxldCBpZCA9IFdpZGdldEV4dDo6Z2V0X25hbWUoY2hpbGQpCmRpZmYgLS1naXQgYS9zcmNwa2dz L2dub21lLXBvZGNhc3RzL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1wb2RjYXN0cy90ZW1wbGF0 ZQppbmRleCA3MmUyZGI2YjEwOS4uM2MyMzlkZjg0MjQgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25v bWUtcG9kY2FzdHMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS1wb2RjYXN0cy90ZW1wbGF0 ZQpAQCAtMSwyNiArMSwyOCBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ25vbWUtcG9kY2FzdHMn CiBwa2duYW1lPWdub21lLXBvZGNhc3RzCi12ZXJzaW9uPTAuNC42Ci1yZXZpc2lvbj0zCit2ZXJz aW9uPTAuNC43CityZXZpc2lvbj0xCiB3cmtzcmM9InBvZGNhc3RzLSR7dmVyc2lvbn0iCiBidWls ZF9zdHlsZT1tZXNvbgotaG9zdG1ha2VkZXBlbmRzPSJjYXJnbyBnZXR0ZXh0LWRldmVsIGdsaWIt ZGV2ZWwgcGtnLWNvbmZpZyIKK2J1aWxkX2hlbHBlcj0icnVzdCIKK2hvc3RtYWtlZGVwZW5kcz0i Y2FyZ28gZ2V0dGV4dCBnbGliLWRldmVsIHBrZy1jb25maWcgc3FsaXRlLWRldmVsIgogbWFrZWRl cGVuZHM9ImdzdHJlYW1lcjEtZGV2ZWwgZ3N0LXBsdWdpbnMtYmFkMS1kZXZlbCBnc3QtcGx1Z2lu cy1iYXNlMS1kZXZlbAotIGd0ayszLWRldmVsIGxpYmhhbmR5LWRldmVsIGxpYnJlc3NsLWRldmVs IHNxbGl0ZS1kZXZlbCB0ZXhpbmZvIgorIGd0ayszLWRldmVsIGxpYmhhbmR5LWRldmVsIGxpYnJl c3NsLWRldmVsIHNxbGl0ZS1kZXZlbCBydXN0LXN0ZCIKIHNob3J0X2Rlc2M9Ikxpc3RlbiB0byB5 b3VyIGZhdm9yaXRlIHBvZGNhc3RzIgogbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2 b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0zLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0 cHM6Ly93aWtpLmdub21lLm9yZy9BcHBzL1BvZGNhc3RzIgogZGlzdGZpbGVzPSJodHRwczovL2dp dGxhYi5nbm9tZS5vcmcvV29ybGQvcG9kY2FzdHMvLS9hcmNoaXZlLyR7dmVyc2lvbn0vcG9kY2Fz dHMtJHt2ZXJzaW9ufS50YXIuZ3oiCi1jaGVja3N1bT05NTNjNjNlODE4NGNhMWY3NDg0MThkOGE4 MjYyZDQwZWFhNDEwNDdmODFlMmQyYzg3NGEzMDM1ZDlkOWQwZTRhCi1ub2Nyb3NzPSJydXN0YyBj YW50IGJlIGNyb3NzY29tcGlsZWQgYXMgb2Ygbm93IgotYnJva2VuPSJnZXR0ZXh0LXJzIGhhc2gg ZG9lcyBub3QgZXhpc3RzLCBpZiBmaXhlZCBidWlsZCBmYWlscyBpbiBnaW8gMC41LjAiCitjaGVj a3N1bT1hOWExYjYyZGQzNTY3ZTNjY2EzOGVlMjlkZjJmYWRkODJlMmZiNWU4MzdiMGEyYTI2ZWNh Yzc0ZTkzMDUxNjFjCiAKIGV4cG9ydCBHRVRURVhUX0JJTl9ESVI9L3Vzci9iaW4KIGV4cG9ydCBH RVRURVhUX0xJQl9ESVI9IiR7WEJQU19DUk9TU19CQVNFfS91c3IvbGliL2dldHRleHQiCiBleHBv cnQgR0VUVEVYVF9JTkNMVURFX0RJUj0iJHtYQlBTX0NST1NTX0JBU0V9L3Vzci9pbmNsdWRlIgog Ci1wcmVfYnVpbGQoKSB7Ci0JY2FyZ28gdXBkYXRlIC0tcGFja2FnZSBvcGVuc3NsLXN5cyAtLXBy ZWNpc2UgMC45LjQ2Ci0JY2FyZ28gdXBkYXRlIC0tcGFja2FnZSBvcGVuc3NsIC0tcHJlY2lzZSAw LjEwLjIyCi19CitpZiBbICIkQ1JPU1NfQlVJTEQiIF07IHRoZW4KKwlwb3N0X3BhdGNoKCkgewor CQl2c2VkIC1pIHNjcmlwdHMvY2FyZ28uc2ggXAorCQkJLWUgJ3MlIiRDQVJHT19UQVJHRVRfRElS Ii8lJiR7UlVTVF9UQVJHRVR9LyUnIFwKKwkJCS1lICcvQ0FSR09fSE9NRS9kJworCX0KK2ZpCgpG cm9tIDBhZjRjMmE0NzZhZWVmYzFlZmQ0NTdjM2NlZWQwYzkyMzFlM2Y4YjAgTW9uIFNlcCAxNyAw MDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFR1 ZSwgMTYgSnVuIDIwMjAgMTk6NDU6MDEgKzA2MDAKU3ViamVjdDogW1BBVENIIDE0LzYxXSBnbm9t ZS1jb250cm9sLWNlbnRlcjogdXBkYXRlIHRvIDMuMzYuMy4KCi0tLQogc3JjcGtncy9nbm9tZS1j b250cm9sLWNlbnRlci90ZW1wbGF0ZSB8IDIwICsrKysrKysrKysrKysrKystLS0tCiAxIGZpbGUg Y2hhbmdlZCwgMTYgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9z cmNwa2dzL2dub21lLWNvbnRyb2wtY2VudGVyL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1jb250 cm9sLWNlbnRlci90ZW1wbGF0ZQppbmRleCAwZTI3ODc4OThhZS4uNTNhNTU1NTI1YjQgMTAwNjQ0 Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtY29udHJvbC1jZW50ZXIvdGVtcGxhdGUKKysrIGIvc3JjcGtn cy9nbm9tZS1jb250cm9sLWNlbnRlci90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxh dGUgZmlsZSBmb3IgJ2dub21lLWNvbnRyb2wtY2VudGVyJwogcGtnbmFtZT1nbm9tZS1jb250cm9s LWNlbnRlcgotdmVyc2lvbj0zLjM0LjEKK3ZlcnNpb249My4zNi4zCiByZXZpc2lvbj0xCiBidWls ZF9zdHlsZT1tZXNvbgogYnVpbGRfaGVscGVyPSJnaXIiCkBAIC0xMCwyNCArMTAsMzYgQEAgaG9z dG1ha2VkZXBlbmRzPSJnbGliLWRldmVsIGdzZXR0aW5ncy1kZXNrdG9wLXNjaGVtYXMtZGV2ZWwg aW50bHRvb2wgcGtnLWNvbmZpZwogbWFrZWRlcGVuZHM9Ik1vZGVtTWFuYWdlci1kZXZlbCBhY2Nv dW50c3NlcnZpY2UtZGV2ZWwgYWxzYS1wbHVnaW5zCiAgY29sb3JkLWd0ay1kZXZlbCBnbm9tZS1i bHVldG9vdGgtZGV2ZWwgZ25vbWUtZGVza3RvcC1kZXZlbCBnbm9tZS1tZW51cy1kZXZlbAogIGdu b21lLW9ubGluZS1hY2NvdW50cy1kZXZlbCBnbm9tZS1zZXR0aW5ncy1kYWVtb24tZGV2ZWwgZ3Jp bG8tZGV2ZWwgaWJ1cy1kZXZlbAotIGxpYlNNLWRldmVsIGxpYlh4Zjg2bWlzYy1kZXZlbCBsaWJn bm9tZWtiZC1kZXZlbCBsaWJndG9wLWRldmVsCisgbGliU00tZGV2ZWwgbGliWHhmODZtaXNjLWRl dmVsIGxpYmdub21la2JkLWRldmVsIGxpYmd0b3AtZGV2ZWwgbGliaGFuZHktZGV2ZWwKICBsaWJw d3F1YWxpdHktZGV2ZWwgbWl0LWtyYjUtZGV2ZWwgbmV0d29yay1tYW5hZ2VyLWFwcGxldC1kZXZl bCBwb2xraXQtZGV2ZWwKICBwdWxzZWF1ZGlvLWRldmVsIHNhbWJhLWRldmVsIHR6ZGF0YSB1cG93 ZXItZGV2ZWwgdmFsYS1kZXZlbCBjbHV0dGVyLWd0ay1kZXZlbAogIGxpYnhtbDItZGV2ZWwgbGli WDExLWRldmVsIGd0ayszLWRldmVsIGN1cHMtZGV2ZWwgbGliZ3VkZXYtZGV2ZWwgbGlid2Fjb20t ZGV2ZWwKICBjbHV0dGVyLWRldmVsIGxpYnNlY3JldC1kZXZlbCBsaWJjYW5iZXJyYS1kZXZlbCB1 ZGlza3MyLWRldmVsIGdzb3VuZC1kZXZlbAogICQodm9wdF9pZiBjaGVlc2UgY2hlZXNlLWRldmVs KSIKLWRlcGVuZHM9ImFsc2EtcGx1Z2lucy1wdWxzZWF1ZGlvIGRlc2t0b3AtZmlsZS11dGlscwor ZGVwZW5kcz0iYWxzYS1wbHVnaW5zLXB1bHNlYXVkaW8gZGVza3RvcC1maWxlLXV0aWxzIHVwb3dl ciBjb2xvcmQgY3Vwcy1way1oZWxwZXIKICBnc2V0dGluZ3MtZGVza3RvcC1zY2hlbWFzIGhpY29s b3ItaWNvbi10aGVtZSBpc28tY29kZXMgc291bmQtdGhlbWUtZnJlZWRlc2t0b3AKICBjcmFja2xp YiIKK2NoZWNrZGVwZW5kcz0icHl0aG9uMy1kYnVzbW9jayB4b3JnLXNlcnZlci14dmZiIgogc2hv cnRfZGVzYz0iR05PTUUgY29udHJvbCBjZW50ZXIiCiBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8 Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVw YWdlPSJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtY29udHJvbC1jZW50ZXIi CiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtn bmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT01ZjgyZWNkNTU1NDEzNmM0NjIyNDhl YzUzNjNiODJkOTUzNThiMzlkZmQ2Nzg3MDA2ZDgzMDdiNDUwNGU1MTVlCitjaGVja3N1bT1iYzE3 NGQ5NzBkYmVjYTNlZTE5YzI2MDE5ZGUzMWU5ZWRmNzhkYzljNGFiZGUxNmU3NjM1NjZlZTM4YzM2 OTFjCiAKIGJ1aWxkX29wdGlvbnM9ImNoZWVzZSIKIGRlc2Nfb3B0aW9uX2NoZWVzZT0iQWRkIHN1 cHBvcnQgZm9yIGFkZGluZyB1c2VyIGFjY291bnQgaW1hZ2VzIHdpdGggeW91ciB3ZWJjYW0iCisK K3ByZV9jaGVjaygpIHsKKwkjIHRlc3QtbmV0d29yay1wYW5lbCBuZWVkcyBpZCBnZW5lcmF0ZWQg YnkgZGJ1cy11dWlkZ2VuCisJbWtkaXIgLXAgL3Zhci9saWIvZGJ1cworCWRidXMtdXVpZGdlbiAt LWVuc3VyZQorfQorCitwb3N0X2NoZWNrKCkgeworCXJtIC1yZiAvdmFyL2xpYi9kYnVzCit9CisK IGlmIFsgLXogIiRDUk9TU19CVUlMRCIgXTsgdGhlbgogCWJ1aWxkX29wdGlvbnNfZGVmYXVsdCs9 IiBjaGVlc2UiCiBmaQoKRnJvbSAyYWRlNmRjOGYxYTJlMzdmNDBkYzU5ZDE3YzIwYWM0ZWQ1YTdi MTZjIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxv b2suY29tPgpEYXRlOiBUdWUsIDE2IEp1biAyMDIwIDE5OjQ1OjA4ICswNjAwClN1YmplY3Q6IFtQ QVRDSCAxNS82MV0gZ25vbWUtc2V0dGluZ3MtZGFlbW9uOiB1cGRhdGUgdG8gMy4zNi4xLgoKQWRk ZWQgYSBwYXRjaCB0byBmaXggYnJpZ2h0bmVzcyBjb250cm9scyB3aXRoIGVsb2dpbmQuCi0tLQog Li4udC11c2UtbG9naW5kLWZvci1icmlnaHRuZXNzLWNoYW5naW5nLnBhdGNoIHwgMTIxICsrKysr KysrKysrKysrKysrKwogc3JjcGtncy9nbm9tZS1zZXR0aW5ncy1kYWVtb24vdGVtcGxhdGUgICAg ICAgIHwgIDEwICstCiAyIGZpbGVzIGNoYW5nZWQsIDEyNiBpbnNlcnRpb25zKCspLCA1IGRlbGV0 aW9ucygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvZ25vbWUtc2V0dGluZ3MtZGFlbW9u L3BhdGNoZXMvZG9udC11c2UtbG9naW5kLWZvci1icmlnaHRuZXNzLWNoYW5naW5nLnBhdGNoCgpk aWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1zZXR0aW5ncy1kYWVtb24vcGF0Y2hlcy9kb250LXVz ZS1sb2dpbmQtZm9yLWJyaWdodG5lc3MtY2hhbmdpbmcucGF0Y2ggYi9zcmNwa2dzL2dub21lLXNl dHRpbmdzLWRhZW1vbi9wYXRjaGVzL2RvbnQtdXNlLWxvZ2luZC1mb3ItYnJpZ2h0bmVzcy1jaGFu Z2luZy5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uYTNhODM0 ZTNiNzQKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2dub21lLXNldHRpbmdzLWRhZW1vbi9w YXRjaGVzL2RvbnQtdXNlLWxvZ2luZC1mb3ItYnJpZ2h0bmVzcy1jaGFuZ2luZy5wYXRjaApAQCAt MCwwICsxLDEyMSBAQAorVXBzdHJlYW0gaW50cm9kdWNlZCBicmlnaHRuZXNzIGxldmVsIGNoYW5n aW5nIHdpdGgKK2h0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS1zZXR0aW5ncy1k YWVtb24vLS9jb21taXQvY2QwNTFlNmM3Y2NmYjdlN2IwZWM0NDA0MDljNTU5YjJlNTEyODRlOAor YnV0IGFwcGFyZW50bHkgdGhpcyBkb2Vzbid0IHdvcmsgd2l0aCBlbG9naW5kIChzZWUgaHR0cHM6 Ly9naXRodWIuY29tL2Vsb2dpbmQvZWxvZ2luZC9pc3N1ZXMvMTU4KSwKK3NvIGxldCdzIHJldmVy dCB0aGlzIGZvciBub3cgYW5kIGtlZXAgdXNpbmcgdGhlIG9sZCBtZWNoYW5pc20uCitkaWZmIC0t Z2l0IHBsdWdpbnMvcG93ZXIvZ3NkLWJhY2tsaWdodC5jIHBsdWdpbnMvcG93ZXIvZ3NkLWJhY2ts aWdodC5jCitpbmRleCA5ZjQwNmM5Li45Yzg3MmY4IDEwMDY0NAorLS0tIHBsdWdpbnMvcG93ZXIv Z3NkLWJhY2tsaWdodC5jCisrKysgcGx1Z2lucy9wb3dlci9nc2QtYmFja2xpZ2h0LmMKK0BAIC00 MCw4ICs0MCw2IEBAIHN0cnVjdCBfR3NkQmFja2xpZ2h0CisgICAgICAgICBnaW50IGJyaWdodG5l c3Nfc3RlcDsKKyAKKyAjaWZkZWYgX19saW51eF9fCistICAgICAgICBHREJ1c1Byb3h5ICpsb2dp bmRfcHJveHk7CistCisgICAgICAgICBHVWRldkNsaWVudCAqdWRldjsKKyAgICAgICAgIEdVZGV2 RGV2aWNlICp1ZGV2X2RldmljZTsKKyAKK0BAIC02MSwxMCArNTksNiBAQCBlbnVtIHsKKyAgICAg ICAgIFBST1BfTEFTVCwKKyB9OworIAorLSNkZWZpbmUgU1lTVEVNRF9EQlVTX05BTUUgICAgICAg ICAgICAgICAgICAgICAgICJvcmcuZnJlZWRlc2t0b3AubG9naW4xIgorLSNkZWZpbmUgU1lTVEVN RF9EQlVTX1BBVEggICAgICAgICAgICAgICAgICAgICAgICIvb3JnL2ZyZWVkZXNrdG9wL2xvZ2lu MS9zZXNzaW9uL2F1dG8iCistI2RlZmluZSBTWVNURU1EX0RCVVNfSU5URVJGQUNFICAgICAgICAg ICAgICAgICAgIm9yZy5mcmVlZGVza3RvcC5sb2dpbjEuU2Vzc2lvbiIKKy0KKyBzdGF0aWMgR1Bh cmFtU3BlYyAqcHJvcHNbUFJPUF9MQVNUXTsKKyAKKyBzdGF0aWMgdm9pZCAgICAgZ3NkX2JhY2ts aWdodF9pbml0YWJsZV9pZmFjZV9pbml0IChHSW5pdGFibGVJZmFjZSAgKmlmYWNlKTsKK0BAIC00 ODEsMzEgKzQ3NSwxMyBAQCBnc2RfYmFja2xpZ2h0X3NldF9icmlnaHRuZXNzX3ZhbF9hc3luYyAo R3NkQmFja2xpZ2h0ICpiYWNrbGlnaHQsCisgI2lmZGVmIF9fbGludXhfXworICAgICAgICAgaWYg KGJhY2tsaWdodC0+dWRldl9kZXZpY2UgIT0gTlVMTCkgeworICAgICAgICAgICAgICAgICBCYWNr bGlnaHRIZWxwZXJEYXRhICp0YXNrX2RhdGE7CisrICAgICAgICAgICAgICAgICAgdGFza19kYXRh ID0gZ19uZXcwIChCYWNrbGlnaHRIZWxwZXJEYXRhLCAxKTsKKysgICAgICAgICAgICAgICAgICB0 YXNrX2RhdGEtPnZhbHVlID0gYmFja2xpZ2h0LT5icmlnaHRuZXNzX3RhcmdldDsKKysgICAgICAg ICAgICAgICAgICBnX3Rhc2tfc2V0X3Rhc2tfZGF0YSAodGFzaywgdGFza19kYXRhLCBiYWNrbGln aHRfdGFza19kYXRhX2Rlc3Ryb3kpOworIAorLSAgICAgICAgICAgICAgICBpZiAoYmFja2xpZ2h0 LT5sb2dpbmRfcHJveHkpIHsKKy0gICAgICAgICAgICAgICAgICAgICAgICBnX2RidXNfcHJveHlf Y2FsbCAoYmFja2xpZ2h0LT5sb2dpbmRfcHJveHksCistICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICJTZXRCcmlnaHRuZXNzIiwKKy0gICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgZ192YXJpYW50X25ldyAoIihzc3UpIiwKKy0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImJhY2ts aWdodCIsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIGdfdWRldl9kZXZpY2VfZ2V0X25hbWUgKGJhY2tsaWdodC0+dWRldl9kZXZpY2Up LAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBiYWNrbGlnaHQtPmJyaWdodG5lc3NfdGFyZ2V0KSwKKy0gICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgR19EQlVTX0NBTExfRkxBR1NfTk9ORSwKKy0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLTEsIE5VTEwsCistICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIE5VTEwpOworLQorLSAgICAg ICAgICAgICAgICAgICAgICAgIHBlcmNlbnQgPSBBQlNfVE9fUEVSQ0VOVEFHRSAoYmFja2xpZ2h0 LT5icmlnaHRuZXNzX21pbiwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGJhY2tsaWdodC0+YnJpZ2h0bmVzc19tYXgsCistICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrbGlnaHQtPmJyaWdo dG5lc3NfdGFyZ2V0KTsKKy0gICAgICAgICAgICAgICAgICAgICAgICBnX3Rhc2tfcmV0dXJuX2lu dCAodGFzaywgcGVyY2VudCk7CistICAgICAgICAgICAgICAgIH0gZWxzZSB7CistICAgICAgICAg ICAgICAgICAgICAgICAgdGFza19kYXRhID0gZ19uZXcwIChCYWNrbGlnaHRIZWxwZXJEYXRhLCAx KTsKKy0gICAgICAgICAgICAgICAgICAgICAgICB0YXNrX2RhdGEtPnZhbHVlID0gYmFja2xpZ2h0 LT5icmlnaHRuZXNzX3RhcmdldDsKKy0gICAgICAgICAgICAgICAgICAgICAgICBnX3Rhc2tfc2V0 X3Rhc2tfZGF0YSAodGFzaywgdGFza19kYXRhLCBiYWNrbGlnaHRfdGFza19kYXRhX2Rlc3Ryb3kp OworLQorLSAgICAgICAgICAgICAgICAgICAgICAgIC8qIFRhc2sgaXMgc2V0IHVwIG5vdy4gUXVl dWUgaXQgYW5kIGVuc3VyZSB3ZSBhcmUgd29ya2luZyBzb21ldGhpbmcuICovCistICAgICAgICAg ICAgICAgICAgICAgICAgZ19xdWV1ZV9wdXNoX3RhaWwgKCZiYWNrbGlnaHQtPnRhc2tzLCB0YXNr KTsKKy0gICAgICAgICAgICAgICAgICAgICAgICBnc2RfYmFja2xpZ2h0X3Byb2Nlc3NfdGFza3F1 ZXVlIChiYWNrbGlnaHQpOworLSAgICAgICAgICAgICAgICB9CisrICAgICAgICAgICAgICAgICAg LyogVGFzayBpcyBzZXQgdXAgbm93LiBRdWV1ZSBpdCBhbmQgZW5zdXJlIHdlIGFyZSB3b3JraW5n IHNvbWV0aGluZy4gKi8KKysgICAgICAgICAgICAgICAgICBnX3F1ZXVlX3B1c2hfdGFpbCAoJmJh Y2tsaWdodC0+dGFza3MsIHRhc2spOworKyAgICAgICAgICAgICAgICAgIGdzZF9iYWNrbGlnaHRf cHJvY2Vzc190YXNrcXVldWUgKGJhY2tsaWdodCk7CisgCisgICAgICAgICAgICAgICAgIHJldHVy bjsKKyAgICAgICAgIH0KK0BAIC04MjMsNyArNzk5LDYgQEAgZ3NkX2JhY2tsaWdodF9pbml0YWJs ZV9pbml0IChHSW5pdGFibGUgICAgICAgKmluaXRhYmxlLAorIHsKKyAgICAgICAgIEdzZEJhY2ts aWdodCAqYmFja2xpZ2h0ID0gR1NEX0JBQ0tMSUdIVCAoaW5pdGFibGUpOworICAgICAgICAgR25v bWVSUk91dHB1dCogb3V0cHV0ID0gTlVMTDsKKy0gICAgICAgIEdFcnJvciAqbG9naW5kX2Vycm9y ID0gTlVMTDsKKyAKKyAgICAgICAgIGlmIChjYW5jZWxsYWJsZSAhPSBOVUxMKSB7CisgICAgICAg ICAgICAgICAgIGdfc2V0X2Vycm9yX2xpdGVyYWwgKGVycm9yLCBHX0lPX0VSUk9SLCBHX0lPX0VS Uk9SX05PVF9TVVBQT1JURUQsCitAQCAtODMyLDM4ICs4MDcsNiBAQCBnc2RfYmFja2xpZ2h0X2lu aXRhYmxlX2luaXQgKEdJbml0YWJsZSAgICAgICAqaW5pdGFibGUsCisgICAgICAgICB9CisgCisg I2lmZGVmIF9fbGludXhfXworLSAgICAgICAgYmFja2xpZ2h0LT5sb2dpbmRfcHJveHkgPQorLSAg ICAgICAgICAgICAgICBnX2RidXNfcHJveHlfbmV3X2Zvcl9idXNfc3luYyAoR19CVVNfVFlQRV9T WVNURU0sCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAw LAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwK Ky0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNZU1RFTURf REJVU19OQU1FLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgU1lTVEVNRF9EQlVTX1BBVEgsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBTWVNURU1EX0RCVVNfSU5URVJGQUNFLAorLSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgJmxvZ2luZF9lcnJvcik7CistICAg ICAgICBpZiAoYmFja2xpZ2h0LT5sb2dpbmRfcHJveHkpIHsKKy0gICAgICAgICAgICAgICAgLyog Q2hlY2sgdGhhdCB0aGUgU2V0QnJpZ2h0bmVzcyBtZXRob2QgZG9lcyBleGlzdCAqLworLSAgICAg ICAgICAgICAgICBnX2RidXNfcHJveHlfY2FsbF9zeW5jIChiYWNrbGlnaHQtPmxvZ2luZF9wcm94 eSwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlNldEJyaWdodG5l c3MiLCBOVUxMLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHX0RC VVNfQ0FMTF9GTEFHU19OT05FLCAtMSwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgTlVMTCwgJmxvZ2luZF9lcnJvcik7CistCistICAgICAgICAgICAgICAgIGlmIChn X2Vycm9yX21hdGNoZXMgKGxvZ2luZF9lcnJvciwgR19EQlVTX0VSUk9SLAorLSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBHX0RCVVNfRVJST1JfSU5WQUxJRF9BUkdTKSkgewor LSAgICAgICAgICAgICAgICAgICAgICAgIC8qIFdlIGFyZSBjYWxsaW5nIHRoZSBtZXRob2Qgd2l0 aCBubyBhcmd1bWVudHMsIHNvCistICAgICAgICAgICAgICAgICAgICAgICAgICogdGhpcyBpcyBl eHBlY3RlZC4KKy0gICAgICAgICAgICAgICAgICAgICAgICAgKi8KKy0gICAgICAgICAgICAgICAg ICAgICAgICBnX2NsZWFyX2Vycm9yICgmbG9naW5kX2Vycm9yKTsKKy0gICAgICAgICAgICAgICAg fSBlbHNlIHsKKy0gICAgICAgICAgICAgICAgICAgICAgICAvKiBGYWlsIG9uIGFueXRoaW5nIGVs c2UgKi8KKy0gICAgICAgICAgICAgICAgICAgICAgICBnX2NsZWFyX29iamVjdCAoJmJhY2tsaWdo dC0+bG9naW5kX3Byb3h5KTsKKy0gICAgICAgICAgICAgICAgfQorLSAgICAgICAgfQorLQorLSAg ICAgICAgaWYgKGxvZ2luZF9lcnJvcikgeworLSAgICAgICAgICAgICAgICBnX3dhcm5pbmcgKCJO byBsb2dpbmQgZm91bmQ6ICVzIiwgbG9naW5kX2Vycm9yLT5tZXNzYWdlKTsKKy0gICAgICAgICAg ICAgICAgZ19lcnJvcl9mcmVlIChsb2dpbmRfZXJyb3IpOworLSAgICAgICAgfQorLQorICAgICAg ICAgLyogVHJ5IGZpbmRpbmcgYSB1ZGV2IGRldmljZS4gKi8KKyAgICAgICAgIGlmIChnc2RfYmFj a2xpZ2h0X3VkZXZfaW5pdCAoYmFja2xpZ2h0KSkKKyAgICAgICAgICAgICAgICAgZ290byBmb3Vu ZDsKK0BAIC05MDUsNyArODQ4LDYgQEAgZ3NkX2JhY2tsaWdodF9maW5hbGl6ZSAoR09iamVjdCAq b2JqZWN0KQorICNpZmRlZiBfX2xpbnV4X18KKyAgICAgICAgIGdfYXNzZXJ0IChiYWNrbGlnaHQt PmFjdGl2ZV90YXNrID09IE5VTEwpOworICAgICAgICAgZ19hc3NlcnQgKGdfcXVldWVfaXNfZW1w dHkgKCZiYWNrbGlnaHQtPnRhc2tzKSk7CistICAgICAgICBnX2NsZWFyX29iamVjdCAoJmJhY2ts aWdodC0+bG9naW5kX3Byb3h5KTsKKyAgICAgICAgIGdfY2xlYXJfb2JqZWN0ICgmYmFja2xpZ2h0 LT51ZGV2KTsKKyAgICAgICAgIGdfY2xlYXJfb2JqZWN0ICgmYmFja2xpZ2h0LT51ZGV2X2Rldmlj ZSk7CisgICAgICAgICBpZiAoYmFja2xpZ2h0LT5pZGxlX3VwZGF0ZSkgewpkaWZmIC0tZ2l0IGEv c3JjcGtncy9nbm9tZS1zZXR0aW5ncy1kYWVtb24vdGVtcGxhdGUgYi9zcmNwa2dzL2dub21lLXNl dHRpbmdzLWRhZW1vbi90ZW1wbGF0ZQppbmRleCBhNzBlMjhiZTVmYS4uOWNlYjFkMTNkZTkgMTAw NjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtc2V0dGluZ3MtZGFlbW9uL3RlbXBsYXRlCisrKyBiL3Ny Y3BrZ3MvZ25vbWUtc2V0dGluZ3MtZGFlbW9uL3RlbXBsYXRlCkBAIC0xLDEwICsxLDEwIEBACiAj IFRlbXBsYXRlIGZpbGUgZm9yICdnbm9tZS1zZXR0aW5ncy1kYWVtb24nCiBwa2duYW1lPWdub21l LXNldHRpbmdzLWRhZW1vbgotdmVyc2lvbj0zLjM0LjEKLXJldmlzaW9uPTIKK3ZlcnNpb249My4z Ni4xCityZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1tZXNvbgotY29uZmlndXJlX2FyZ3MrPSItRHN5 c3RlbWQ9ZmFsc2UiCi1ob3N0bWFrZWRlcGVuZHM9ImNtYWtlIGRvY2Jvb2steHNsIGdsaWItZGV2 ZWwgbGliZ2xpYi1kZXZlbCBsaWJ4c2x0IHBlcmwgcGtnLWNvbmZpZyIKK2NvbmZpZ3VyZV9hcmdz PSItRHN5c3RlbWQ9ZmFsc2UiCitob3N0bWFrZWRlcGVuZHM9ImNtYWtlIGRvY2Jvb2steHNsIGdl dHRleHQgZ2xpYi1kZXZlbCBsaWJnbGliLWRldmVsIGxpYnhzbHQgcGVybCBwa2ctY29uZmlnIgog bWFrZWRlcGVuZHM9Ik5ldHdvcmtNYW5hZ2VyLWRldmVsIGFsc2EtbGliLWRldmVsIGNvbG9yZC1k ZXZlbCBjdXBzLWRldmVsIGdjci1kZXZlbAogIGdlb2NsdWUyLWRldmVsIGdub21lLWRlc2t0b3At ZGV2ZWwgaWJ1cy1kZXZlbCBsaWJjYW5iZXJyYS1kZXZlbCBsaWJnbm9tZWtiZC1kZXZlbAogIGxp Ymd3ZWF0aGVyLWRldmVsIGxpYm5vdGlmeS1kZXZlbCBsaWJyc3ZnLWRldmVsIGxpYndhY29tLWRl dmVsIG5zcy1kZXZlbApAQCAtMTgsNyArMTgsNyBAQCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8 Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTMuMC1vci1sYXRlciIKIGhvbWVw YWdlPSJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2V0dGluZ3MtZGFlbW9u IgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3Br Z25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09OTk4MWEyMGJhYmY4ZGE3NzQ0Yjdm YmUxNzViOWUzNjA3OGJmMDhmM2JmNjVmZTVhZWRlYjgyY2ZlMjdhYzExZgorY2hlY2tzdW09M2Uz M2RiZDMxOWI1NjJhNWFiNjAyZGNhYjZkZTNjYTgxYjg1ZjgzNDY2NzJlOTBlYzYzMmIzNmJiZjE1 ZWU0YgogCiBpZiBbICIkQ1JPU1NfQlVJTEQiIF07IHRoZW4KIAlob3N0bWFrZWRlcGVuZHMrPSIg cG9sa2l0IgoKRnJvbSAzNzhkNDFlNTE0NjA1ZWExN2M1MmQxNGQ2MzEwNjk2ZTQ4NDk1OTkzIE1v biBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29t PgpEYXRlOiBUdWUsIDE2IEp1biAyMDIwIDE5OjQ1OjI3ICswNjAwClN1YmplY3Q6IFtQQVRDSCAx Ni82MV0gZ25vbWUtdXNlci1kb2NzOiB1cGRhdGUgdG8gMy4zNi4yLgoKLS0tCiBzcmNwa2dzL2du b21lLXVzZXItZG9jcy90ZW1wbGF0ZSB8IDggKysrKy0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA0IGlu c2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS11 c2VyLWRvY3MvdGVtcGxhdGUgYi9zcmNwa2dzL2dub21lLXVzZXItZG9jcy90ZW1wbGF0ZQppbmRl eCA0Y2I1NTM5NmUzNy4uY2E5OTMzNDZlM2EgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtdXNl ci1kb2NzL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtdXNlci1kb2NzL3RlbXBsYXRlCkBA IC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ25vbWUtdXNlci1kb2NzJwogcGtn bmFtZT1nbm9tZS11c2VyLWRvY3MKLXZlcnNpb249My4zNC4wCit2ZXJzaW9uPTMuMzYuMgogcmV2 aXNpb249MQogYXJjaHM9bm9hcmNoCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCkBAIC0xMCw3 ICsxMCw3IEBAIGRlcGVuZHM9InllbHAiCiBzaG9ydF9kZXNjPSJVc2VyIGRvY3VtZW50YXRpb24g Zm9yIEdOT01FIgogbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3Jn PiIKIGxpY2Vuc2U9IkNDLUJZLTMuMCIKLWhvbWVwYWdlPSJodHRwczovL2dpdGh1Yi5jb20vR05P TUUvZ25vbWUtdXNlci1kb2NzIgotI2NoYW5nZWxvZz0iaHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNv bnRlbnQuY29tL0dOT01FL2dub21lLXVzZXItZG9jcy9tYXN0ZXIvTkVXUyIKK2hvbWVwYWdlPSJo dHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtdXNlci1kb2NzIgorY2hhbmdlbG9n PSJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtdXNlci1kb2NzLy0vcmF3LzMu MzYuMi9ORVdTIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9u JS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09OGY5OTA3ZmYxNWZm Zjk3ZGE3NWVjZTY0NWNjODY3NjY3MDNhYzU0ZDcxNmQyNTU2M2JhNjdmZmVkMWFmMjRlZAorY2hl Y2tzdW09MTk4ZmU0YzgzNjc3NWE1ZGMyNTQzYTZhNTIwZGZiMGFjNWJmMjkyY2RjYjM1OGE1N2M4 NmYzNWY3MDVlOTk1OAoKRnJvbSAzYjlmYTI1MGI1ZGM5MTEyYTAyNDRlM2M4ODIwNzVjYTZjZDA2 MjY3IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxv b2suY29tPgpEYXRlOiBUdWUsIDE2IEp1biAyMDIwIDE5OjQ1OjM2ICswNjAwClN1YmplY3Q6IFtQ QVRDSCAxNy82MV0gZ25vbWUtaW5pdGlhbC1zZXR1cDogdXBkYXRlIHRvIDMuMzYuMy4KCi0tLQog c3JjcGtncy9nbm9tZS1pbml0aWFsLXNldHVwL3RlbXBsYXRlIHwgMTAgKysrKystLS0tLQogMSBm aWxlIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQg YS9zcmNwa2dzL2dub21lLWluaXRpYWwtc2V0dXAvdGVtcGxhdGUgYi9zcmNwa2dzL2dub21lLWlu aXRpYWwtc2V0dXAvdGVtcGxhdGUKaW5kZXggYWJhNWEwOTRjMjguLmNhYTMzYzI2OTVlIDEwMDY0 NAotLS0gYS9zcmNwa2dzL2dub21lLWluaXRpYWwtc2V0dXAvdGVtcGxhdGUKKysrIGIvc3JjcGtn cy9nbm9tZS1pbml0aWFsLXNldHVwL3RlbXBsYXRlCkBAIC0xLDEwICsxLDEwIEBACiAjIFRlbXBs YXRlIGZpbGUgZm9yICdnbm9tZS1pbml0aWFsLXNldHVwJwogcGtnbmFtZT1nbm9tZS1pbml0aWFs LXNldHVwCi12ZXJzaW9uPTMuMzQuMQotcmV2aXNpb249MgordmVyc2lvbj0zLjM2LjMKK3Jldmlz aW9uPTEKIGJ1aWxkX3N0eWxlPW1lc29uCi1jb25maWd1cmVfYXJncz0iLURzb2Z0d2FyZS1zb3Vy Y2VzPWRpc2FibGVkIC1Ec3lzdGVtZD1mYWxzZSIKLWhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZp ZyBnbGliLWRldmVsIgorY29uZmlndXJlX2FyZ3M9Ii1EcGFyZW50YWxfY29udHJvbHM9ZGlzYWJs ZWQgLURzeXN0ZW1kPWZhbHNlIgoraG9zdG1ha2VkZXBlbmRzPSJnZXR0ZXh0IHBrZy1jb25maWcg Z2xpYi1kZXZlbCIKIG1ha2VkZXBlbmRzPSJOZXR3b3JrTWFuYWdlci1kZXZlbCBhY2NvdW50c3Nl cnZpY2UtZGV2ZWwgbGliZ2xpYi1kZXZlbAogIGdub21lLWRlc2t0b3AtZGV2ZWwgY2hlZXNlLWRl dmVsIGxpYmd3ZWF0aGVyLWRldmVsIHdlYmtpdDJndGstZGV2ZWwKICBnbm9tZS1vbmxpbmUtYWNj b3VudHMtZGV2ZWwgZ2RtLWRldmVsIGxpYnB3cXVhbGl0eS1kZXZlbApAQCAtMTcsNCArMTcsNCBA QCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5z ZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL0Rl c2lnbi9PUy9Jbml0aWFsU2V0dXAiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1l fS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT1l NzFmMTBlZjZiNjMxY2Q5MmZmZGU3NzRlNDEzMGIzMmIyNDk0YjRkZjVlZjI4ODM3NWQ4YjE5NTdl ZWFiZmExCitjaGVja3N1bT1kOGE5MzNmOGM4MjJjYzI5M2NjMTBiNTMyNzc5Zjg1NjIzNDJhZTIy NzFiOTI5ODc5ZThmMTA4NDkxZjRjMjg1CgpGcm9tIGEyNjJjYThiMWZjMmYwNjk0ZTg3OWE0MDYw MTI4NGU3NjJkYjVhOTQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFi aWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFR1ZSwgMTYgSnVuIDIwMjAgMTk6NDU6NDMgKzA2MDAK U3ViamVjdDogW1BBVENIIDE4LzYxXSBldm9sdXRpb24tZGF0YS1zZXJ2ZXI6IHVwZGF0ZSB0byAz LjM2LjMuCgotLS0KIHNyY3BrZ3MvZXZvbHV0aW9uLWRhdGEtc2VydmVyL3RlbXBsYXRlIHwgNiAr KystLS0KIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpk aWZmIC0tZ2l0IGEvc3JjcGtncy9ldm9sdXRpb24tZGF0YS1zZXJ2ZXIvdGVtcGxhdGUgYi9zcmNw a2dzL2V2b2x1dGlvbi1kYXRhLXNlcnZlci90ZW1wbGF0ZQppbmRleCA0YWU4MjBiZTA2OC4uZWJm ODE0NWY4OGMgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZXZvbHV0aW9uLWRhdGEtc2VydmVyL3RlbXBs YXRlCisrKyBiL3NyY3BrZ3MvZXZvbHV0aW9uLWRhdGEtc2VydmVyL3RlbXBsYXRlCkBAIC0xLDcg KzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZXZvbHV0aW9uLWRhdGEtc2VydmVyJwogcGtn bmFtZT1ldm9sdXRpb24tZGF0YS1zZXJ2ZXIKLXZlcnNpb249My4zNi4xCi1yZXZpc2lvbj0yCit2 ZXJzaW9uPTMuMzYuMworcmV2aXNpb249MQogYnVpbGRfc3R5bGU9Y21ha2UKIGJ1aWxkX2hlbHBl cj1naXIKIGNvbmZpZ3VyZV9hcmdzPSItREVOQUJMRV9VT0E9T0ZGCkBAIC0xNyw3ICsxNyw3IEBA IGxpY2Vuc2U9IkxHUEwtMi4xLW9ubHkiCiBob21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21lLm9y Zy9BcHBzL0V2b2x1dGlvbiIKIGNoYW5nZWxvZz0iaHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNvbnRl bnQuY29tL0dOT01FL2V2b2x1dGlvbi1kYXRhLXNlcnZlci9nbm9tZS0zLTM2L05FV1MiCiBkaXN0 ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0t JHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT0xMzEyMmIyZWRkZGI5ODMwNjIwN2QyYTM1ZDVj Y2FlMjVhOTA3MDI3NjljYTBhMGI1MTY1M2I1OTg0OTg2Nzk2CitjaGVja3N1bT0xZjVmNDgxNzNk MGYyODgyMTlkNzNkNGYxOTNjYjkyMWFlNjMxOTMyYmE4NDAzMGYwNTc1MWM0MmJiMDAzZGIyCiAK IGJ1aWxkX29wdGlvbnM9ImdpciIKIGlmIFsgLXogIiRDUk9TU19CVUlMRCIgXTsgdGhlbgoKRnJv bSBiMjJhNzIzZmMxMzU1MWRhYjgwZTZmM2YzNjgzN2NmMzBkYjNmZDNlIE1vbiBTZXAgMTcgMDA6 MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUdWUs IDE2IEp1biAyMDIwIDE5OjQ1OjU2ICswNjAwClN1YmplY3Q6IFtQQVRDSCAxOS82MV0gZXZvbHV0 aW9uOiB1cGRhdGUgdG8gMy4zNi4zLgoKLS0tCiBzcmNwa2dzL2V2b2x1dGlvbi90ZW1wbGF0ZSB8 IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkK CmRpZmYgLS1naXQgYS9zcmNwa2dzL2V2b2x1dGlvbi90ZW1wbGF0ZSBiL3NyY3BrZ3MvZXZvbHV0 aW9uL3RlbXBsYXRlCmluZGV4IDU2MGVkOTNkYTAyLi5kOTVjMDdlYjcyYyAxMDA2NDQKLS0tIGEv c3JjcGtncy9ldm9sdXRpb24vdGVtcGxhdGUKKysrIGIvc3JjcGtncy9ldm9sdXRpb24vdGVtcGxh dGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdldm9sdXRpb24nCiBwa2du YW1lPWV2b2x1dGlvbgotdmVyc2lvbj0zLjM2LjEKK3ZlcnNpb249My4zNi4zCiByZXZpc2lvbj0x CiBidWlsZF9zdHlsZT1jbWFrZQogY29uZmlndXJlX2FyZ3M9Ii1ERU5BQkxFX0FVVE9BUj1PRkYg LURFTkFCTEVfTElCQ1JZUFRVST1PRkYgLURFTkFCTEVfR1RLU1BFTEw9T0ZGCkBAIC0xOSw3ICsx OSw3IEBAIGxpY2Vuc2U9IkxHUEwtMi4xLW9yLWxhdGVyLCBMR1BMLTMuMC1vci1sYXRlciwgR1BM LTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL0FwcHMvRXZv bHV0aW9uIgogY2hhbmdlbG9nPSJodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vR05P TUUvZXZvbHV0aW9uL2dub21lLTMtMzYvTkVXUyIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8k e3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNo ZWNrc3VtPTg3M2FjZjFkYmVjMzhlNjdlMTY5MDY0NjQ1YWMzYTliOWE5NDRiZDJiNjMzMTYxZGY2 ZTVmMDU3MDBlMzZjYjgKK2NoZWNrc3VtPTU0ZTE2Y2FhMjg2YzAyZDRmZTk0YjQzZTMzYWJmNWNk NmYzYTE1MDIxODFiYjhjZjU1N2FhZGM4ODZiNWNhMDMKIHNobGliX3Byb3ZpZGVzPSJsaWJldm9s dXRpb24tY2FsZW5kYXIuc28gbGliZXZvbHV0aW9uLXV0aWwuc28gbGliZW1haWwtZW5naW5lLnNv CiAgbGliZXZvbHV0aW9uLW1haWwuc28gbGliZXZvbHV0aW9uLXNoZWxsLnNvIgogCgpGcm9tIGYw MGYyNGY2NTY4NmIxYmJlYzM3ZGM3NjJjOWQwMDFlOTMxOWIwN2UgTW9uIFNlcCAxNyAwMDowMDow MCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFR1ZSwgMTYg SnVuIDIwMjAgMTk6NDY6MDQgKzA2MDAKU3ViamVjdDogW1BBVENIIDIwLzYxXSBldm9sdXRpb24t ZXdzOiB1cGRhdGUgdG8gMy4zNi4zLgoKLS0tCiBzcmNwa2dzL2V2b2x1dGlvbi1ld3MvdGVtcGxh dGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25z KC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9ldm9sdXRpb24tZXdzL3RlbXBsYXRlIGIvc3JjcGtn cy9ldm9sdXRpb24tZXdzL3RlbXBsYXRlCmluZGV4IDRmZjgxMTY0NjZjLi4zOGZkNjJkMzllMSAx MDA2NDQKLS0tIGEvc3JjcGtncy9ldm9sdXRpb24tZXdzL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mv ZXZvbHV0aW9uLWV3cy90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBm b3IgJ2V2b2x1dGlvbi1ld3MnCiBwa2duYW1lPWV2b2x1dGlvbi1ld3MKLXZlcnNpb249My4zNi4x Cit2ZXJzaW9uPTMuMzYuMwogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9Y21ha2UKIGNvbmZpZ3Vy ZV9hcmdzPSItRExJQkVYRUNfSU5TVEFMTF9ESVI9L3Vzci9saWIvZXZvbHV0aW9uIgpAQCAtMTIs NCArMTIsNCBAQCBsaWNlbnNlPSJMR1BMLTIuMS1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczov L3dpa2kuZ25vbWUub3JnL0FwcHMvRXZvbHV0aW9uIgogY2hhbmdlbG9nPSJodHRwczovL3Jhdy5n aXRodWJ1c2VyY29udGVudC5jb20vR05PTUUvZXZvbHV0aW9uLWV3cy9nbm9tZS0zLTM2L05FV1Mi CiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtn bmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT1kMDg4M2M3ZDIyNzgyN2NjNWM0NDY4 YjdlMzFhM2VlMzcwYmNkN2Q0MWE0ZGJiOTUwYWI1ZGIzNmM5NTUxYWMxCitjaGVja3N1bT03YTk3 YTU5YjEwZjdhNDhhM2JjZjZkNDc2YzZhMmMwNjhlYzVjNDhjNTQ2YTQzMzgxMjY5MWI4MzAxNzUy ZDA0CgpGcm9tIDFmNjdjMmJiMDNiZWYxNjQwYWJhOWVmYTU1ZTExNmUyYjQ1MDhmMWMgTW9uIFNl cCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRh dGU6IFR1ZSwgMTYgSnVuIDIwMjAgMTk6NDY6MTEgKzA2MDAKU3ViamVjdDogW1BBVENIIDIxLzYx XSBhdGs6IHVwZGF0ZSB0byAyLjM2LjAuCgotLS0KIHNyY3BrZ3MvYXRrL3RlbXBsYXRlIHwgNiAr KystLS0KIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpk aWZmIC0tZ2l0IGEvc3JjcGtncy9hdGsvdGVtcGxhdGUgYi9zcmNwa2dzL2F0ay90ZW1wbGF0ZQpp bmRleCA3YzE0YjExNjU5OC4uY2EyMmQzNjYxOTggMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvYXRrL3Rl bXBsYXRlCisrKyBiL3NyY3BrZ3MvYXRrL3RlbXBsYXRlCkBAIC0xLDE4ICsxLDE4IEBACiAjIFRl bXBsYXRlIGZpbGUgZm9yICdhdGsnCiBwa2duYW1lPWF0awotdmVyc2lvbj0yLjM0LjEKK3ZlcnNp b249Mi4zNi4wCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1tZXNvbgogYnVpbGRfaGVscGVyPSJn aXIiCiBjb25maWd1cmVfYXJncz0iLURpbnRyb3NwZWN0aW9uPSQodm9wdF9pZiBnaXIgdHJ1ZSBm YWxzZSkiCi1ob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcgZ2xpYi1kZXZlbCIKK2hvc3RtYWtl ZGVwZW5kcz0iZ2V0dGV4dCBwa2ctY29uZmlnIGdsaWItZGV2ZWwiCiBtYWtlZGVwZW5kcz0ibGli Z2xpYi1kZXZlbCIKIHNob3J0X2Rlc2M9IlNldCBvZiBpbnRlcmZhY2VzIGZvciBhY2Nlc3NpYmls aXR5IgogbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxp Y2Vuc2U9IkxHUEwtMi4xLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vZGV2ZWxvcGVyLmdu b21lLm9yZy9hdGsvIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9L2F0ay8ke3ZlcnNpb24lLip9 L2F0ay0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPWQ0ZjBlM2IzZDIxMjY1ZmNmMmJjMzcx ZTExN2RhNTFjNDJlZGUxYTcxZjZkYjFjODM0ZTY5NzZiYjIwOTk3Y2IKK2NoZWNrc3VtPWZiNzYy NDdlMzY5NDAyYmUyM2YxZjVjNjVkMzhhOTYzOWMxMTY0ZDkzNGU0MGY2YTljZjNjOWU5NmI2NTI3 ODgKIAogIyBQYWNrYWdlIGJ1aWxkIG9wdGlvbnMKIGJ1aWxkX29wdGlvbnM9ImdpciIKCkZyb20g ZjlkOGRhN2NjYTk0Y2FlYTA0ODM1MzE4ZjUxYTNhYWIzZjU0YTc1YiBNb24gU2VwIDE3IDAwOjAw OjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCAx NiBKdW4gMjAyMCAxOTo0NjoxOSArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMjIvNjFdIGF0LXNwaTIt Y29yZTogdXBkYXRlIHRvIDIuMzYuMC4KCi0tLQogc3JjcGtncy9hdC1zcGkyLWNvcmUvdGVtcGxh dGUgfCA5ICsrKystLS0tLQogMSBmaWxlIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgNSBkZWxl dGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2F0LXNwaTItY29yZS90ZW1wbGF0ZSBiL3Ny Y3BrZ3MvYXQtc3BpMi1jb3JlL3RlbXBsYXRlCmluZGV4IGIzODNmZTk5YmVkLi5mYjc5OWFmN2U1 MiAxMDA2NDQKLS0tIGEvc3JjcGtncy9hdC1zcGkyLWNvcmUvdGVtcGxhdGUKKysrIGIvc3JjcGtn cy9hdC1zcGkyLWNvcmUvdGVtcGxhdGUKQEAgLTEsMTggKzEsMTcgQEAKICMgVGVtcGxhdGUgZmls ZSBmb3IgJ2F0LXNwaTItY29yZScKIHBrZ25hbWU9YXQtc3BpMi1jb3JlCi12ZXJzaW9uPTIuMzQu MAordmVyc2lvbj0yLjM2LjAKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPW1lc29uCiBidWlsZF9o ZWxwZXI9ImdpciIKLWhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyBkYnVzIGdsaWItZGV2ZWwi Ci1tYWtlZGVwZW5kcz0ibGliZ2xpYi1kZXZlbCBsaWJYZXh0LWRldmVsIGxpYlNNLWRldmVsIGxp Ylh0c3QtZGV2ZWwKLSBsaWJYZXZpZS1kZXZlbCBkYnVzLWRldmVsIgoraG9zdG1ha2VkZXBlbmRz PSJnZXR0ZXh0IHBrZy1jb25maWcgZGJ1cyBnbGliLWRldmVsIgorbWFrZWRlcGVuZHM9ImxpYmds aWItZGV2ZWwgbGliU00tZGV2ZWwgbGliWHRzdC1kZXZlbCBkYnVzLWRldmVsIgogc2hvcnRfZGVz Yz0iQXNzaXN0aXZlIFRlY2hub2xvZ3kgU2VydmljZSBQcm92aWRlciBJbnRlcmZhY2UiCiBtYWlu dGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BM LTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUv YXQtc3BpMi1jb3JlIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJz aW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09ZDYyOWNkYmQ2 NzRlNTM5Zjg5MTIwMjg1MTJhZjU4Mzk5MDkzOGM3YjQ5ZTI1MTg0YzEyNmIwMDEyMWVmMTFjNgor Y2hlY2tzdW09ODhkYTU3ZGUwYTdlM2M2MGJjMzQxYTk3NGE4MGZkYmEwOTE2MTJkYjM1NDdjNDEw ZDZkZWFiMDM5Y2E1YzA1YQogCiAjIFBhY2thZ2UgYnVpbGQgb3B0aW9ucwogYnVpbGRfb3B0aW9u cz0iZ2lyIgoKRnJvbSBkY2YzNGViOTI3MjAyZTMyNDhlZjVlZjZlNDZmNjQzZDQ0ODcyY2M1IE1v biBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29t PgpEYXRlOiBUdWUsIDE2IEp1biAyMDIwIDE5OjQ2OjI2ICswNjAwClN1YmplY3Q6IFtQQVRDSCAy My82MV0gYXQtc3BpMi1hdGs6IHVwZGF0ZSB0byAyLjM0LjIuCgotLS0KIHNyY3BrZ3MvYXQtc3Bp Mi1hdGsvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyks IDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9hdC1zcGkyLWF0ay90ZW1wbGF0 ZSBiL3NyY3BrZ3MvYXQtc3BpMi1hdGsvdGVtcGxhdGUKaW5kZXggNDM1MWI3OTk2ZjMuLmFhN2I4 ODM5YzlmIDEwMDY0NAotLS0gYS9zcmNwa2dzL2F0LXNwaTItYXRrL3RlbXBsYXRlCisrKyBiL3Ny Y3BrZ3MvYXQtc3BpMi1hdGsvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZp bGUgZm9yICdhdC1zcGkyLWF0aycKIHBrZ25hbWU9YXQtc3BpMi1hdGsKLXZlcnNpb249Mi4zNC4x Cit2ZXJzaW9uPTIuMzQuMgogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9bWVzb24KIGhvc3RtYWtl ZGVwZW5kcz0ibGlidG9vbCBwa2ctY29uZmlnIGludGx0b29sIGdsaWItZGV2ZWwiCkBAIC0xMCw3 ICsxMCw3IEBAIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4i CiBsaWNlbnNlPSJMR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwOi8vd3d3Lmdub21l Lm9yZyIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0v JHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTc3NmRmOTMwNzQ4ZmRlNzFj MTI4YmU2YzM2NmE5ODdiOThiNmVlNjZkNTA4ZWQ5YzhkYjIzNTViZjRiOWNjMTYKK2NoZWNrc3Vt PTkwMTMyM2NlZTBlZWYwNWMwMWVjNGRlZTA2YzcwMWFlZWNhODFhMzE0YTdkNjAyMTZmYTM2MzAw NWUyN2Y0ZjAKIAogYXQtc3BpMi1hdGstZGV2ZWxfcGFja2FnZSgpIHsKIAlkZXBlbmRzPSIke21h a2VkZXBlbmRzfSAke3NvdXJjZXBrZ30+PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0iCgpGcm9tIGEy ZGI2ZDg5N2NlNDE1MjExNWRiYmNkMjUzZjYzMTA2NDJkZjQ4MTUgTW9uIFNlcCAxNyAwMDowMDow MCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFR1ZSwgMTYg SnVuIDIwMjAgMTk6NDY6NDEgKzA2MDAKU3ViamVjdDogW1BBVENIIDI0LzYxXSBweXRob24tYXRz cGk6IHVwZGF0ZSB0byAyLjM2LjAuCgotLS0KIHNyY3BrZ3MvcHl0aG9uLWF0c3BpL3RlbXBsYXRl IHwgNiArKystLS0KIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25z KC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9weXRob24tYXRzcGkvdGVtcGxhdGUgYi9zcmNwa2dz L3B5dGhvbi1hdHNwaS90ZW1wbGF0ZQppbmRleCAwMTQxZDk3Zjg1ZC4uNDg4MTA1NmFkNzYgMTAw NjQ0Ci0tLSBhL3NyY3BrZ3MvcHl0aG9uLWF0c3BpL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvcHl0 aG9uLWF0c3BpL3RlbXBsYXRlCkBAIC0xLDggKzEsOCBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAn cHl0aG9uLWF0c3BpJwogIyBLZWVwIHB5dGhvbjMtYXRzcGkgaW4gc3luYwogcGtnbmFtZT1weXRo b24tYXRzcGkKLXZlcnNpb249Mi4zMi4xCi1yZXZpc2lvbj00Cit2ZXJzaW9uPTIuMzYuMAorcmV2 aXNpb249MQogYXJjaHM9bm9hcmNoCiB3cmtzcmM9InB5YXRzcGktJHt2ZXJzaW9ufSIKIGJ1aWxk X3N0eWxlPWdudS1jb25maWd1cmUKQEAgLTE0LDQgKzE0LDQgQEAgbWFpbnRhaW5lcj0iRW5ubyBC b2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIi CiBob21lcGFnZT0iaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL3B5YXRzcGkyIgogZGlz dGZpbGVzPSIke0dOT01FX1NJVEV9L3B5YXRzcGkvJHt2ZXJzaW9uJS4qfS9weWF0c3BpLSR7dmVy c2lvbn0udGFyLnh6IgotY2hlY2tzdW09ODQ5NTRhNWJiZWFjYzgzNjQzZjA1Nzc4ZDhiZWFmY2Fi ODIwOGUxMWIzOWIyNDYzN2I0YzRkZDFmODYyMDM4OQorY2hlY2tzdW09NTEzNmMxYmY5MTllMTAx ZDRlYzkwMWEyNzZlODZlYTYwZTU4ODFhOGZmNzc2M2UzNTZmMTk4NDBlNWZmZTFkZAoKRnJvbSBh ODU5MzY2NzIxNDlkMTJkYzg3ZWI5OTU1NDY1NTg2ZGVlODllNWU3IE1vbiBTZXAgMTcgMDA6MDA6 MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUdWUsIDE2 IEp1biAyMDIwIDE5OjQ2OjQ4ICswNjAwClN1YmplY3Q6IFtQQVRDSCAyNS82MV0gcHl0aG9uMy1h dHNwaTogdXBkYXRlIHRvIDIuMzYuMC4KCi0tLQogc3JjcGtncy9weXRob24zLWF0c3BpL3RlbXBs YXRlIHwgNiArKystLS0KIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRp b25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9weXRob24zLWF0c3BpL3RlbXBsYXRlIGIvc3Jj cGtncy9weXRob24zLWF0c3BpL3RlbXBsYXRlCmluZGV4IGEzM2EzNzRmZTE4Li5iMjM2MDgyMmFj ZiAxMDA2NDQKLS0tIGEvc3JjcGtncy9weXRob24zLWF0c3BpL3RlbXBsYXRlCisrKyBiL3NyY3Br Z3MvcHl0aG9uMy1hdHNwaS90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmls ZSBmb3IgJ3B5dGhvbjMtYXRzcGknCiBwa2duYW1lPXB5dGhvbjMtYXRzcGkKLXZlcnNpb249Mi4z Mi4xCi1yZXZpc2lvbj00Cit2ZXJzaW9uPTIuMzYuMAorcmV2aXNpb249MQogYXJjaHM9bm9hcmNo CiB3cmtzcmM9InB5YXRzcGktJHt2ZXJzaW9ufSIKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUK QEAgLTEzLDQgKzEzLDQgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGlu dXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly9n aXRsYWIuZ25vbWUub3JnL0dOT01FL3B5YXRzcGkyIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9 L3B5YXRzcGkvJHt2ZXJzaW9uJS4qfS9weWF0c3BpLSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tz dW09ODQ5NTRhNWJiZWFjYzgzNjQzZjA1Nzc4ZDhiZWFmY2FiODIwOGUxMWIzOWIyNDYzN2I0YzRk ZDFmODYyMDM4OQorY2hlY2tzdW09NTEzNmMxYmY5MTllMTAxZDRlYzkwMWEyNzZlODZlYTYwZTU4 ODFhOGZmNzc2M2UzNTZmMTk4NDBlNWZmZTFkZAoKRnJvbSA0OWZmM2I1NjBlNTQ1MjM5ZmY4YTI2 YWEyOTdhY2QwYTEzODQ4NjliIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8 bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUdWUsIDE2IEp1biAyMDIwIDE5OjQ2OjU2ICsw NjAwClN1YmplY3Q6IFtQQVRDSCAyNi82MV0gZm9sa3M6IHVwZGF0ZSB0byAwLjE0LjAuCgotLS0K IGNvbW1vbi9zaGxpYnMgICAgICAgICAgfCAgNyArKysrLS0tCiBzcmNwa2dzL2ZvbGtzL3RlbXBs YXRlIHwgMTIgKysrKysrLS0tLS0tCiAyIGZpbGVzIGNoYW5nZWQsIDEwIGluc2VydGlvbnMoKyks IDkgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvY29tbW9uL3NobGlicyBiL2NvbW1vbi9zaGxp YnMKaW5kZXggMDU4NjViZjU1NzYuLjA5ZWU5NjhiNDJlIDEwMDY0NAotLS0gYS9jb21tb24vc2hs aWJzCisrKyBiL2NvbW1vbi9zaGxpYnMKQEAgLTgzOSw5ICs4MzksMTAgQEAgbGliZG1yLnNvLjAu MSBkZWVwaW4tbW92aWUtcmVib3JuLTMuMi41XzEKIGxpYmdqcy5zby4wIGdqcy0xLjY1LjJfMQog bGlidGVsZXBhdGh5LWdsaWIuc28uMCB0ZWxlcGF0aHktZ2xpYi0wLjE1LjVfMQogbGliYWNjb3Vu dHNzZXJ2aWNlLnNvLjAgYWNjb3VudHNzZXJ2aWNlLTAuNi40XzEKLWxpYmZvbGtzLnNvLjI1IGZv bGtzLTAuOS41XzEKLWxpYmZvbGtzLXRlbGVwYXRoeS5zby4yNSBmb2xrcy0wLjkuNV8xCi1saWJm b2xrcy1lZHMuc28uMjUgZm9sa3MtMC45LjVfMQorbGliZm9sa3Muc28uMjUgZm9sa3MtMC4xNC4w XzEKK2xpYmZvbGtzLWR1bW15LnNvLjI1IGZvbGtzLTAuMTQuMF8xCitsaWJmb2xrcy10ZWxlcGF0 aHkuc28uMjUgZm9sa3MtMC4xNC4wXzEKK2xpYmZvbGtzLWVkcy5zby4yNSBmb2xrcy0wLjE0LjBf MQogbGlibmljZS5zby4xMCBsaWJuaWNlLTAuMS4wXzEKIGxpYmd1cG5wLWlnZC0xLjAuc28uNCBn dXBucC1pZ2QtMC4yLjBfMQogbGlidGVsZXBhdGh5LWxvZ2dlci5zby4zIHRlbGVwYXRoeS1sb2dn ZXItMC42LjBfMQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9mb2xrcy90ZW1wbGF0ZSBiL3NyY3BrZ3Mv Zm9sa3MvdGVtcGxhdGUKaW5kZXggMzMxMGM1NGZhZGQuLmUyMWNhOWMxMDc3IDEwMDY0NAotLS0g YS9zcmNwa2dzL2ZvbGtzL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZm9sa3MvdGVtcGxhdGUKQEAg LTEsMTIgKzEsMTIgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2ZvbGtzJwogcGtnbmFtZT1mb2xr cwotdmVyc2lvbj0wLjEzLjEKLXJldmlzaW9uPTIKK3ZlcnNpb249MC4xNC4wCityZXZpc2lvbj0x CiBidWlsZF9zdHlsZT1tZXNvbgogYnVpbGRfaGVscGVyPWdpcgotY29uZmlndXJlX2FyZ3M9Ii1E Yl9sdG89ZmFsc2UgLURsaWJzb2NpYWx3ZWItYmFja2VuZD1mYWxzZSIKLWhvc3RtYWtlZGVwZW5k cz0icGtnLWNvbmZpZyBpbnRsdG9vbCBnbGliLWRldmVsIHZhbGEgcHl0aG9uIGdvYmplY3QtaW50 cm9zcGVjdGlvbgotIGV2b2x1dGlvbi1kYXRhLXNlcnZlci1kZXZlbCIKK2NvbmZpZ3VyZV9hcmdz PSItRGJfbHRvPWZhbHNlIgoraG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIGludGx0b29sIGds aWItZGV2ZWwgdmFsYSBweXRob24zIHB5dGhvbjMtZGJ1c21vY2sKKyBnb2JqZWN0LWludHJvc3Bl Y3Rpb24gZXZvbHV0aW9uLWRhdGEtc2VydmVyLWRldmVsIgogbWFrZWRlcGVuZHM9InJlYWRsaW5l LWRldmVsIHRlbGVwYXRoeS1nbGliLWRldmVsIHplaXRnZWlzdC1kZXZlbAogIGxpYmdlZTA4LWRl dmVsIGV2b2x1dGlvbi1kYXRhLXNlcnZlci1kZXZlbCB0cmFja2VyLWRldmVsIgogZGVwZW5kcz0i emVpdGdlaXN0IgpAQCAtMTUsNyArMTUsNyBAQCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290 dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iTEdQTC0yLjEtb3ItbGF0ZXIiCiBob21lcGFn ZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9Qcm9qZWN0cy9Gb2xrcyIKIGRpc3RmaWxlcz0iJHtH Tk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259 LnRhci54eiIKLWNoZWNrc3VtPTNkZjFjNjYzYjgyZmUyMTFhZWFkMmIzMWNhZTFmYzQxZDEyNGU4 NTQzNjM3NTc2MmY2NzQ1YzQ1YmE0NmFhNWQKK2NoZWNrc3VtPWQ2ZTc3OGRhNjM3ZDNiMzNmZDlh NmI0NTExNWU4MTU3ZDg4NjgyMTFkYzA4Yjk0M2QxMDc1YjVlYjcyODJiYjkKIAogZm9sa3MtZGV2 ZWxfcGFja2FnZSgpIHsKIAlkZXBlbmRzPSIke21ha2VkZXBlbmRzfSAke3NvdXJjZXBrZ30+PSR7 dmVyc2lvbn1fJHtyZXZpc2lvbn0iCgpGcm9tIDA3Mzc5ZmUxYWU4ZWNiYmI2MTYzZTZjMjkwNjll MDQ4NjcyZmVlOWMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQu MjVAb3V0bG9vay5jb20+CkRhdGU6IFR1ZSwgMTYgSnVuIDIwMjAgMTk6NDc6MDMgKzA2MDAKU3Vi amVjdDogW1BBVENIIDI3LzYxXSBmaWxlLXJvbGxlcjogdXBkYXRlIHRvIDMuMzYuMi4KCi0tLQog c3JjcGtncy9maWxlLXJvbGxlci90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIg aW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2ZpbGUt cm9sbGVyL3RlbXBsYXRlIGIvc3JjcGtncy9maWxlLXJvbGxlci90ZW1wbGF0ZQppbmRleCA1ZmI3 NmQ5NzMwNy4uNmEwYzI4MGYwZDUgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZmlsZS1yb2xsZXIvdGVt cGxhdGUKKysrIGIvc3JjcGtncy9maWxlLXJvbGxlci90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAK ICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2ZpbGUtcm9sbGVyJwogcGtnbmFtZT1maWxlLXJvbGxlcgot dmVyc2lvbj0zLjM2LjAKK3ZlcnNpb249My4zNi4yCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1t ZXNvbgogaG9zdG1ha2VkZXBlbmRzPSJnZXR0ZXh0IGdsaWItZGV2ZWwgaXRzdG9vbCBwa2ctY29u ZmlnIgpAQCAtMTIsNCArMTIsNCBAQCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZv aWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRw czovL3dpa2kuZ25vbWUub3JnL0FwcHMvRmlsZVJvbGxlciIKIGRpc3RmaWxlcz0iJHtHTk9NRV9T SVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54 eiIKLWNoZWNrc3VtPWI5MTQ0ZGU4ZjUzNmY1ODNlYzI5ZDcwM2MyYzE3MGJmMmQwMGM2YzE2NmNk NWUzZjdlZmFiZGE1NTFmMTA0NzgKK2NoZWNrc3VtPTI2OGY3ZmRhZDhkMmE3OGRmZWQ1ZTgyZWI4 NzEwYmFkMzg5YzMxMWI3MjA2NjZkNmYwN2EwNGVkNTEwNTZiZDIKCkZyb20gMGQ0MzBiZTQwODJi Y2U2MWZmYjJhYzgwZmEyMDdlMzgyMDVlODZhNyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJv bTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCAxNiBKdW4gMjAyMCAx OTo0NzoxMCArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMjgvNjFdIGRjb25mLWVkaXRvcjogdXBkYXRl IHRvIDMuMzYuMi4KCi0tLQogc3JjcGtncy9kY29uZi1lZGl0b3IvdGVtcGxhdGUgfCA2ICsrKy0t LQogMSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKCmRpZmYg LS1naXQgYS9zcmNwa2dzL2Rjb25mLWVkaXRvci90ZW1wbGF0ZSBiL3NyY3BrZ3MvZGNvbmYtZWRp dG9yL3RlbXBsYXRlCmluZGV4IGRlMjUwYmJjOGE5Li4xMGFiOGQ3OTI2NCAxMDA2NDQKLS0tIGEv c3JjcGtncy9kY29uZi1lZGl0b3IvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9kY29uZi1lZGl0b3Iv dGVtcGxhdGUKQEAgLTEsMTMgKzEsMTMgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2Rjb25mLWVk aXRvcicKIHBrZ25hbWU9ZGNvbmYtZWRpdG9yCi12ZXJzaW9uPTMuMzYuMAordmVyc2lvbj0zLjM2 LjIKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPW1lc29uCi1ob3N0bWFrZWRlcGVuZHM9ImRvY2Jv b2steHNsIGdsaWItZGV2ZWwgbGlieHNsdCBwa2ctY29uZmlnIHZhbGEiCitob3N0bWFrZWRlcGVu ZHM9ImdldHRleHQgZG9jYm9vay14c2wgZ2xpYi1kZXZlbCBsaWJ4c2x0IHBrZy1jb25maWcgdmFs YSIKIG1ha2VkZXBlbmRzPSJkY29uZi1kZXZlbCBndGsrMy1kZXZlbCIKIHNob3J0X2Rlc2M9Ikxv dy1sZXZlbCBjb25maWd1cmF0aW9uIHN5c3RlbSAtIEdUSysgZWRpdG9yIgogbWFpbnRhaW5lcj0i RW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0zLjAtb3It bGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9Qcm9qZWN0cy9kY29uZiIK IGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2du YW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTcyZWVkMDU2NzA5MTdmOGU0MzIwMGU0 MGNjYzZiZTYwMjExZjBhODdiMDE3NTM0ZWFjMWZkNmM3MTczYTA2OTMKK2NoZWNrc3VtPWVkY2Vj ODg2N2YwMTg1ODkxMjVmMTc3NDA3NzYwYzY0MmJiYmI1MmZlNTEyMmRhYWM1OTA1MjIzZDZiM2Ux YzcKCkZyb20gNDQwZmFiNTRjOTNkN2U4OTQ1OGNkNzQwMzE1YTQ1MWM5NTY5OWE0NSBNb24gU2Vw IDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0 ZTogVHVlLCAxNiBKdW4gMjAyMCAxOTo0NzoxNiArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMjkvNjFd IHRyYWNrZXI6IHVwZGF0ZSB0byAyLjMuNC4KCi0tLQogc3JjcGtncy90cmFja2VyL3RlbXBsYXRl IHwgOCArKysrLS0tLQogMSBmaWxlIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlv bnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3RyYWNrZXIvdGVtcGxhdGUgYi9zcmNwa2dzL3Ry YWNrZXIvdGVtcGxhdGUKaW5kZXggMzcwNzRjYjM0OGQuLmU4MTRmNzdjNzExIDEwMDY0NAotLS0g YS9zcmNwa2dzL3RyYWNrZXIvdGVtcGxhdGUKKysrIGIvc3JjcGtncy90cmFja2VyL3RlbXBsYXRl CkBAIC0xLDEzICsxLDEzIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICd0cmFja2VyJwogcGtnbmFt ZT10cmFja2VyCi12ZXJzaW9uPTIuMy4xCi1yZXZpc2lvbj0yCit2ZXJzaW9uPTIuMy40CityZXZp c2lvbj0xCiBidWlsZF9zdHlsZT1tZXNvbgogYnVpbGRfaGVscGVyPSJnaXIiCiBjb25maWd1cmVf YXJncz0iLURkb2NzPWZhbHNlIC1EZnRzPXRydWUgLURmdW5jdGlvbmFsX3Rlc3RzPWZhbHNlCiAg LURqb3VybmFsPXRydWUgLURtYW49dHJ1ZSAtRG5ldHdvcmtfbWFuYWdlcj1lbmFibGVkIC1Ec3Rl bW1lcj1kaXNhYmxlZAogIC1Ec3lzdGVtZF91c2VyX3NlcnZpY2VzPW5vIgotaG9zdG1ha2VkZXBl bmRzPSJwa2ctY29uZmlnIGdsaWItZGV2ZWwgdmFsYSIKK2hvc3RtYWtlZGVwZW5kcz0iZ2V0dGV4 dCBwa2ctY29uZmlnIGdsaWItZGV2ZWwgdmFsYSIKIG1ha2VkZXBlbmRzPSJkYnVzLWRldmVsIGxp YmdsaWItZGV2ZWwgaWN1LWRldmVsIGpzb24tZ2xpYi1kZXZlbAogIGxpYnNvdXAtZGV2ZWwgbGli eG1sMi1kZXZlbCBzcWxpdGUtZGV2ZWwgTmV0d29ya01hbmFnZXItZGV2ZWwKICBiYXNoLWNvbXBs ZXRpb24iCkBAIC0xNiw3ICsxNiw3IEBAIG1haW50YWluZXI9Ik9ycGhhbmVkIDxvcnBoYW5Adm9p ZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBz Oi8vbGl2ZS5nbm9tZS5vcmcvVHJhY2tlciIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS90cmFj a2VyLyR7dmVyc2lvbiUuKn0vdHJhY2tlci0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPWI2 NzQ4NzI2ZTQ2NWFkMmY0ZDk5MTU2MDYzNGIxZmQwZGY4ODQxZjNkOTgxYjNiODM3YzQxNjJhYmVk ZjA4YTEKK2NoZWNrc3VtPTU3Nzk1MjI0NGFiOTc3Yzc4YjBiODhlMmY2M2M0MTk3ZWFiYTE2ZTRk NjZiZmY2OTJiN2Y1ODk5M2UwNjUxNmQKIAogaWYgWyAiJENST1NTX0JVSUxEIiBdOyB0aGVuCiAJ aG9zdG1ha2VkZXBlbmRzKz0iIGRidXMiCgpGcm9tIDkxOGE5ZDgzZjkzYzgyNzVjMDRmYWEzY2M4 Y2YyYzAxMmY0ZDM5OTAgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFi aWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFR1ZSwgMTYgSnVuIDIwMjAgMTk6NDc6MjMgKzA2MDAK U3ViamVjdDogW1BBVENIIDMwLzYxXSBvcmNhOiB1cGRhdGUgdG8gMy4zNi4yLgoKLS0tCiBzcmNw a2dzL29yY2EvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMo KyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9vcmNhL3RlbXBsYXRlIGIv c3JjcGtncy9vcmNhL3RlbXBsYXRlCmluZGV4IGY3MDIwMmU2ZDc2Li44YTcwYzg0OWY2ZCAxMDA2 NDQKLS0tIGEvc3JjcGtncy9vcmNhL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mvb3JjYS90ZW1wbGF0 ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ29yY2EnCiBwa2duYW1lPW9y Y2EKLXZlcnNpb249My4zNi4xCit2ZXJzaW9uPTMuMzYuMgogcmV2aXNpb249MQogYXJjaHM9bm9h cmNoCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCkBAIC0xMyw3ICsxMyw3IEBAIG1haW50YWlu ZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4w LW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcvUHJvamVjdHMvT3Jj YSIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtw a2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPWMxYWM2NDhiNmJlMzE0ODhjMjZm Zjk1OTExNDI4Nzg2OWRmOWNlM2NhMjE5OTllNDBkZWQ4Nzc0MWM5ODgzMWYKK2NoZWNrc3VtPWNm MDA1NWI3NmYyMTU5YzMzYzlkOWY3ZGViYjc2OTQzNWMyMDFiYmZhNmRjZjBmMDFmZGM1OGU5Mjk0 N2JmNDMKIAogaWYgWyAiJENST1NTX0JVSUxEIiBdOyB0aGVuCiAJaG9zdG1ha2VkZXBlbmRzKz0i IHB5dGhvbjMtZ29iamVjdC1kZXZlbCIKCkZyb20gMDY1Nzg2N2Q2ZGY2YzgxMmYyZGM5ZDdjOWIz ZWRjNjc0OWFkYjY5YiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJp ZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCAxNiBKdW4gMjAyMCAxOTo0NzozOSArMDYwMApT dWJqZWN0OiBbUEFUQ0ggMzEvNjFdIGdub21lLWdldHRpbmctc3RhcnRlZC1kb2NzOiB1cGRhdGUg dG8gMy4zNi4yLgoKLS0tCiBzcmNwa2dzL2dub21lLWdldHRpbmctc3RhcnRlZC1kb2NzL3RlbXBs YXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9u cygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtZ2V0dGluZy1zdGFydGVkLWRvY3MvdGVt cGxhdGUgYi9zcmNwa2dzL2dub21lLWdldHRpbmctc3RhcnRlZC1kb2NzL3RlbXBsYXRlCmluZGV4 IDViZWM5MzQ5MGJhLi5iZWQ5YjY5NjE2MiAxMDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1nZXR0 aW5nLXN0YXJ0ZWQtZG9jcy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dub21lLWdldHRpbmctc3Rh cnRlZC1kb2NzL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAn Z25vbWUtZ2V0dGluZy1zdGFydGVkLWRvY3MnCiBwa2duYW1lPWdub21lLWdldHRpbmctc3RhcnRl ZC1kb2NzCi12ZXJzaW9uPTMuMzQuMAordmVyc2lvbj0zLjM2LjIKIHJldmlzaW9uPTEKIGFyY2hz PW5vYXJjaAogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQpAQCAtMTEsNCArMTEsNCBAQCBsaWNl bnNlPSJDQy1CWS1TQS0zLjAiCiBob21lcGFnZT0iaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dO T01FL2dub21lLWdldHRpbmctc3RhcnRlZC1kb2NzIgogI2NoYW5nZWxvZz0iaHR0cHM6Ly9naXRs YWIuZ25vbWUub3JnL0dOT01FL2dub21lLWdldHRpbmctc3RhcnRlZC1kb2NzL3Jhdy9tYXN0ZXIv TkVXUyIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0v JHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPWY3MGNlMmNhMjNhZDc4NjIx NWYzYzkyZWM4NTc4M2UzYWFiZWQwN2U0Zjc4NzAwZmEyN2Y5YjJjZjc2ZTAzZGIKK2NoZWNrc3Vt PTA0OTRiODkxM2E5NDZiNjQ1MDUzNmUxMjBjMTU0YWJkMjkyMzhlYmJhMmY1MjczNDU5MmIxZjY0 NWU1MjFkYzYKCkZyb20gNTNjMDA5NDk2MWFmODMzNjc3ZmZjYWU2ZmE0ZDQzYTQxZjU5NmVhMiBN b24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNv bT4KRGF0ZTogVHVlLCAxNiBKdW4gMjAyMCAxOTo0Nzo0NyArMDYwMApTdWJqZWN0OiBbUEFUQ0gg MzIvNjFdIGdub21lLXBhbmVsOiB1cGRhdGUgdG8gMy4zNi4xLgoKLS0tCiBjb21tb24vc2hsaWJz ICAgICAgICAgICAgICAgIHwgMyArKy0KIHNyY3BrZ3MvZ25vbWUtcGFuZWwvdGVtcGxhdGUgfCA2 ICsrKy0tLQogMiBmaWxlcyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0p CgpkaWZmIC0tZ2l0IGEvY29tbW9uL3NobGlicyBiL2NvbW1vbi9zaGxpYnMKaW5kZXggMDllZTk2 OGI0MmUuLmFkMzM2MDJiNmQ4IDEwMDY0NAotLS0gYS9jb21tb24vc2hsaWJzCisrKyBiL2NvbW1v bi9zaGxpYnMKQEAgLTU3MCw3ICs1NzAsOCBAQCBsaWJwYWNrYWdla2l0LWdsaWIyLnNvLjE4IFBh Y2thZ2VLaXQtMS4xLjEyXzEKIGxpYnBzbC5zby41IGxpYnBzbC0wLjIwLjJfMQogbGlic291cC0y LjQuc28uMSBsaWJzb3VwLTIuMzQuMF8xCiBsaWJzb3VwLWdub21lLTIuNC5zby4xIGxpYnNvdXAt Z25vbWUtMi4zNC4wXzEKLWxpYnBhbmVsLWFwcGxldC5zby4zIGdub21lLXBhbmVsLTMuMzAuMF8x CitsaWJnbm9tZS1wYW5lbC5zby4wIGdub21lLXBhbmVsLTMuMzYuMV8xCitsaWJwYW5lbC1hcHBs ZXQuc28uMyBnbm9tZS1wYW5lbC0zLjM2LjFfMQogbGlidW5pbnVtLnNvLjUgbGlidW5pbnVtLTIu N18xCiBsaWJ1bmlxdWUtMy4wLnNvLjAgbGlidW5pcXVlLTIuOTEuNF8xCiBsaWJ3ZWJraXQyZ3Rr LTQuMC5zby4zNyB3ZWJraXQyZ3RrLTIuNi4yXzEKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUt cGFuZWwvdGVtcGxhdGUgYi9zcmNwa2dzL2dub21lLXBhbmVsL3RlbXBsYXRlCmluZGV4IDcwZjIz YjhiNTUxLi45YjAwYmZhYjY1OCAxMDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1wYW5lbC90ZW1w bGF0ZQorKysgYi9zcmNwa2dzL2dub21lLXBhbmVsL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAog IyBUZW1wbGF0ZSBmaWxlIGZvciAnZ25vbWUtcGFuZWwnCiBwa2duYW1lPWdub21lLXBhbmVsCi12 ZXJzaW9uPTMuMzQuMQotcmV2aXNpb249MwordmVyc2lvbj0zLjM2LjEKK3JldmlzaW9uPTEKIGJ1 aWxkX3N0eWxlPWdudS1jb25maWd1cmUKIGNvbmZpZ3VyZV9hcmdzPSJheF9jdl96b25laW5mb190 emRpcj0vdXNyL3NoYXJlL3pvbmVpbmZvIgogaG9zdG1ha2VkZXBlbmRzPSJnZXR0ZXh0LWRldmVs IGdsaWItZGV2ZWwgaXRzdG9vbCBwa2ctY29uZmlnIHR6ZGF0YSBnZXR0ZXh0IgpAQCAtMTQsNyAr MTQsNyBAQCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+Igog bGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciwgR0ZETC0xLjEtb3ItbGF0ZXIsIExHUEwtMi4xLW9y LWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcvUHJvamVjdHMvR25vbWVQ YW5lbCIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0v JHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPWE2YmMwMjU1MjUyZWViNGI5 NjRiY2JlNTVmZDc5MDhiNjlmOTE0YzA2MmM1ZWM4ZGZmNWFjMDI2MmQyOWI5MGQKK2NoZWNrc3Vt PTFlMjFiNzI2ZGQzOTc1MjNhZTc5ZDI5ZWI1MzhiY2FlMDllMzQyN2UyM2NjZDYzZjI4ZWIyNWVm MzU1MmFiZDMKIHBhdGNoX2FyZ3M9Ii1OcDEiCiAKIGdub21lLXBhbmVsLWRldmVsX3BhY2thZ2Uo KSB7CgpGcm9tIGRhYjcwOTYyODYxMzNmMTJjNjFkYTEzOWE3ZTViMjczZDBmNzBlZWUgTW9uIFNl cCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRh dGU6IFR1ZSwgMTYgSnVuIDIwMjAgMTk6NDc6NTQgKzA2MDAKU3ViamVjdDogW1BBVENIIDMzLzYx XSBtZXRhY2l0eTogdXBkYXRlIHRvIDMuMzYuMS4KCi0tLQogY29tbW9uL3NobGlicyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDEgKwogLi4uL3BhdGNoZXMvY29tcG9zaXRvci12 dWxrYW4tZml4LWJ1aWxkLnBhdGNoIHwgMjkgKysrKysrKysrKysrKysrKysrKwogc3JjcGtncy9t ZXRhY2l0eS90ZW1wbGF0ZSAgICAgICAgICAgICAgICAgICAgIHwgIDQgKy0tCiAzIGZpbGVzIGNo YW5nZWQsIDMyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAxMDA2 NDQgc3JjcGtncy9tZXRhY2l0eS9wYXRjaGVzL2NvbXBvc2l0b3ItdnVsa2FuLWZpeC1idWlsZC5w YXRjaAoKZGlmZiAtLWdpdCBhL2NvbW1vbi9zaGxpYnMgYi9jb21tb24vc2hsaWJzCmluZGV4IGFk MzM2MDJiNmQ4Li43NGM2YmYwOWRkOSAxMDA2NDQKLS0tIGEvY29tbW9uL3NobGlicworKysgYi9j b21tb24vc2hsaWJzCkBAIC01NzIsNiArNTcyLDcgQEAgbGlic291cC0yLjQuc28uMSBsaWJzb3Vw LTIuMzQuMF8xCiBsaWJzb3VwLWdub21lLTIuNC5zby4xIGxpYnNvdXAtZ25vbWUtMi4zNC4wXzEK IGxpYmdub21lLXBhbmVsLnNvLjAgZ25vbWUtcGFuZWwtMy4zNi4xXzEKIGxpYnBhbmVsLWFwcGxl dC5zby4zIGdub21lLXBhbmVsLTMuMzYuMV8xCitsaWJtZXRhY2l0eS5zby4xIG1ldGFjaXR5LTMu MzYuMV8xCiBsaWJ1bmludW0uc28uNSBsaWJ1bmludW0tMi43XzEKIGxpYnVuaXF1ZS0zLjAuc28u MCBsaWJ1bmlxdWUtMi45MS40XzEKIGxpYndlYmtpdDJndGstNC4wLnNvLjM3IHdlYmtpdDJndGst Mi42LjJfMQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9tZXRhY2l0eS9wYXRjaGVzL2NvbXBvc2l0b3It dnVsa2FuLWZpeC1idWlsZC5wYXRjaCBiL3NyY3BrZ3MvbWV0YWNpdHkvcGF0Y2hlcy9jb21wb3Np dG9yLXZ1bGthbi1maXgtYnVpbGQucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw MDAwMDAwMDAuLjk2MDU4MmRlZDdkCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9tZXRhY2l0 eS9wYXRjaGVzL2NvbXBvc2l0b3ItdnVsa2FuLWZpeC1idWlsZC5wYXRjaApAQCAtMCwwICsxLDI5 IEBACitGcm9tIDk5MzYxZjI4Yzg3NjNlYTQ1NjliNWFlOTg3NjAyOGQ1M2FjOWEyMzQgTW9uIFNl cCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBBbGJlcnRzIE11a3R1cMSBdmVscyA8YWxiZXJ0cy5t dWt0dXBhdmVsc0BnbWFpbC5jb20+CitEYXRlOiBTdW4sIDI0IE1heSAyMDIwIDEzOjU4OjUxICsw MzAwCitTdWJqZWN0OiBbUEFUQ0hdIGNvbXBvc2l0b3ItdnVsa2FuOiBmaXggYnVpbGQKKworVktf UEhZU0lDQUxfREVWSUNFX1RZUEVfUkFOR0VfU0laRSBlbnVtIHdhcyByZW1vdmVkIGluIDEuMi4x NDAuCisKK2h0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9tZXRhY2l0eS8tL2lzc3Vlcy8x MAorLS0tCisgc3JjL2NvbXBvc2l0b3IvbWV0YS1jb21wb3NpdG9yLXZ1bGthbi5jIHwgMiArKwor IDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKykKKworZGlmZiAtLWdpdCBzcmMvY29tcG9z aXRvci9tZXRhLWNvbXBvc2l0b3ItdnVsa2FuLmMgc3JjL2NvbXBvc2l0b3IvbWV0YS1jb21wb3Np dG9yLXZ1bGthbi5jCitpbmRleCBiODdiNTE5NC4uNTNiN2IzZmYgMTAwNjQ0CistLS0gc3JjL2Nv bXBvc2l0b3IvbWV0YS1jb21wb3NpdG9yLXZ1bGthbi5jCisrKysgc3JjL2NvbXBvc2l0b3IvbWV0 YS1jb21wb3NpdG9yLXZ1bGthbi5jCitAQCAtODEwLDcgKzgxMCw5IEBAIGRldmljZV90eXBlX3Rv X3N0cmluZyAoVmtQaHlzaWNhbERldmljZVR5cGUgdHlwZSkKKyAgICAgICAgIHJldHVybiAiY3B1 IjsKKyAgICAgICAgIGJyZWFrOworIAorKyNpZiBWS19IRUFERVJfVkVSU0lPTiA8IDE0MAorICAg ICAgIGNhc2UgVktfUEhZU0lDQUxfREVWSUNFX1RZUEVfUkFOR0VfU0laRToKKysjZW5kaWYKKyAg ICAgICBjYXNlIFZLX1BIWVNJQ0FMX0RFVklDRV9UWVBFX01BWF9FTlVNOgorICAgICAgIGRlZmF1 bHQ6CisgICAgICAgICBicmVhazsKKy0tIAorR2l0TGFiCisKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mv bWV0YWNpdHkvdGVtcGxhdGUgYi9zcmNwa2dzL21ldGFjaXR5L3RlbXBsYXRlCmluZGV4IDdmYjg2 ZmQ5NjRjLi43ZTIyYWVhYjVjNyAxMDA2NDQKLS0tIGEvc3JjcGtncy9tZXRhY2l0eS90ZW1wbGF0 ZQorKysgYi9zcmNwa2dzL21ldGFjaXR5L3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1w bGF0ZSBmaWxlIGZvciAnbWV0YWNpdHknCiBwa2duYW1lPW1ldGFjaXR5Ci12ZXJzaW9uPTMuMzAu MQordmVyc2lvbj0zLjM2LjEKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUK IGhvc3RtYWtlZGVwZW5kcz0iZ2V0dGV4dCBnZXR0ZXh0LWRldmVsIGdsaWItZGV2ZWwgaXRzdG9v bCBwa2ctY29uZmlnIHllbHAtdG9vbHMgemVuaXR5IgpAQCAtMTQsNCArMTQsNCBAQCBtYWludGFp bmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTIu MC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvbWV0 YWNpdHkiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9 LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT0wZjEzMTFiN2FhMzhkZTcx YzY2MDgwYmQyYjc0NGRlMmNkOTU4MGFmY2FlZTljNjA5N2E3ZDNmNWM0MjE3OThhCitjaGVja3N1 bT0xMWYwNzY5M2UyYjI2Njg0MDc1OTA2M2E0YmM4MDczNDYwNzBlOGU3ZmVjOGY1M2NkMDc1N2Y2 NjYyYzFiMzIzCgpGcm9tIGRmMjk0ZmI0MjU4NzljZWRjZTU5ODQxYzk5Mzg3YzM5NTQ5OGFjNWQg TW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5j b20+CkRhdGU6IFR1ZSwgMTYgSnVuIDIwMjAgMTk6NDg6MDEgKzA2MDAKU3ViamVjdDogW1BBVENI IDM0LzYxXSBnbm9tZS1tZW51czogdXBkYXRlIHRvIDMuMzYuMC4KCi0tLQogc3JjcGtncy9nbm9t ZS1tZW51cy90ZW1wbGF0ZSB8IDYgKysrLS0tCiAxIGZpbGUgY2hhbmdlZCwgMyBpbnNlcnRpb25z KCspLCAzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtbWVudXMvdGVt cGxhdGUgYi9zcmNwa2dzL2dub21lLW1lbnVzL3RlbXBsYXRlCmluZGV4IDI5MTAyMTI5YzM4Li5l Nzg3ZmI4ZGU2YiAxMDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1tZW51cy90ZW1wbGF0ZQorKysg Yi9zcmNwa2dzL2dub21lLW1lbnVzL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0 ZSBmaWxlIGZvciAnZ25vbWUtbWVudXMnCiBwa2duYW1lPWdub21lLW1lbnVzCi12ZXJzaW9uPTMu MzIuMAotcmV2aXNpb249MgordmVyc2lvbj0zLjM2LjAKK3JldmlzaW9uPTEKIGJ1aWxkX3N0eWxl PWdudS1jb25maWd1cmUKIGJ1aWxkX2hlbHBlcj0iZ2lyIgogY29uZmlndXJlX2FyZ3M9Ii0tZGlz YWJsZS1zdGF0aWMiCkBAIC0xMiw3ICsxMiw3IEBAIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxn b3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyLCBMR1BMLTIu MC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25v bWUtbWVudXMiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24l Lip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT1jODUwYzY0YjIwNzQy NjVmZTU5ZTA5OWEzNDBiODY4OWNmM2RkNDY1OGRjOWZlZGRkMmFiNWU5NWYxYTc0Yjc0CitjaGVj a3N1bT1kOTM0OGYzOGJkZTk1NmZjMzI3NTNiMjhjMWNkZTE5YzE3NWJmZGJmMWY0ZDViMDYwMDNi M2FhMDkxNTNiYjFmCiAKIGJ1aWxkX29wdGlvbnM9ImdpciIKIGJ1aWxkX29wdGlvbnNfZGVmYXVs dD0iZ2lyIgoKRnJvbSAzYTFjZjBhMmYyMjhhMmZkZWRiNzNlYTZjNzk2NmM1ODdlNTEzMWJlIE1v biBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29t PgpEYXRlOiBUdWUsIDE2IEp1biAyMDIwIDE5OjQ4OjA5ICswNjAwClN1YmplY3Q6IFtQQVRDSCAz NS82MV0gZ25vbWUtZmxhc2hiYWNrOiB1cGRhdGUgdG8gMy4zNi4zLgoKQWRkZWQgUEFNIGNvbmZp ZyB0byBlbmFibGUgc2NyZWVuIGxvY2tpbmcuCi0tLQogLi4uL2dub21lLWZsYXNoYmFjay9maWxl cy9nbm9tZS1mbGFzaGJhY2sucGFtIHwgIDYgKysrKysKIHNyY3BrZ3MvZ25vbWUtZmxhc2hiYWNr L3RlbXBsYXRlICAgICAgICAgICAgICB8IDI1ICsrKysrKysrKysrKystLS0tLS0KIDIgZmlsZXMg Y2hhbmdlZCwgMjMgaW5zZXJ0aW9ucygrKSwgOCBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEw MDY0NCBzcmNwa2dzL2dub21lLWZsYXNoYmFjay9maWxlcy9nbm9tZS1mbGFzaGJhY2sucGFtCgpk aWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1mbGFzaGJhY2svZmlsZXMvZ25vbWUtZmxhc2hiYWNr LnBhbSBiL3NyY3BrZ3MvZ25vbWUtZmxhc2hiYWNrL2ZpbGVzL2dub21lLWZsYXNoYmFjay5wYW0K bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLmViYmI1MWRkMGU4Ci0tLSAv ZGV2L251bGwKKysrIGIvc3JjcGtncy9nbm9tZS1mbGFzaGJhY2svZmlsZXMvZ25vbWUtZmxhc2hi YWNrLnBhbQpAQCAtMCwwICsxLDYgQEAKKyMlUEFNLTEuMAorYXV0aCAgICAgICBpbmNsdWRlCXN5 c3RlbS1hdXRoCithdXRoICAgICAgIG9wdGlvbmFsICAgICBwYW1fZ25vbWVfa2V5cmluZy5zbwor YWNjb3VudCAgICBpbmNsdWRlCXN5c3RlbS1hdXRoCitwYXNzd29yZCAgIGluY2x1ZGUJc3lzdGVt LWF1dGgKK3Nlc3Npb24gICAgaW5jbHVkZQlzeXN0ZW0tYXV0aApkaWZmIC0tZ2l0IGEvc3JjcGtn cy9nbm9tZS1mbGFzaGJhY2svdGVtcGxhdGUgYi9zcmNwa2dzL2dub21lLWZsYXNoYmFjay90ZW1w bGF0ZQppbmRleCBkMzIxMjBjYWI2Zi4uMWJkY2Q4MTNjNGUgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mv Z25vbWUtZmxhc2hiYWNrL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtZmxhc2hiYWNrL3Rl bXBsYXRlCkBAIC0xLDIwICsxLDI5IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbm9tZS1mbGFz aGJhY2snCiBwa2duYW1lPWdub21lLWZsYXNoYmFjawotdmVyc2lvbj0zLjM0LjIKK3ZlcnNpb249 My4zNi4zCiByZXZpc2lvbj0xCiBidWlsZF9oZWxwZXI9Z2lyCiBidWlsZF9zdHlsZT1nbnUtY29u ZmlndXJlCi1jb25maWd1cmVfYXJncz0iLS1lbmFibGUtY29tcGlsZS13YXJuaW5ncz1taW5pbXVt IgorY29uZmlndXJlX2FyZ3M9Ii0td2l0aC1jb21waXotc2Vzc2lvbiAtLWVuYWJsZS1jb21waWxl LXdhcm5pbmdzPW1pbmltdW0iCiBob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcgYXV0b21ha2Ug Z2xpYi1kZXZlbCBnZXR0ZXh0IgotbWFrZWRlcGVuZHM9Imd0ayszLWRldmVsIGdzZXR0aW5ncy1k ZXNrdG9wLXNjaGVtYXMtZGV2ZWwKLSBsaWJnbGliLWRldmVsIGdkay1waXhidWYtZGV2ZWwgdXBv d2VyLWRldmVsIGlidXMtZGV2ZWwgcG9sa2l0LWRldmVsCi0gcHVsc2VhdWRpby1kZXZlbCBsaWJj YW5iZXJyYS1kZXZlbCBsaWJ4Y2ItZGV2ZWwgbGliWDExLWRldmVsIHBhbmdvLWRldmVsCi0gbGli eGtiZmlsZS1kZXZlbCBnbm9tZS1ibHVldG9vdGgtZGV2ZWwgZ25vbWUtZGVza3RvcC1kZXZlbCIK K21ha2VkZXBlbmRzPSJndGsrMy1kZXZlbCBwYW0tZGV2ZWwgZ3NldHRpbmdzLWRlc2t0b3Atc2No ZW1hcy1kZXZlbCBlbG9naW5kLWRldmVsCisgZ2RtLWRldmVsIGxpYmNvbXBpemNvbmZpZy1kZXZl bCBsaWJnbGliLWRldmVsIGdkay1waXhidWYtZGV2ZWwgdXBvd2VyLWRldmVsIGlidXMtZGV2ZWwK KyBwb2xraXQtZGV2ZWwgcHVsc2VhdWRpby1kZXZlbCBsaWJjYW5iZXJyYS1kZXZlbCBsaWJ4Y2It ZGV2ZWwgbGliWDExLWRldmVsIHBhbmdvLWRldmVsCisgbGlieGtiZmlsZS1kZXZlbCBnbm9tZS1i bHVldG9vdGgtZGV2ZWwgZ25vbWUtZGVza3RvcC1kZXZlbCBnbm9tZS1wYW5lbC1kZXZlbCIKIGRl cGVuZHM9Imdub21lLWJsdWV0b290aCBnbm9tZS1zZXNzaW9uIGdub21lLXNldHRpbmdzLWRhZW1v bgotIGdub21lLXBhbmVsIGdub21lLXRoZW1lcy1zdGFuZGFyZCBtZXRhY2l0eSIKKyBnbm9tZS1w YW5lbCBnbm9tZS10aGVtZXMtZXh0cmEgbWV0YWNpdHkiCiBzaG9ydF9kZXNjPSJHTk9NRSAzIHNl c3Npb24gd2l0aCBzaW1pbGFyIHVzZXIgZXhwZXJpZW5jZSB0byB0aGUgR05PTUUgMi54IHNlcmll cyIKIG1haW50YWluZXI9InNoaXpvbmljIDxyZWFsdGlhekBnbWFpbC5jb20+IgogbGljZW5zZT0i R1BMLTMuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL1Byb2pl Y3RzL0dub21lRmxhc2hiYWNrIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0v JHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09M2Jl NjUzODhjZDJjOGYzOTc0MWJjYzA1ZGE4N2VmNDAwMzUxODNhOWEzOTUwMmQ2NzY5NjI0MmMyYWVi NDY5YworY2hlY2tzdW09MmRiYTllYTQwZjJkYTgxYzIyOTU0YThjY2MyOWY4ZjFmYTRjYTgzOTVh NmJiNTUyNTA2NjM1ODMyNzUxYzFhNworCitwcmVfY29uZmlndXJlKCkgeworCXZzZWQgLWkgLWUg Ii9saWJjb21waXpjb25maWcvIHMvMC45LjE0LzAuOC8iIGNvbmZpZ3VyZQorfQorCitwb3N0X2lu c3RhbGwoKSB7CisJdmluc3RhbGwgJHtGSUxFU0RJUn0vZ25vbWUtZmxhc2hiYWNrLnBhbSA2NDQg L2V0Yy9wYW0uZCBnbm9tZS1mbGFzaGJhY2sKKwl2c2VkIC1pIC1lICJzLyAtLXN5c3RlbWQvL2ci ICR7REVTVERJUn0vdXNyL2xpYmV4ZWMvZ25vbWUtZmxhc2hiYWNrLXtjb21waXosbWV0YWNpdHl9 Cit9CgpGcm9tIDMzMDJhNGVmNjFiNjM5MmNjMDQ5OWQ3MTk5ZmI3NTg0MzU3OTdlMDggTW9uIFNl cCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRh dGU6IFR1ZSwgMTYgSnVuIDIwMjAgMTk6NDg6MjQgKzA2MDAKU3ViamVjdDogW1BBVENIIDM2LzYx XSBncmFwaGVuZTogdXBkYXRlIHRvIDEuMTAuMC4KCi0tLQogc3JjcGtncy9ncmFwaGVuZS90ZW1w bGF0ZSB8IDEwICsrKysrLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDUg ZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9ncmFwaGVuZS90ZW1wbGF0ZSBiL3Ny Y3BrZ3MvZ3JhcGhlbmUvdGVtcGxhdGUKaW5kZXggZjJmZTgxYTNmNDcuLmNiNzM4NWZlZGI3IDEw MDY0NAotLS0gYS9zcmNwa2dzL2dyYXBoZW5lL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ3JhcGhl bmUvdGVtcGxhdGUKQEAgLTEsMTAgKzEsMTAgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dyYXBo ZW5lJwogcGtnbmFtZT1ncmFwaGVuZQotdmVyc2lvbj0xLjguMgotcmV2aXNpb249MgordmVyc2lv bj0xLjEwLjAKK3JldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPW1lc29uCiBidWlsZF9oZWxwZXI9Imdp ciIKLWNvbmZpZ3VyZV9hcmdzPSItRHRlc3RzPWZhbHNlIC1EYmVuY2htYXJrcz1mYWxzZQorY29u ZmlndXJlX2FyZ3M9Ii1EdGVzdHM9ZmFsc2UgLURhcm1fbmVvbj1mYWxzZQogIC1EaW50cm9zcGVj dGlvbj0kKHZvcHRfaWYgZ2lyIHRydWUgZmFsc2UpIgogaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29u ZmlnIgogbWFrZWRlcGVuZHM9ImxpYmdsaWItZGV2ZWwiCkBAIC0xMywxMyArMTMsMTMgQEAgbWFp bnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9Ik1J VCIKIGhvbWVwYWdlPSJodHRwczovL2dpdGh1Yi5jb20vZWJhc3NpL2dyYXBoZW5lIgogZGlzdGZp bGVzPSIke0dOT01FX1NJVEV9L2dyYXBoZW5lLyR7dmVyc2lvbiUuKn0vZ3JhcGhlbmUtJHt2ZXJz aW9ufS50YXIueHoiCi1jaGVja3N1bT1iM2ZjZjIwOTk2ZTU3YjFmNGRmMzk0MWNhYWMxMGYxNDNi YjI5ODkwYTQyZjdhNjU0MDdjZDE5MjcxZmM4OWY3CitjaGVja3N1bT00MDZkOTdmNTFkZDRjYTYx ZTkxZjg0NjY2YTAwYzNlOTc2ZDNlNjY3Y2QyNDhiNzZkOTJmZGIzNWNlODc2NDk5CiAKIGJ1aWxk X29wdGlvbnM9ImdpciIKIGJ1aWxkX29wdGlvbnNfZGVmYXVsdD0iZ2lyIgogCiBwb3N0X2luc3Rh bGwoKSB7Ci0JdmxpY2Vuc2UgTElDRU5TRQorCXZsaWNlbnNlIExJQ0VOU0UudHh0IExJQ0VOU0UK IH0KIAogZ3JhcGhlbmUtZGV2ZWxfcGFja2FnZSgpIHsKCkZyb20gZTZiNzc0YjM1NGMwOTFmYzIx MTZiZDViNTBkZjQ5YTM5ODA2MTQxYSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFm aXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCAxNiBKdW4gMjAyMCAxOTo0ODoz MCArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMzcvNjFdIG11dHRlcjogdXBkYXRlIHRvIDMuMzYuMy4K Ci0tLQogY29tbW9uL3NobGlicyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDE4 ICstCiAuLi4vcGF0Y2hlcy9maXgtY29nbC1lZ2wtaW5jbHVkZXMucGF0Y2ggICAgICAgfCAgMTEg LQogc3JjcGtncy9tdXR0ZXIvcGF0Y2hlcy9waXBld2lyZS0wLjMucGF0Y2ggICAgIHwgNTIxIC0t LS0tLS0tLS0tLS0tLS0tLQogc3JjcGtncy9tdXR0ZXIvdGVtcGxhdGUgICAgICAgICAgICAgICAg ICAgICAgIHwgIDI3ICstCiA0IGZpbGVzIGNoYW5nZWQsIDIzIGluc2VydGlvbnMoKyksIDU1NCBk ZWxldGlvbnMoLSkKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL211dHRlci9wYXRjaGVzL2Zp eC1jb2dsLWVnbC1pbmNsdWRlcy5wYXRjaAogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvbXV0 dGVyL3BhdGNoZXMvcGlwZXdpcmUtMC4zLnBhdGNoCgpkaWZmIC0tZ2l0IGEvY29tbW9uL3NobGli cyBiL2NvbW1vbi9zaGxpYnMKaW5kZXggNzRjNmJmMDlkZDkuLmQyNmMyZDQ3ZGVjIDEwMDY0NAot LS0gYS9jb21tb24vc2hsaWJzCisrKyBiL2NvbW1vbi9zaGxpYnMKQEAgLTMwMTksMTUgKzMwMTks MTUgQEAgbGliZGVjb3JhdGlvbi5zby4wIGNvbXBpei1jb3JlLTAuOC4xNF8xCiBsaWJjb21waXpj b25maWcuc28uMCBsaWJjb21waXpjb25maWctMC44LjE0XzEKIGxpYmVtZXJhbGRlbmdpbmUuc28u MCBlbWVyYWxkLTAuOC4xNF8xCiBsaWJoYW5ndWwuc28uMSBsaWJoYW5ndWwtMC4xLjBfMQotbGli bXV0dGVyLTUuc28uMCBtdXR0ZXItMy4zNC4xXzEKLWxpYm11dHRlci1jbHV0dGVyLTUuc28gbXV0 dGVyLTMuMzQuMV8xCi1saWJtdXR0ZXItY2x1dHRlci01LnNvLjAgbXV0dGVyLTMuMzQuMV8xCi1s aWJtdXR0ZXItY29nbC1wYXRoLTUuc28gbXV0dGVyLTMuMzQuMV8xCi1saWJtdXR0ZXItY29nbC1w YXRoLTUuc28uMCBtdXR0ZXItMy4zNC4xXzEKLWxpYm11dHRlci1jb2dsLTUuc28gbXV0dGVyLTMu MzQuMV8xCi1saWJtdXR0ZXItY29nbC01LnNvLjAgbXV0dGVyLTMuMzQuMV8xCi1saWJtdXR0ZXIt Y29nbC1wYW5nby01LnNvIG11dHRlci0zLjM0LjFfMQotbGlibXV0dGVyLWNvZ2wtcGFuZ28tNS5z by4wIG11dHRlci0zLjM0LjFfMQorbGlibXV0dGVyLTYuc28uMCBtdXR0ZXItMy4zNi4zXzEKK2xp Ym11dHRlci1jbHV0dGVyLTYuc28gbXV0dGVyLTMuMzYuM18xCitsaWJtdXR0ZXItY2x1dHRlci02 LnNvLjAgbXV0dGVyLTMuMzYuM18xCitsaWJtdXR0ZXItY29nbC1wYXRoLTYuc28gbXV0dGVyLTMu MzYuM18xCitsaWJtdXR0ZXItY29nbC1wYXRoLTYuc28uMCBtdXR0ZXItMy4zNi4zXzEKK2xpYm11 dHRlci1jb2dsLTYuc28gbXV0dGVyLTMuMzYuM18xCitsaWJtdXR0ZXItY29nbC02LnNvLjAgbXV0 dGVyLTMuMzYuM18xCitsaWJtdXR0ZXItY29nbC1wYW5nby02LnNvIG11dHRlci0zLjM2LjNfMQor bGlibXV0dGVyLWNvZ2wtcGFuZ28tNi5zby4wIG11dHRlci0zLjM2LjNfMQogbGliZ2VvY2x1ZS0y LnNvLjAgZ2VvY2x1ZTItMi40LjRfMQogbGliZ2VwdWIuc28uMCBsaWJnZXB1Yi0wLjRfMQogbGli c2xvcHkuc28uNy41IHNsb3AtNy41XzEKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbXV0dGVyL3BhdGNo ZXMvZml4LWNvZ2wtZWdsLWluY2x1ZGVzLnBhdGNoIGIvc3JjcGtncy9tdXR0ZXIvcGF0Y2hlcy9m aXgtY29nbC1lZ2wtaW5jbHVkZXMucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4 IGQ5MDk4ODg4N2MzLi4wMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL211dHRlci9wYXRjaGVzL2Zp eC1jb2dsLWVnbC1pbmNsdWRlcy5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDExICswLDAgQEAK LS0tLSBjb2dsL2NvZ2wvbWVzb24uYnVpbGQJMjAxOS0xMC0wOCAxOToxNToxMC4wMDAwMDAwMDAg KzAyMDAKLSsrKyBjb2dsL2NvZ2wvbWVzb24uYnVpbGQJMjAxOS0xMi0xNiAxNTo0NTo0NC4wMzc2 NDA1NDggKzAxMDAKLUBAIC00OCw3ICs0OCw3IEBACi0gYnVpbHRfaGVhZGVycyArPSBbY29nbF9n bF9oZWFkZXJfaF0KLSAKLSBpZiBoYXZlX2VnbAotLSAgY29nbF9lZ2xfaW5jbHVkZXNfc3RyaW5n ID0gJyNpbmNsdWRlIDxFR0wvZWdsLmg+XG4jaW5jbHVkZSA8RUdML2VnbGV4dC5oPicKLSsgIGNv Z2xfZWdsX2luY2x1ZGVzX3N0cmluZyA9ICcjaW5jbHVkZSA8RUdML2VnbC5oPlxuI2luY2x1ZGUg PEVHTC9lZ2xleHQuaD5cbiNpbmNsdWRlIDxFR0wvZWdsbWVzYWV4dC5oPicKLSBlbHNlCi0gICBj b2dsX2VnbF9pbmNsdWRlc19zdHJpbmcgPSAnJwotIGVuZGlmCmRpZmYgLS1naXQgYS9zcmNwa2dz L211dHRlci9wYXRjaGVzL3BpcGV3aXJlLTAuMy5wYXRjaCBiL3NyY3BrZ3MvbXV0dGVyL3BhdGNo ZXMvcGlwZXdpcmUtMC4zLnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlYmZm NjVmYmE4NS4uMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9tdXR0ZXIvcGF0Y2hlcy9waXBld2ly ZS0wLjMucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSw1MjEgKzAsMCBAQAotQnVpbGQgbXV0dGVy IGFnYWluc3QgcGlwZXdpcmUtMC4zLCBiYXNlZCBvbiBhIHBhdGNoIGF0OgotaHR0cHM6Ly9naXRs YWIuZ25vbWUub3JnL0dOT01FL211dHRlci8tL21lcmdlX3JlcXVlc3RzLzEwNjIKLS0tLSBtZXNv bi5idWlsZAotKysrIG1lc29uLmJ1aWxkCi1AQCAtNTAsNyArNTAsNyBAQCBsaWJpbnB1dF9yZXEg PSAnPj0gMS43JwotIGdibV9yZXEgPSAnPj0gMTAuMycKLQotICMgc2NyZWVuIGNhc3QgdmVyc2lv biByZXF1aXJlbWVudHMKLS1saWJwaXBld2lyZV9yZXEgPSAnPj0gMC4yLjUnCi0rbGlicGlwZXdp cmVfcmVxID0gJz49IDAuMy4wJwotCi0gZ25vbWUgPSBpbXBvcnQoJ2dub21lJykKLSBwa2cgPSBp bXBvcnQoJ3BrZ2NvbmZpZycpCi1AQCAtMjQxLDcgKzI0MSw3IEBAIGVuZGlmCi0KLSBoYXZlX3Jl bW90ZV9kZXNrdG9wID0gZ2V0X29wdGlvbigncmVtb3RlX2Rlc2t0b3AnKQotIGlmIGhhdmVfcmVt b3RlX2Rlc2t0b3AKLS0gIGxpYnBpcGV3aXJlX2RlcCA9IGRlcGVuZGVuY3koJ2xpYnBpcGV3aXJl LTAuMicsIHZlcnNpb246IGxpYnBpcGV3aXJlX3JlcSkKLSsgIGxpYnBpcGV3aXJlX2RlcCA9IGRl cGVuZGVuY3koJ2xpYnBpcGV3aXJlLTAuMycsIHZlcnNpb246IGxpYnBpcGV3aXJlX3JlcSkKLSBl bmRpZgotCi0gaGF2ZV9pbnRyb3NwZWN0aW9uID0gZ2V0X29wdGlvbignaW50cm9zcGVjdGlvbicp Ci1kaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmRzL21ldGEtc2NyZWVuLWNhc3Qtc3RyZWFtLXNyYy5j IGIvc3JjL2JhY2tlbmRzL21ldGEtc2NyZWVuLWNhc3Qtc3RyZWFtLXNyYy5jCi1pbmRleCA4MmM1 Y2JhNDM2Li5iYTFjZTk0YTdlIDEwMDY0NAotLS0tIHNyYy9iYWNrZW5kcy9tZXRhLXNjcmVlbi1j YXN0LXN0cmVhbS1zcmMuYwotKysrIHNyYy9iYWNrZW5kcy9tZXRhLXNjcmVlbi1jYXN0LXN0cmVh bS1zcmMuYwotQEAgLTI5LDYgKzI5LDcgQEAKLSAjaW5jbHVkZSA8c3BhL3BhcmFtL3Byb3BzLmg+ Ci0gI2luY2x1ZGUgPHNwYS9wYXJhbS9mb3JtYXQtdXRpbHMuaD4KLSAjaW5jbHVkZSA8c3BhL3Bh cmFtL3ZpZGVvL2Zvcm1hdC11dGlscy5oPgotKyNpbmNsdWRlIDxzcGEvdXRpbHMvcmVzdWx0Lmg+ Ci0gI2luY2x1ZGUgPHN0ZGludC5oPgotICNpbmNsdWRlIDxzeXMvbW1hbi5oPgotCi1AQCAtNjIs MTUgKzYzLDYgQEAgZW51bQotCi0gc3RhdGljIGd1aW50IHNpZ25hbHNbTl9TSUdOQUxTXTsKLQot LXR5cGVkZWYgc3RydWN0IF9NZXRhU3BhVHlwZQotLXsKLS0gIHN0cnVjdCBzcGFfdHlwZV9tZWRp YV90eXBlIG1lZGlhX3R5cGU7Ci0tICBzdHJ1Y3Qgc3BhX3R5cGVfbWVkaWFfc3VidHlwZSBtZWRp YV9zdWJ0eXBlOwotLSAgc3RydWN0IHNwYV90eXBlX2Zvcm1hdF92aWRlbyBmb3JtYXRfdmlkZW87 Ci0tICBzdHJ1Y3Qgc3BhX3R5cGVfdmlkZW9fZm9ybWF0IHZpZGVvX2Zvcm1hdDsKLS0gIHVpbnQz Ml90IG1ldGFfY3Vyc29yOwotLX0gTWV0YVNwYVR5cGU7Ci0tCi0gdHlwZWRlZiBzdHJ1Y3QgX01l dGFQaXBlV2lyZVNvdXJjZQotIHsKLSAgIEdTb3VyY2UgYmFzZTsKLUBAIC04MiwxOSArNzQsMTkg QEAgdHlwZWRlZiBzdHJ1Y3QgX01ldGFTY3JlZW5DYXN0U3RyZWFtU3JjUHJpdmF0ZQotIHsKLSAg IE1ldGFTY3JlZW5DYXN0U3RyZWFtICpzdHJlYW07Ci0KLSsgIHN0cnVjdCBwd19jb250ZXh0ICpw aXBld2lyZV9jb250ZXh0OwotICAgc3RydWN0IHB3X2NvcmUgKnBpcGV3aXJlX2NvcmU7Ci0tICBz dHJ1Y3QgcHdfcmVtb3RlICpwaXBld2lyZV9yZW1vdGU7Ci0tICBzdHJ1Y3QgcHdfdHlwZSAqcGlw ZXdpcmVfdHlwZTsKLSAgIE1ldGFQaXBlV2lyZVNvdXJjZSAqcGlwZXdpcmVfc291cmNlOwotLSAg c3RydWN0IHNwYV9ob29rIHBpcGV3aXJlX3JlbW90ZV9saXN0ZW5lcjsKLSsgIHN0cnVjdCBzcGFf aG9vayBwaXBld2lyZV9jb3JlX2xpc3RlbmVyOwotCi0gICBnYm9vbGVhbiBpc19lbmFibGVkOwot Ci0gICBzdHJ1Y3QgcHdfc3RyZWFtICpwaXBld2lyZV9zdHJlYW07Ci0gICBzdHJ1Y3Qgc3BhX2hv b2sgcGlwZXdpcmVfc3RyZWFtX2xpc3RlbmVyOwotKyAgdWludDMyX3Qgbm9kZV9pZDsKLQotLSAg TWV0YVNwYVR5cGUgc3BhX3R5cGU7Ci0gICBzdHJ1Y3Qgc3BhX3ZpZGVvX2luZm9fcmF3IHZpZGVv X2Zvcm1hdDsKLSsgIGludCB2aWRlb19zdHJpZGU7Ci0KLSAgIHVpbnQ2NF90IGxhc3RfZnJhbWVf dGltZXN0YW1wX3VzOwotCi1AQCAtMTEyLDggKzEwNCw2IEBAIEdfREVGSU5FX1RZUEVfV0lUSF9D T0RFIChNZXRhU2NyZWVuQ2FzdFN0cmVhbVNyYywKLSAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBtZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9zcmNfaW5pdF9p bml0YWJsZV9pZmFjZSkKLSAgICAgICAgICAgICAgICAgICAgICAgICAgR19BRERfUFJJVkFURSAo TWV0YVNjcmVlbkNhc3RTdHJlYW1TcmMpKQotCi0tI2RlZmluZSBQUk9QX1JBTkdFKG1pbiwgbWF4 KSAyLCAobWluKSwgKG1heCkKLS0KLSBzdGF0aWMgdm9pZAotIG1ldGFfc2NyZWVuX2Nhc3Rfc3Ry ZWFtX3NyY19nZXRfc3BlY3MgKE1ldGFTY3JlZW5DYXN0U3RyZWFtU3JjICpzcmMsCi0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50ICAgICAgICAgICAgICAgICAgICAg KndpZHRoLAotQEAgLTI4Niw5ICsyNzYsNiBAQCBtZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9zcmNf c2V0X2VtcHR5X2N1cnNvcl9zcHJpdGVfbWV0YWRhdGEgKE1ldGFTY3JlZW5DYXN0U3RyZQotICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgaW50ICAgICAgICAgICAgICAgICAgICAgIHgsCi0gICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgICAgICAgICAgICAgICAg ICAgICAgeSkKLSB7Ci0tICBNZXRhU2NyZWVuQ2FzdFN0cmVhbVNyY1ByaXZhdGUgKnByaXYgPQot LSAgICBtZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9zcmNfZ2V0X2luc3RhbmNlX3ByaXZhdGUgKHNy Yyk7Ci0tICBNZXRhU3BhVHlwZSAqc3BhX3R5cGUgPSAmcHJpdi0+c3BhX3R5cGU7Ci0gICBzdHJ1 Y3Qgc3BhX21ldGFfYml0bWFwICpzcGFfbWV0YV9iaXRtYXA7Ci0KLSAgIHNwYV9tZXRhX2N1cnNv ci0+aWQgPSAxOwotQEAgLTMwMCw3ICsyODcsNyBAQCBtZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9z cmNfc2V0X2VtcHR5X2N1cnNvcl9zcHJpdGVfbWV0YWRhdGEgKE1ldGFTY3JlZW5DYXN0U3RyZQot ICAgc3BhX21ldGFfYml0bWFwID0gU1BBX01FTUJFUiAoc3BhX21ldGFfY3Vyc29yLAotICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgc3BhX21ldGFfY3Vyc29yLT5iaXRtYXBfb2Zmc2V0 LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IHNwYV9tZXRhX2JpdG1h cCk7Ci0tICBzcGFfbWV0YV9iaXRtYXAtPmZvcm1hdCA9IHNwYV90eXBlLT52aWRlb19mb3JtYXQu UkdCQTsKLSsgIHNwYV9tZXRhX2JpdG1hcC0+Zm9ybWF0ID0gU1BBX1ZJREVPX0ZPUk1BVF9SR0JB OwotICAgc3BhX21ldGFfYml0bWFwLT5vZmZzZXQgPSBzaXplb2YgKHN0cnVjdCBzcGFfbWV0YV9i aXRtYXApOwotCi0gICBzcGFfbWV0YV9jdXJzb3ItPmhvdHNwb3QueCA9IDA7Ci1AQCAtMzE3LDkg KzMwNCw2IEBAIG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19zZXRfY3Vyc29yX3Nwcml0ZV9t ZXRhZGF0YSAoTWV0YVNjcmVlbkNhc3RTdHJlYW1TcmMKLSAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCAgICAgICAgICAgICAgICAgICAg ICB5LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgZmxvYXQgICAgICAgICAgICAgICAgICAgIHNjYWxlKQotIHsKLS0gIE1ldGFTY3JlZW5D YXN0U3RyZWFtU3JjUHJpdmF0ZSAqcHJpdiA9Ci0tICAgIG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFt X3NyY19nZXRfaW5zdGFuY2VfcHJpdmF0ZSAoc3JjKTsKLS0gIE1ldGFTcGFUeXBlICpzcGFfdHlw ZSA9ICZwcml2LT5zcGFfdHlwZTsKLSAgIENvZ2xUZXh0dXJlICpjdXJzb3JfdGV4dHVyZTsKLSAg IHN0cnVjdCBzcGFfbWV0YV9iaXRtYXAgKnNwYV9tZXRhX2JpdG1hcDsKLSAgIGludCBob3RzcG90 X3gsIGhvdHNwb3RfeTsKLUBAIC0zNDYsNyArMzMwLDcgQEAgbWV0YV9zY3JlZW5fY2FzdF9zdHJl YW1fc3JjX3NldF9jdXJzb3Jfc3ByaXRlX21ldGFkYXRhIChNZXRhU2NyZWVuQ2FzdFN0cmVhbVNy YwotICAgc3BhX21ldGFfYml0bWFwID0gU1BBX01FTUJFUiAoc3BhX21ldGFfY3Vyc29yLAotICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3BhX21ldGFfY3Vyc29yLT5iaXRtYXBfb2Zm c2V0LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IHNwYV9tZXRhX2Jp dG1hcCk7Ci0tICBzcGFfbWV0YV9iaXRtYXAtPmZvcm1hdCA9IHNwYV90eXBlLT52aWRlb19mb3Jt YXQuUkdCQTsKLSsgIHNwYV9tZXRhX2JpdG1hcC0+Zm9ybWF0ID0gU1BBX1ZJREVPX0ZPUk1BVF9S R0JBOwotICAgc3BhX21ldGFfYml0bWFwLT5vZmZzZXQgPSBzaXplb2YgKHN0cnVjdCBzcGFfbWV0 YV9iaXRtYXApOwotCi0gICBtZXRhX2N1cnNvcl9zcHJpdGVfZ2V0X2hvdHNwb3QgKGN1cnNvcl9z cHJpdGUsICZob3RzcG90X3gsICZob3RzcG90X3kpOwotQEAgLTM4MiwxMiArMzY2LDEwIEBAIHN0 YXRpYyB2b2lkCi0gYWRkX2N1cnNvcl9tZXRhZGF0YSAoTWV0YVNjcmVlbkNhc3RTdHJlYW1TcmMg KnNyYywKLSAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3Qgc3BhX2J1ZmZlciAgICAgICAqc3Bh X2J1ZmZlcikKLSB7Ci0tICBNZXRhU2NyZWVuQ2FzdFN0cmVhbVNyY1ByaXZhdGUgKnByaXYgPQot LSAgICBtZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9zcmNfZ2V0X2luc3RhbmNlX3ByaXZhdGUgKHNy Yyk7Ci0tICBNZXRhU3BhVHlwZSAqc3BhX3R5cGUgPSAmcHJpdi0+c3BhX3R5cGU7Ci0gICBzdHJ1 Y3Qgc3BhX21ldGFfY3Vyc29yICpzcGFfbWV0YV9jdXJzb3I7Ci0KLS0gIHNwYV9tZXRhX2N1cnNv ciA9IHNwYV9idWZmZXJfZmluZF9tZXRhIChzcGFfYnVmZmVyLCBzcGFfdHlwZS0+bWV0YV9jdXJz b3IpOwotKyAgc3BhX21ldGFfY3Vyc29yID0gc3BhX2J1ZmZlcl9maW5kX21ldGFfZGF0YSAoc3Bh X2J1ZmZlciwgU1BBX01FVEFfQ3Vyc29yLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgc2l6ZW9mICgqc3BhX21ldGFfY3Vyc29yKSk7Ci0gICBpZiAoc3Bh X21ldGFfY3Vyc29yKQotICAgICBtZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9zcmNfc2V0X2N1cnNv cl9tZXRhZGF0YSAoc3JjLCBzcGFfbWV0YV9jdXJzb3IpOwotIH0KLUBAIC00NDcsMTQgKzQyOSwx NCBAQCBtZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9zcmNfbWF5YmVfcmVjb3JkX2ZyYW1lIChNZXRh U2NyZWVuQ2FzdFN0cmVhbVNyYyAqc3JjKQotICAgICB7Ci0gICAgICAgZGF0YSA9IHNwYV9idWZm ZXItPmRhdGFzWzBdLmRhdGE7Ci0gICAgIH0KLS0gIGVsc2UgaWYgKHNwYV9idWZmZXItPmRhdGFz WzBdLnR5cGUgPT0gcHJpdi0+cGlwZXdpcmVfdHlwZS0+ZGF0YS5NZW1GZCkKLSsgIGVsc2UgaWYg KHNwYV9idWZmZXItPmRhdGFzWzBdLnR5cGUgPT0gU1BBX0RBVEFfTWVtRmQpCi0gICAgIHsKLSAg ICAgICBtYXAgPSBtbWFwIChOVUxMLCBzcGFfYnVmZmVyLT5kYXRhc1swXS5tYXhzaXplICsgc3Bh X2J1ZmZlci0+ZGF0YXNbMF0ubWFwb2Zmc2V0LAotICAgICAgICAgICAgICAgICAgIFBST1RfUkVB RCB8IFBST1RfV1JJVEUsIE1BUF9TSEFSRUQsCi0gICAgICAgICAgICAgICAgICAgc3BhX2J1ZmZl ci0+ZGF0YXNbMF0uZmQsIDApOwotICAgICAgIGlmIChtYXAgPT0gTUFQX0ZBSUxFRCkKLSAgICAg ICAgIHsKLS0gICAgICAgICAgZ193YXJuaW5nICgiRmFpbGVkIHRvIG1tYXAgcGlwZXdpcmUgc3Ry ZWFtIGJ1ZmZlcjogJXNcbiIsCi0rICAgICAgICAgIGdfd2FybmluZyAoIkZhaWxlZCB0byBtbWFw IHBpcGV3aXJlIHN0cmVhbSBidWZmZXI6ICVzIiwKLSAgICAgICAgICAgICAgICAgICAgICBzdHJl cnJvciAoZXJybm8pKTsKLSAgICAgICAgICAgcmV0dXJuOwotICAgICAgICAgfQotQEAgLTQ2OSwy OCArNDUxLDMwIEBAIG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19tYXliZV9yZWNvcmRfZnJh bWUgKE1ldGFTY3JlZW5DYXN0U3RyZWFtU3JjICpzcmMpCi0KLSAgIGlmIChtZXRhX3NjcmVlbl9j YXN0X3N0cmVhbV9zcmNfcmVjb3JkX2ZyYW1lIChzcmMsIGRhdGEpKQotICAgICB7Ci0tICAgICAg c3RydWN0IHNwYV9tZXRhX3ZpZGVvX2Nyb3AgKnNwYV9tZXRhX3ZpZGVvX2Nyb3A7Ci0rICAgICAg c3RydWN0IHNwYV9tZXRhX3JlZ2lvbiAqc3BhX21ldGFfdmlkZW9fY3JvcDsKLQotICAgICAgIHNw YV9idWZmZXItPmRhdGFzWzBdLmNodW5rLT5zaXplID0gc3BhX2J1ZmZlci0+ZGF0YXNbMF0ubWF4 c2l6ZTsKLSsgICAgICBzcGFfYnVmZmVyLT5kYXRhc1swXS5jaHVuay0+c3RyaWRlID0gcHJpdi0+ dmlkZW9fc3RyaWRlOwotCi0gICAgICAgLyogVXBkYXRlIFZpZGVvQ3JvcCBpZiBuZWVkZWQgKi8K LSAgICAgICBzcGFfbWV0YV92aWRlb19jcm9wID0KLS0gICAgICAgIHNwYV9idWZmZXJfZmluZF9t ZXRhIChzcGFfYnVmZmVyLCBwcml2LT5waXBld2lyZV90eXBlLT5tZXRhLlZpZGVvQ3JvcCk7Ci0r ICAgICAgICBzcGFfYnVmZmVyX2ZpbmRfbWV0YV9kYXRhIChzcGFfYnVmZmVyLCBTUEFfTUVUQV9W aWRlb0Nyb3AsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplb2YgKCpz cGFfbWV0YV92aWRlb19jcm9wKSk7Ci0gICAgICAgaWYgKHNwYV9tZXRhX3ZpZGVvX2Nyb3ApCi0g ICAgICAgICB7Ci0gICAgICAgICAgIGlmIChtZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9zcmNfZ2V0 X3ZpZGVvY3JvcCAoc3JjLCAmY3JvcF9yZWN0KSkKLSAgICAgICAgICAgICB7Ci0tICAgICAgICAg ICAgICBzcGFfbWV0YV92aWRlb19jcm9wLT54ID0gY3JvcF9yZWN0Lng7Ci0tICAgICAgICAgICAg ICBzcGFfbWV0YV92aWRlb19jcm9wLT55ID0gY3JvcF9yZWN0Lnk7Ci0tICAgICAgICAgICAgICBz cGFfbWV0YV92aWRlb19jcm9wLT53aWR0aCA9IGNyb3BfcmVjdC53aWR0aDsKLS0gICAgICAgICAg ICAgIHNwYV9tZXRhX3ZpZGVvX2Nyb3AtPmhlaWdodCA9IGNyb3BfcmVjdC5oZWlnaHQ7Ci0rICAg ICAgICAgICAgICBzcGFfbWV0YV92aWRlb19jcm9wLT5yZWdpb24ucG9zaXRpb24ueCA9IGNyb3Bf cmVjdC54OwotKyAgICAgICAgICAgICAgc3BhX21ldGFfdmlkZW9fY3JvcC0+cmVnaW9uLnBvc2l0 aW9uLnkgPSBjcm9wX3JlY3QueTsKLSsgICAgICAgICAgICAgIHNwYV9tZXRhX3ZpZGVvX2Nyb3At PnJlZ2lvbi5zaXplLndpZHRoID0gY3JvcF9yZWN0LndpZHRoOwotKyAgICAgICAgICAgICAgc3Bh X21ldGFfdmlkZW9fY3JvcC0+cmVnaW9uLnNpemUuaGVpZ2h0ID0gY3JvcF9yZWN0LmhlaWdodDsK LSAgICAgICAgICAgICB9Ci0gICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICB7Ci0tICAgICAg ICAgICAgICBzcGFfbWV0YV92aWRlb19jcm9wLT54ID0gMDsKLS0gICAgICAgICAgICAgIHNwYV9t ZXRhX3ZpZGVvX2Nyb3AtPnkgPSAwOwotLSAgICAgICAgICAgICAgc3BhX21ldGFfdmlkZW9fY3Jv cC0+d2lkdGggPSBwcml2LT5zdHJlYW1fd2lkdGg7Ci0tICAgICAgICAgICAgICBzcGFfbWV0YV92 aWRlb19jcm9wLT5oZWlnaHQgPSBwcml2LT5zdHJlYW1faGVpZ2h0OwotKyAgICAgICAgICAgICAg c3BhX21ldGFfdmlkZW9fY3JvcC0+cmVnaW9uLnBvc2l0aW9uLnggPSAwOwotKyAgICAgICAgICAg ICAgc3BhX21ldGFfdmlkZW9fY3JvcC0+cmVnaW9uLnBvc2l0aW9uLnkgPSAwOwotKyAgICAgICAg ICAgICAgc3BhX21ldGFfdmlkZW9fY3JvcC0+cmVnaW9uLnNpemUud2lkdGggPSBwcml2LT5zdHJl YW1fd2lkdGg7Ci0rICAgICAgICAgICAgICBzcGFfbWV0YV92aWRlb19jcm9wLT5yZWdpb24uc2l6 ZS5oZWlnaHQgPSBwcml2LT5zdHJlYW1faGVpZ2h0OwotICAgICAgICAgICAgIH0KLSAgICAgICAg IH0KLSAgICAgfQotQEAgLTU1NSw3ICs1MzksNiBAQCBvbl9zdHJlYW1fc3RhdGVfY2hhbmdlZCAo dm9pZCAgICAgICAgICAgICAgICAgKmRhdGEsCi0gICBNZXRhU2NyZWVuQ2FzdFN0cmVhbVNyYyAq c3JjID0gZGF0YTsKLSAgIE1ldGFTY3JlZW5DYXN0U3RyZWFtU3JjUHJpdmF0ZSAqcHJpdiA9Ci0g ICAgIG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19nZXRfaW5zdGFuY2VfcHJpdmF0ZSAoc3Jj KTsKLS0gIHVpbnQzMl90IG5vZGVfaWQ7Ci0KLSAgIHN3aXRjaCAoc3RhdGUpCi0gICAgIHsKLUBA IC01NjMsMTQgKzU0NiwxMiBAQCBvbl9zdHJlYW1fc3RhdGVfY2hhbmdlZCAodm9pZCAgICAgICAg ICAgICAgICAgKmRhdGEsCi0gICAgICAgZ193YXJuaW5nICgicGlwZXdpcmUgc3RyZWFtIGVycm9y OiAlcyIsIGVycm9yX21lc3NhZ2UpOwotICAgICAgIG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3Ny Y19ub3RpZnlfY2xvc2VkIChzcmMpOwotICAgICAgIGJyZWFrOwotLSAgICBjYXNlIFBXX1NUUkVB TV9TVEFURV9DT05GSUdVUkU6Ci0tICAgICAgbm9kZV9pZCA9IHB3X3N0cmVhbV9nZXRfbm9kZV9p ZCAocHJpdi0+cGlwZXdpcmVfc3RyZWFtKTsKLS0gICAgICBnX3NpZ25hbF9lbWl0IChzcmMsIHNp Z25hbHNbUkVBRFldLCAwLCAodW5zaWduZWQgaW50KSBub2RlX2lkKTsKLS0gICAgICBicmVhazsK LS0gICAgY2FzZSBQV19TVFJFQU1fU1RBVEVfVU5DT05ORUNURUQ6Ci0tICAgIGNhc2UgUFdfU1RS RUFNX1NUQVRFX0NPTk5FQ1RJTkc6Ci0tICAgIGNhc2UgUFdfU1RSRUFNX1NUQVRFX1JFQURZOgot ICAgICBjYXNlIFBXX1NUUkVBTV9TVEFURV9QQVVTRUQ6Ci0rICAgICAgaWYgKHByaXYtPm5vZGVf aWQgPT0gU1BBX0lEX0lOVkFMSUQgJiYgcHJpdi0+cGlwZXdpcmVfc3RyZWFtKQotKyAgICAgICAg ewotKyAgICAgICAgICBwcml2LT5ub2RlX2lkID0gcHdfc3RyZWFtX2dldF9ub2RlX2lkIChwcml2 LT5waXBld2lyZV9zdHJlYW0pOwotKyAgICAgICAgICBnX3NpZ25hbF9lbWl0IChzcmMsIHNpZ25h bHNbUkVBRFldLCAwLCAodW5zaWduZWQgaW50KSBwcml2LT5ub2RlX2lkKTsKLSsgICAgICAgIH0K LSAgICAgICBpZiAobWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1fc3JjX2lzX2VuYWJsZWQgKHNyYykp Ci0gICAgICAgICBtZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9zcmNfZGlzYWJsZSAoc3JjKTsKLSAg ICAgICBicmVhazsKLUBAIC01NzgsNjggKzU1OSw2OSBAQCBvbl9zdHJlYW1fc3RhdGVfY2hhbmdl ZCAodm9pZCAgICAgICAgICAgICAgICAgKmRhdGEsCi0gICAgICAgaWYgKCFtZXRhX3NjcmVlbl9j YXN0X3N0cmVhbV9zcmNfaXNfZW5hYmxlZCAoc3JjKSkKLSAgICAgICAgIG1ldGFfc2NyZWVuX2Nh c3Rfc3RyZWFtX3NyY19lbmFibGUgKHNyYyk7Ci0gICAgICAgYnJlYWs7Ci0rICAgIGNhc2UgUFdf U1RSRUFNX1NUQVRFX1VOQ09OTkVDVEVEOgotKyAgICBjYXNlIFBXX1NUUkVBTV9TVEFURV9DT05O RUNUSU5HOgotKyAgICAgIGJyZWFrOwotICAgICB9Ci0gfQotCi0gc3RhdGljIHZvaWQKLS1vbl9z dHJlYW1fZm9ybWF0X2NoYW5nZWQgKHZvaWQgICAgICAgICAgICAgICAgICpkYXRhLAotLSAgICAg ICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RydWN0IHNwYV9wb2QgKmZvcm1hdCkKLStvbl9z dHJlYW1fcGFyYW1fY2hhbmdlZCAodm9pZCAgICAgICAgICAgICAgICAgKmRhdGEsCi0rICAgICAg ICAgICAgICAgICAgICAgICAgIHVpbnQzMl90ICAgICAgICAgICAgICBpZCwKLSsgICAgICAgICAg ICAgICAgICAgICAgICAgY29uc3Qgc3RydWN0IHNwYV9wb2QgKmZvcm1hdCkKLSB7Ci0gICBNZXRh U2NyZWVuQ2FzdFN0cmVhbVNyYyAqc3JjID0gZGF0YTsKLSAgIE1ldGFTY3JlZW5DYXN0U3RyZWFt U3JjUHJpdmF0ZSAqcHJpdiA9Ci0gICAgIG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19nZXRf aW5zdGFuY2VfcHJpdmF0ZSAoc3JjKTsKLS0gIHN0cnVjdCBwd190eXBlICpwaXBld2lyZV90eXBl ID0gcHJpdi0+cGlwZXdpcmVfdHlwZTsKLSAgIHVpbnQ4X3QgcGFyYW1zX2J1ZmZlclsxMDI0XTsK LSAgIGludDMyX3Qgd2lkdGgsIGhlaWdodCwgc3RyaWRlLCBzaXplOwotICAgc3RydWN0IHNwYV9w b2RfYnVpbGRlciBwb2RfYnVpbGRlcjsKLSAgIGNvbnN0IHN0cnVjdCBzcGFfcG9kICpwYXJhbXNb M107Ci0gICBjb25zdCBpbnQgYnBwID0gNDsKLQotLSAgaWYgKCFmb3JtYXQpCi0tICAgIHsKLS0g ICAgICBwd19zdHJlYW1fZmluaXNoX2Zvcm1hdCAocHJpdi0+cGlwZXdpcmVfc3RyZWFtLCAwLCBO VUxMLCAwKTsKLS0gICAgICByZXR1cm47Ci0tICAgIH0KLSsgIGlmICghZm9ybWF0IHx8IGlkICE9 IFNQQV9QQVJBTV9Gb3JtYXQpCi0rICAgIHJldHVybjsKLQotICAgc3BhX2Zvcm1hdF92aWRlb19y YXdfcGFyc2UgKGZvcm1hdCwKLS0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmcHJpdi0+ dmlkZW9fZm9ybWF0LAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZwcml2LT5zcGFf dHlwZS5mb3JtYXRfdmlkZW8pOwotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZwcml2 LT52aWRlb19mb3JtYXQpOwotCi0gICB3aWR0aCA9IHByaXYtPnZpZGVvX2Zvcm1hdC5zaXplLndp ZHRoOwotICAgaGVpZ2h0ID0gcHJpdi0+dmlkZW9fZm9ybWF0LnNpemUuaGVpZ2h0OwotICAgc3Ry aWRlID0gU1BBX1JPVU5EX1VQX04gKHdpZHRoICogYnBwLCA0KTsKLSAgIHNpemUgPSBoZWlnaHQg KiBzdHJpZGU7Ci0KLSsgIHByaXYtPnZpZGVvX3N0cmlkZSA9IHN0cmlkZTsKLSsKLSAgIHBvZF9i dWlsZGVyID0gU1BBX1BPRF9CVUlMREVSX0lOSVQgKHBhcmFtc19idWZmZXIsIHNpemVvZiAocGFy YW1zX2J1ZmZlcikpOwotCi0tICBwYXJhbXNbMF0gPSBzcGFfcG9kX2J1aWxkZXJfb2JqZWN0ICgK LSsgIHBhcmFtc1swXSA9IHNwYV9wb2RfYnVpbGRlcl9hZGRfb2JqZWN0ICgKLSAgICAgJnBvZF9i dWlsZGVyLAotLSAgICBwaXBld2lyZV90eXBlLT5wYXJhbS5pZEJ1ZmZlcnMsIHBpcGV3aXJlX3R5 cGUtPnBhcmFtX2J1ZmZlcnMuQnVmZmVycywKLS0gICAgIjoiLCBwaXBld2lyZV90eXBlLT5wYXJh bV9idWZmZXJzLnNpemUsICJpIiwgc2l6ZSwKLS0gICAgIjoiLCBwaXBld2lyZV90eXBlLT5wYXJh bV9idWZmZXJzLnN0cmlkZSwgImkiLCBzdHJpZGUsCi0tICAgICI6IiwgcGlwZXdpcmVfdHlwZS0+ cGFyYW1fYnVmZmVycy5idWZmZXJzLCAiaXJ1IiwgMTYsIFBST1BfUkFOR0UgKDIsIDE2KSwKLS0g ICAgIjoiLCBwaXBld2lyZV90eXBlLT5wYXJhbV9idWZmZXJzLmFsaWduLCAiaSIsIDE2KTsKLS0K LS0gIHBhcmFtc1sxXSA9IHNwYV9wb2RfYnVpbGRlcl9vYmplY3QgKAotKyAgICBTUEFfVFlQRV9P QkpFQ1RfUGFyYW1CdWZmZXJzLCBTUEFfUEFSQU1fQnVmZmVycywKLSsgICAgU1BBX1BBUkFNX0JV RkZFUlNfYnVmZmVycywgU1BBX1BPRF9DSE9JQ0VfUkFOR0VfSW50ICgxNiwgMiwgMTYpLAotKyAg ICBTUEFfUEFSQU1fQlVGRkVSU19ibG9ja3MsIFNQQV9QT0RfSW50ICgxKSwKLSsgICAgU1BBX1BB UkFNX0JVRkZFUlNfc2l6ZSwgU1BBX1BPRF9JbnQgKHNpemUpLAotKyAgICBTUEFfUEFSQU1fQlVG RkVSU19zdHJpZGUsIFNQQV9QT0RfSW50IChzdHJpZGUpLAotKyAgICBTUEFfUEFSQU1fQlVGRkVS U19hbGlnbiwgU1BBX1BPRF9JbnQgKDE2KSk7Ci0rCi0rICBwYXJhbXNbMV0gPSBzcGFfcG9kX2J1 aWxkZXJfYWRkX29iamVjdCAoCi0gICAgICZwb2RfYnVpbGRlciwKLS0gICAgcGlwZXdpcmVfdHlw ZS0+cGFyYW0uaWRNZXRhLCBwaXBld2lyZV90eXBlLT5wYXJhbV9tZXRhLk1ldGEsCi0tICAgICI6 IiwgcGlwZXdpcmVfdHlwZS0+cGFyYW1fbWV0YS50eXBlLCAiSSIsIHBpcGV3aXJlX3R5cGUtPm1l dGEuVmlkZW9Dcm9wLAotLSAgICAiOiIsIHBpcGV3aXJlX3R5cGUtPnBhcmFtX21ldGEuc2l6ZSwg ImkiLCBzaXplb2YgKHN0cnVjdCBzcGFfbWV0YV92aWRlb19jcm9wKSk7Ci0rICAgIFNQQV9UWVBF X09CSkVDVF9QYXJhbU1ldGEsIFNQQV9QQVJBTV9NZXRhLAotKyAgICBTUEFfUEFSQU1fTUVUQV90 eXBlLCBTUEFfUE9EX0lkIChTUEFfTUVUQV9WaWRlb0Nyb3ApLAotKyAgICBTUEFfUEFSQU1fTUVU QV9zaXplLCBTUEFfUE9EX0ludCAoc2l6ZW9mIChzdHJ1Y3Qgc3BhX21ldGFfcmVnaW9uKSkpOwot Ci0tICBwYXJhbXNbMl0gPSBzcGFfcG9kX2J1aWxkZXJfb2JqZWN0ICgKLSsgIHBhcmFtc1syXSA9 IHNwYV9wb2RfYnVpbGRlcl9hZGRfb2JqZWN0ICgKLSAgICAgJnBvZF9idWlsZGVyLAotLSAgICBw aXBld2lyZV90eXBlLT5wYXJhbS5pZE1ldGEsIHBpcGV3aXJlX3R5cGUtPnBhcmFtX21ldGEuTWV0 YSwKLS0gICAgIjoiLCBwaXBld2lyZV90eXBlLT5wYXJhbV9tZXRhLnR5cGUsICJJIiwgcHJpdi0+ c3BhX3R5cGUubWV0YV9jdXJzb3IsCi0tICAgICI6IiwgcGlwZXdpcmVfdHlwZS0+cGFyYW1fbWV0 YS5zaXplLCAiaSIsIENVUlNPUl9NRVRBX1NJWkUgKDY0LCA2NCkpOwotKyAgICBTUEFfVFlQRV9P QkpFQ1RfUGFyYW1NZXRhLCBTUEFfUEFSQU1fTWV0YSwKLSsgICAgU1BBX1BBUkFNX01FVEFfdHlw ZSwgU1BBX1BPRF9JZCAoU1BBX01FVEFfQ3Vyc29yKSwKLSsgICAgU1BBX1BBUkFNX01FVEFfc2l6 ZSwgU1BBX1BPRF9JbnQgKENVUlNPUl9NRVRBX1NJWkUgKDY0LCA2NCkpKTsKLQotLSAgcHdfc3Ry ZWFtX2ZpbmlzaF9mb3JtYXQgKHByaXYtPnBpcGV3aXJlX3N0cmVhbSwgMCwKLS0gICAgICAgICAg ICAgICAgICAgICAgICAgICBwYXJhbXMsIEdfTl9FTEVNRU5UUyAocGFyYW1zKSk7Ci0rICBwd19z dHJlYW1fdXBkYXRlX3BhcmFtcyAocHJpdi0+cGlwZXdpcmVfc3RyZWFtLCBwYXJhbXMsIEdfTl9F TEVNRU5UUyAocGFyYW1zKSk7Ci0gfQotCi0gc3RhdGljIGNvbnN0IHN0cnVjdCBwd19zdHJlYW1f ZXZlbnRzIHN0cmVhbV9ldmVudHMgPSB7Ci0gICBQV19WRVJTSU9OX1NUUkVBTV9FVkVOVFMsCi0g ICAuc3RhdGVfY2hhbmdlZCA9IG9uX3N0cmVhbV9zdGF0ZV9jaGFuZ2VkLAotLSAgLmZvcm1hdF9j aGFuZ2VkID0gb25fc3RyZWFtX2Zvcm1hdF9jaGFuZ2VkLAotKyAgLnBhcmFtX2NoYW5nZWQgPSBv bl9zdHJlYW1fcGFyYW1fY2hhbmdlZCwKLSB9OwotCi0gc3RhdGljIHN0cnVjdCBwd19zdHJlYW0g KgotQEAgLTY1Miw4ICs2MzQsNiBAQCBjcmVhdGVfcGlwZXdpcmVfc3RyZWFtIChNZXRhU2NyZWVu Q2FzdFN0cmVhbVNyYyAgKnNyYywKLSAgIHVpbnQ4X3QgYnVmZmVyWzEwMjRdOwotICAgc3RydWN0 IHNwYV9wb2RfYnVpbGRlciBwb2RfYnVpbGRlciA9Ci0gICAgIFNQQV9QT0RfQlVJTERFUl9JTklU IChidWZmZXIsIHNpemVvZiAoYnVmZmVyKSk7Ci0tICBNZXRhU3BhVHlwZSAqc3BhX3R5cGUgPSAm cHJpdi0+c3BhX3R5cGU7Ci0tICBzdHJ1Y3QgcHdfdHlwZSAqcGlwZXdpcmVfdHlwZSA9IHByaXYt PnBpcGV3aXJlX3R5cGU7Ci0gICBmbG9hdCBmcmFtZV9yYXRlOwotICAgTWV0YUZyYWN0aW9uIGZy YW1lX3JhdGVfZnJhY3Rpb247Ci0gICBzdHJ1Y3Qgc3BhX2ZyYWN0aW9uIG1heF9mcmFtZXJhdGU7 Ci1AQCAtNjYxLDcgKzY0MSw5IEBAIGNyZWF0ZV9waXBld2lyZV9zdHJlYW0gKE1ldGFTY3JlZW5D YXN0U3RyZWFtU3JjICAqc3JjLAotICAgY29uc3Qgc3RydWN0IHNwYV9wb2QgKnBhcmFtc1sxXTsK LSAgIGludCByZXN1bHQ7Ci0KLS0gIHBpcGV3aXJlX3N0cmVhbSA9IHB3X3N0cmVhbV9uZXcgKHBy aXYtPnBpcGV3aXJlX3JlbW90ZSwKLSsgIHByaXYtPm5vZGVfaWQgPSBTUEFfSURfSU5WQUxJRDsK LSsKLSsgIHBpcGV3aXJlX3N0cmVhbSA9IHB3X3N0cmVhbV9uZXcgKHByaXYtPnBpcGV3aXJlX2Nv cmUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWV0YS1zY3JlZW4tY2Fz dC1zcmMiLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCk7Ci0gICBp ZiAoIXBpcGV3aXJlX3N0cmVhbSkKLUBAIC02ODIsMTcgKzY2NCwxNyBAQCBjcmVhdGVfcGlwZXdp cmVfc3RyZWFtIChNZXRhU2NyZWVuQ2FzdFN0cmVhbVNyYyAgKnNyYywKLSAgIG1heF9mcmFtZXJh dGUgPSBTUEFfRlJBQ1RJT04gKGZyYW1lX3JhdGVfZnJhY3Rpb24ubnVtLAotICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgZnJhbWVfcmF0ZV9mcmFjdGlvbi5kZW5vbSk7Ci0KLS0gIHBh cmFtc1swXSA9IHNwYV9wb2RfYnVpbGRlcl9vYmplY3QgKAotKyAgcGFyYW1zWzBdID0gc3BhX3Bv ZF9idWlsZGVyX2FkZF9vYmplY3QgKAotICAgICAmcG9kX2J1aWxkZXIsCi0tICAgIHBpcGV3aXJl X3R5cGUtPnBhcmFtLmlkRW51bUZvcm1hdCwgcGlwZXdpcmVfdHlwZS0+c3BhX2Zvcm1hdCwKLS0g ICAgIkkiLCBzcGFfdHlwZS0+bWVkaWFfdHlwZS52aWRlbywKLS0gICAgIkkiLCBzcGFfdHlwZS0+ bWVkaWFfc3VidHlwZS5yYXcsCi0tICAgICI6Iiwgc3BhX3R5cGUtPmZvcm1hdF92aWRlby5mb3Jt YXQsICJJIiwgc3BhX3R5cGUtPnZpZGVvX2Zvcm1hdC5CR1J4LAotLSAgICAiOiIsIHNwYV90eXBl LT5mb3JtYXRfdmlkZW8uc2l6ZSwgIlIiLCAmU1BBX1JFQ1RBTkdMRSAocHJpdi0+c3RyZWFtX3dp ZHRoLAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgcHJpdi0+c3RyZWFtX2hlaWdodCksCi0tICAgICI6Iiwgc3BhX3R5cGUtPmZvcm1h dF92aWRlby5mcmFtZXJhdGUsICJGIiwgJlNQQV9GUkFDVElPTiAoMCwgMSksCi0tICAgICI6Iiwg c3BhX3R5cGUtPmZvcm1hdF92aWRlby5tYXhfZnJhbWVyYXRlLCAiRnJ1IiwgJm1heF9mcmFtZXJh dGUsCi0tICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgUFJPUF9SQU5HRSAoJm1pbl9mcmFtZXJhdGUsCi0rICAgIFNQQV9UWVBFX09CSkVDVF9Gb3Jt YXQsIFNQQV9QQVJBTV9FbnVtRm9ybWF0LAotKyAgICBTUEFfRk9STUFUX21lZGlhVHlwZSwgU1BB X1BPRF9JZCAoU1BBX01FRElBX1RZUEVfdmlkZW8pLAotKyAgICBTUEFfRk9STUFUX21lZGlhU3Vi dHlwZSwgU1BBX1BPRF9JZCAoU1BBX01FRElBX1NVQlRZUEVfcmF3KSwKLSsgICAgU1BBX0ZPUk1B VF9WSURFT19mb3JtYXQsIFNQQV9QT0RfSWQgKFNQQV9WSURFT19GT1JNQVRfQkdSeCksCi0rICAg IFNQQV9GT1JNQVRfVklERU9fc2l6ZSwgU1BBX1BPRF9SZWN0YW5nbGUgKCZTUEFfUkVDVEFOR0xF IChwcml2LT5zdHJlYW1fd2lkdGgsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcml2LT5zdHJlYW1faGVpZ2h0KSksCi0rICAg IFNQQV9GT1JNQVRfVklERU9fZnJhbWVyYXRlLCBTUEFfUE9EX0ZyYWN0aW9uICgmU1BBX0ZSQUNU SU9OICgwLCAxKSksCi0rICAgIFNQQV9GT1JNQVRfVklERU9fbWF4RnJhbWVyYXRlLCBTUEFfUE9E X0NIT0lDRV9SQU5HRV9GcmFjdGlvbiAoJm1heF9mcmFtZXJhdGUsCi0rICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJm1pbl9m cmFtZXJhdGUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgJm1heF9mcmFtZXJhdGUpKTsKLQotICAgcHdfc3RyZWFtX2Fk ZF9saXN0ZW5lciAocGlwZXdpcmVfc3RyZWFtLAotQEAgLTcwMiw3ICs2ODQsNyBAQCBjcmVhdGVf cGlwZXdpcmVfc3RyZWFtIChNZXRhU2NyZWVuQ2FzdFN0cmVhbVNyYyAgKnNyYywKLQotICAgcmVz dWx0ID0gcHdfc3RyZWFtX2Nvbm5lY3QgKHBpcGV3aXJlX3N0cmVhbSwKLSAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBQV19ESVJFQ1RJT05fT1VUUFVULAotLSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIE5VTEwsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU1BBX0lE X0lOVkFMSUQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKFBXX1NUUkVBTV9GTEFH X0RSSVZFUiB8Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBXX1NUUkVBTV9GTEFH X01BUF9CVUZGRVJTKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXJhbXMsIEdf Tl9FTEVNRU5UUyAocGFyYW1zKSk7Ci1AQCAtNzE3LDQwICs2OTksMTggQEAgY3JlYXRlX3BpcGV3 aXJlX3N0cmVhbSAoTWV0YVNjcmVlbkNhc3RTdHJlYW1TcmMgICpzcmMsCi0gfQotCi0gc3RhdGlj IHZvaWQKLS1vbl9zdGF0ZV9jaGFuZ2VkICh2b2lkICAgICAgICAgICAgICAgICAqZGF0YSwKLS0g ICAgICAgICAgICAgICAgICBlbnVtIHB3X3JlbW90ZV9zdGF0ZSAgb2xkLAotLSAgICAgICAgICAg ICAgICAgIGVudW0gcHdfcmVtb3RlX3N0YXRlICBzdGF0ZSwKLS0gICAgICAgICAgICAgICAgICBj b25zdCBjaGFyICAgICAgICAgICAqZXJyb3JfbWVzc2FnZSkKLStvbl9jb3JlX2Vycm9yICh2b2lk ICAgICAgICpkYXRhLAotKyAgICAgICAgICAgICAgIHVpbnQzMl90ICAgIGlkLAotKwkgICAgICAg aW50ICAgICAgICAgc2VxLAotKwkgICAgICAgaW50ICAgICAgICAgcmVzLAotKwkgICAgICAgY29u c3QgY2hhciAqbWVzc2FnZSkKLSB7Ci0gICBNZXRhU2NyZWVuQ2FzdFN0cmVhbVNyYyAqc3JjID0g ZGF0YTsKLS0gIE1ldGFTY3JlZW5DYXN0U3RyZWFtU3JjUHJpdmF0ZSAqcHJpdiA9Ci0tICAgIG1l dGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19nZXRfaW5zdGFuY2VfcHJpdmF0ZSAoc3JjKTsKLS0g IHN0cnVjdCBwd19zdHJlYW0gKnBpcGV3aXJlX3N0cmVhbTsKLS0gIEdFcnJvciAqZXJyb3IgPSBO VUxMOwotCi0tICBzd2l0Y2ggKHN0YXRlKQotLSAgICB7Ci0tICAgIGNhc2UgUFdfUkVNT1RFX1NU QVRFX0VSUk9SOgotLSAgICAgIGdfd2FybmluZyAoInBpcGV3aXJlIHJlbW90ZSBlcnJvcjogJXNc biIsIGVycm9yX21lc3NhZ2UpOwotLSAgICAgIG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19u b3RpZnlfY2xvc2VkIChzcmMpOwotLSAgICAgIGJyZWFrOwotLSAgICBjYXNlIFBXX1JFTU9URV9T VEFURV9DT05ORUNURUQ6Ci0tICAgICAgcGlwZXdpcmVfc3RyZWFtID0gY3JlYXRlX3BpcGV3aXJl X3N0cmVhbSAoc3JjLCAmZXJyb3IpOwotLSAgICAgIGlmICghcGlwZXdpcmVfc3RyZWFtKQotLSAg ICAgICAgewotLSAgICAgICAgICBnX3dhcm5pbmcgKCJDb3VsZCBub3QgY3JlYXRlIHBpcGV3aXJl IHN0cmVhbTogJXMiLCBlcnJvci0+bWVzc2FnZSk7Ci0tICAgICAgICAgIGdfZXJyb3JfZnJlZSAo ZXJyb3IpOwotLSAgICAgICAgICBtZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9zcmNfbm90aWZ5X2Ns b3NlZCAoc3JjKTsKLS0gICAgICAgIH0KLS0gICAgICBlbHNlCi0tICAgICAgICB7Ci0tICAgICAg ICAgIHByaXYtPnBpcGV3aXJlX3N0cmVhbSA9IHBpcGV3aXJlX3N0cmVhbTsKLS0gICAgICAgIH0K LS0gICAgICBicmVhazsKLS0gICAgY2FzZSBQV19SRU1PVEVfU1RBVEVfVU5DT05ORUNURUQ6Ci0t ICAgIGNhc2UgUFdfUkVNT1RFX1NUQVRFX0NPTk5FQ1RJTkc6Ci0tICAgICAgYnJlYWs7Ci0tICAg IH0KLSsgIGdfd2FybmluZyAoInBpcGV3aXJlIHJlbW90ZSBlcnJvcjogaWQ6JXUgJXMiLCBpZCwg bWVzc2FnZSk7Ci0rCi0rICBpZiAoaWQgPT0gUFdfSURfQ09SRSAmJiByZXMgPT0gLUVQSVBFKQot KyAgICBtZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9zcmNfbm90aWZ5X2Nsb3NlZCAoc3JjKTsKLSB9 Ci0KLSBzdGF0aWMgZ2Jvb2xlYW4KLUBAIC03OTMsMTcgKzc1Myw2IEBAIHN0YXRpYyBHU291cmNl RnVuY3MgcGlwZXdpcmVfc291cmNlX2Z1bmNzID0KLSAgIHBpcGV3aXJlX2xvb3Bfc291cmNlX2Zp bmFsaXplCi0gfTsKLQotLXN0YXRpYyB2b2lkCi0taW5pdF9zcGFfdHlwZSAoTWV0YVNwYVR5cGUg ICAgICAgICAqdHlwZSwKLS0gICAgICAgICAgICAgICBzdHJ1Y3Qgc3BhX3R5cGVfbWFwICptYXAp Ci0tewotLSAgc3BhX3R5cGVfbWVkaWFfdHlwZV9tYXAgKG1hcCwgJnR5cGUtPm1lZGlhX3R5cGUp OwotLSAgc3BhX3R5cGVfbWVkaWFfc3VidHlwZV9tYXAgKG1hcCwgJnR5cGUtPm1lZGlhX3N1YnR5 cGUpOwotLSAgc3BhX3R5cGVfZm9ybWF0X3ZpZGVvX21hcCAobWFwLCAmdHlwZS0+Zm9ybWF0X3Zp ZGVvKTsKLS0gIHNwYV90eXBlX3ZpZGVvX2Zvcm1hdF9tYXAgKG1hcCwgJnR5cGUtPnZpZGVvX2Zv cm1hdCk7Ci0tICB0eXBlLT5tZXRhX2N1cnNvciA9IHNwYV90eXBlX21hcF9nZXRfaWQobWFwLCBT UEFfVFlQRV9NRVRBX19DdXJzb3IpOwotLX0KLS0KLSBzdGF0aWMgTWV0YVBpcGVXaXJlU291cmNl ICoKLSBjcmVhdGVfcGlwZXdpcmVfc291cmNlICh2b2lkKQotIHsKLUBAIC04MjksOSArNzc4LDkg QEAgY3JlYXRlX3BpcGV3aXJlX3NvdXJjZSAodm9pZCkKLSAgIHJldHVybiBwaXBld2lyZV9zb3Vy Y2U7Ci0gfQotCi0tc3RhdGljIGNvbnN0IHN0cnVjdCBwd19yZW1vdGVfZXZlbnRzIHJlbW90ZV9l dmVudHMgPSB7Ci0tICBQV19WRVJTSU9OX1JFTU9URV9FVkVOVFMsCi0tICAuc3RhdGVfY2hhbmdl ZCA9IG9uX3N0YXRlX2NoYW5nZWQsCi0rc3RhdGljIGNvbnN0IHN0cnVjdCBwd19jb3JlX2V2ZW50 cyBjb3JlX2V2ZW50cyA9IHsKLSsgIFBXX1ZFUlNJT05fQ09SRV9FVkVOVFMsCi0rICAuZXJyb3Ig PSBvbl9jb3JlX2Vycm9yLAotIH07Ci0KLSBzdGF0aWMgZ2Jvb2xlYW4KLUBAIC04NTEsMzcgKzgw MCwzMSBAQCBtZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9zcmNfaW5pdGFibGVfaW5pdCAoR0luaXRh YmxlICAgICAqaW5pdGFibGUsCi0gICAgICAgcmV0dXJuIEZBTFNFOwotICAgICB9Ci0KLS0gIHBy aXYtPnBpcGV3aXJlX2NvcmUgPSBwd19jb3JlX25ldyAocHJpdi0+cGlwZXdpcmVfc291cmNlLT5w aXBld2lyZV9sb29wLAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxM KTsKLS0gIGlmICghcHJpdi0+cGlwZXdpcmVfY29yZSkKLSsgIHByaXYtPnBpcGV3aXJlX2NvbnRl eHQgPSBwd19jb250ZXh0X25ldyAocHJpdi0+cGlwZXdpcmVfc291cmNlLT5waXBld2lyZV9sb29w LAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAwKTsK LSsgIGlmICghcHJpdi0+cGlwZXdpcmVfY29udGV4dCkKLSAgICAgewotICAgICAgIGdfc2V0X2Vy cm9yIChlcnJvciwgR19JT19FUlJPUiwgR19JT19FUlJPUl9GQUlMRUQsCi0tICAgICAgICAgICAg ICAgICAgICJGYWlsZWQgdG8gY3JlYXRlIHBpcGV3aXJlIGNvcmUiKTsKLSsgICAgICAgICAgICAg ICAgICAgIkZhaWxlZCB0byBjcmVhdGUgcGlwZXdpcmUgY29udGV4dCIpOwotICAgICAgIHJldHVy biBGQUxTRTsKLSAgICAgfQotCi0tICBwcml2LT5waXBld2lyZV9yZW1vdGUgPSBwd19yZW1vdGVf bmV3IChwcml2LT5waXBld2lyZV9jb3JlLCBOVUxMLCAwKTsKLS0gIGlmICghcHJpdi0+cGlwZXdp cmVfcmVtb3RlKQotKyAgcHJpdi0+cGlwZXdpcmVfY29yZSA9IHB3X2NvbnRleHRfY29ubmVjdCAo cHJpdi0+cGlwZXdpcmVfY29udGV4dCwgTlVMTCwgMCk7Ci0rICBpZiAoIXByaXYtPnBpcGV3aXJl X2NvcmUpCi0gICAgIHsKLSAgICAgICBnX3NldF9lcnJvciAoZXJyb3IsIEdfSU9fRVJST1IsIEdf SU9fRVJST1JfRkFJTEVELAotLSAgICAgICAgICAgICAgICAgICAiQ291bGRuJ3QgY3JlYXQgcGlw ZXdpcmUgcmVtb3RlIik7Ci0rICAgICAgICAgICAgICAgICAgICJDb3VsZG4ndCBjb25uZWN0IHBp cGV3aXJlIGNvbnRleHQiKTsKLSAgICAgICByZXR1cm4gRkFMU0U7Ci0gICAgIH0KLQotLSAgcHdf cmVtb3RlX2FkZF9saXN0ZW5lciAocHJpdi0+cGlwZXdpcmVfcmVtb3RlLAotLSAgICAgICAgICAg ICAgICAgICAgICAgICAgJnByaXYtPnBpcGV3aXJlX3JlbW90ZV9saXN0ZW5lciwKLS0gICAgICAg ICAgICAgICAgICAgICAgICAgICZyZW1vdGVfZXZlbnRzLAotLSAgICAgICAgICAgICAgICAgICAg ICAgICAgc3JjKTsKLSsgIHB3X2NvcmVfYWRkX2xpc3RlbmVyIChwcml2LT5waXBld2lyZV9jb3Jl LAotKyAgICAgICAgICAgICAgICAgICAgICAgICZwcml2LT5waXBld2lyZV9jb3JlX2xpc3RlbmVy LAotKyAgICAgICAgICAgICAgICAgICAgICAgICZjb3JlX2V2ZW50cywKLSsgICAgICAgICAgICAg ICAgICAgICAgICBzcmMpOwotCi0tICBwcml2LT5waXBld2lyZV90eXBlID0gcHdfY29yZV9nZXRf dHlwZSAocHJpdi0+cGlwZXdpcmVfY29yZSk7Ci0tICBpbml0X3NwYV90eXBlICgmcHJpdi0+c3Bh X3R5cGUsIHByaXYtPnBpcGV3aXJlX3R5cGUtPm1hcCk7Ci0tCi0tICBpZiAocHdfcmVtb3RlX2Nv bm5lY3QgKHByaXYtPnBpcGV3aXJlX3JlbW90ZSkgIT0gMCkKLS0gICAgewotLSAgICAgIGdfc2V0 X2Vycm9yIChlcnJvciwgR19JT19FUlJPUiwgR19JT19FUlJPUl9GQUlMRUQsCi0tICAgICAgICAg ICAgICAgICAgICJDb3VsZG4ndCBjb25uZWN0IHBpcGV3aXJlIHJlbW90ZSIpOwotLSAgICAgIHJl dHVybiBGQUxTRTsKLS0gICAgfQotKyAgcHJpdi0+cGlwZXdpcmVfc3RyZWFtID0gY3JlYXRlX3Bp cGV3aXJlX3N0cmVhbSAoc3JjLCBlcnJvcik7Ci0rICBpZiAoIXByaXYtPnBpcGV3aXJlX3N0cmVh bSkKLSsgICAgcmV0dXJuIEZBTFNFOwotCi0gICByZXR1cm4gVFJVRTsKLSB9Ci1AQCAtOTEyLDgg Kzg1NSw4IEBAIG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19maW5hbGl6ZSAoR09iamVjdCAq b2JqZWN0KQotICAgICBtZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9zcmNfZGlzYWJsZSAoc3JjKTsK LQotICAgZ19jbGVhcl9wb2ludGVyICgmcHJpdi0+cGlwZXdpcmVfc3RyZWFtLCBwd19zdHJlYW1f ZGVzdHJveSk7Ci0tICBnX2NsZWFyX3BvaW50ZXIgKCZwcml2LT5waXBld2lyZV9yZW1vdGUsIHB3 X3JlbW90ZV9kZXN0cm95KTsKLS0gIGdfY2xlYXJfcG9pbnRlciAoJnByaXYtPnBpcGV3aXJlX2Nv cmUsIHB3X2NvcmVfZGVzdHJveSk7Ci0rICBnX2NsZWFyX3BvaW50ZXIgKCZwcml2LT5waXBld2ly ZV9jb3JlLCBwd19jb3JlX2Rpc2Nvbm5lY3QpOwotKyAgZ19jbGVhcl9wb2ludGVyICgmcHJpdi0+ cGlwZXdpcmVfY29udGV4dCwgcHdfY29udGV4dF9kZXN0cm95KTsKLSAgIGdfc291cmNlX2Rlc3Ry b3kgKCZwcml2LT5waXBld2lyZV9zb3VyY2UtPmJhc2UpOwotCi0gICBHX09CSkVDVF9DTEFTUyAo bWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1fc3JjX3BhcmVudF9jbGFzcyktPmZpbmFsaXplIChvYmpl Y3QpOwpkaWZmIC0tZ2l0IGEvc3JjcGtncy9tdXR0ZXIvdGVtcGxhdGUgYi9zcmNwa2dzL211dHRl ci90ZW1wbGF0ZQppbmRleCA4MDZhM2JlZjlmMC4uMTMyY2Q5ZGQ2NDUgMTAwNjQ0Ci0tLSBhL3Ny Y3BrZ3MvbXV0dGVyL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvbXV0dGVyL3RlbXBsYXRlCkBAIC0x LDM0ICsxLDM1IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdtdXR0ZXInCiBwa2duYW1lPW11dHRl cgotdmVyc2lvbj0zLjM0LjEKLXJldmlzaW9uPTMKK3ZlcnNpb249My4zNi4zCityZXZpc2lvbj0x CiBidWlsZF9oZWxwZXI9ImdpciIKIGJ1aWxkX3N0eWxlPW1lc29uCiBjb25maWd1cmVfYXJncz0i LURlZ2xfZGV2aWNlPXRydWUgLUR1ZGV2PXRydWUgLURuYXRpdmVfYmFja2VuZD10cnVlCi0gLURw cm9maWxlcj1mYWxzZSAtRGludHJvc3BlY3Rpb249dHJ1ZSAtRHh3YXlsYW5kX3BhdGg9L3Vzci9i aW4vWHdheWxhbmQiCisgLURwcm9maWxlcj1mYWxzZSAtRGludHJvc3BlY3Rpb249dHJ1ZSAtRHh3 YXlsYW5kX3BhdGg9L3Vzci9iaW4vWHdheWxhbmQKKyAtRHh3YXlsYW5kX2luaXRmZD1kaXNhYmxl ZCIKIGhvc3RtYWtlZGVwZW5kcz0iZ2V0dGV4dCBnbGliLWRldmVsIHBrZy1jb25maWcgemVuaXR5 IHdheWxhbmQtZGV2ZWwgeG9yZy1zZXJ2ZXIiCi1tYWtlZGVwZW5kcz0iZWxvZ2luZC1kZXZlbCBn bGliLWRldmVsIGdub21lLWRlc2t0b3AtZGV2ZWwganNvbi1nbGliLWRldmVsCi0gbGliZ2xpYi1k ZXZlbCBsaWJTTS1kZXZlbCBsaWJYdHN0LWRldmVsIGxpYmNhbmJlcnJhLWRldmVsIGxpYmlucHV0 LWRldmVsCi0gTWVzYUxpYi1kZXZlbCBwaXBld2lyZS1kZXZlbCBzdGFydHVwLW5vdGlmaWNhdGlv bi1kZXZlbCB3YXlsYW5kLXByb3RvY29scwotIGdub21lLXNldHRpbmdzLWRhZW1vbi1kZXZlbCIK K21ha2VkZXBlbmRzPSJlbG9naW5kLWRldmVsIGdsaWItZGV2ZWwgZ25vbWUtZGVza3RvcC1kZXZl bCBncmFwaGVuZS1kZXZlbAorIGpzb24tZ2xpYi1kZXZlbCBsaWJnbGliLWRldmVsIGxpYlNNLWRl dmVsIGxpYlh0c3QtZGV2ZWwgbGliY2FuYmVycmEtZGV2ZWwKKyBsaWJpbnB1dC1kZXZlbCBNZXNh TGliLWRldmVsIHBpcGV3aXJlLWRldmVsIHN0YXJ0dXAtbm90aWZpY2F0aW9uLWRldmVsCisgd2F5 bGFuZC1wcm90b2NvbHMgZ25vbWUtc2V0dGluZ3MtZGFlbW9uLWRldmVsIgogZGVwZW5kcz0iZGVz a3RvcC1maWxlLXV0aWxzIHplbml0eSIKIHNob3J0X2Rlc2M9IkxpZ2h0d2VpZ2h0IEdUSyszIHdp bmRvdyBtYW5hZ2VyIgogbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgu b3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly93aWtp Lmdub21lLm9yZy9Qcm9qZWN0cy9NdXR0ZXIvIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7 cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hl Y2tzdW09YmExODI2Y2Y4OGJkYjgxZTYzOTQzY2FjMDE0YThlOGJjZjM1ZWMxNzhjNTMyNjQ0MDFm OWM3MmZkZWFiNzU4ZQotc2hsaWJfcHJvdmlkZXM9ImxpYm11dHRlci1jbHV0dGVyLTUuc28gbGli bXV0dGVyLWNvZ2wtNS5zbwotIGxpYm11dHRlci1jb2dsLXBhbmdvLTUuc28gbGlibXV0dGVyLWNv Z2wtcGF0aC01LnNvIgorY2hlY2tzdW09NmFjZTc0MmU4ZDg4OTA4M2QzYzMyZDc5NTQzZDkwMjI0 ODNmMGIwMGI2MzBlY2VhYjVlMzgwNGFhZDNhZWVkMgorc2hsaWJfcHJvdmlkZXM9ImxpYm11dHRl ci1jbHV0dGVyLTYuc28gbGlibXV0dGVyLWNvZ2wtNi5zbworIGxpYm11dHRlci1jb2dsLXBhbmdv LTYuc28gbGlibXV0dGVyLWNvZ2wtcGF0aC02LnNvIgogCiBtdXR0ZXItZGV2ZWxfcGFja2FnZSgp IHsKLQlkZXBlbmRzPSJnc2V0dGluZ3MtZGVza3RvcC1zY2hlbWFzIGd0ayszLWRldmVsIGNsdXR0 ZXItZGV2ZWwgbGliWDExLWRldmVsCi0JIGxpYlh0c3QtZGV2ZWwgbXV0dGVyLSR7dmVyc2lvbn1f JHtyZXZpc2lvbn0iCisJZGVwZW5kcz0iZ3NldHRpbmdzLWRlc2t0b3Atc2NoZW1hcyBncmFwaGVu ZS1kZXZlbCBndGsrMy1kZXZlbCBjbHV0dGVyLWRldmVsCisJIGxpYlgxMS1kZXZlbCBsaWJYdHN0 LWRldmVsIG11dHRlci0ke3ZlcnNpb259XyR7cmV2aXNpb259IgogCXNob3J0X2Rlc2MrPSIgLSBk ZXZlbG9wbWVudCBmaWxlcyIKIAlwa2dfaW5zdGFsbCgpIHsKIAkJdm1vdmUgdXNyL2luY2x1ZGUK IAkJdm1vdmUgdXNyL2xpYi9wa2djb25maWcKLQkJdm1vdmUgInVzci9saWIvbXV0dGVyLTUvKi5n aXIiCisJCXZtb3ZlICJ1c3IvbGliL211dHRlci02LyouZ2lyIgogCQl2bW92ZSAidXNyL2xpYi8q LnNvIgogCX0KIH0KCkZyb20gY2FlZTA2Y2MxNDA1ZmVlNjZkNzUyZGUxNDdlNmM5MGEyNDFiNjcy ZCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29r LmNvbT4KRGF0ZTogVHVlLCAxNiBKdW4gMjAyMCAxOTo0ODozOCArMDYwMApTdWJqZWN0OiBbUEFU Q0ggMzgvNjFdIGdub21lLXNoZWxsOiB1cGRhdGUgdG8gMy4zNi4zLgoKLS0tCiBzcmNwa2dzL2du b21lLXNoZWxsL3RlbXBsYXRlIHwgOCArKysrLS0tLQogMSBmaWxlIGNoYW5nZWQsIDQgaW5zZXJ0 aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLXNoZWxs L3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1zaGVsbC90ZW1wbGF0ZQppbmRleCA5NmM1YjgwYTE5 NC4uZWU0YzYyODhmNWYgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtc2hlbGwvdGVtcGxhdGUK KysrIGIvc3JjcGtncy9nbm9tZS1zaGVsbC90ZW1wbGF0ZQpAQCAtMSwxMiArMSwxMiBAQAogIyBU ZW1wbGF0ZSBmaWxlIGZvciAnZ25vbWUtc2hlbGwnCiBwa2duYW1lPWdub21lLXNoZWxsCi12ZXJz aW9uPTMuMzQuMQordmVyc2lvbj0zLjM2LjMKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPW1lc29u CiBidWlsZF9oZWxwZXI9Z2lyCiBjb25maWd1cmVfYXJncz0iLURzeXN0ZW1kPWZhbHNlIgotaG9z dG1ha2VkZXBlbmRzPSJnb2JqZWN0LWludHJvc3BlY3Rpb24gZ3RrLWRvYyBsaWJ4c2x0IHBrZy1j b25maWcgcHl0aG9uMyBzYXNzYwotIGFzY2lpZG9jIHBlcmwgZ2xpYi1kZXZlbCBtdXR0ZXItZGV2 ZWwiCitob3N0bWFrZWRlcGVuZHM9ImdldHRleHQgZ29iamVjdC1pbnRyb3NwZWN0aW9uIGd0ay1k b2MgbGlieHNsdCBwa2ctY29uZmlnIHB5dGhvbjMgc2Fzc2MKKyBhc2NpaWRvYyBwZXJsIGdqcy1k ZXZlbCBnbGliLWRldmVsIG11dHRlci1kZXZlbCIKIG1ha2VkZXBlbmRzPSJhdC1zcGkyLWF0ayBj YXJpYm91LWRldmVsIGV2b2x1dGlvbi1kYXRhLXNlcnZlci1kZXZlbCBmb2xrcy1kZXZlbAogIGdj ci1kZXZlbCBnanMtZGV2ZWwgZ25vbWUtYmx1ZXRvb3RoLWRldmVsIGdub21lLWNvbnRyb2wtY2Vu dGVyLWRldmVsIGdub21lLWRlc2t0b3AtZGV2ZWwKICBnbm9tZS1tZW51cy1kZXZlbCBnc2V0dGlu Z3MtZGVza3RvcC1zY2hlbWFzLWRldmVsIGdzdHJlYW1lcjEtZGV2ZWwgZ3RrKzMtZGV2ZWwKQEAg LTIxLDQgKzIxLDQgQEAgbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRw czovL3dpa2kuZ25vbWUub3JnL1Byb2plY3RzL0dub21lU2hlbGwiCiBjaGFuZ2Vsb2c9Imh0dHBz Oi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9HTk9NRS9nbm9tZS1zaGVsbC9nbm9tZS0zLTMw L05FV1MiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9 LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT1jY2Q4NjU1OWI5Yzg5N2My MTlkMmQyZWJmZGI4NDEzZWZhNGMxYmVlODQ2NDI3Yzc1MGNiOGEzMDFiM2Y2ZDFlCitjaGVja3N1 bT04NmQ4YWJmNzBmYWI4OWQ1ZDkzOWRkN2UzOGM1OTg3MjQ5MmY0NDQyNzJhODUyNGRiNzk0NTBh NTE4MGQ0NWJiCgpGcm9tIGY1ZjdmOWY0N2I3ZmYzZTg5MmIwMmFlNTY1OWFkNjRmYzIxMzAzMGIg TW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5j b20+CkRhdGU6IFR1ZSwgMTYgSnVuIDIwMjAgMTk6NDg6NDYgKzA2MDAKU3ViamVjdDogW1BBVENI IDM5LzYxXSBnbm9tZS1zaGVsbC1leHRlbnNpb25zOiB1cGRhdGUgdG8gMy4zNi4yLgoKLS0tCiBz cmNwa2dzL2dub21lLXNoZWxsLWV4dGVuc2lvbnMvdGVtcGxhdGUgfCA2ICsrKy0tLQogMSBmaWxl IGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9z cmNwa2dzL2dub21lLXNoZWxsLWV4dGVuc2lvbnMvdGVtcGxhdGUgYi9zcmNwa2dzL2dub21lLXNo ZWxsLWV4dGVuc2lvbnMvdGVtcGxhdGUKaW5kZXggOTcxNjhiNDBmNjYuLmUxZGQ0M2JiMTUyIDEw MDY0NAotLS0gYS9zcmNwa2dzL2dub21lLXNoZWxsLWV4dGVuc2lvbnMvdGVtcGxhdGUKKysrIGIv c3JjcGtncy9nbm9tZS1zaGVsbC1leHRlbnNpb25zL3RlbXBsYXRlCkBAIC0xLDE1ICsxLDE1IEBA CiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbm9tZS1zaGVsbC1leHRlbnNpb25zJwogcGtnbmFtZT1n bm9tZS1zaGVsbC1leHRlbnNpb25zCi12ZXJzaW9uPTMuMzQuMQordmVyc2lvbj0zLjM2LjIKIHJl dmlzaW9uPTEKIGFyY2hzPW5vYXJjaAogYnVpbGRfc3R5bGU9bWVzb24KIGNvbmZpZ3VyZV9hcmdz PSItRGV4dGVuc2lvbl9zZXQ9YWxsIgotaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIgoraG9z dG1ha2VkZXBlbmRzPSJnZXR0ZXh0IHBrZy1jb25maWciCiBkZXBlbmRzPSJnbm9tZS1zaGVsbD49 JHt2ZXJzaW9ufSBuYXV0aWx1cyB1bnppcCIKIHNob3J0X2Rlc2M9IkV4dGVuc2lvbnMgZm9yIEdO T01FIHNoZWxsLCBpbmNsdWRpbmcgY2xhc3NpYyBtb2RlIgogbWFpbnRhaW5lcj0iRW5ubyBCb2xh bmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBo b21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9Qcm9qZWN0cy9Hbm9tZVNoZWxsL0V4dGVu c2lvbnMiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9 LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT1iMGFkNTExNDNiMWJmNDBk ZWY0YTEwZjhmZDBhYjBmZmI0NzIxODMwNDgwMDc5NGU2MmNhZGQyOWQwYWNjNzViCitjaGVja3N1 bT05NzgyMDJkZTUxNWNkYjAzYTU4ODU4NTljNTM4MzY2YmNhOGZkNzg3NjJjZTk4YjE3MmFjMmMw MTI2ZjgwMDNmCgpGcm9tIDY1NmFiYjZmYjAxYjFkYjFlYjM1YTdhYmZkYTdjMzE1MjQwMGYxZDcg TW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5j b20+CkRhdGU6IFR1ZSwgMTYgSnVuIDIwMjAgMTk6NDg6NTMgKzA2MDAKU3ViamVjdDogW1BBVENI IDQwLzYxXSBnZG06IHVwZGF0ZSB0byAzLjM2LjIuCgotLS0KIHNyY3BrZ3MvZ2RtL3RlbXBsYXRl IHwgMTAgKysrKystLS0tLQogMSBmaWxlIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgNSBkZWxl dGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dkbS90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ2Rt L3RlbXBsYXRlCmluZGV4IGJiNWI0ODY5MmQ0Li4xNmJjNDNmZDBlNyAxMDA2NDQKLS0tIGEvc3Jj cGtncy9nZG0vdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nZG0vdGVtcGxhdGUKQEAgLTEsMTEgKzEs MTEgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dkbScKIHBrZ25hbWU9Z2RtCi12ZXJzaW9uPTMu MzQuMQordmVyc2lvbj0zLjM2LjIKIHJldmlzaW9uPTEKIGJ1aWxkX2hlbHBlcj0iZ2lyIgogYnVp bGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9IiQodm9wdF9lbmFibGUgZ2ly IGludHJvc3BlY3Rpb24pCi0gLS1kaXNhYmxlLXNjaGVtYXMtY29tcGlsZSAtLWRpc2FibGUtc3Rh dGljIC0td2l0aC1kZWZhdWx0LXBhbS1jb25maWc9YXJjaAorIC0tZGlzYWJsZS1zdGF0aWMgLS13 aXRoLWRlZmF1bHQtcGFtLWNvbmZpZz1hcmNoCiAgLS13aXRoLWF0LXNwaS1yZWdpc3RyeWQtZGly ZWN0b3J5PS91c3IvbGliZXhlYyAtLXdpdGhvdXQtdGNwLXdyYXBwZXJzCiAgLS13aXRoLXNjcmVl bnNob3QtZGlyPS92YXIvbGliL2dkbS9ncmVldGVyIC0tc2JpbmRpcj0vdXNyL2JpbiAtLXdpdGhv dXQtcGx5bW91dGgKICAtLXdpdGgteGF1dGgtZGlyPS9ydW4vZ2RtIC0td2l0aC1waWQtZmlsZT0v cnVuL2dkbS9nZG0ucGlkCkBAIC0xMywxNSArMTMsMTUgQEAgY29uZmlndXJlX2FyZ3M9IiQodm9w dF9lbmFibGUgZ2lyIGludHJvc3BlY3Rpb24pCiBob3N0bWFrZWRlcGVuZHM9ImRjb25mIGdldHRl eHQgaXRzdG9vbCBwa2ctY29uZmlnIgogbWFrZWRlcGVuZHM9ImFjY291bnRzc2VydmljZS1kZXZl bCBlbG9naW5kLWRldmVsIGdldHRleHQtZGV2ZWwgZ2xpYi1kZXZlbAogIGlzby1jb2RlcyBsaWJT TS1kZXZlbCBsaWJjYW5iZXJyYS1kZXZlbCBuc3MtZGV2ZWwgcGFtLWRldmVsIHVwb3dlci1kZXZl bCIKLWRlcGVuZHM9Imdub21lLXNldHRpbmdzLWRhZW1vbiBnbm9tZS1zaGVsbCB4b3JnLXNlcnZl ciB4b3JnLXNlcnZlci14d2F5bGFuZAotIHhyZGIiCitkZXBlbmRzPSJnbm9tZS1zZXR0aW5ncy1k YWVtb24gZ25vbWUtc2hlbGwgZ25vbWUtc2Vzc2lvbiBnbm9tZS10aGVtZXMtZXh0cmEKKyBnc2V0 dGluZ3MtZGVza3RvcC1zY2hlbWFzIHhvcmctc2VydmVyIHhvcmctc2VydmVyLXh3YXlsYW5kIHhy ZGIiCiBjaGVja2RlcGVuZHM9ImNoZWNrLWRldmVsIgogc2hvcnRfZGVzYz0iR05PTUUgRGlzcGxh eSBNYW5hZ2VyIgogbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3Jn PiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly93aWtpLmdu b21lLm9yZy9Qcm9qZWN0cy9HRE0iCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1l fS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT1l ODVkZjY1N2FhOGQ5MzYxYWY0ZmIxMjIwMTRkOGYxMjNhOTNiZmU0NWE3NjYyZmJhMmIzNzNkODM5 ZGJkOGQzCitjaGVja3N1bT0zZjU2MWMxMGFlMmU1OTQyYjAzMDI2ZjAyYzBhYTdkODcxMmUzODI3 MDhiMTdhMDk3MDg3NGRmODE3NWI4M2E4CiAKIGNvbmZfZmlsZXM9IgogCS9ldGMvZ2RtL2N1c3Rv bS5jb25mCgpGcm9tIDkwZjdhNTIzMWU0OTE2YTE3MmZjNGI3MWZlMTZjNTA4ZDMwMGQ2NmYgTW9u IFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+ CkRhdGU6IFR1ZSwgMTYgSnVuIDIwMjAgMTk6NDk6MDAgKzA2MDAKU3ViamVjdDogW1BBVENIIDQx LzYxXSBidWRnaWUtZGVza3RvcDogcmVidWlsZCBhZ2FpbnN0CiBsaWJnbm9tZS1kZXNrdG9wLTMu c28uMTkKCi0tLQogLi4uL3BhdGNoZXMvTXV0dGVyLTMuMzUuOTAtc3VwcG9ydC0xOTE4LnBhdGNo IHwgMTI3MTMgKysrKysrKysrKysrKysrKwogc3JjcGtncy9idWRnaWUtZGVza3RvcC90ZW1wbGF0 ZSAgICAgICAgICAgICAgIHwgICAgIDkgKy0KIDIgZmlsZXMgY2hhbmdlZCwgMTI3MTggaW5zZXJ0 aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2J1ZGdp ZS1kZXNrdG9wL3BhdGNoZXMvTXV0dGVyLTMuMzUuOTAtc3VwcG9ydC0xOTE4LnBhdGNoCgpkaWZm IC0tZ2l0IGEvc3JjcGtncy9idWRnaWUtZGVza3RvcC9wYXRjaGVzL011dHRlci0zLjM1LjkwLXN1 cHBvcnQtMTkxOC5wYXRjaCBiL3NyY3BrZ3MvYnVkZ2llLWRlc2t0b3AvcGF0Y2hlcy9NdXR0ZXIt My4zNS45MC1zdXBwb3J0LTE5MTgucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw MDAwMDAwMDAuLmJmZjFiYWQwMzlmCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9idWRnaWUt ZGVza3RvcC9wYXRjaGVzL011dHRlci0zLjM1LjkwLXN1cHBvcnQtMTkxOC5wYXRjaApAQCAtMCww ICsxLDEyNzEzIEBACitGcm9tIDlkMDlhMWIxNWJiZjY2NzgwY2M4OWVmZjNjNGI4NGU2NjZiMGJm ZGEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBEYXZpZCBNb2hhbW1lZCA8Zm9zc2Zy ZWVkb21AdXNlcnMubm9yZXBseS5naXRodWIuY29tPgorRGF0ZTogVHVlLCAxOCBGZWIgMjAyMCAw Njo0MDoxMiArMDAwMAorU3ViamVjdDogW1BBVENIXSBNdXR0ZXIgMy4zNiBzdXBwb3J0ICgjMTkx OCkKKworKiBBZGQgbXV0dGVyIDMuMzUuMiBzdXBwb3J0CisKKyogTXV0dGVyIGNvbXBpbGVyIGZs YWdzIG5lZWRzIHRvIGJlIHNwZWNpZmllZCBiZWZvcmUgZGVwZW5kZW5jeSBjaGVja3MKKworKiBS ZWdlbmVyYXRlIHZhcGkgZm9yIDMuMzUuOTAKKworT3JpZ2luOiBodHRwczovL2dpdGh1Yi5jb20v c29sdXMtcHJvamVjdC9idWRnaWUtZGVza3RvcC9jb21taXRzLzlkMDlhMWIxNWIKKy0tLQorIHNy Yy93bS9tZXNvbi5idWlsZCAgICAgICAgICAgICAgICB8ICAgMTIgKy0KKyBzcmMvd20vd20udmFs YSAgICAgICAgICAgICAgICAgICAgfCAgIDE2ICstCisgdmFwaS9DbHV0dGVyLTYubWV0YWRhdGEg ICAgICAgICAgIHwgIDIwNCArCisgdmFwaS9Db2dsLTYubWV0YWRhdGEgICAgICAgICAgICAgIHwg ICAyNyArCisgdmFwaS9NZXRhLTYubWV0YWRhdGEgICAgICAgICAgICAgIHwgICA4MCArCisgdmFw aS9ncmFwaGVuZS1nb2JqZWN0LTEuMC52YXBpICAgIHwgIDY5MSArKysKKyB2YXBpL2xpYm11dHRl ci02LmRlcHMgICAgICAgICAgICAgfCAgICA2ICsKKyB2YXBpL2xpYm11dHRlci02LnZhcGkgICAg ICAgICAgICAgfCAxNDc1ICsrKysrCisgdmFwaS9tdXR0ZXItY2x1dHRlci02LWN1c3RvbS52YWxh IHwgIDE0NyArCisgdmFwaS9tdXR0ZXItY2x1dHRlci02LmRlcHMgICAgICAgIHwgICAgNCArCisg dmFwaS9tdXR0ZXItY2x1dHRlci02LnZhcGkgICAgICAgIHwgODY4NyArKysrKysrKysrKysrKysr KysrKysrKysrKysrKworIHZhcGkvbXV0dGVyLWNvZ2wtNi1jdXN0b20udmFsYSAgICB8ICAxMjUg KworIHZhcGkvbXV0dGVyLWNvZ2wtNi5kZXBzICAgICAgICAgICB8ICAgIDEgKworIHZhcGkvbXV0 dGVyLWNvZ2wtNi52YXBpICAgICAgICAgICB8IDEwNzcgKysrKworIDE0IGZpbGVzIGNoYW5nZWQs IDEyNTQ5IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisgY3JlYXRlIG1vZGUgMTAwNjQ0 IHZhcGkvQ2x1dHRlci02Lm1ldGFkYXRhCisgY3JlYXRlIG1vZGUgMTAwNjQ0IHZhcGkvQ29nbC02 Lm1ldGFkYXRhCisgY3JlYXRlIG1vZGUgMTAwNjQ0IHZhcGkvTWV0YS02Lm1ldGFkYXRhCisgY3Jl YXRlIG1vZGUgMTAwNjQ0IHZhcGkvZ3JhcGhlbmUtZ29iamVjdC0xLjAudmFwaQorIGNyZWF0ZSBt b2RlIDEwMDY0NCB2YXBpL2xpYm11dHRlci02LmRlcHMKKyBjcmVhdGUgbW9kZSAxMDA2NDQgdmFw aS9saWJtdXR0ZXItNi52YXBpCisgY3JlYXRlIG1vZGUgMTAwNjQ0IHZhcGkvbXV0dGVyLWNsdXR0 ZXItNi1jdXN0b20udmFsYQorIGNyZWF0ZSBtb2RlIDEwMDY0NCB2YXBpL211dHRlci1jbHV0dGVy LTYuZGVwcworIGNyZWF0ZSBtb2RlIDEwMDY0NCB2YXBpL211dHRlci1jbHV0dGVyLTYudmFwaQor IGNyZWF0ZSBtb2RlIDEwMDY0NCB2YXBpL211dHRlci1jb2dsLTYtY3VzdG9tLnZhbGEKKyBjcmVh dGUgbW9kZSAxMDA2NDQgdmFwaS9tdXR0ZXItY29nbC02LmRlcHMKKyBjcmVhdGUgbW9kZSAxMDA2 NDQgdmFwaS9tdXR0ZXItY29nbC02LnZhcGkKKworZGlmZiAtLWdpdCBhL3NyYy93bS9tZXNvbi5i dWlsZCBiL3NyYy93bS9tZXNvbi5idWlsZAoraW5kZXggZTM5Yjg2NzguLjRiY2MwZjllIDEwMDY0 NAorLS0tIGEvc3JjL3dtL21lc29uLmJ1aWxkCisrKysgYi9zcmMvd20vbWVzb24uYnVpbGQKK0BA IC0yNSwxMSArMjUsMTkgQEAgaWYgbm90IGRlcF9tdXR0ZXIuZm91bmQoKQorICAgICAgICAgbWVz c2FnZSgnVXNpbmcgbmV3IGxpYm11dHRlci00IEFCSSBmcm9tIEdOT01FIDMuMzInKQorICAgICAg ICAgdmFwaV9tdXR0ZXIgPSAnbGlibXV0dGVyLTQnCisgICAgIGVsc2UKKy0gICAgICAgIGRlcF9t dXR0ZXIgPSBkZXBlbmRlbmN5KCdsaWJtdXR0ZXItNScsIHZlcnNpb246IGdub21lX21pbmltdW1f dmVyc2lvbikKKysgICAgICAgIGRlcF9tdXR0ZXIgPSBkZXBlbmRlbmN5KCdsaWJtdXR0ZXItNScs IHZlcnNpb246IGdub21lX21pbmltdW1fdmVyc2lvbiwgcmVxdWlyZWQ6IGZhbHNlKQorKyAgICAg ICAgYnVkZ2llX3dtX3N0YXR1c192YWxhX2FyZ3MgKz0gWyctRCcsICdIQVZFX01VVFRFUl81J10K KyAgICAgICAgIGlmIGRlcF9tdXR0ZXIuZm91bmQoKQorICAgICAgICAgICAgIG1lc3NhZ2UoJ1Vz aW5nIG5ldyBsaWJtdXR0ZXItNSBBQkkgZnJvbSBHTk9NRSAzLjM0JykKKyAgICAgICAgICAgICB2 YXBpX211dHRlciA9ICdsaWJtdXR0ZXItNScKKy0gICAgICAgICAgICBidWRnaWVfd21fc3RhdHVz X3ZhbGFfYXJncyArPSBbJy1EJywgJ0hBVkVfTVVUVEVSXzUnXQorKyAgICAgICAgZWxzZQorKyAg ICAgICAgICAgIGRlcF9tdXR0ZXIgPSBkZXBlbmRlbmN5KCdsaWJtdXR0ZXItNicsIHZlcnNpb246 IGdub21lX21pbmltdW1fdmVyc2lvbikKKysgICAgICAgICAgICBidWRnaWVfd21fc3RhdHVzX3Zh bGFfYXJncyArPSBbJy1EJywgJ0hBVkVfTVVUVEVSXzYnXQorKyAgICAgICAgICAgIGlmIGRlcF9t dXR0ZXIuZm91bmQoKQorKyAgICAgICAgICAgICAgICBkZXBfZ3JhcGhlbmUgPSBkZXBlbmRlbmN5 KCdncmFwaGVuZS1nb2JqZWN0LTEuMCcsIHZlcnNpb246ICc+PSAxLjEwJykKKysgICAgICAgICAg ICAgICAgbWVzc2FnZSgnVXNpbmcgbmV3IGxpYm11dHRlci02IEFCSSBmcm9tIEdOT01FIDMuMzYn KQorKyAgICAgICAgICAgICAgICB2YXBpX211dHRlciA9ICdsaWJtdXR0ZXItNicKKysgICAgICAg ICAgICBlbmRpZgorICAgICAgICAgZW5kaWYKKyAgICAgZW5kaWYKKyBlbmRpZgorZGlmZiAtLWdp dCBhL3NyYy93bS93bS52YWxhIGIvc3JjL3dtL3dtLnZhbGEKK2luZGV4IGZlZTg5NDQzLi5iYjQ2 Y2QwNiAxMDA2NDQKKy0tLSBhL3NyYy93bS93bS52YWxhCisrKysgYi9zcmMvd20vd20udmFsYQor QEAgLTEzNyw4ICsxMzcsMTMgQEAgcHVibGljIGNsYXNzIEJ1ZGdpZVdNIDogTWV0YS5QbHVnaW4K KyAgICAgcHVibGljIHN0YXRpYyBzdHJpbmdbXT8gb2xkX2FyZ3M7CisgICAgIHB1YmxpYyBzdGF0 aWMgYm9vbCB3YXlsYW5kID0gZmFsc2U7CisgCisrI2lmIEhBVkVfTVVUVEVSXzYKKysgICAgc3Rh dGljIEdyYXBoZW5lLlBvaW50IFBWX0NFTlRFUjsKKysgICAgc3RhdGljIEdyYXBoZW5lLlBvaW50 IFBWX05PUk07CisrI2Vsc2UKKyAgICAgc3RhdGljIENsdXR0ZXIuUG9pbnQgUFZfQ0VOVEVSOwor ICAgICBzdGF0aWMgQ2x1dHRlci5Qb2ludCBQVl9OT1JNOworKyNlbmRpZgorIAorICAgICBwcml2 YXRlIE1ldGEuQmFja2dyb3VuZEdyb3VwPyBiYWNrZ3JvdW5kX2dyb3VwOworIAorQEAgLTE3MSwx MCArMTc2LDE1IEBAIHB1YmxpYyBjbGFzcyBCdWRnaWVXTSA6IE1ldGEuUGx1Z2luCisgICAgICAg ICAgICAgbGljZW5zZSA9ICJHUEwtMi4wIiwKKyAgICAgICAgICAgICBkZXNjcmlwdGlvbiA9ICJC dWRnaWUgV2luZG93IE1hbmFnZXIiCisgICAgICAgICB9OworKyNpZiBIQVZFX01VVFRFUl82Cisr ICAgICAgICBQVl9DRU5URVIgPSBHcmFwaGVuZS5Qb2ludCgpOworKyAgICAgICAgUFZfTk9STSA9 IEdyYXBoZW5lLlBvaW50KCk7CisrI2Vsc2UKKyAgICAgICAgIFBWX0NFTlRFUiA9IENsdXR0ZXIu UG9pbnQuYWxsb2MoKTsKKysgICAgICAgIFBWX05PUk0gPSBDbHV0dGVyLlBvaW50LmFsbG9jKCk7 CisrI2VuZGlmCisgICAgICAgICBQVl9DRU5URVIueCA9IDAuNWY7CisgICAgICAgICBQVl9DRU5U RVIueSA9IDAuNWY7CistICAgICAgICBQVl9OT1JNID0gQ2x1dHRlci5Qb2ludC5hbGxvYygpOwor ICAgICAgICAgUFZfTk9STS54ID0gMC4wZjsKKyAgICAgICAgIFBWX05PUk0ueSA9IDAuMGY7Cisg ICAgIH0KK0BAIC0xMDAxLDcgKzEwMTEsMTEgQEAgcHVibGljIGNsYXNzIEJ1ZGdpZVdNIDogTWV0 YS5QbHVnaW4KKyAgICAgICAgIHRpbGVfcHJldmlldy5zZXQoInNjYWxlLXgiLCBOT1RJRklDQVRJ T05fTUFQX1NDQUxFX1gsICJzY2FsZS15IiwgTk9USUZJQ0FUSU9OX01BUF9TQ0FMRV9ZLAorICAg ICAgICAgICAgICJwaXZvdC1wb2ludCIsIFBWX0NFTlRFUik7CisgCisrI2lmIEhBVkVfTVVUVEVS XzYKKysgICAgICAgIC8vdGlsZV9wcmV2aWV3Lmxvd2VyKHdpbl9hY3Rvcik7CisrI2Vsc2UKKyAg ICAgICAgIHRpbGVfcHJldmlldy5sb3dlcih3aW5fYWN0b3IpOworKyNlbmRpZgorICAgICAgICAg dGlsZV9wcmV2aWV3LnRpbGVfcmVjdCA9IHRpbGVfcmVjdDsKKyAKKyAgICAgICAgIHRpbGVfcHJl dmlldy5zaG93KCk7CitkaWZmIC0tZ2l0IGEvdmFwaS9DbHV0dGVyLTYubWV0YWRhdGEgYi92YXBp L0NsdXR0ZXItNi5tZXRhZGF0YQorbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAw Li44YzI2YTEyMgorLS0tIC9kZXYvbnVsbAorKysrIGIvdmFwaS9DbHV0dGVyLTYubWV0YWRhdGEK K0BAIC0wLDAgKzEsMjA0IEBACisrLy8gTm9uIG1pbmktb2JqZWN0CisrQWN0b3JCb3ggc3RydWN0 CisrQ29sb3Igc3RydWN0CisrRm9nIHN0cnVjdAorK0dlb21ldHJ5IHN0cnVjdAorK0tub3Qgc3Ry dWN0CisrUGF0aE5vZGUgc3RydWN0CisrUGVyc3BlY3RpdmUgc3RydWN0CisrVW5pdHMgc3RydWN0 CisrVmVydGV4IHN0cnVjdAorKworKyoucmVmIHVub3duZWQKKysKKytpbml0LmFyZ3YgdW5vd25l ZAorK2luaXRfd2l0aF9hcmdzCisrCS5hcmd2IHVub3duZWQKKytBY3RvcgorKwkuYXBwbHlfdHJh bnNmb3JtLm1hdHJpeCByZWYKKysJLmdldF9hYnNfYWxsb2NhdGlvbl92ZXJ0aWNlcy52ZXJ0cyBv dXQ9ZmFsc2UKKysJLmdldF9hbGxvY2F0aW9uX3ZlcnRpY2VzLnZlcnRzIG91dD1mYWxzZQorK0Nh bnZhcworKwkubmV3IHN5bWJvbF90eXBlPSJjb25zdHJ1Y3RvciIKKytFdmVudC50eXBlI21ldGhv ZCBuYW1lPSJnZXRfdHlwZSIKKytJbWFnZQorKwkubmV3IHN5bWJvbF90eXBlPSJjb25zdHJ1Y3Rv ciIKKysKKysvLyA/Pz8KKytBY3Rvci5oYXNfcG9pbnRlciNtZXRob2QgbmFtZT0iZ2V0X2hhc19w b2ludGVyIgorK0luaXRFcnJvciBlcnJvcmRvbWFpbj1mYWxzZQorKworKy8vIE5vdCBhbGwgYmFj a2luZyBzeW1ib2xzIGFyZSBkZXByZWNhdGVkCisrQWN0b3IucGljayBkZXByZWNhdGVkPWZhbHNl CisrCisrLy8gTnVsbGFibGUgcmV0dXJuIHZhbHVlcworK0FjdG9yCisrCS5nZXRfcGFyZW50IG51 bGxhYmxlCisrdmFsdWVfZ2V0X2NvbG9yIG51bGxhYmxlCisrCisrLy8gbWV0aG9kL3ZpcnR1YWwt bWV0aG9kL3NpZ25hbCBkb24ndCBtYXRjaAorK0FjdG9yCisrCS5ldmVudCNtZXRob2QgbmFtZT0i ZW1pdF9ldmVudCIKKysJLmdldF9wYWludF92b2x1bWUjbWV0aG9kIHNraXAKKysJLnF1ZXVlX3Jl ZHJhdyNzaWduYWwgc2tpcAorKwkucXVldWVfcmVkcmF3I3ZpcnR1YWxfbWV0aG9kIHNraXAKKytD b250YWluZXIKKysJLmFkZF9hY3RvciBza2lwPWZhbHNlCisrVGV4dAorKwkuYWN0aXZhdGUjbWV0 aG9kIG5hbWU9InRyeV9hY3RpdmF0ZSIKKysJLmluc2VydF90ZXh0I3NpZ25hbCBza2lwCisrVGV4 dEJ1ZmZlci5nZXRfdGV4dCN2aXJ0dWFsX21ldGhvZCBuYW1lPSJnZXRfdGV4dF93aXRoX2xlbmd0 aCIKKysKKysvLyB2aXJ0dWFsL2Fic3RyYWN0IGRpc3RpbmN0aW9uCisrQ29udGFpbmVyCisrCS5s b3dlciB2aXJ0dWFsCisrCS5yYWlzZSB2aXJ0dWFsCisrCS4qX2NoaWxkX21ldGEjdmlydHVhbF9t ZXRob2QgdmlydHVhbAorKwkuZm9yZWFjaF93aXRoX2ludGVybmFscyN2aXJ0dWFsX21ldGhvZCB2 aXJ0dWFsCisrCisrLy8gRGVmYXVsdCB2YWx1ZXMKKytDb250YWluZXIKKysJLmxvd2VyLnNpYmxp bmcgbnVsbGFibGUgZGVmYXVsdD1udWxsCisrCS5yYWlzZS5zaWJsaW5nIG51bGxhYmxlIGRlZmF1 bHQ9bnVsbAorK1N0YWdlLnJlYWRfcGl4ZWxzCisrCS53aWR0aCBkZWZhdWx0PS0xCisrCS5oZWln aHQgZGVmYXVsdD0tMQorK1RleHQKKysJLnBvc2l0aW9uX3RvX2Nvb3Jkcy5saW5lX2hlaWdodCBk ZWZhdWx0PW51bGwKKysKKysvLyBSZXBhcmVudGVkIGZ1bmNzIG1ldGhvZHMgY2FuJ3QgYmUgaW5z dGFuY2UgbWV0aG9kcworK2ZlYXR1cmVfYXZhaWxhYmxlIHNraXAKKytmZWF0dXJlX2dldF9hbGwg c2tpcAorKworKy8vIFNraXBwZWQgYnkgZy1pIGZvciB1bmtub3duIHJlYXNvbnMKKytMYXlvdXRN YW5hZ2VyCisrCS5jcmVhdGVfY2hpbGRfbWV0YSBza2lwPWZhbHNlCisrCisrLy8gVmFyaWFkaWMg YXJndW1lbnRzCisrQWN0b3IKKysJLmFuaW1hdGUgc2tpcD1mYWxzZQorKwkuYW5pbWF0ZV93aXRo X2FscGhhIHNraXA9ZmFsc2UKKysJLmFuaW1hdGVfd2l0aF90aW1lbGluZSBza2lwPWZhbHNlCisr Qm94CisrCS5wYWNrIHNraXA9ZmFsc2UKKysJLnBhY2tfYWZ0ZXIgc2tpcD1mYWxzZQorKwkucGFj a19hdCBza2lwPWZhbHNlCisrCS5wYWNrX2JlZm9yZSBza2lwPWZhbHNlCisrQ29udGFpbmVyCisr CS5hZGRfdmFsaXN0IHNraXA9ZmFsc2UKKysJLmNoaWxkX2dldCBza2lwPWZhbHNlCisrCS5jaGls ZF9zZXQgc2tpcD1mYWxzZQorKwkucmVtb3ZlIHNraXA9ZmFsc2UKKysJLnJlbW92ZV92YWxpc3Qg c2tpcD1mYWxzZQorK0ludGVydmFsCisrCS5uZXcgc2tpcD1mYWxzZQorKwkuZ2V0X2ludGVydmFs IHNraXA9ZmFsc2UKKysJLnNldF9maW5hbCBza2lwPWZhbHNlCisrCS5zZXRfaW5pdGlhbCBza2lw PWZhbHNlCisrCS5zZXRfaW50ZXJ2YWwgc2tpcD1mYWxzZQorK0xheW91dE1hbmFnZXIKKysJLmNo aWxkX2dldCBza2lwPWZhbHNlCisrCS5jaGlsZF9zZXQgc2tpcD1mYWxzZQorK1NjcmlwdAorKwku Z2V0X29iamVjdHMgc2tpcD1mYWxzZQorKworKy8vIENoYW5naW5nIGVycm9yIGRvbWFpbnMKKytU ZXh0dXJlCisrCS5uZXdfZnJvbV9maWxlIHRocm93cz0iQ2x1dHRlci5UZXh0dXJlRXJyb3IiCisr CisrLy8gU2tpcHBlZCB1cHN0cmVhbSBmb3IgdW5rbm93biByZWFzb25zCisrQWxwaGEucmVnaXN0 ZXJfZnVuYyBza2lwPWZhbHNlCisrSW50ZXJ2YWwucmVnaXN0ZXJfcHJvZ3Jlc3NfZnVuYyBza2lw PWZhbHNlCisrZ2V0X29wdGlvbl9ncm91cCBza2lwPWZhbHNlCisrZ2V0X29wdGlvbl9ncm91cF93 aXRob3V0X2luaXQgc2tpcD1mYWxzZQorK3RocmVhZHNfYWRkX2lkbGUgc2tpcD1mYWxzZQorK3Ro cmVhZHNfYWRkX2lkbGVfZnVsbCBza2lwPWZhbHNlCisrdGhyZWFkc19hZGRfdGltZW91dCBza2lw PWZhbHNlCisrdGhyZWFkc19hZGRfdGltZW91dF9mdWxsIHNraXA9ZmFsc2UKKysKKysvLyBzdHJ1 Y3QvY2xhc3MgY29uZnVzaW9uCisrQWN0b3JCb3gKKysJLm5ldyBza2lwCisrCS5mcm9tX3ZlcnRp Y2VzIHNraXAKKytVbml0cy5mcm9tXyogc2tpcAorK0NvbG9yCisrCS5uZXcgc2tpcAorK1ZlcnRl eC5uZXcgc2tpcAorKworKy8vIENsYXNzIG1ldGhvZHMKKytjb250YWluZXJfY2xhc3NfZmluZF9j aGlsZF9wcm9wZXJ0eSBza2lwCisrY29udGFpbmVyX2NsYXNzX2xpc3RfY2hpbGRfcHJvcGVydGll cyBza2lwCisrCisrLy8gTW92ZSBzeW1ib2xzCisrZ2V0X2FjdG9yX2J5X2dpZCBwYXJlbnQ9IkNs dXR0ZXIuQWN0b3IiIG5hbWU9ImdldF9ieV9naWQiCisrdW5pdHNfZnJvbV8qIHNraXAKKysKKysv LyBDbGFzc2VzIG1hcmtlZCBhcyBvdXQgYnV0IG5vdCBkb3VibGUgcHRyCisrQWN0b3IKKysJLmdl dF9tYXJnaW4ubWFyZ2luIG91dD1mYWxzZQorK0RyYWdBY3Rpb24KKysJLmdldF9kcmFnX2FyZWEu ZHJhZ19hcmVhIG91dD1mYWxzZQorK0lucHV0RGV2aWNlCisrCS5nZXRfY29vcmRzLnBvaW50IG91 dD1mYWxzZQorK1JlY3QKKysJLmdldF9jZW50ZXIuY2VudGVyIG91dD1mYWxzZQorKwkuaW50ZXJz ZWN0aW9uLnJlcyBvdXQ9ZmFsc2UKKysJLnVuaW9uLnJlcyBvdXQ9ZmFsc2UKKytUaW1lbGluZQor KwkuZ2V0X2N1YmljX2Jlemllcl9wcm9ncmVzcy5jXyogb3V0PWZhbHNlCisrWm9vbUFjdGlvbgor KwkuZ2V0X2ZvY2FsX3BvaW50LnBvaW50IG91dD1mYWxzZQorKwkuZ2V0X3RyYW5zZm9ybWVkX2Zv Y2FsX3BvaW50LnBvaW50IG91dD1mYWxzZQorKworKy8vIFN0cnVjdCByZXR1cm4gdmFsdWVzCisr Y29sb3JfZ2V0X3N0YXRpYyBudWxsYWJsZQorKworKy8vIFJlbW92ZSBmb3IgY2x1dHRlci0yLjAK KysvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCisrCisrU3RhZ2UKKysgCS5ldmVudCBuYW1lPSJl bWl0X2V2ZW50IgorKworKy8vICpFdmVudCBzaG91bGQgYmUgY29tcGFjdCBjbGFzc2VzIGRlcml2 ZWQgZnJvbSBDbHV0dGVyLkV2ZW50CisrRXZlbnQudHlwZSBza2lwPWZhbHNlCisrQW55RXZlbnQg c3RydWN0PWZhbHNlIGJhc2VfdHlwZT0iQ2x1dHRlci5FdmVudCIKKytCdXR0b25FdmVudCBzdHJ1 Y3Q9ZmFsc2UgYmFzZV90eXBlPSJDbHV0dGVyLkV2ZW50IgorK0Nyb3NzaW5nRXZlbnQgc3RydWN0 PWZhbHNlIGJhc2VfdHlwZT0iQ2x1dHRlci5FdmVudCIKKytLZXlFdmVudCBzdHJ1Y3Q9ZmFsc2Ug YmFzZV90eXBlPSJDbHV0dGVyLkV2ZW50IgorK01vdGlvbkV2ZW50IHN0cnVjdD1mYWxzZSBiYXNl X3R5cGU9IkNsdXR0ZXIuRXZlbnQiCisrU2Nyb2xsRXZlbnQgc3RydWN0PWZhbHNlIGJhc2VfdHlw ZT0iQ2x1dHRlci5FdmVudCIKKytTdGFnZVN0YXRlRXZlbnQgc3RydWN0PWZhbHNlIGJhc2VfdHlw ZT0iQ2x1dHRlci5FdmVudCIKKytUb3VjaEV2ZW50IHN0cnVjdD1mYWxzZSBiYXNlX3R5cGU9IkNs dXR0ZXIuRXZlbnQiCisrVG91Y2hwYWRQaW5jaEV2ZW50IHN0cnVjdD1mYWxzZSBiYXNlX3R5cGU9 IkNsdXR0ZXIuRXZlbnQiCisrVG91Y2hwYWRTd2lwZUV2ZW50IHN0cnVjdD1mYWxzZSBiYXNlX3R5 cGU9IkNsdXR0ZXIuRXZlbnQiCisrCisrLy8gS2V5c3ltcyB1c2VkIHRvIGJlIENMVVRURVJfWCBp bnN0ZWFkIG9mIENMVVRURVJfS0VZX1gKKysqI2NvbnN0YW50IHNraXAKKytDT0dMIHNraXA9ZmFs c2UKKytDVVJSRU5UX1RJTUUgc2tpcD1mYWxzZQorK0ZMQVZPVVIgc2tpcD1mYWxzZQorK1BBVEhf UkVMQVRJVkUgc2tpcD1mYWxzZQorK1BSSU9SSVRZX1JFRFJBVyBza2lwPWZhbHNlCisrCisrLy8g Q2x1dHRlciBkZXZzIGRvbid0IGxpa2UgdXMgY3JlYXRpbmcgbmVzdGVkIG5hbWVzcGFjZXMKKyt2 YWx1ZV8qIG5hbWU9InZhbHVlXyguKykiIHBhcmVudD0iQ2x1dHRlci5WYWx1ZSIKKyt0aHJlYWRz XyogbmFtZT0idGhyZWFkc18oLispIiBwYXJlbnQ9IkNsdXR0ZXIuVGhyZWFkcyIKKyt0aHJlYWRz X2FkZF9pZGxlIG5hbWU9ImFkZCIgcGFyZW50PSJDbHV0dGVyLlRocmVhZHMuSWRsZSIKKyt0aHJl YWRzX2FkZF9pZGxlX2Z1bGwgbmFtZT0iYWRkX2Z1bGwiIHBhcmVudD0iQ2x1dHRlci5UaHJlYWRz LklkbGUiCisrdGhyZWFkc19hZGRfdGltZW91dCBuYW1lPSJhZGQiIHBhcmVudD0iQ2x1dHRlci5U aHJlYWRzLlRpbWVvdXQiCisrdGhyZWFkc19hZGRfdGltZW91dF9mdWxsIG5hbWU9ImFkZF9mdWxs IiBwYXJlbnQ9IkNsdXR0ZXIuVGhyZWFkcy5UaW1lb3V0IgorKworKy8vIEJhY2t3YXJkcyBjb21w YXRpYmlsaXR5CisrQ29sb3IuYWxsb2Mgc3ltYm9sX3R5cGU9ImZ1bmN0aW9uIgorK1BvaW50LmFs bG9jIHN5bWJvbF90eXBlPSJmdW5jdGlvbiIKKytSZWN0LmFsbG9jIHN5bWJvbF90eXBlPSJmdW5j dGlvbiIKKytTaXplLmFsbG9jIHN5bWJvbF90eXBlPSJmdW5jdGlvbiIKKytWZXJ0ZXguYWxsb2Mg c3ltYm9sX3R5cGU9ImZ1bmN0aW9uIgorKworK0JpbkFsaWdubWVudCBkZXByZWNhdGVkPWZhbHNl IGRlcHJlY2F0ZWRfc2luY2U9bnVsbAorK0JpbkFsaWdubWVudC4qIGRlcHJlY2F0ZWQKKytCaW5B bGlnbm1lbnQuc3RhcnQgZGVwcmVjYXRlZD1mYWxzZQorK0JpbkxheW91dC5uZXcuKl9hbGlnbiBk ZWZhdWx0PUNsdXR0ZXIuQmluQWxpZ25tZW50LlNUQVJUCisrCisrLy8gUG9zc2libHkga2VlcAor K0tFWV8qIHNraXA9ZmFsc2UgbmFtZT0iS0VZXyguKykiIHR5cGU9InVpbnQiIHBhcmVudD0iQ2x1 dHRlci5LZXkiCitkaWZmIC0tZ2l0IGEvdmFwaS9Db2dsLTYubWV0YWRhdGEgYi92YXBpL0NvZ2wt Ni5tZXRhZGF0YQorbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAwLi4wOTJiNWUy OQorLS0tIC9kZXYvbnVsbAorKysrIGIvdmFwaS9Db2dsLTYubWV0YWRhdGEKK0BAIC0wLDAgKzEs MjcgQEAKKytDb2dsIGNoZWFkZXJfZmlsZW5hbWU9ImNvZ2wvY29nbC5oIgorKworK0NvbG9yIHN0 cnVjdAorKyAgLm5ldyBza2lwCisrICAuZnJlZSBza2lwCisrCisrY3JlYXRlX3Byb2dyYW0gc2tp cAorK2NyZWF0ZV9zaGFkZXIgc2tpcAorKworKworK2lzX2JpdG1hcCBza2lwCisraXNfbWF0ZXJp YWwgc2tpcAorK2lzX29mZnNjcmVlbiBza2lwCisraXNfcHJvZ3JhbSBza2lwCisraXNfc2hhZGVy IHNraXAKKytpc190ZXh0dXJlIHNraXAKKytpc192ZXJ0ZXhfYnVmZmVyIHNraXAKKysKKytNYXRy aXggc3RydWN0CisrICAuZ2V0X2FycmF5IGFycmF5PXRydWUgYXJyYXlfbGVuZ3RoX2lkeD0tMQor KyAgLmdldF9pbnZlcnNlLmludmVyc2Ugb3V0PXRydWUKKysgIC5tdWx0aXBseSBza2lwCisrICAu aW5pdF9mcm9tX2FycmF5IHNraXAKKysgIC5pbml0X2lkZW50aXR5IHNraXAKKysgIC50cmFuc2Zv cm1fcG9pbnQuKiByZWY9dHJ1ZQorKworK3Byb2dyYW1fKiBza2lwCitkaWZmIC0tZ2l0IGEvdmFw aS9NZXRhLTYubWV0YWRhdGEgYi92YXBpL01ldGEtNi5tZXRhZGF0YQorbmV3IGZpbGUgbW9kZSAx MDA2NDQKK2luZGV4IDAwMDAwMDAwLi4xZDk4NDc3OAorLS0tIC9kZXYvbnVsbAorKysrIGIvdmFw aS9NZXRhLTYubWV0YWRhdGEKK0BAIC0wLDAgKzEsODAgQEAKKytCYWNrZW5kIGNoZWFkZXJfZmls ZW5hbWU9Im1ldGEvbWV0YS1iYWNrZW5kLmgiCisrQmFja2dyb3VuZCBjaGVhZGVyX2ZpbGVuYW1l PSJtZXRhL21ldGEtYmFja2dyb3VuZC5oIgorK0JhY2tncm91bmRBY3RvciBjaGVhZGVyX2ZpbGVu YW1lPSJtZXRhL21ldGEtYmFja2dyb3VuZC1hY3Rvci5oIgorK0JhY2tncm91bmRHcm91cCBjaGVh ZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtYmFja2dyb3VuZC1ncm91cC5oIgorK0JhY2tncm91bmRJ bWFnZSBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtYmFja2dyb3VuZC1pbWFnZS5oIgorK0Jh Y2tncm91bmRJbWFnZUNhY2hlIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1iYWNrZ3JvdW5k LWltYWdlLmgiCisrQmFycmllciBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL2JhcnJpZXIuaCIKKytC YXJyaWVyRXZlbnQgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9iYXJyaWVyLmgiCisrQ2xvc2VEaWFs b2cgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLWNsb3NlLWRpYWxvZy5oIgorK0N1cnNvclRy YWNrZXIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLWN1cnNvci10cmFja2VyLmgiCisrRGlz cGxheSBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL2Rpc3BsYXkuaCIKKytEbmQgY2hlYWRlcl9maWxl bmFtZT0ibWV0YS9tZXRhLWRuZC5oIgorK0lkbGVNb25pdG9yIGNoZWFkZXJfZmlsZW5hbWU9Im1l dGEvbWV0YS1pZGxlLW1vbml0b3IuaCIKKytJbmhpYml0U2hvcnRjdXRzRGlhbG9nIGNoZWFkZXJf ZmlsZW5hbWU9Im1ldGEvbWV0YS1pbmhpYml0LXNob3J0Y3V0cy1kaWFsb2cuaCIKKytMYXVuY2hD b250ZXh0IGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1sYXVuY2gtY29udGV4dC5oIgorK01l dGEgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tYWluLmgiCisrTW9uaXRvck1hbmFnZXIgY2hlYWRl cl9maWxlbmFtZT0ibWV0YS9tZXRhLW1vbml0b3ItbWFuYWdlci5oIgorK1ByZWZlcmVuY2UgY2hl YWRlcl9maWxlbmFtZT0ibWV0YS9wcmVmcy5oIgorK1JlbW90ZUFjY2Vzc0NvbnRyb2xsZXIgY2hl YWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLXJlbW90ZS1hY2Nlc3MtY29udHJvbGxlci5oIgorK1Jl bW90ZUFjY2Vzc0hhbmRsZSBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtcmVtb3RlLWFjY2Vz cy1jb250cm9sbGVyLmgiCisrU2V0dGluZ3MgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLXNl dHRpbmdzLmgiCisrU2hhZG93RmFjdG9yeSBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtc2hh ZG93LWZhY3RvcnkuaCIKKytTaGFwZWRUZXh0dXJlIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0 YS1zaGFwZWQtdGV4dHVyZS5oIgorK1NvdW5kUGxheWVyIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEv bWV0YS1zb3VuZC1wbGF5ZXIuaCIKKytTdGFnZSBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEt c3RhZ2UuaCIKKytTdGFydHVwTm90aWZpY2F0aW9uIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0 YS1zdGFydHVwLW5vdGlmaWNhdGlvbi5oIgorK1RoZW1lIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEv dGhlbWUuaCIKKytXaW5kb3cgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS93aW5kb3cuaCIKKytXaW5k b3dBY3RvciBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtd2luZG93LWFjdG9yLmgiCisrV2lu ZG93R3JvdXAgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLXdpbmRvdy1ncm91cC5oIgorK1dp bmRvd1NoYXBlIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS13aW5kb3ctc2hhcGUuaCIKKytX b3Jrc3BhY2UgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS93b3Jrc3BhY2UuaCIKKytXb3Jrc3BhY2VN YW5hZ2VyIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS13b3Jrc3BhY2UtbWFuYWdlci5oIgor K1gxMURpc3BsYXkgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLXgxMS1kaXNwbGF5LmgiCisr UmVjdGFuZ2xlIHN0cnVjdAorK1BsdWdpbiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtcGx1 Z2luLmgiCisrUGx1Z2luSW5mbyBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtcGx1Z2luLmgi CisrcHJlZnNfKiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3ByZWZzLmgiIHBhcmVudD0iTWV0YS5Q cmVmcyIKKythZGRfdmVyYm9zZV90b3BpYyBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hlYWRlcl9maWxl bmFtZT0ibWV0YS91dGlsLmgiCisreDExX2Vycm9yX3RyYXBfcG9wIHBhcmVudD0iTWV0YS5VdGls IiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIKKyt4MTFfZXJyb3JfdHJhcF9wdXNoIHBh cmVudD0iTWV0YS5VdGlsIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIKKyt4MTFfZXJy b3JfdHJhcF9wb3Bfd2l0aF9yZXR1cm4gcGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5h bWU9Im1ldGEvdXRpbC5oIgorK2V4dGVybmFsX2JpbmRpbmdfbmFtZV9mb3JfYWN0aW9uIHBhcmVu dD0iTWV0YS5VdGlsIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIKKytnZXRfbG9jYWxl X2RpcmVjdGlvbiBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS91dGls LmgiCisrZ3Jhdml0eV90b19zdHJpbmcgcGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5h bWU9Im1ldGEvdXRpbC5oIgorK2lzX2RlYnVnZ2luZyBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hlYWRl cl9maWxlbmFtZT0ibWV0YS91dGlsLmgiCisraXNfc3luY2luZyBwYXJlbnQ9Ik1ldGEuVXRpbCIg Y2hlYWRlcl9maWxlbmFtZT0ibWV0YS91dGlsLmgiCisraXNfdmVyYm9zZSBwYXJlbnQ9Ik1ldGEu VXRpbCIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS91dGlsLmgiCisraXNfd2F5bGFuZF9jb21wb3Np dG9yIHBhcmVudD0iTWV0YS5VdGlsIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIKKyts YXRlcl9hZGQgcGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvdXRpbC5o IgorK2xhdGVyX3JlbW92ZSBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hlYWRlcl9maWxlbmFtZT0ibWV0 YS91dGlsLmgiCisrcG9wX25vX21zZ19wcmVmaXggcGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJf ZmlsZW5hbWU9Im1ldGEvdXRpbC5oIgorK3B1c2hfbm9fbXNnX3ByZWZpeCBwYXJlbnQ9Ik1ldGEu VXRpbCIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS91dGlsLmgiCisrcmVjdCBwYXJlbnQ9Ik1ldGEu VXRpbCIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS91dGlsLmgiCisrcmVtb3ZlX3ZlcmJvc2VfdG9w aWMgcGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvdXRpbC5oIgorK3Vu c2lnbmVkX2xvbmdfZXF1YWwgcGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1l dGEvdXRpbC5oIgorK3Vuc2lnbmVkX2xvbmdfaGFzaCBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hlYWRl cl9maWxlbmFtZT0ibWV0YS91dGlsLmgiCisrc2hvd19kaWFsb2cgcGFyZW50PSJNZXRhLlV0aWwi IGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvdXRpbC5oIgorK2dldF9zdGFnZV9mb3JfZGlzcGxheSBw YXJlbnQ9Ik1ldGEuQ29tcG9zaXRvciIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9jb21wb3NpdG9y LW11dHRlci5oIgorK2dldF93aW5kb3dfYWN0b3JzIHBhcmVudD0iTWV0YS5Db21wb3NpdG9yIiBj aGVhZGVyX2ZpbGVuYW1lPSJtZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgiCisrZ2V0X3dpbmRvd19n cm91cF9mb3JfZGlzcGxheSBwYXJlbnQ9Ik1ldGEuQ29tcG9zaXRvciIgY2hlYWRlcl9maWxlbmFt ZT0ibWV0YS9jb21wb3NpdG9yLW11dHRlci5oIgorK2dldF90b3Bfd2luZG93X2dyb3VwX2Zvcl9k aXNwbGF5IHBhcmVudD0iTWV0YS5Db21wb3NpdG9yIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL2Nv bXBvc2l0b3ItbXV0dGVyLmgiCisrZ2V0X2ZlZWRiYWNrX2dyb3VwX2Zvcl9kaXNwbGF5IHBhcmVu dD0iTWV0YS5Db21wb3NpdG9yIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL2NvbXBvc2l0b3ItbXV0 dGVyLmgiCisrZGlzYWJsZV91bnJlZGlyZWN0X2Zvcl9kaXNwbGF5IHBhcmVudD0iTWV0YS5Db21w b3NpdG9yIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgiCisrZW5h YmxlX3VucmVkaXJlY3RfZm9yX2Rpc3BsYXkgcGFyZW50PSJNZXRhLkNvbXBvc2l0b3IiIGNoZWFk ZXJfZmlsZW5hbWU9Im1ldGEvY29tcG9zaXRvci1tdXR0ZXIuaCIKKytzZXRfc3RhZ2VfaW5wdXRf cmVnaW9uIHBhcmVudD0iTWV0YS5Db21wb3NpdG9yIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL2Nv bXBvc2l0b3ItbXV0dGVyLmgiCisrZW1wdHlfc3RhZ2VfaW5wdXRfcmVnaW9uIHBhcmVudD0iTWV0 YS5Db21wb3NpdG9yIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgi CisrZm9jdXNfc3RhZ2Vfd2luZG93IHBhcmVudD0iTWV0YS5Db21wb3NpdG9yIiBjaGVhZGVyX2Zp bGVuYW1lPSJtZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgiCisra2V5YmluZGluZ3Nfc2V0X2N1c3Rv bV9oYW5kbGVyIHBhcmVudD0iTWV0YS5LZXlCaW5kaW5nIiBuYW1lPSJzZXRfY3VzdG9tX2hhbmRs ZXIiCisrS2V5SGFuZGxlckZ1bmMuZXZlbnQgdHlwZT0iQ2x1dHRlci5LZXlFdmVudD8iCisrZ2V0 X2JhY2tlbmQgcGFyZW50PSJNZXRhLkJhY2tlbmQiCisrV2luZG93LmZvY3VzI3NpZ25hbCBza2lw PXRydWUKKytXaW5kb3cuZ2V0X3h3aW5kb3cgc2tpcD1mYWxzZQorK2dldF9vcHRpb25fY29udGV4 dCBza2lwPWZhbHNlCisrc2V0X2dub21lX3dtX2tleWJpbmRpbmdzIHNraXA9ZmFsc2UKKytzZXRf d21fbmFtZSBza2lwPWZhbHNlCisraW5pdCBza2lwPWZhbHNlCisrcnVuIHNraXA9ZmFsc2UKKytz aG93X2RpYWxvZyBza2lwPWZhbHNlCisrZ2V0X2JhY2tlbmQgY2hlYWRlcl9maWxlbmFtZT0ibWV0 YS9tZXRhLWJhY2tlbmQuaCIKK2RpZmYgLS1naXQgYS92YXBpL2dyYXBoZW5lLWdvYmplY3QtMS4w LnZhcGkgYi92YXBpL2dyYXBoZW5lLWdvYmplY3QtMS4wLnZhcGkKK25ldyBmaWxlIG1vZGUgMTAw NjQ0CitpbmRleCAwMDAwMDAwMC4uNjk4MDE1MzUKKy0tLSAvZGV2L251bGwKKysrKyBiL3ZhcGkv Z3JhcGhlbmUtZ29iamVjdC0xLjAudmFwaQorQEAgLTAsMCArMSw2OTEgQEAKKysvKiBncmFwaGVu ZS1nb2JqZWN0LTEuMC52YXBpIGdlbmVyYXRlZCBieSB2YXBpZ2VuLCBkbyBub3QgbW9kaWZ5LiAq LworKworK1tDQ29kZSAoY3ByZWZpeCA9ICJHcmFwaGVuZSIsIGdpcl9uYW1lc3BhY2UgPSAiR3Jh cGhlbmUiLCBnaXJfdmVyc2lvbiA9ICIxLjAiLCBsb3dlcl9jYXNlX2NwcmVmaXggPSAiZ3JhcGhl bmVfIildCisrbmFtZXNwYWNlIEdyYXBoZW5lIHsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdyYXBoZW5lX2JveF90IiwgdHlwZV9p ZCA9ICJncmFwaGVuZV9ib3hfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEu MiIpXQorKwlwdWJsaWMgc3RydWN0IEJveCB7CisrCQlwdWJsaWMgYm9vbCBjb250YWluc19ib3gg KEdyYXBoZW5lLkJveCBiKTsKKysJCXB1YmxpYyBib29sIGNvbnRhaW5zX3BvaW50IChHcmFwaGVu ZS5Qb2ludDNEIHBvaW50KTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5Cb3g/ IGVtcHR5ICgpOworKwkJcHVibGljIGJvb2wgZXF1YWwgKEdyYXBoZW5lLkJveCBiKTsKKysJCXB1 YmxpYyBHcmFwaGVuZS5Cb3ggZXhwYW5kIChHcmFwaGVuZS5Qb2ludDNEIHBvaW50KTsKKysJCXB1 YmxpYyBHcmFwaGVuZS5Cb3ggZXhwYW5kX3NjYWxhciAoZmxvYXQgc2NhbGFyKTsKKysJCXB1Ymxp YyBHcmFwaGVuZS5Cb3ggZXhwYW5kX3ZlYzMgKEdyYXBoZW5lLlZlYzMgdmVjKTsKKysJCXB1Ymxp YyBHcmFwaGVuZS5TcGhlcmUgZ2V0X2JvdW5kaW5nX3NwaGVyZSAoKTsKKysJCXB1YmxpYyBHcmFw aGVuZS5Qb2ludDNEIGdldF9jZW50ZXIgKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X2RlcHRoICgp OworKwkJcHVibGljIGZsb2F0IGdldF9oZWlnaHQgKCk7CisrCQlwdWJsaWMgR3JhcGhlbmUuUG9p bnQzRCBnZXRfbWF4ICgpOworKwkJcHVibGljIEdyYXBoZW5lLlBvaW50M0QgZ2V0X21pbiAoKTsK KysJCXB1YmxpYyBHcmFwaGVuZS5WZWMzIGdldF9zaXplICgpOworKwkJcHVibGljIHZvaWQgZ2V0 X3ZlcnRpY2VzIChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gcmVmIEdyYXBoZW5lLlZl YzMgdmVydGljZXNbOF0pOworKwkJcHVibGljIGZsb2F0IGdldF93aWR0aCAoKTsKKysJCXB1Ymxp YyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5Cb3g/IGluZmluaXRlICgpOworKwkJcHVibGljIHVu b3duZWQgR3JhcGhlbmUuQm94PyBpbml0IChHcmFwaGVuZS5Qb2ludDNEPyBtaW4sIEdyYXBoZW5l LlBvaW50M0Q/IG1heCk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5Cb3g/IGluaXRfZnJv bV9ib3ggKEdyYXBoZW5lLkJveCBzcmMpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuQm94 PyBpbml0X2Zyb21fcG9pbnRzIChbQ0NvZGUgKGFycmF5X2xlbmd0aF9jbmFtZSA9ICJuX3BvaW50 cyIsIGFycmF5X2xlbmd0aF9wb3MgPSAwLjUsIGFycmF5X2xlbmd0aF90eXBlID0gImd1aW50Iild IEdyYXBoZW5lLlBvaW50M0RbXSBwb2ludHMpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUu Qm94PyBpbml0X2Zyb21fdmVjMyAoR3JhcGhlbmUuVmVjMz8gbWluLCBHcmFwaGVuZS5WZWMzPyBt YXgpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuQm94PyBpbml0X2Zyb21fdmVjdG9ycyAo W0NDb2RlIChhcnJheV9sZW5ndGhfY25hbWUgPSAibl92ZWN0b3JzIiwgYXJyYXlfbGVuZ3RoX3Bv cyA9IDAuNSwgYXJyYXlfbGVuZ3RoX3R5cGUgPSAiZ3VpbnQiKV0gR3JhcGhlbmUuVmVjM1tdIHZl Y3RvcnMpOworKwkJcHVibGljIGJvb2wgaW50ZXJzZWN0aW9uIChHcmFwaGVuZS5Cb3ggYiwgb3V0 IEdyYXBoZW5lLkJveCByZXMpOworKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLkJv eD8gbWludXNfb25lICgpOworKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLkJveD8g b25lICgpOworKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLkJveD8gb25lX21pbnVz X29uZSAoKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Cb3ggdW5pb24gKEdyYXBoZW5lLkJveCBiKTsK KysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5Cb3g/IHplcm8gKCk7CisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0g ImdyYXBoZW5lX2V1bGVyX3QiLCB0eXBlX2lkID0gImdyYXBoZW5lX2V1bGVyX2dldF90eXBlICgp IildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJcHVibGljIHN0cnVjdCBFdWxlciB7 CisrCQlwdWJsaWMgYm9vbCBlcXVhbCAoR3JhcGhlbmUuRXVsZXIgYik7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF9hbHBoYSAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X2JldGEgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF9nYW1tYSAoKTsK KysJCXB1YmxpYyBHcmFwaGVuZS5FdWxlck9yZGVyIGdldF9vcmRlciAoKTsKKysJCXB1YmxpYyBm bG9hdCBnZXRfeCAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfeSAoKTsKKysJCXB1YmxpYyBmbG9h dCBnZXRfeiAoKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLkV1bGVyPyBpbml0IChmbG9h dCB4LCBmbG9hdCB5LCBmbG9hdCB6KTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLkV1bGVy PyBpbml0X2Zyb21fZXVsZXIgKEdyYXBoZW5lLkV1bGVyPyBzcmMpOworKwkJcHVibGljIHVub3du ZWQgR3JhcGhlbmUuRXVsZXI/IGluaXRfZnJvbV9tYXRyaXggKEdyYXBoZW5lLk1hdHJpeD8gbSwg R3JhcGhlbmUuRXVsZXJPcmRlciBvcmRlcik7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5F dWxlcj8gaW5pdF9mcm9tX3F1YXRlcm5pb24gKEdyYXBoZW5lLlF1YXRlcm5pb24/IHEsIEdyYXBo ZW5lLkV1bGVyT3JkZXIgb3JkZXIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLkV1bGVyPyBpbml0X2Zyb21fcmFkaWFucyAoZmxvYXQg eCwgZmxvYXQgeSwgZmxvYXQgeiwgR3JhcGhlbmUuRXVsZXJPcmRlciBvcmRlcik7CisrCQlwdWJs aWMgdW5vd25lZCBHcmFwaGVuZS5FdWxlcj8gaW5pdF9mcm9tX3ZlYzMgKEdyYXBoZW5lLlZlYzM/ IHYsIEdyYXBoZW5lLkV1bGVyT3JkZXIgb3JkZXIpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhl bmUuRXVsZXI/IGluaXRfd2l0aF9vcmRlciAoZmxvYXQgeCwgZmxvYXQgeSwgZmxvYXQgeiwgR3Jh cGhlbmUuRXVsZXJPcmRlciBvcmRlcik7CisrCQlwdWJsaWMgR3JhcGhlbmUuRXVsZXIgcmVvcmRl ciAoR3JhcGhlbmUuRXVsZXJPcmRlciBvcmRlcik7CisrCQlwdWJsaWMgR3JhcGhlbmUuTWF0cml4 IHRvX21hdHJpeCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMg R3JhcGhlbmUuUXVhdGVybmlvbiB0b19xdWF0ZXJuaW9uICgpOworKwkJcHVibGljIEdyYXBoZW5l LlZlYzMgdG9fdmVjMyAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3Jh cGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfZnJ1c3R1bV90IiwgdHlwZV9pZCA9 ICJncmFwaGVuZV9mcnVzdHVtX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIx LjIiKV0KKysJcHVibGljIHN0cnVjdCBGcnVzdHVtIHsKKysJCXB1YmxpYyBib29sIGNvbnRhaW5z X3BvaW50IChHcmFwaGVuZS5Qb2ludDNEIHBvaW50KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjYiKV0KKysJCXB1YmxpYyBib29sIGVxdWFsIChHcmFwaGVuZS5GcnVzdHVtIGIpOworKwkJcHVi bGljIHZvaWQgZ2V0X3BsYW5lcyAoW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIHJlZiBH cmFwaGVuZS5QbGFuZSBwbGFuZXNbNl0pOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuRnJ1 c3R1bT8gaW5pdCAoR3JhcGhlbmUuUGxhbmUgcDAsIEdyYXBoZW5lLlBsYW5lIHAxLCBHcmFwaGVu ZS5QbGFuZSBwMiwgR3JhcGhlbmUuUGxhbmUgcDMsIEdyYXBoZW5lLlBsYW5lIHA0LCBHcmFwaGVu ZS5QbGFuZSBwNSk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5GcnVzdHVtPyBpbml0X2Zy b21fZnJ1c3R1bSAoR3JhcGhlbmUuRnJ1c3R1bSBzcmMpOworKwkJcHVibGljIHVub3duZWQgR3Jh cGhlbmUuRnJ1c3R1bT8gaW5pdF9mcm9tX21hdHJpeCAoR3JhcGhlbmUuTWF0cml4IG1hdHJpeCk7 CisrCQlwdWJsaWMgYm9vbCBpbnRlcnNlY3RzX2JveCAoR3JhcGhlbmUuQm94IGJveCk7CisrCQlw dWJsaWMgYm9vbCBpbnRlcnNlY3RzX3NwaGVyZSAoR3JhcGhlbmUuU3BoZXJlIHNwaGVyZSk7Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNu YW1lID0gImdyYXBoZW5lX21hdHJpeF90IiwgdHlwZV9pZCA9ICJncmFwaGVuZV9tYXRyaXhfZ2V0 X3R5cGUgKCkiKV0KKysJcHVibGljIHN0cnVjdCBNYXRyaXggeworKwkJcHVibGljIGJvb2wgZGVj b21wb3NlIChvdXQgR3JhcGhlbmUuVmVjMyB0cmFuc2xhdGUsIG91dCBHcmFwaGVuZS5WZWMzIHNj YWxlLCBvdXQgR3JhcGhlbmUuUXVhdGVybmlvbiByb3RhdGUsIG91dCBHcmFwaGVuZS5WZWMzIHNo ZWFyLCBvdXQgR3JhcGhlbmUuVmVjNCBwZXJzcGVjdGl2ZSk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgZGV0ZXJtaW5hbnQgKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGJvb2wgZXF1YWwgKEdyYXBoZW5lLk1hdHJpeCBi KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgYm9vbCBlcXVhbF9m YXN0IChHcmFwaGVuZS5NYXRyaXggYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisr CQlwdWJsaWMgR3JhcGhlbmUuVmVjNCBnZXRfcm93ICh1aW50IGluZGV4Xyk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3ZhbHVlICh1aW50IHJvdywg dWludCBjb2wpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0 IGdldF94X3NjYWxlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1Ymxp YyBmbG9hdCBnZXRfeF90cmFuc2xhdGlvbiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfeV9zY2FsZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEwIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3lfdHJhbnNsYXRpb24gKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3pfc2NhbGUgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF96X3RyYW5z bGF0aW9uICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3du ZWQgR3JhcGhlbmUuTWF0cml4PyBpbml0X2Zyb21fMmQgKGRvdWJsZSB4eCwgZG91YmxlIHl4LCBk b3VibGUgeHksIGRvdWJsZSB5eSwgZG91YmxlIHhfMCwgZG91YmxlIHlfMCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5NYXRyaXg/IGlu aXRfZnJvbV9mbG9hdCAoW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIGZsb2F0IHZbMTZd KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBo ZW5lLk1hdHJpeD8gaW5pdF9mcm9tX21hdHJpeCAoR3JhcGhlbmUuTWF0cml4IHNyYyk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5NYXRy aXg/IGluaXRfZnJvbV92ZWM0IChHcmFwaGVuZS5WZWM0IHYwLCBHcmFwaGVuZS5WZWM0IHYxLCBH cmFwaGVuZS5WZWM0IHYyLCBHcmFwaGVuZS5WZWM0IHYzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjIiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLk1hdHJpeD8gaW5pdF9mcnVzdHVt IChmbG9hdCBsZWZ0LCBmbG9hdCByaWdodCwgZmxvYXQgYm90dG9tLCBmbG9hdCB0b3AsIGZsb2F0 IHpfbmVhciwgZmxvYXQgel9mYXIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJ cHVibGljIHVub3duZWQgR3JhcGhlbmUuTWF0cml4PyBpbml0X2lkZW50aXR5ICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuTWF0cml4 PyBpbml0X2xvb2tfYXQgKEdyYXBoZW5lLlZlYzMgZXllLCBHcmFwaGVuZS5WZWMzIGNlbnRlciwg R3JhcGhlbmUuVmVjMyB1cCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJs aWMgdW5vd25lZCBHcmFwaGVuZS5NYXRyaXg/IGluaXRfb3J0aG8gKGZsb2F0IGxlZnQsIGZsb2F0 IHJpZ2h0LCBmbG9hdCB0b3AsIGZsb2F0IGJvdHRvbSwgZmxvYXQgel9uZWFyLCBmbG9hdCB6X2Zh cik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFw aGVuZS5NYXRyaXg/IGluaXRfcGVyc3BlY3RpdmUgKGZsb2F0IGZvdnksIGZsb2F0IGFzcGVjdCwg ZmxvYXQgel9uZWFyLCBmbG9hdCB6X2Zhcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIild CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5NYXRyaXg/IGluaXRfcm90YXRlIChmbG9hdCBh bmdsZSwgR3JhcGhlbmUuVmVjMyBheGlzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0K KysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLk1hdHJpeD8gaW5pdF9zY2FsZSAoZmxvYXQgeCwg ZmxvYXQgeSwgZmxvYXQgeik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJs aWMgdW5vd25lZCBHcmFwaGVuZS5NYXRyaXg/IGluaXRfc2tldyAoZmxvYXQgeF9za2V3LCBmbG9h dCB5X3NrZXcpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3du ZWQgR3JhcGhlbmUuTWF0cml4PyBpbml0X3RyYW5zbGF0ZSAoR3JhcGhlbmUuUG9pbnQzRCBwKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5NYXRyaXgg aW50ZXJwb2xhdGUgKEdyYXBoZW5lLk1hdHJpeCBiLCBkb3VibGUgZmFjdG9yKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBib29sIGludmVyc2UgKG91dCBHcmFwaGVu ZS5NYXRyaXggcmVzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBi b29sIGlzXzJkICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGJv b2wgaXNfYmFja2ZhY2VfdmlzaWJsZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0K KysJCXB1YmxpYyBib29sIGlzX2lkZW50aXR5ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MCIpXQorKwkJcHVibGljIGJvb2wgaXNfc2luZ3VsYXIgKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuTWF0cml4IG11bHRpcGx5IChHcmFwaGVuZS5N YXRyaXggYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGJvb2wg bmVhciAoR3JhcGhlbmUuTWF0cml4IGIsIGZsb2F0IGVwc2lsb24pOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLk1hdHJpeCBub3JtYWxpemUgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuTWF0cml4IHBl cnNwZWN0aXZlIChmbG9hdCBkZXB0aCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisr CQlwdWJsaWMgdm9pZCBwcmludCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJ CXB1YmxpYyBHcmFwaGVuZS5Qb2ludCBwcm9qZWN0X3BvaW50IChHcmFwaGVuZS5Qb2ludCBwKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5RdWFkIHBy b2plY3RfcmVjdCAoR3JhcGhlbmUuUmVjdCByKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyBHcmFwaGVuZS5SZWN0IHByb2plY3RfcmVjdF9ib3VuZHMgKEdyYXBoZW5l LlJlY3Qgcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCBy b3RhdGUgKGZsb2F0IGFuZ2xlLCBHcmFwaGVuZS5WZWMzIGF4aXMpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgcm90YXRlX2V1bGVyIChHcmFwaGVuZS5FdWxl ciBlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHJvdGF0 ZV9xdWF0ZXJuaW9uIChHcmFwaGVuZS5RdWF0ZXJuaW9uIHEpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgcm90YXRlX3ggKGZsb2F0IGFuZ2xlKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHJvdGF0ZV95IChmbG9hdCBh bmdsZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCByb3Rh dGVfeiAoZmxvYXQgYW5nbGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVi bGljIHZvaWQgc2NhbGUgKGZsb2F0IGZhY3Rvcl94LCBmbG9hdCBmYWN0b3JfeSwgZmxvYXQgZmFj dG9yX3opOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgc2tl d194eSAoZmxvYXQgZmFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyB2b2lkIHNrZXdfeHogKGZsb2F0IGZhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4wIildCisrCQlwdWJsaWMgdm9pZCBza2V3X3l6IChmbG9hdCBmYWN0b3IpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGJvb2wgdG9fMmQgKG91dCBkb3VibGUgeHgs IG91dCBkb3VibGUgeXgsIG91dCBkb3VibGUgeHksIG91dCBkb3VibGUgeXksIG91dCBkb3VibGUg eF8wLCBvdXQgZG91YmxlIHlfMCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlw dWJsaWMgdm9pZCB0b19mbG9hdCAoW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIHJlZiBm bG9hdCB2WzE2XSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3Jh cGhlbmUuUmVjdCB0cmFuc2Zvcm1fYm91bmRzIChHcmFwaGVuZS5SZWN0IHIpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIEdyYXBoZW5lLkJveCB0cmFuc2Zvcm1fYm94 IChHcmFwaGVuZS5Cb3ggYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJs aWMgR3JhcGhlbmUuUG9pbnQgdHJhbnNmb3JtX3BvaW50IChHcmFwaGVuZS5Qb2ludCBwKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludDNEIHRy YW5zZm9ybV9wb2ludDNkIChHcmFwaGVuZS5Qb2ludDNEIHApOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuNCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlJheSB0cmFuc2Zvcm1fcmF5IChHcmFwaGVu ZS5SYXkgcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhl bmUuUXVhZCB0cmFuc2Zvcm1fcmVjdCAoR3JhcGhlbmUuUmVjdCByKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5TcGhlcmUgdHJhbnNmb3JtX3NwaGVy ZSAoR3JhcGhlbmUuU3BoZXJlIHMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJ cHVibGljIEdyYXBoZW5lLlZlYzMgdHJhbnNmb3JtX3ZlYzMgKEdyYXBoZW5lLlZlYzMgdik7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjNCB0cmFu c2Zvcm1fdmVjNCAoR3JhcGhlbmUuVmVjNCB2KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyB2b2lkIHRyYW5zbGF0ZSAoR3JhcGhlbmUuUG9pbnQzRCBwb3MpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLk1hdHJpeCB0cmFu c3Bvc2UgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgR3JhcGhl bmUuUG9pbnQzRCB1bnByb2plY3RfcG9pbnQzZCAoR3JhcGhlbmUuTWF0cml4IG1vZGVsdmlldywg R3JhcGhlbmUuUG9pbnQzRCBwb2ludCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisr CQlwdWJsaWMgR3JhcGhlbmUuUmVjdCB1bnRyYW5zZm9ybV9ib3VuZHMgKEdyYXBoZW5lLlJlY3Qg ciwgR3JhcGhlbmUuUmVjdCBib3VuZHMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwkJcHVibGljIGJvb2wgdW50cmFuc2Zvcm1fcG9pbnQgKEdyYXBoZW5lLlBvaW50IHAsIEdyYXBo ZW5lLlJlY3QgYm91bmRzLCBvdXQgR3JhcGhlbmUuUG9pbnQgcmVzKTsKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiZ3JhcGhl bmVfcGxhbmVfdCIsIHR5cGVfaWQgPSAiZ3JhcGhlbmVfcGxhbmVfZ2V0X3R5cGUgKCkiKV0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwlwdWJsaWMgc3RydWN0IFBsYW5lIHsKKysJCXB1 YmxpYyBmbG9hdCBkaXN0YW5jZSAoR3JhcGhlbmUuUG9pbnQzRCBwb2ludCk7CisrCQlwdWJsaWMg Ym9vbCBlcXVhbCAoR3JhcGhlbmUuUGxhbmUgYik7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X2NvbnN0 YW50ICgpOworKwkJcHVibGljIEdyYXBoZW5lLlZlYzMgZ2V0X25vcm1hbCAoKTsKKysJCXB1Ymxp YyB1bm93bmVkIEdyYXBoZW5lLlBsYW5lPyBpbml0IChHcmFwaGVuZS5WZWMzPyBub3JtYWwsIGZs b2F0IGNvbnN0YW50KTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlBsYW5lPyBpbml0X2Zy b21fcGxhbmUgKEdyYXBoZW5lLlBsYW5lIHNyYyk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVu ZS5QbGFuZT8gaW5pdF9mcm9tX3BvaW50IChHcmFwaGVuZS5WZWMzIG5vcm1hbCwgR3JhcGhlbmUu UG9pbnQzRCBwb2ludCk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5QbGFuZT8gaW5pdF9m cm9tX3BvaW50cyAoR3JhcGhlbmUuUG9pbnQzRCBhLCBHcmFwaGVuZS5Qb2ludDNEIGIsIEdyYXBo ZW5lLlBvaW50M0QgYyk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5QbGFuZT8gaW5pdF9m cm9tX3ZlYzQgKEdyYXBoZW5lLlZlYzQgc3JjKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5QbGFuZSBu ZWdhdGUgKCk7CisrCQlwdWJsaWMgR3JhcGhlbmUuUGxhbmUgbm9ybWFsaXplICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5QbGFuZSB0cmFuc2Zv cm0gKEdyYXBoZW5lLk1hdHJpeCBtYXRyaXgsIEdyYXBoZW5lLk1hdHJpeD8gbm9ybWFsX21hdHJp eCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3Qu aCIsIGNuYW1lID0gImdyYXBoZW5lX3BvaW50X3QiLCB0eXBlX2lkID0gImdyYXBoZW5lX3BvaW50 X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIHN0 cnVjdCBQb2ludCB7CisrCQlwdWJsaWMgZmxvYXQgeDsKKysJCXB1YmxpYyBmbG9hdCB5OworKwkJ cHVibGljIGZsb2F0IGRpc3RhbmNlIChHcmFwaGVuZS5Qb2ludCBiLCBvdXQgZmxvYXQgZF94LCBv dXQgZmxvYXQgZF95KTsKKysJCXB1YmxpYyBib29sIGVxdWFsIChHcmFwaGVuZS5Qb2ludCBiKTsK KysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlBvaW50PyBpbml0IChmbG9hdCB4LCBmbG9hdCB5 KTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlBvaW50PyBpbml0X2Zyb21fcG9pbnQgKEdy YXBoZW5lLlBvaW50IHNyYyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJs aWMgdW5vd25lZCBHcmFwaGVuZS5Qb2ludD8gaW5pdF9mcm9tX3ZlYzIgKEdyYXBoZW5lLlZlYzIg c3JjKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludCBpbnRlcnBvbGF0ZSAoR3JhcGhlbmUuUG9p bnQgYiwgZG91YmxlIGZhY3Rvcik7CisrCQlwdWJsaWMgYm9vbCBuZWFyIChHcmFwaGVuZS5Qb2lu dCBiLCBmbG9hdCBlcHNpbG9uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1 YmxpYyBHcmFwaGVuZS5WZWMyIHRvX3ZlYzIgKCk7CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQg R3JhcGhlbmUuUG9pbnQ/IHplcm8gKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdyYXBoZW5lX3BvaW50M2RfdCIsIGxv d2VyX2Nhc2VfY3N1ZmZpeCA9ICJwb2ludDNkIiwgdHlwZV9pZCA9ICJncmFwaGVuZV9wb2ludDNk X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIHN0 cnVjdCBQb2ludDNEIHsKKysJCXB1YmxpYyBmbG9hdCB4OworKwkJcHVibGljIGZsb2F0IHk7Cisr CQlwdWJsaWMgZmxvYXQgejsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludDNEIGNyb3NzIChHcmFw aGVuZS5Qb2ludDNEIGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGlj IGZsb2F0IGRpc3RhbmNlIChHcmFwaGVuZS5Qb2ludDNEIGIsIG91dCBHcmFwaGVuZS5WZWMzIGRl bHRhKTsKKysJCXB1YmxpYyBmbG9hdCBkb3QgKEdyYXBoZW5lLlBvaW50M0QgYik7CisrCQlwdWJs aWMgYm9vbCBlcXVhbCAoR3JhcGhlbmUuUG9pbnQzRCBiKTsKKysJCXB1YmxpYyB1bm93bmVkIEdy YXBoZW5lLlBvaW50M0Q/IGluaXQgKGZsb2F0IHgsIGZsb2F0IHksIGZsb2F0IHopOworKwkJcHVi bGljIHVub3duZWQgR3JhcGhlbmUuUG9pbnQzRD8gaW5pdF9mcm9tX3BvaW50IChHcmFwaGVuZS5Q b2ludDNEIHNyYyk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5Qb2ludDNEPyBpbml0X2Zy b21fdmVjMyAoR3JhcGhlbmUuVmVjMyB2KTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludDNEIGlu dGVycG9sYXRlIChHcmFwaGVuZS5Qb2ludDNEIGIsIGRvdWJsZSBmYWN0b3IpOworKwkJcHVibGlj IGZsb2F0IGxlbmd0aCAoKTsKKysJCXB1YmxpYyBib29sIG5lYXIgKEdyYXBoZW5lLlBvaW50M0Qg YiwgZmxvYXQgZXBzaWxvbik7CisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQzRCBub3JtYWxpemUg KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgR3JhcGhlbmUuUG9p bnQzRCBub3JtYWxpemVfdmlld3BvcnQgKEdyYXBoZW5lLlJlY3Qgdmlld3BvcnQsIGZsb2F0IHpf bmVhciwgZmxvYXQgel9mYXIpOworKwkJcHVibGljIEdyYXBoZW5lLlBvaW50M0Qgc2NhbGUgKGZs b2F0IGZhY3Rvcik7CisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMyB0b192ZWMzICgpOworKwkJcHVi bGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLlBvaW50M0Q/IHplcm8gKCk7CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdy YXBoZW5lX3F1YWRfdCIsIHR5cGVfaWQgPSAiZ3JhcGhlbmVfcXVhZF9nZXRfdHlwZSAoKSIpXQor KwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBzdHJ1Y3QgUXVhZCB7CisrCQlw dWJsaWMgR3JhcGhlbmUuUmVjdCBib3VuZHMgKCk7CisrCQlwdWJsaWMgYm9vbCBjb250YWlucyAo R3JhcGhlbmUuUG9pbnQgcCk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5Qb2ludD8gZ2V0 X3BvaW50ICh1aW50IGluZGV4Xyk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5RdWFkPyBp bml0IChHcmFwaGVuZS5Qb2ludCBwMSwgR3JhcGhlbmUuUG9pbnQgcDIsIEdyYXBoZW5lLlBvaW50 IHAzLCBHcmFwaGVuZS5Qb2ludCBwNCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisr CQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5RdWFkPyBpbml0X2Zyb21fcG9pbnRzIChbQ0NvZGUg KGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gR3JhcGhlbmUuUG9pbnQgcG9pbnRzWzRdKTsKKysJCXB1 YmxpYyB1bm93bmVkIEdyYXBoZW5lLlF1YWQ/IGluaXRfZnJvbV9yZWN0IChHcmFwaGVuZS5SZWN0 IHIpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0 LmgiLCBjbmFtZSA9ICJncmFwaGVuZV9xdWF0ZXJuaW9uX3QiLCB0eXBlX2lkID0gImdyYXBoZW5l X3F1YXRlcm5pb25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwlwdWJsaWMgc3RydWN0IFF1YXRlcm5pb24geworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAi KV0KKysJCXB1YmxpYyBHcmFwaGVuZS5RdWF0ZXJuaW9uIGFkZCAoR3JhcGhlbmUuUXVhdGVybmlv biBiKTsKKysJCXB1YmxpYyBmbG9hdCBkb3QgKEdyYXBoZW5lLlF1YXRlcm5pb24gYik7CisrCQlw dWJsaWMgYm9vbCBlcXVhbCAoR3JhcGhlbmUuUXVhdGVybmlvbiBiKTsKKysJCXB1YmxpYyB1bm93 bmVkIEdyYXBoZW5lLlF1YXRlcm5pb24/IGluaXQgKGZsb2F0IHgsIGZsb2F0IHksIGZsb2F0IHos IGZsb2F0IHcpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUXVhdGVybmlvbj8gaW5pdF9m cm9tX2FuZ2xlX3ZlYzMgKGZsb2F0IGFuZ2xlLCBHcmFwaGVuZS5WZWMzIGF4aXMpOworKwkJcHVi bGljIHVub3duZWQgR3JhcGhlbmUuUXVhdGVybmlvbj8gaW5pdF9mcm9tX2FuZ2xlcyAoZmxvYXQg ZGVnX3gsIGZsb2F0IGRlZ195LCBmbG9hdCBkZWdfeik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4yIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5RdWF0ZXJuaW9uPyBpbml0X2Zyb21f ZXVsZXIgKEdyYXBoZW5lLkV1bGVyIGUpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUXVh dGVybmlvbj8gaW5pdF9mcm9tX21hdHJpeCAoR3JhcGhlbmUuTWF0cml4IG0pOworKwkJcHVibGlj IHVub3duZWQgR3JhcGhlbmUuUXVhdGVybmlvbj8gaW5pdF9mcm9tX3F1YXRlcm5pb24gKEdyYXBo ZW5lLlF1YXRlcm5pb24gc3JjKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlF1YXRlcm5p b24/IGluaXRfZnJvbV9yYWRpYW5zIChmbG9hdCByYWRfeCwgZmxvYXQgcmFkX3ksIGZsb2F0IHJh ZF96KTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlF1YXRlcm5pb24/IGluaXRfZnJvbV92 ZWM0IChHcmFwaGVuZS5WZWM0IHNyYyk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5RdWF0 ZXJuaW9uPyBpbml0X2lkZW50aXR5ICgpOworKwkJcHVibGljIEdyYXBoZW5lLlF1YXRlcm5pb24g aW52ZXJ0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBHcmFw aGVuZS5RdWF0ZXJuaW9uIG11bHRpcGx5IChHcmFwaGVuZS5RdWF0ZXJuaW9uIGIpOworKwkJcHVi bGljIEdyYXBoZW5lLlF1YXRlcm5pb24gbm9ybWFsaXplICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5RdWF0ZXJuaW9uIHNjYWxlIChmbG9hdCBm YWN0b3IpOworKwkJcHVibGljIEdyYXBoZW5lLlF1YXRlcm5pb24gc2xlcnAgKEdyYXBoZW5lLlF1 YXRlcm5pb24gYiwgZmxvYXQgZmFjdG9yKTsKKysJCXB1YmxpYyB2b2lkIHRvX2FuZ2xlX3ZlYzMg KG91dCBmbG9hdCBhbmdsZSwgb3V0IEdyYXBoZW5lLlZlYzMgYXhpcyk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCB0b19hbmdsZXMgKG91dCBmbG9hdCBkZWdf eCwgb3V0IGZsb2F0IGRlZ195LCBvdXQgZmxvYXQgZGVnX3opOworKwkJcHVibGljIEdyYXBoZW5l Lk1hdHJpeCB0b19tYXRyaXggKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlw dWJsaWMgdm9pZCB0b19yYWRpYW5zIChvdXQgZmxvYXQgcmFkX3gsIG91dCBmbG9hdCByYWRfeSwg b3V0IGZsb2F0IHJhZF96KTsKKysJCXB1YmxpYyBHcmFwaGVuZS5WZWM0IHRvX3ZlYzQgKCk7Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNu YW1lID0gImdyYXBoZW5lX3JheV90IiwgdHlwZV9pZCA9ICJncmFwaGVuZV9yYXlfZ2V0X3R5cGUg KCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgc3RydWN0IFJheSB7 CisrCQlwdWJsaWMgYm9vbCBlcXVhbCAoR3JhcGhlbmUuUmF5IGIpOworKwkJcHVibGljIEdyYXBo ZW5lLlBvaW50M0QgZ2V0X2Nsb3Nlc3RfcG9pbnRfdG9fcG9pbnQgKEdyYXBoZW5lLlBvaW50M0Qg cCk7CisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMyBnZXRfZGlyZWN0aW9uICgpOworKwkJcHVibGlj IGZsb2F0IGdldF9kaXN0YW5jZV90b19wbGFuZSAoR3JhcGhlbmUuUGxhbmUgcCk7CisrCQlwdWJs aWMgZmxvYXQgZ2V0X2Rpc3RhbmNlX3RvX3BvaW50IChHcmFwaGVuZS5Qb2ludDNEIHApOworKwkJ cHVibGljIEdyYXBoZW5lLlBvaW50M0QgZ2V0X29yaWdpbiAoKTsKKysJCXB1YmxpYyBHcmFwaGVu ZS5Qb2ludDNEIGdldF9wb3NpdGlvbl9hdCAoZmxvYXQgdCk7CisrCQlwdWJsaWMgdW5vd25lZCBH cmFwaGVuZS5SYXk/IGluaXQgKEdyYXBoZW5lLlBvaW50M0Q/IG9yaWdpbiwgR3JhcGhlbmUuVmVj Mz8gZGlyZWN0aW9uKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlJheT8gaW5pdF9mcm9t X3JheSAoR3JhcGhlbmUuUmF5IHNyYyk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5SYXk/ IGluaXRfZnJvbV92ZWMzIChHcmFwaGVuZS5WZWMzPyBvcmlnaW4sIEdyYXBoZW5lLlZlYzM/IGRp cmVjdGlvbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIEdyYXBo ZW5lLlJheUludGVyc2VjdGlvbktpbmQgaW50ZXJzZWN0X2JveCAoR3JhcGhlbmUuQm94IGIsIG91 dCBmbG9hdCB0X291dCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IEdyYXBoZW5lLlJheUludGVyc2VjdGlvbktpbmQgaW50ZXJzZWN0X3NwaGVyZSAoR3JhcGhlbmUu U3BoZXJlIHMsIG91dCBmbG9hdCB0X291dCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIp XQorKwkJcHVibGljIEdyYXBoZW5lLlJheUludGVyc2VjdGlvbktpbmQgaW50ZXJzZWN0X3RyaWFu Z2xlIChHcmFwaGVuZS5UcmlhbmdsZSB0LCBvdXQgZmxvYXQgdF9vdXQpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBib29sIGludGVyc2VjdHNfYm94IChHcmFwaGVu ZS5Cb3ggYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGJvb2wg aW50ZXJzZWN0c19zcGhlcmUgKEdyYXBoZW5lLlNwaGVyZSBzKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEwIildCisrCQlwdWJsaWMgYm9vbCBpbnRlcnNlY3RzX3RyaWFuZ2xlIChHcmFwaGVu ZS5UcmlhbmdsZSB0KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhl bmUtZ29iamVjdC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfcmVjdF90IiwgdHlwZV9pZCA9ICJncmFw aGVuZV9yZWN0X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJ cHVibGljIHN0cnVjdCBSZWN0IHsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludCBvcmlnaW47Cisr CQlwdWJsaWMgR3JhcGhlbmUuU2l6ZSBzaXplOworKwkJcHVibGljIHN0YXRpYyBHcmFwaGVuZS5S ZWN0PyBhbGxvYyAoKTsKKysJCXB1YmxpYyBib29sIGNvbnRhaW5zX3BvaW50IChHcmFwaGVuZS5Q b2ludCBwKTsKKysJCXB1YmxpYyBib29sIGNvbnRhaW5zX3JlY3QgKEdyYXBoZW5lLlJlY3QgYik7 CisrCQlwdWJsaWMgYm9vbCBlcXVhbCAoR3JhcGhlbmUuUmVjdCBiKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5SZWN0IGV4cGFuZCAoR3JhcGhlbmUu UG9pbnQgcCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGZsb2F0 IGdldF9hcmVhICgpOworKwkJcHVibGljIEdyYXBoZW5lLlBvaW50IGdldF9ib3R0b21fbGVmdCAo KTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludCBnZXRfYm90dG9tX3JpZ2h0ICgpOworKwkJcHVi bGljIEdyYXBoZW5lLlBvaW50IGdldF9jZW50ZXIgKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X2hl aWdodCAoKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludCBnZXRfdG9wX2xlZnQgKCk7CisrCQlw dWJsaWMgR3JhcGhlbmUuUG9pbnQgZ2V0X3RvcF9yaWdodCAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIGdldF92ZXJ0aWNlcyAoW0NDb2RlIChhcnJheV9s ZW5ndGggPSBmYWxzZSldIHJlZiBHcmFwaGVuZS5WZWMyIHZlcnRpY2VzWzRdKTsKKysJCXB1Ymxp YyBmbG9hdCBnZXRfd2lkdGggKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X3ggKCk7CisrCQlwdWJs aWMgZmxvYXQgZ2V0X3kgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5SZWN0PyBpbml0 IChmbG9hdCB4LCBmbG9hdCB5LCBmbG9hdCB3aWR0aCwgZmxvYXQgaGVpZ2h0KTsKKysJCXB1Ymxp YyB1bm93bmVkIEdyYXBoZW5lLlJlY3Q/IGluaXRfZnJvbV9yZWN0IChHcmFwaGVuZS5SZWN0IHNy Yyk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5SZWN0PyBpbnNldCAoZmxvYXQgZF94LCBm bG9hdCBkX3kpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIEdyYXBo ZW5lLlJlY3QgaW5zZXRfciAoZmxvYXQgZF94LCBmbG9hdCBkX3kpOworKwkJcHVibGljIEdyYXBo ZW5lLlJlY3QgaW50ZXJwb2xhdGUgKEdyYXBoZW5lLlJlY3QgYiwgZG91YmxlIGZhY3Rvcik7Cisr CQlwdWJsaWMgYm9vbCBpbnRlcnNlY3Rpb24gKEdyYXBoZW5lLlJlY3QgYiwgb3V0IEdyYXBoZW5l LlJlY3QgcmVzKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlJlY3Q/IG5vcm1hbGl6ZSAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5SZWN0 IG5vcm1hbGl6ZV9yICgpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUmVjdD8gb2Zmc2V0 IChmbG9hdCBkX3gsIGZsb2F0IGRfeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisr CQlwdWJsaWMgR3JhcGhlbmUuUmVjdCBvZmZzZXRfciAoZmxvYXQgZF94LCBmbG9hdCBkX3kpOwor KwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAi LCBzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5SZWN0IHJvdW5kICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5SZWN0IHJvdW5k X2V4dGVudHMgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRf c2luY2UgPSAiMS40Iiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVu ZS5SZWN0PyByb3VuZF90b19waXhlbCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIild CisrCQlwdWJsaWMgR3JhcGhlbmUuUmVjdCBzY2FsZSAoZmxvYXQgc19oLCBmbG9hdCBzX3YpOwor KwkJcHVibGljIEdyYXBoZW5lLlJlY3QgdW5pb24gKEdyYXBoZW5lLlJlY3QgYik7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUu UmVjdD8gemVybyAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhl bmUtZ29iamVjdC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfc2ltZDRmX3QiLCBoYXNfdHlwZV9pZCA9 IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBTaW1kNEYgeworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJncmFwaGVuZV9zaW1k NHg0Zl90IiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgU2ltZDRYNEYg eworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0Lmgi LCBjbmFtZSA9ICJncmFwaGVuZV9zaXplX3QiLCB0eXBlX2lkID0gImdyYXBoZW5lX3NpemVfZ2V0 X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgc3RydWN0 IFNpemUgeworKwkJcHVibGljIGZsb2F0IHdpZHRoOworKwkJcHVibGljIGZsb2F0IGhlaWdodDsK KysJCXB1YmxpYyBib29sIGVxdWFsIChHcmFwaGVuZS5TaXplIGIpOworKwkJcHVibGljIHVub3du ZWQgR3JhcGhlbmUuU2l6ZT8gaW5pdCAoZmxvYXQgd2lkdGgsIGZsb2F0IGhlaWdodCk7CisrCQlw dWJsaWMgdW5vd25lZCBHcmFwaGVuZS5TaXplPyBpbml0X2Zyb21fc2l6ZSAoR3JhcGhlbmUuU2l6 ZSBzcmMpOworKwkJcHVibGljIEdyYXBoZW5lLlNpemUgaW50ZXJwb2xhdGUgKEdyYXBoZW5lLlNp emUgYiwgZG91YmxlIGZhY3Rvcik7CisrCQlwdWJsaWMgR3JhcGhlbmUuU2l6ZSBzY2FsZSAoZmxv YXQgZmFjdG9yKTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5TaXplPyB6ZXJv ICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0 LmgiLCBjbmFtZSA9ICJncmFwaGVuZV9zcGhlcmVfdCIsIHR5cGVfaWQgPSAiZ3JhcGhlbmVfc3Bo ZXJlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJcHVibGlj IHN0cnVjdCBTcGhlcmUgeworKwkJcHVibGljIGJvb2wgY29udGFpbnNfcG9pbnQgKEdyYXBoZW5l LlBvaW50M0QgcG9pbnQpOworKwkJcHVibGljIGZsb2F0IGRpc3RhbmNlIChHcmFwaGVuZS5Qb2lu dDNEIHBvaW50KTsKKysJCXB1YmxpYyBib29sIGVxdWFsIChHcmFwaGVuZS5TcGhlcmUgYik7Cisr CQlwdWJsaWMgR3JhcGhlbmUuQm94IGdldF9ib3VuZGluZ19ib3ggKCk7CisrCQlwdWJsaWMgR3Jh cGhlbmUuUG9pbnQzRCBnZXRfY2VudGVyICgpOworKwkJcHVibGljIGZsb2F0IGdldF9yYWRpdXMg KCk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5TcGhlcmU/IGluaXQgKEdyYXBoZW5lLlBv aW50M0Q/IGNlbnRlciwgZmxvYXQgcmFkaXVzKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5l LlNwaGVyZT8gaW5pdF9mcm9tX3BvaW50cyAoW0NDb2RlIChhcnJheV9sZW5ndGhfY25hbWUgPSAi bl9wb2ludHMiLCBhcnJheV9sZW5ndGhfcG9zID0gMC41LCBhcnJheV9sZW5ndGhfdHlwZSA9ICJn dWludCIpXSBHcmFwaGVuZS5Qb2ludDNEW10gcG9pbnRzLCBHcmFwaGVuZS5Qb2ludDNEPyBjZW50 ZXIpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuU3BoZXJlPyBpbml0X2Zyb21fdmVjdG9y cyAoW0NDb2RlIChhcnJheV9sZW5ndGhfY25hbWUgPSAibl92ZWN0b3JzIiwgYXJyYXlfbGVuZ3Ro X3BvcyA9IDAuNSwgYXJyYXlfbGVuZ3RoX3R5cGUgPSAiZ3VpbnQiKV0gR3JhcGhlbmUuVmVjM1td IHZlY3RvcnMsIEdyYXBoZW5lLlBvaW50M0Q/IGNlbnRlcik7CisrCQlwdWJsaWMgYm9vbCBpc19l bXB0eSAoKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5TcGhlcmUgdHJhbnNsYXRlIChHcmFwaGVuZS5Q b2ludDNEIHBvaW50KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhl bmUtZ29iamVjdC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfdHJpYW5nbGVfdCIsIHR5cGVfaWQgPSAi Z3JhcGhlbmVfdHJpYW5nbGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEu MiIpXQorKwlwdWJsaWMgc3RydWN0IFRyaWFuZ2xlIHsKKysJCXB1YmxpYyBib29sIGNvbnRhaW5z X3BvaW50IChHcmFwaGVuZS5Qb2ludDNEIHApOworKwkJcHVibGljIGJvb2wgZXF1YWwgKEdyYXBo ZW5lLlRyaWFuZ2xlIGIpOworKwkJcHVibGljIGZsb2F0IGdldF9hcmVhICgpOworKwkJcHVibGlj IGJvb2wgZ2V0X2Jhcnljb29yZHMgKEdyYXBoZW5lLlBvaW50M0Q/IHAsIG91dCBHcmFwaGVuZS5W ZWMyIHJlcyk7CisrCQlwdWJsaWMgR3JhcGhlbmUuQm94IGdldF9ib3VuZGluZ19ib3ggKCk7Cisr CQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQzRCBnZXRfbWlkcG9pbnQgKCk7CisrCQlwdWJsaWMgR3Jh cGhlbmUuVmVjMyBnZXRfbm9ybWFsICgpOworKwkJcHVibGljIEdyYXBoZW5lLlBsYW5lIGdldF9w bGFuZSAoKTsKKysJCXB1YmxpYyB2b2lkIGdldF9wb2ludHMgKG91dCBHcmFwaGVuZS5Qb2ludDNE IGEsIG91dCBHcmFwaGVuZS5Qb2ludDNEIGIsIG91dCBHcmFwaGVuZS5Qb2ludDNEIGMpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBib29sIGdldF91diAoR3JhcGhl bmUuUG9pbnQzRD8gcCwgR3JhcGhlbmUuVmVjMiB1dl9hLCBHcmFwaGVuZS5WZWMyIHV2X2IsIEdy YXBoZW5lLlZlYzIgdXZfYywgb3V0IEdyYXBoZW5lLlZlYzIgcmVzKTsKKysJCXB1YmxpYyB2b2lk IGdldF92ZXJ0aWNlcyAob3V0IEdyYXBoZW5lLlZlYzMgYSwgb3V0IEdyYXBoZW5lLlZlYzMgYiwg b3V0IEdyYXBoZW5lLlZlYzMgYyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJ cHVibGljIHVub3duZWQgR3JhcGhlbmUuVHJpYW5nbGU/IGluaXRfZnJvbV9mbG9hdCAoW0NDb2Rl IChhcnJheV9sZW5ndGggPSBmYWxzZSldIGZsb2F0IGFbM10sIFtDQ29kZSAoYXJyYXlfbGVuZ3Ro ID0gZmFsc2UpXSBmbG9hdCBiWzNdLCBbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gZmxv YXQgY1szXSk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5UcmlhbmdsZT8gaW5pdF9mcm9t X3BvaW50M2QgKEdyYXBoZW5lLlBvaW50M0Q/IGEsIEdyYXBoZW5lLlBvaW50M0Q/IGIsIEdyYXBo ZW5lLlBvaW50M0Q/IGMpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuVHJpYW5nbGU/IGlu aXRfZnJvbV92ZWMzIChHcmFwaGVuZS5WZWMzPyBhLCBHcmFwaGVuZS5WZWMzPyBiLCBHcmFwaGVu ZS5WZWMzPyBjKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUt Z29iamVjdC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfdmVjMl90IiwgdHlwZV9pZCA9ICJncmFwaGVu ZV92ZWMyX2dldF90eXBlICgpIildCisrCXB1YmxpYyBzdHJ1Y3QgVmVjMiB7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMiBhZGQgKEdyYXBoZW5l LlZlYzIgYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhl bmUuVmVjMiBkaXZpZGUgKEdyYXBoZW5lLlZlYzIgYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4wIildCisrCQlwdWJsaWMgZmxvYXQgZG90IChHcmFwaGVuZS5WZWMyIGIpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIGJvb2wgZXF1YWwgKEdyYXBoZW5lLlZlYzIg djIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF94 ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF95 ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3Jh cGhlbmUuVmVjMj8gaW5pdCAoZmxvYXQgeCwgZmxvYXQgeSk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5WZWMyPyBpbml0X2Zyb21fZmxv YXQgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSBmbG9hdCBzcmNbMl0pOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuVmVjMj8g aW5pdF9mcm9tX3ZlYzIgKEdyYXBoZW5lLlZlYzIgc3JjKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEwIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMiBpbnRlcnBvbGF0ZSAoR3JhcGhlbmUu VmVjMiB2MiwgZG91YmxlIGZhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisr CQlwdWJsaWMgZmxvYXQgbGVuZ3RoICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwkJcHVibGljIEdyYXBoZW5lLlZlYzIgbWF4IChHcmFwaGVuZS5WZWMyIGIpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzIgbWluIChHcmFwaGVu ZS5WZWMyIGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBo ZW5lLlZlYzIgbXVsdGlwbHkgKEdyYXBoZW5lLlZlYzIgYik7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4yIildCisrCQlwdWJsaWMgYm9vbCBuZWFyIChHcmFwaGVuZS5WZWMyIHYyLCBmbG9hdCBl cHNpbG9uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBHcmFwaGVu ZS5WZWMyIG5lZ2F0ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1Ymxp YyBHcmFwaGVuZS5WZWMyIG5vcm1hbGl6ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5WZWMyPyBvbmUgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMiBzY2FsZSAo ZmxvYXQgZmFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBH cmFwaGVuZS5WZWMyIHN1YnRyYWN0IChHcmFwaGVuZS5WZWMyIGIpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgdG9fZmxvYXQgKFtDQ29kZSAoYXJyYXlfbGVu Z3RoID0gZmFsc2UpXSByZWYgZmxvYXQgZGVzdFsyXSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4wIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuVmVjMj8geF9heGlzICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVk IEdyYXBoZW5lLlZlYzI/IHlfYXhpcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0K KysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5WZWMyPyB6ZXJvICgpOworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9 ICJncmFwaGVuZV92ZWMzX3QiLCB0eXBlX2lkID0gImdyYXBoZW5lX3ZlYzNfZ2V0X3R5cGUgKCki KV0KKysJcHVibGljIHN0cnVjdCBWZWMzIHsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0K KysJCXB1YmxpYyBHcmFwaGVuZS5WZWMzIGFkZCAoR3JhcGhlbmUuVmVjMyBiKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMzIGNyb3NzIChHcmFw aGVuZS5WZWMzIGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdy YXBoZW5lLlZlYzMgZGl2aWRlIChHcmFwaGVuZS5WZWMzIGIpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGRvdCAoR3JhcGhlbmUuVmVjMyBiKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBib29sIGVxdWFsIChHcmFwaGVuZS5W ZWMzIHYyKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBn ZXRfeCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVu ZS5WZWMyIGdldF94eSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1Ymxp YyBHcmFwaGVuZS5WZWMzIGdldF94eTAgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIild CisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjNCBnZXRfeHl6MCAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWM0IGdldF94eXoxICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzQgZ2V0X3h5encg KGZsb2F0IHcpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0 IGdldF95ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0 IGdldF96ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3du ZWQgR3JhcGhlbmUuVmVjMz8gaW5pdCAoZmxvYXQgeCwgZmxvYXQgeSwgZmxvYXQgeik7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5WZWMz PyBpbml0X2Zyb21fZmxvYXQgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSBmbG9hdCBz cmNbM10pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQg R3JhcGhlbmUuVmVjMz8gaW5pdF9mcm9tX3ZlYzMgKEdyYXBoZW5lLlZlYzMgc3JjKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMyBpbnRlcnBv bGF0ZSAoR3JhcGhlbmUuVmVjMyB2MiwgZG91YmxlIGZhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgbGVuZ3RoICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzMgbWF4IChHcmFwaGVuZS5WZWMz IGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZl YzMgbWluIChHcmFwaGVuZS5WZWMzIGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwkJcHVibGljIEdyYXBoZW5lLlZlYzMgbXVsdGlwbHkgKEdyYXBoZW5lLlZlYzMgYik7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgYm9vbCBuZWFyIChHcmFwaGVuZS5W ZWMzIHYyLCBmbG9hdCBlcHNpbG9uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJ CXB1YmxpYyBHcmFwaGVuZS5WZWMzIG5lZ2F0ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMzIG5vcm1hbGl6ZSAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5WZWMz PyBvbmUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgR3JhcGhl bmUuVmVjMyBzY2FsZSAoZmxvYXQgZmFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMzIHN1YnRyYWN0IChHcmFwaGVuZS5WZWMzIGIpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgdG9fZmxvYXQgKFtD Q29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSByZWYgZmxvYXQgZGVzdFszXSk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUu VmVjMz8geF9heGlzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGlj IHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLlZlYzM/IHlfYXhpcyAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5WZWMzPyB6 X2F4aXMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgc3RhdGlj IHVub3duZWQgR3JhcGhlbmUuVmVjMz8gemVybyAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfdmVjNF90 IiwgdHlwZV9pZCA9ICJncmFwaGVuZV92ZWM0X2dldF90eXBlICgpIildCisrCXB1YmxpYyBzdHJ1 Y3QgVmVjNCB7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhl bmUuVmVjNCBhZGQgKEdyYXBoZW5lLlZlYzQgYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjNCBkaXZpZGUgKEdyYXBoZW5lLlZlYzQgYik7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgZG90IChHcmFwaGVu ZS5WZWM0IGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIGJvb2wg ZXF1YWwgKEdyYXBoZW5lLlZlYzQgdjIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwkJcHVibGljIGZsb2F0IGdldF93ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwkJcHVibGljIGZsb2F0IGdldF94ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwkJcHVibGljIEdyYXBoZW5lLlZlYzIgZ2V0X3h5ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzMgZ2V0X3h5eiAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfeSAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfeiAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlZlYzQ/IGluaXQg KGZsb2F0IHgsIGZsb2F0IHksIGZsb2F0IHosIGZsb2F0IHcpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuVmVjND8gaW5pdF9mcm9tX2Zs b2F0IChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gZmxvYXQgc3JjWzRdKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlZlYzQ/ IGluaXRfZnJvbV92ZWMyIChHcmFwaGVuZS5WZWMyIHNyYywgZmxvYXQgeiwgZmxvYXQgdyk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5W ZWM0PyBpbml0X2Zyb21fdmVjMyAoR3JhcGhlbmUuVmVjMyBzcmMsIGZsb2F0IHcpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuVmVjND8g aW5pdF9mcm9tX3ZlYzQgKEdyYXBoZW5lLlZlYzQgc3JjKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEwIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjNCBpbnRlcnBvbGF0ZSAoR3JhcGhlbmUu VmVjNCB2MiwgZG91YmxlIGZhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisr CQlwdWJsaWMgZmxvYXQgbGVuZ3RoICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwkJcHVibGljIEdyYXBoZW5lLlZlYzQgbWF4IChHcmFwaGVuZS5WZWM0IGIpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzQgbWluIChHcmFwaGVu ZS5WZWM0IGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBo ZW5lLlZlYzQgbXVsdGlwbHkgKEdyYXBoZW5lLlZlYzQgYik7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4yIildCisrCQlwdWJsaWMgYm9vbCBuZWFyIChHcmFwaGVuZS5WZWM0IHYyLCBmbG9hdCBl cHNpbG9uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBHcmFwaGVu ZS5WZWM0IG5lZ2F0ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1Ymxp YyBHcmFwaGVuZS5WZWM0IG5vcm1hbGl6ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5WZWM0PyBvbmUgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjNCBzY2FsZSAo ZmxvYXQgZmFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBH cmFwaGVuZS5WZWM0IHN1YnRyYWN0IChHcmFwaGVuZS5WZWM0IGIpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgdG9fZmxvYXQgKFtDQ29kZSAoYXJyYXlfbGVu Z3RoID0gZmFsc2UpXSByZWYgZmxvYXQgZGVzdFs0XSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4wIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuVmVjND8gd19heGlzICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVk IEdyYXBoZW5lLlZlYzQ/IHhfYXhpcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0K KysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5WZWM0PyB5X2F4aXMgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhl bmUuVmVjND8gel9heGlzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVi bGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLlZlYzQ/IHplcm8gKCk7CisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdyYXBo ZW5lX2V1bGVyX29yZGVyX3QiLCBjcHJlZml4ID0gIkdSQVBIRU5FX0VVTEVSX09SREVSXyIsIGhh c190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCXB1Ymxp YyBlbnVtIEV1bGVyT3JkZXIgeworKwkJREVGQVVMVCwKKysJCVhZWiwKKysJCVlaWCwKKysJCVpY WSwKKysJCVhaWSwKKysJCVlYWiwKKysJCVpZWCwKKysJCVNYWVosCisrCQlTWFlYLAorKwkJU1ha WSwKKysJCVNYWlgsCisrCQlTWVpYLAorKwkJU1laWSwKKysJCVNZWFosCisrCQlTWVhZLAorKwkJ U1pYWSwKKysJCVNaWFosCisrCQlTWllYLAorKwkJU1pZWiwKKysJCVJaWVgsCisrCQlSWFlYLAor KwkJUllaWCwKKysJCVJYWlgsCisrCQlSWFpZLAorKwkJUllaWSwKKysJCVJaWFksCisrCQlSWVhZ LAorKwkJUllYWiwKKysJCVJaWFosCisrCQlSWFlaLAorKwkJUlpZWgorKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJncmFwaGVu ZV9yYXlfaW50ZXJzZWN0aW9uX2tpbmRfdCIsIGNwcmVmaXggPSAiR1JBUEhFTkVfUkFZX0lOVEVS U0VDVElPTl9LSU5EXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMCIpXQorKwlwdWJsaWMgZW51bSBSYXlJbnRlcnNlY3Rpb25LaW5kIHsKKysJCU5PTkUs CisrCQlFTlRFUiwKKysJCUxFQVZFCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gIkdSQVBIRU5FX0hBU19HQ0MiKV0KKysJcHVi bGljIGNvbnN0IGludCBIQVNfR0NDOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3Jh cGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiR1JBUEhFTkVfSEFTX1NDQUxBUiIpXQorKwlwdWJs aWMgY29uc3QgaW50IEhBU19TQ0FMQVI7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJn cmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJHUkFQSEVORV9IQVNfU1NFIildCisrCXB1Ymxp YyBjb25zdCBpbnQgSEFTX1NTRTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBo ZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gIkdSQVBIRU5FX1BJIildCisrCXB1YmxpYyBjb25zdCBk b3VibGUgUEk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0 LmgiLCBjbmFtZSA9ICJHUkFQSEVORV9QSV8yIildCisrCXB1YmxpYyBjb25zdCBkb3VibGUgUElf MjsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNu YW1lID0gIkdSQVBIRU5FX1NJTURfUyIpXQorKwlwdWJsaWMgY29uc3Qgc3RyaW5nIFNJTURfUzsK KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1l ID0gIkdSQVBIRU5FX1ZFQzJfTEVOIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJ cHVibGljIGNvbnN0IGludCBWRUMyX0xFTjsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gIkdSQVBIRU5FX1ZFQzNfTEVOIildCisrCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGNvbnN0IGludCBWRUMzX0xFTjsKKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0g IkdSQVBIRU5FX1ZFQzRfTEVOIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVi bGljIGNvbnN0IGludCBWRUM0X0xFTjsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdy YXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImZhbHNlIildCisrCXB1YmxpYyBjb25zdCBpbnQg QGZhbHNlOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5o IiwgY25hbWUgPSAidHJ1ZSIpXQorKwlwdWJsaWMgY29uc3QgaW50IEB0cnVlOworK30KK2RpZmYg LS1naXQgYS92YXBpL2xpYm11dHRlci02LmRlcHMgYi92YXBpL2xpYm11dHRlci02LmRlcHMKK25l dyBmaWxlIG1vZGUgMTAwNjQ0CitpbmRleCAwMDAwMDAwMC4uMjIzNTI1ZTQKKy0tLSAvZGV2L251 bGwKKysrKyBiL3ZhcGkvbGlibXV0dGVyLTYuZGVwcworQEAgLTAsMCArMSw2IEBACisrZ3RrKy0z LjAKKytqc29uLWdsaWItMS4wCisrbXV0dGVyLWNsdXR0ZXItNgorK3gxMQorK3hmaXhlcy00LjAK KytncmFwaGVuZS1nb2JqZWN0LTEuMAorZGlmZiAtLWdpdCBhL3ZhcGkvbGlibXV0dGVyLTYudmFw aSBiL3ZhcGkvbGlibXV0dGVyLTYudmFwaQorbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAw MDAwMDAwLi4zMWY0ODAxYworLS0tIC9kZXYvbnVsbAorKysrIGIvdmFwaS9saWJtdXR0ZXItNi52 YXBpCitAQCAtMCwwICsxLDE0NzUgQEAKKysvKiBsaWJtdXR0ZXItNi52YXBpIGdlbmVyYXRlZCBi eSB2YXBpZ2VuLCBkbyBub3QgbW9kaWZ5LiAqLworKworK1tDQ29kZSAoY3ByZWZpeCA9ICJNZXRh IiwgZ2lyX25hbWVzcGFjZSA9ICJNZXRhIiwgZ2lyX3ZlcnNpb24gPSAiNiIsIGxvd2VyX2Nhc2Vf Y3ByZWZpeCA9ICJtZXRhXyIpXQorK25hbWVzcGFjZSBNZXRhIHsKKysJbmFtZXNwYWNlIENvbXBv c2l0b3IgeworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvY29tcG9zaXRvci1t dXR0ZXIuaCIsIGNuYW1lID0gIm1ldGFfZGlzYWJsZV91bnJlZGlyZWN0X2Zvcl9kaXNwbGF5Iild CisrCQlwdWJsaWMgc3RhdGljIHZvaWQgZGlzYWJsZV91bnJlZGlyZWN0X2Zvcl9kaXNwbGF5IChN ZXRhLkRpc3BsYXkgZGlzcGxheSk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0 YS9jb21wb3NpdG9yLW11dHRlci5oIiwgY25hbWUgPSAibWV0YV9lbmFibGVfdW5yZWRpcmVjdF9m b3JfZGlzcGxheSIpXQorKwkJcHVibGljIHN0YXRpYyB2b2lkIGVuYWJsZV91bnJlZGlyZWN0X2Zv cl9kaXNwbGF5IChNZXRhLkRpc3BsYXkgZGlzcGxheSk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAibWV0YS9jb21wb3NpdG9yLW11dHRlci5oIiwgY25hbWUgPSAibWV0YV9mb2N1c19z dGFnZV93aW5kb3ciKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBmb2N1c19zdGFnZV93aW5kb3cg KE1ldGEuRGlzcGxheSBkaXNwbGF5LCB1aW50MzIgdGltZXN0YW1wKTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJtZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgiLCBjbmFtZSA9ICJtZXRh X2dldF9mZWVkYmFja19ncm91cF9mb3JfZGlzcGxheSIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93 bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X2ZlZWRiYWNrX2dyb3VwX2Zvcl9kaXNwbGF5IChNZXRhLkRp c3BsYXkgZGlzcGxheSk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9jb21w b3NpdG9yLW11dHRlci5oIiwgY25hbWUgPSAibWV0YV9nZXRfc3RhZ2VfZm9yX2Rpc3BsYXkiKV0K KysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF9zdGFnZV9mb3JfZGlz cGxheSAoTWV0YS5EaXNwbGF5IGRpc3BsYXkpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gIm1ldGEvY29tcG9zaXRvci1tdXR0ZXIuaCIsIGNuYW1lID0gIm1ldGFfZ2V0X3RvcF93aW5k b3dfZ3JvdXBfZm9yX2Rpc3BsYXkiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0dGVy LkFjdG9yIGdldF90b3Bfd2luZG93X2dyb3VwX2Zvcl9kaXNwbGF5IChNZXRhLkRpc3BsYXkgZGlz cGxheSk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9jb21wb3NpdG9yLW11 dHRlci5oIiwgY25hbWUgPSAibWV0YV9nZXRfd2luZG93X2FjdG9ycyIpXQorKwkJcHVibGljIHN0 YXRpYyB1bm93bmVkIEdMaWIuTGlzdDxDbHV0dGVyLkFjdG9yPiBnZXRfd2luZG93X2FjdG9ycyAo TWV0YS5EaXNwbGF5IGRpc3BsYXkpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1l dGEvY29tcG9zaXRvci1tdXR0ZXIuaCIsIGNuYW1lID0gIm1ldGFfZ2V0X3dpbmRvd19ncm91cF9m b3JfZGlzcGxheSIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0 X3dpbmRvd19ncm91cF9mb3JfZGlzcGxheSAoTWV0YS5EaXNwbGF5IGRpc3BsYXkpOworKwl9Cisr CW5hbWVzcGFjZSBQcmVmcyB7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9w cmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19iZWxsX2lzX2F1ZGlibGUiKV0KKysJCXB1Ymxp YyBzdGF0aWMgYm9vbCBwcmVmc19iZWxsX2lzX2F1ZGlibGUgKCk7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19jaGFuZ2Vf d29ya3NwYWNlX25hbWUiKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBwcmVmc19jaGFuZ2Vfd29y a3NwYWNlX25hbWUgKGludCBpLCBzdHJpbmcgbmFtZSk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfYWN0aW9uX2Rv dWJsZV9jbGlja190aXRsZWJhciIpXQorKwkJcHVibGljIHN0YXRpYyBHRGVza3RvcC5UaXRsZWJh ckFjdGlvbiBwcmVmc19nZXRfYWN0aW9uX2RvdWJsZV9jbGlja190aXRsZWJhciAoKTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3By ZWZzX2dldF9hY3Rpb25fbWlkZGxlX2NsaWNrX3RpdGxlYmFyIildCisrCQlwdWJsaWMgc3RhdGlj IEdEZXNrdG9wLlRpdGxlYmFyQWN0aW9uIHByZWZzX2dldF9hY3Rpb25fbWlkZGxlX2NsaWNrX3Rp dGxlYmFyICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIs IGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X2FjdGlvbl9yaWdodF9jbGlja190aXRsZWJhciIpXQor KwkJcHVibGljIHN0YXRpYyBHRGVza3RvcC5UaXRsZWJhckFjdGlvbiBwcmVmc19nZXRfYWN0aW9u X3JpZ2h0X2NsaWNrX3RpdGxlYmFyICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g Im1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X2F0dGFjaF9tb2RhbF9kaWFs b2dzIildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wgcHJlZnNfZ2V0X2F0dGFjaF9tb2RhbF9kaWFs b2dzICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNu YW1lID0gIm1ldGFfcHJlZnNfZ2V0X2F1dG9fbWF4aW1pemUiKV0KKysJCXB1YmxpYyBzdGF0aWMg Ym9vbCBwcmVmc19nZXRfYXV0b19tYXhpbWl6ZSAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9hdXRvX3JhaXNl IildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wgcHJlZnNfZ2V0X2F1dG9fcmFpc2UgKCk7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9w cmVmc19nZXRfYXV0b19yYWlzZV9kZWxheSIpXQorKwkJcHVibGljIHN0YXRpYyBpbnQgcHJlZnNf Z2V0X2F1dG9fcmFpc2VfZGVsYXkgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi bWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfYnV0dG9uX2xheW91dCIpXQor KwkJcHVibGljIHN0YXRpYyBNZXRhLkJ1dHRvbkxheW91dCBwcmVmc19nZXRfYnV0dG9uX2xheW91 dCAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFt ZSA9ICJtZXRhX3ByZWZzX2dldF9jZW50ZXJfbmV3X3dpbmRvd3MiKV0KKysJCXB1YmxpYyBzdGF0 aWMgYm9vbCBwcmVmc19nZXRfY2VudGVyX25ld193aW5kb3dzICgpOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X2Nv bXBvc2l0aW5nX21hbmFnZXIiKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBwcmVmc19nZXRfY29t cG9zaXRpbmdfbWFuYWdlciAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRh L3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9jdXJzb3Jfc2l6ZSIpXQorKwkJcHVi bGljIHN0YXRpYyBpbnQgcHJlZnNfZ2V0X2N1cnNvcl9zaXplICgpOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X2N1 cnNvcl90aGVtZSIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIHN0cmluZyBwcmVmc19nZXRf Y3Vyc29yX3RoZW1lICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJl ZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X2Rpc2FibGVfd29ya2Fyb3VuZHMiKV0KKysJ CXB1YmxpYyBzdGF0aWMgYm9vbCBwcmVmc19nZXRfZGlzYWJsZV93b3JrYXJvdW5kcyAoKTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRh X3ByZWZzX2dldF9kcmFnX3RocmVzaG9sZCIpXQorKwkJcHVibGljIHN0YXRpYyBpbnQgcHJlZnNf Z2V0X2RyYWdfdGhyZXNob2xkICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1l dGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X2RyYWdnYWJsZV9ib3JkZXJfd2lk dGgiKV0KKysJCXB1YmxpYyBzdGF0aWMgaW50IHByZWZzX2dldF9kcmFnZ2FibGVfYm9yZGVyX3dp ZHRoICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNu YW1lID0gIm1ldGFfcHJlZnNfZ2V0X2R5bmFtaWNfd29ya3NwYWNlcyIpXQorKwkJcHVibGljIHN0 YXRpYyBib29sIHByZWZzX2dldF9keW5hbWljX3dvcmtzcGFjZXMgKCk7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRf ZWRnZV90aWxpbmciKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBwcmVmc19nZXRfZWRnZV90aWxp bmcgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25h bWUgPSAibWV0YV9wcmVmc19nZXRfZm9jdXNfY2hhbmdlX29uX3BvaW50ZXJfcmVzdCIpXQorKwkJ cHVibGljIHN0YXRpYyBib29sIHByZWZzX2dldF9mb2N1c19jaGFuZ2Vfb25fcG9pbnRlcl9yZXN0 ICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1l ID0gIm1ldGFfcHJlZnNfZ2V0X2ZvY3VzX21vZGUiKV0KKysJCXB1YmxpYyBzdGF0aWMgR0Rlc2t0 b3AuRm9jdXNNb2RlIHByZWZzX2dldF9mb2N1c19tb2RlICgpOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X2ZvY3Vz X25ld193aW5kb3dzIildCisrCQlwdWJsaWMgc3RhdGljIEdEZXNrdG9wLkZvY3VzTmV3V2luZG93 cyBwcmVmc19nZXRfZm9jdXNfbmV3X3dpbmRvd3MgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfZm9yY2VfZnVs bHNjcmVlbiIpXQorKwkJcHVibGljIHN0YXRpYyBib29sIHByZWZzX2dldF9mb3JjZV9mdWxsc2Ny ZWVuICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNu YW1lID0gIm1ldGFfcHJlZnNfZ2V0X2dub21lX2FjY2Vzc2liaWxpdHkiKV0KKysJCXB1YmxpYyBz dGF0aWMgYm9vbCBwcmVmc19nZXRfZ25vbWVfYWNjZXNzaWJpbGl0eSAoKTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dl dF9nbm9tZV9hbmltYXRpb25zIildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wgcHJlZnNfZ2V0X2du b21lX2FuaW1hdGlvbnMgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9w cmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfa2V5YmluZGluZ19hY3Rpb24iKV0KKysJ CXB1YmxpYyBzdGF0aWMgTWV0YS5LZXlCaW5kaW5nQWN0aW9uIHByZWZzX2dldF9rZXliaW5kaW5n X2FjdGlvbiAoc3RyaW5nIG5hbWUpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1l dGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X21vdXNlX2J1dHRvbl9tZW51Iild CisrCQlwdWJsaWMgc3RhdGljIGludCBwcmVmc19nZXRfbW91c2VfYnV0dG9uX21lbnUgKCk7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0 YV9wcmVmc19nZXRfbW91c2VfYnV0dG9uX21vZHMiKV0KKysJCXB1YmxpYyBzdGF0aWMgTWV0YS5W aXJ0dWFsTW9kaWZpZXIgcHJlZnNfZ2V0X21vdXNlX2J1dHRvbl9tb2RzICgpOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNf Z2V0X21vdXNlX2J1dHRvbl9yZXNpemUiKV0KKysJCXB1YmxpYyBzdGF0aWMgaW50IHByZWZzX2dl dF9tb3VzZV9idXR0b25fcmVzaXplICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g Im1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X251bV93b3Jrc3BhY2VzIild CisrCQlwdWJsaWMgc3RhdGljIGludCBwcmVmc19nZXRfbnVtX3dvcmtzcGFjZXMgKCk7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9w cmVmc19nZXRfcmFpc2Vfb25fY2xpY2siKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBwcmVmc19n ZXRfcmFpc2Vfb25fY2xpY2sgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0 YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfc2hvd19mYWxsYmFja19hcHBfbWVu dSIpXQorKwkJcHVibGljIHN0YXRpYyBib29sIHByZWZzX2dldF9zaG93X2ZhbGxiYWNrX2FwcF9t ZW51ICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNu YW1lID0gIm1ldGFfcHJlZnNfZ2V0X3RpdGxlYmFyX2ZvbnQiKV0KKysJCXB1YmxpYyBzdGF0aWMg dW5vd25lZCBQYW5nby5Gb250RGVzY3JpcHRpb24gcHJlZnNfZ2V0X3RpdGxlYmFyX2ZvbnQgKCk7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAi bWV0YV9wcmVmc19nZXRfdmlzdWFsX2JlbGwiKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBwcmVm c19nZXRfdmlzdWFsX2JlbGwgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0 YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfdmlzdWFsX2JlbGxfdHlwZSIpXQor KwkJcHVibGljIHN0YXRpYyBHRGVza3RvcC5WaXN1YWxCZWxsVHlwZSBwcmVmc19nZXRfdmlzdWFs X2JlbGxfdHlwZSAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZz LmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF93b3Jrc3BhY2VfbmFtZSIpXQorKwkJcHVibGlj IHN0YXRpYyB1bm93bmVkIHN0cmluZyBwcmVmc19nZXRfd29ya3NwYWNlX25hbWUgKGludCBpKTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJt ZXRhX3ByZWZzX2dldF93b3Jrc3BhY2VzX29ubHlfb25fcHJpbWFyeSIpXQorKwkJcHVibGljIHN0 YXRpYyBib29sIHByZWZzX2dldF93b3Jrc3BhY2VzX29ubHlfb25fcHJpbWFyeSAoKTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3By ZWZzX2luaXQiKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBwcmVmc19pbml0ICgpOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJl ZnNfc2V0X2ZvcmNlX2Z1bGxzY3JlZW4iKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBwcmVmc19z ZXRfZm9yY2VfZnVsbHNjcmVlbiAoYm9vbCB3aGV0aGVyKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX3NldF9udW1fd29y a3NwYWNlcyIpXQorKwkJcHVibGljIHN0YXRpYyB2b2lkIHByZWZzX3NldF9udW1fd29ya3NwYWNl cyAoaW50IG5fd29ya3NwYWNlcyk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0 YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19zZXRfc2hvd19mYWxsYmFja19hcHBfbWVu dSIpXQorKwkJcHVibGljIHN0YXRpYyB2b2lkIHByZWZzX3NldF9zaG93X2ZhbGxiYWNrX2FwcF9t ZW51IChib29sIHdoZXRoZXIpOworKwl9CisrCW5hbWVzcGFjZSBVdGlsIHsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3V0aWwuaCIsIGNuYW1lID0gIm1ldGFfYWRkX3ZlcmJv c2VfdG9waWMiKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBhZGRfdmVyYm9zZV90b3BpYyAoTWV0 YS5EZWJ1Z1RvcGljIHRvcGljKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRh L3V0aWwuaCIsIGNuYW1lID0gIm1ldGFfZXh0ZXJuYWxfYmluZGluZ19uYW1lX2Zvcl9hY3Rpb24i KV0KKysJCXB1YmxpYyBzdGF0aWMgc3RyaW5nIGV4dGVybmFsX2JpbmRpbmdfbmFtZV9mb3JfYWN0 aW9uICh1aW50IGtleWJpbmRpbmdfYWN0aW9uKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJtZXRhL3V0aWwuaCIsIGNuYW1lID0gIm1ldGFfZ2V0X2xvY2FsZV9kaXJlY3Rpb24iKV0K KysJCXB1YmxpYyBzdGF0aWMgTWV0YS5Mb2NhbGVEaXJlY3Rpb24gZ2V0X2xvY2FsZV9kaXJlY3Rp b24gKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFt ZSA9ICJtZXRhX2dyYXZpdHlfdG9fc3RyaW5nIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQg c3RyaW5nIGdyYXZpdHlfdG9fc3RyaW5nIChpbnQgZ3Jhdml0eSk7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX2lzX2RlYnVnZ2luZyIp XQorKwkJcHVibGljIHN0YXRpYyBib29sIGlzX2RlYnVnZ2luZyAoKTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJtZXRhL3V0aWwuaCIsIGNuYW1lID0gIm1ldGFfaXNfc3luY2luZyIp XQorKwkJcHVibGljIHN0YXRpYyBib29sIGlzX3N5bmNpbmcgKCk7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX2lzX3ZlcmJvc2UiKV0K KysJCXB1YmxpYyBzdGF0aWMgYm9vbCBpc192ZXJib3NlICgpOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gIm1ldGEvdXRpbC5oIiwgY25hbWUgPSAibWV0YV9pc193YXlsYW5kX2NvbXBv c2l0b3IiKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBpc193YXlsYW5kX2NvbXBvc2l0b3IgKCk7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJt ZXRhX2xhdGVyX2FkZCIpXQorKwkJcHVibGljIHN0YXRpYyB1aW50IGxhdGVyX2FkZCAoTWV0YS5M YXRlclR5cGUgd2hlbiwgb3duZWQgR0xpYi5Tb3VyY2VGdW5jIGZ1bmMpOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRpbC5oIiwgY25hbWUgPSAibWV0YV9sYXRlcl9yZW1v dmUiKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBsYXRlcl9yZW1vdmUgKHVpbnQgbGF0ZXJfaWQp OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRpbC5oIiwgY25hbWUgPSAi bWV0YV9wb3Bfbm9fbXNnX3ByZWZpeCIpXQorKwkJcHVibGljIHN0YXRpYyB2b2lkIHBvcF9ub19t c2dfcHJlZml4ICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRpbC5o IiwgY25hbWUgPSAibWV0YV9wdXNoX25vX21zZ19wcmVmaXgiKV0KKysJCXB1YmxpYyBzdGF0aWMg dm9pZCBwdXNoX25vX21zZ19wcmVmaXggKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX3JlY3QiKV0KKysJCXB1YmxpYyBzdGF0aWMg TWV0YS5SZWN0YW5nbGU/IHJlY3QgKGludCB4LCBpbnQgeSwgaW50IHdpZHRoLCBpbnQgaGVpZ2h0 KTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3V0aWwuaCIsIGNuYW1lID0g Im1ldGFfcmVtb3ZlX3ZlcmJvc2VfdG9waWMiKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCByZW1v dmVfdmVyYm9zZV90b3BpYyAoTWV0YS5EZWJ1Z1RvcGljIHRvcGljKTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJtZXRhL3V0aWwuaCIsIGNuYW1lID0gIm1ldGFfc2hvd19kaWFsb2ci KV0KKysJCXB1YmxpYyBzdGF0aWMgR0xpYi5QaWQgc2hvd19kaWFsb2cgKHN0cmluZyB0eXBlLCBz dHJpbmcgbWVzc2FnZSwgc3RyaW5nIHRpbWVvdXQsIHN0cmluZyBkaXNwbGF5LCBzdHJpbmcgb2tf dGV4dCwgc3RyaW5nIGNhbmNlbF90ZXh0LCBzdHJpbmcgaWNvbl9uYW1lLCBpbnQgdHJhbnNpZW50 X2ZvciwgR0xpYi5TTGlzdDx2b2lkKj4gY29sdW1ucywgR0xpYi5TTGlzdDx2b2lkKj4gZW50cmll cyk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9 ICJtZXRhX3Vuc2lnbmVkX2xvbmdfZXF1YWwiKV0KKysJCXB1YmxpYyBzdGF0aWMgaW50IHVuc2ln bmVkX2xvbmdfZXF1YWwgKHZvaWQqIHYxLCB2b2lkKiB2Mik7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX3Vuc2lnbmVkX2xvbmdfaGFz aCIpXQorKwkJcHVibGljIHN0YXRpYyB1aW50IHVuc2lnbmVkX2xvbmdfaGFzaCAodm9pZCogdik7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJt ZXRhX3gxMV9lcnJvcl90cmFwX3BvcCIpXQorKwkJcHVibGljIHN0YXRpYyB2b2lkIHgxMV9lcnJv cl90cmFwX3BvcCAoTWV0YS5YMTFEaXNwbGF5IHgxMV9kaXNwbGF5KTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJtZXRhL3V0aWwuaCIsIGNuYW1lID0gIm1ldGFfeDExX2Vycm9yX3Ry YXBfcG9wX3dpdGhfcmV0dXJuIildCisrCQlwdWJsaWMgc3RhdGljIGludCB4MTFfZXJyb3JfdHJh cF9wb3Bfd2l0aF9yZXR1cm4gKE1ldGEuWDExRGlzcGxheSB4MTFfZGlzcGxheSk7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX3gxMV9l cnJvcl90cmFwX3B1c2giKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCB4MTFfZXJyb3JfdHJhcF9w dXNoIChNZXRhLlgxMURpc3BsYXkgeDExX2Rpc3BsYXkpOworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJtZXRhL21ldGEtYmFja2VuZC5oIiwgdHlwZV9pZCA9ICJtZXRhX2JhY2tl bmRfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGFic3RyYWN0IGNsYXNzIEJhY2tlbmQgOiBHTGli Lk9iamVjdCwgR0xpYi5Jbml0YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rp b24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgQmFja2VuZCAoKTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJtZXRhL21ldGEtYmFja2VuZC5oIiwgY25hbWUgPSAibWV0YV9nZXRfYmFj a2VuZCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIE1ldGEuQmFja2VuZCBnZXRfYmFja2Vu ZCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIE1ldGEuRG5kIGdldF9kbmQgKCk7CisrCQlwdWJsaWMg dW5vd25lZCBNZXRhLlJlbW90ZUFjY2Vzc0NvbnRyb2xsZXIgZ2V0X3JlbW90ZV9hY2Nlc3NfY29u dHJvbGxlciAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X3N0YWdlICgp OworKwkJcHVibGljIHZvaWQgbG9ja19sYXlvdXRfZ3JvdXAgKHVpbnQgaWR4KTsKKysJCXB1Ymxp YyB2b2lkIHNldF9rZXltYXAgKHN0cmluZyBsYXlvdXRzLCBzdHJpbmcgdmFyaWFudHMsIHN0cmlu ZyBvcHRpb25zKTsKKysJCXB1YmxpYyB2b2lkIHNldF9udW1sb2NrIChib29sIG51bWxvY2tfc3Rh dGUpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGtleW1hcF9jaGFuZ2VkICgpOworKwkJcHVibGlj IHNpZ25hbCB2b2lkIGtleW1hcF9sYXlvdXRfZ3JvdXBfY2hhbmdlZCAodWludCBvYmplY3QpOwor KwkJcHVibGljIHNpZ25hbCB2b2lkIGxhc3RfZGV2aWNlX2NoYW5nZWQgKENsdXR0ZXIuSW5wdXRE ZXZpY2Ugb2JqZWN0KTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBsaWRfaXNfY2xvc2VkX2NoYW5n ZWQgKGJvb2wgb2JqZWN0KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0 YS9tZXRhLWJhY2tncm91bmQuaCIsIHR5cGVfaWQgPSAibWV0YV9iYWNrZ3JvdW5kX2dldF90eXBl ICgpIildCisrCXB1YmxpYyBjbGFzcyBCYWNrZ3JvdW5kIDogR0xpYi5PYmplY3QgeworKwkJW0ND b2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHVibGljIEJhY2tncm91 bmQgKE1ldGEuRGlzcGxheSBkaXNwbGF5KTsKKysJCXB1YmxpYyBzdGF0aWMgdm9pZCByZWZyZXNo X2FsbCAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9ibGVuZCAoR0xpYi5GaWxlIGZpbGUxLCBHTGli LkZpbGUgZmlsZTIsIGRvdWJsZSBibGVuZF9mYWN0b3IsIEdEZXNrdG9wLkJhY2tncm91bmRTdHls ZSBzdHlsZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfY29sb3IgKENsdXR0ZXIuQ29sb3IgY29sb3Ip OworKwkJcHVibGljIHZvaWQgc2V0X2ZpbGUgKEdMaWIuRmlsZT8gZmlsZSwgR0Rlc2t0b3AuQmFj a2dyb3VuZFN0eWxlIHN0eWxlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9ncmFkaWVudCAoR0Rlc2t0 b3AuQmFja2dyb3VuZFNoYWRpbmcgc2hhZGluZ19kaXJlY3Rpb24sIENsdXR0ZXIuQ29sb3IgY29s b3IsIENsdXR0ZXIuQ29sb3Igc2Vjb25kX2NvbG9yKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQor KwkJcHVibGljIE1ldGEuRGlzcGxheSBtZXRhX2Rpc3BsYXkgeyBvd25lZCBnZXQ7IGNvbnN0cnVj dDsgfQorKwkJcHVibGljIHNpZ25hbCB2b2lkIGNoYW5nZWQgKCk7CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1iYWNrZ3JvdW5kLWFjdG9yLmgiLCB0eXBlX2lk ID0gIm1ldGFfYmFja2dyb3VuZF9hY3Rvcl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3Mg QmFja2dyb3VuZEFjdG9yIDogQ2x1dHRlci5BY3RvciwgQXRrLkltcGxlbWVudG9yLCBDbHV0dGVy LkFuaW1hdGFibGUsIENsdXR0ZXIuQ29udGFpbmVyLCBDbHV0dGVyLlNjcmlwdGFibGUgeworKwkJ W0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFj dG9yKiIpXQorKwkJcHVibGljIEJhY2tncm91bmRBY3RvciAoTWV0YS5EaXNwbGF5IGRpc3BsYXks IGludCBtb25pdG9yKTsKKysJCXB1YmxpYyB2b2lkIHNldF9iYWNrZ3JvdW5kIChNZXRhLkJhY2tn cm91bmQgYmFja2dyb3VuZCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfZ3JhZGllbnQgKGJvb2wgZW5h YmxlZCwgaW50IGhlaWdodCwgZG91YmxlIHRvbmVfc3RhcnQpOworKwkJcHVibGljIHZvaWQgc2V0 X21vbml0b3IgKGludCBtb25pdG9yKTsKKysJCXB1YmxpYyB2b2lkIHNldF92aWduZXR0ZSAoYm9v bCBlbmFibGVkLCBkb3VibGUgYnJpZ2h0bmVzcywgZG91YmxlIHNoYXJwbmVzcyk7CisrCQlbTm9B Y2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBNZXRhLkJhY2tncm91bmQgYmFja2dyb3VuZCB7IG93 bmVkIGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBkb3VibGUg YnJpZ2h0bmVzcyB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1Ymxp YyBib29sIGdyYWRpZW50IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJ cHVibGljIGludCBncmFkaWVudF9oZWlnaHQgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JN ZXRob2RdCisrCQlwdWJsaWMgZG91YmxlIGdyYWRpZW50X21heF9kYXJrbmVzcyB7IGdldDsgc2V0 OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBNZXRhLkRpc3BsYXkgbWV0YV9k aXNwbGF5IHsgb3duZWQgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQor KwkJcHVibGljIGludCBtb25pdG9yIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtOb0FjY2Vzc29y TWV0aG9kXQorKwkJcHVibGljIGJvb2wgdmlnbmV0dGUgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNj ZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgZG91YmxlIHZpZ25ldHRlX3NoYXJwbmVzcyB7IGdldDsg c2V0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1iYWNr Z3JvdW5kLWdyb3VwLmgiLCB0eXBlX2lkID0gIm1ldGFfYmFja2dyb3VuZF9ncm91cF9nZXRfdHlw ZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgQmFja2dyb3VuZEdyb3VwIDogQ2x1dHRlci5BY3Rvciwg QXRrLkltcGxlbWVudG9yLCBDbHV0dGVyLkFuaW1hdGFibGUsIENsdXR0ZXIuQ29udGFpbmVyLCBD bHV0dGVyLlNjcmlwdGFibGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0g ZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFjdG9yKiIpXQorKwkJcHVibGljIEJhY2tncm91bmRHcm91 cCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLWJhY2tn cm91bmQtaW1hZ2UuaCIsIHR5cGVfaWQgPSAibWV0YV9iYWNrZ3JvdW5kX2ltYWdlX2dldF90eXBl ICgpIildCisrCXB1YmxpYyBjbGFzcyBCYWNrZ3JvdW5kSW1hZ2UgOiBHTGliLk9iamVjdCB7Cisr CQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQg QmFja2dyb3VuZEltYWdlICgpOworKwkJcHVibGljIGJvb2wgZ2V0X3N1Y2Nlc3MgKCk7CisrCQlw dWJsaWMgdW5vd25lZCBDb2dsLlRleHR1cmUgZ2V0X3RleHR1cmUgKCk7CisrCQlwdWJsaWMgYm9v bCBpc19sb2FkZWQgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgbG9hZGVkICgpOworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtYmFja2dyb3VuZC1pbWFnZS5o IiwgdHlwZV9pZCA9ICJtZXRhX2JhY2tncm91bmRfaW1hZ2VfY2FjaGVfZ2V0X3R5cGUgKCkiKV0K KysJcHVibGljIGNsYXNzIEJhY2tncm91bmRJbWFnZUNhY2hlIDogR0xpYi5PYmplY3QgeworKwkJ W0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIEJh Y2tncm91bmRJbWFnZUNhY2hlICgpOworKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIE1ldGEuQmFj a2dyb3VuZEltYWdlQ2FjaGUgZ2V0X2RlZmF1bHQgKCk7CisrCQlwdWJsaWMgTWV0YS5CYWNrZ3Jv dW5kSW1hZ2UgbG9hZCAoR0xpYi5GaWxlIGZpbGUpOworKwkJcHVibGljIHZvaWQgcHVyZ2UgKEdM aWIuRmlsZSBmaWxlKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9i YXJyaWVyLmgiLCB0eXBlX2lkID0gIm1ldGFfYmFycmllcl9nZXRfdHlwZSAoKSIpXQorKwlwdWJs aWMgY2xhc3MgQmFycmllciA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVj dF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBCYXJyaWVyICgpOworKwkJcHVibGlj IHZvaWQgZGVzdHJveSAoKTsKKysJCXB1YmxpYyBib29sIGlzX2FjdGl2ZSAoKTsKKysJCXB1Ymxp YyB2b2lkIHJlbGVhc2UgKE1ldGEuQmFycmllckV2ZW50IGV2ZW50KTsKKysJCVtOb0FjY2Vzc29y TWV0aG9kXQorKwkJcHVibGljIE1ldGEuQmFycmllckRpcmVjdGlvbiBkaXJlY3Rpb25zIHsgZ2V0 OyBjb25zdHJ1Y3Q7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIE1ldGEuRGlz cGxheSBkaXNwbGF5IHsgb3duZWQgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtOb0FjY2Vzc29yTWV0 aG9kXQorKwkJcHVibGljIGludCB4MSB7IGdldDsgY29uc3RydWN0OyB9CisrCQlbTm9BY2Nlc3Nv ck1ldGhvZF0KKysJCXB1YmxpYyBpbnQgeDIgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJW05vQWNj ZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgaW50IHkxIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtO b0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGludCB5MiB7IGdldDsgY29uc3RydWN0OyB9Cisr CQlwdWJsaWMgc2lnbmFsIHZvaWQgaGl0IChNZXRhLkJhcnJpZXJFdmVudCBldmVudCk7CisrCQlw dWJsaWMgc2lnbmFsIHZvaWQgbGVmdCAoTWV0YS5CYXJyaWVyRXZlbnQgZXZlbnQpOworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL2JhcnJpZXIuaCIsIGNvcHlfZnVuY3Rp b24gPSAiZ19ib3hlZF9jb3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0eXBl X2lkID0gIm1ldGFfYmFycmllcl9ldmVudF9nZXRfdHlwZSAoKSIpXQorKwlbQ29tcGFjdF0KKysJ cHVibGljIGNsYXNzIEJhcnJpZXJFdmVudCB7CisrCQlwdWJsaWMgaW50IGR0OworKwkJcHVibGlj IGRvdWJsZSBkeDsKKysJCXB1YmxpYyBkb3VibGUgZHk7CisrCQlwdWJsaWMgaW50IGV2ZW50X2lk OworKwkJcHVibGljIGJvb2wgZ3JhYmJlZDsKKysJCXB1YmxpYyBib29sIHJlbGVhc2VkOworKwkJ cHVibGljIHVpbnQzMiB0aW1lOworKwkJcHVibGljIGRvdWJsZSB4OworKwkJcHVibGljIGRvdWJs ZSB5OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtY3Vyc29y LXRyYWNrZXIuaCIsIHR5cGVfaWQgPSAibWV0YV9jdXJzb3JfdHJhY2tlcl9nZXRfdHlwZSAoKSIp XQorKwlwdWJsaWMgY2xhc3MgQ3Vyc29yVHJhY2tlciA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29k ZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBDdXJzb3JU cmFja2VyICgpOworKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIE1ldGEuQ3Vyc29yVHJhY2tlciBn ZXRfZm9yX2Rpc3BsYXkgKE1ldGEuRGlzcGxheSBkaXNwbGF5KTsKKysJCXB1YmxpYyB2b2lkIGdl dF9ob3QgKG91dCBpbnQgeCwgb3V0IGludCB5KTsKKysJCXB1YmxpYyB2b2lkIGdldF9wb2ludGVy IChpbnQgeCwgaW50IHksIENsdXR0ZXIuTW9kaWZpZXJUeXBlIG1vZHMpOworKwkJcHVibGljIGJv b2wgZ2V0X3BvaW50ZXJfdmlzaWJsZSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENvZ2wuVGV4dHVy ZSBnZXRfc3ByaXRlICgpOworKwkJcHVibGljIHZvaWQgc2V0X3BvaW50ZXJfdmlzaWJsZSAoYm9v bCB2aXNpYmxlKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBjdXJzb3JfY2hhbmdlZCAoKTsKKysJ CXB1YmxpYyBzaWduYWwgdm9pZCBjdXJzb3JfbW92ZWQgKGZsb2F0IHgsIGZsb2F0IHkpOworKwkJ cHVibGljIHNpZ25hbCB2b2lkIHZpc2liaWxpdHlfY2hhbmdlZCAoKTsKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9kaXNwbGF5LmgiLCB0eXBlX2lkID0gIm1ldGFfZGlz cGxheV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgRGlzcGxheSA6IEdMaWIuT2JqZWN0 IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3Rl Y3RlZCBEaXNwbGF5ICgpOworKwkJcHVibGljIHZvaWQgYWRkX2lnbm9yZWRfY3Jvc3Npbmdfc2Vy aWFsICh1bG9uZyBzZXJpYWwpOworKwkJcHVibGljIHVpbnQgYWRkX2tleWJpbmRpbmcgKHN0cmlu ZyBuYW1lLCBHTGliLlNldHRpbmdzIHNldHRpbmdzLCBNZXRhLktleUJpbmRpbmdGbGFncyBmbGFn cywgb3duZWQgTWV0YS5LZXlIYW5kbGVyRnVuYyBoYW5kbGVyKTsKKysJCXB1YmxpYyBib29sIGJl Z2luX2dyYWJfb3AgKE1ldGEuV2luZG93IHdpbmRvdywgTWV0YS5HcmFiT3Agb3AsIGJvb2wgcG9p bnRlcl9hbHJlYWR5X2dyYWJiZWQsIGJvb2wgZnJhbWVfYWN0aW9uLCBpbnQgYnV0dG9uLCB1bG9u ZyBtb2RtYXNrLCB1aW50MzIgdGltZXN0YW1wLCBpbnQgcm9vdF94LCBpbnQgcm9vdF95KTsKKysJ CXB1YmxpYyB2b2lkIGNsZWFyX21vdXNlX21vZGUgKCk7CisrCQlwdWJsaWMgdm9pZCBjbG9zZSAo dWludDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMgdm9pZCBlbmRfZ3JhYl9vcCAodWludDMyIHRp bWVzdGFtcCk7CisrCQlwdWJsaWMgdm9pZCBmb2N1c19kZWZhdWx0X3dpbmRvdyAodWludDMyIHRp bWVzdGFtcCk7CisrCQlwdWJsaWMgdm9pZCBmcmVlemVfa2V5Ym9hcmQgKHVpbnQzMiB0aW1lc3Rh bXApOworKwkJcHVibGljIGludCBnZXRfY3VycmVudF9tb25pdG9yICgpOworKwkJcHVibGljIHVp bnQzMiBnZXRfY3VycmVudF90aW1lICgpOworKwkJcHVibGljIHVpbnQzMiBnZXRfY3VycmVudF90 aW1lX3JvdW5kdHJpcCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIE1ldGEuV2luZG93IGdldF9mb2N1 c193aW5kb3cgKCk7CisrCQlwdWJsaWMgTWV0YS5HcmFiT3AgZ2V0X2dyYWJfb3AgKCk7CisrCQlw dWJsaWMgdWludCBnZXRfa2V5YmluZGluZ19hY3Rpb24gKHVpbnQga2V5Y29kZSwgdWxvbmcgbWFz ayk7CisrCQlwdWJsaWMgdWludDMyIGdldF9sYXN0X3VzZXJfdGltZSAoKTsKKysJCXB1YmxpYyBN ZXRhLlJlY3RhbmdsZSBnZXRfbW9uaXRvcl9nZW9tZXRyeSAoaW50IG1vbml0b3IpOworKwkJcHVi bGljIGJvb2wgZ2V0X21vbml0b3JfaW5fZnVsbHNjcmVlbiAoaW50IG1vbml0b3IpOworKwkJcHVi bGljIGludCBnZXRfbW9uaXRvcl9pbmRleF9mb3JfcmVjdCAoTWV0YS5SZWN0YW5nbGUgcmVjdCk7 CisrCQlwdWJsaWMgaW50IGdldF9tb25pdG9yX25laWdoYm9yX2luZGV4IChpbnQgd2hpY2hfbW9u aXRvciwgTWV0YS5EaXNwbGF5RGlyZWN0aW9uIGRpcik7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X21v bml0b3Jfc2NhbGUgKGludCBtb25pdG9yKTsKKysJCXB1YmxpYyBpbnQgZ2V0X25fbW9uaXRvcnMg KCk7CisrCQlwdWJsaWMgc3RyaW5nIGdldF9wYWRfYWN0aW9uX2xhYmVsIChDbHV0dGVyLklucHV0 RGV2aWNlIHBhZCwgTWV0YS5QYWRBY3Rpb25UeXBlIGFjdGlvbl90eXBlLCB1aW50IGFjdGlvbl9u dW1iZXIpOworKwkJcHVibGljIGludCBnZXRfcHJpbWFyeV9tb25pdG9yICgpOworKwkJcHVibGlj IHVub3duZWQgTWV0YS5TZWxlY3Rpb24gZ2V0X3NlbGVjdGlvbiAoKTsKKysJCXB1YmxpYyB2b2lk IGdldF9zaXplIChvdXQgaW50IHdpZHRoLCBvdXQgaW50IGhlaWdodCk7CisrCQlwdWJsaWMgdW5v d25lZCBNZXRhLlNvdW5kUGxheWVyIGdldF9zb3VuZF9wbGF5ZXIgKCk7CisrCQlwdWJsaWMgdW5v d25lZCBNZXRhLldpbmRvdyBnZXRfdGFiX2N1cnJlbnQgKE1ldGEuVGFiTGlzdCB0eXBlLCBNZXRh LldvcmtzcGFjZSB3b3Jrc3BhY2UpOworKwkJcHVibGljIEdMaWIuTGlzdDx3ZWFrIE1ldGEuV2lu ZG93PiBnZXRfdGFiX2xpc3QgKE1ldGEuVGFiTGlzdCB0eXBlLCBNZXRhLldvcmtzcGFjZT8gd29y a3NwYWNlKTsKKysJCXB1YmxpYyB1bm93bmVkIE1ldGEuV2luZG93IGdldF90YWJfbmV4dCAoTWV0 YS5UYWJMaXN0IHR5cGUsIE1ldGEuV29ya3NwYWNlIHdvcmtzcGFjZSwgTWV0YS5XaW5kb3c/IHdp bmRvdywgYm9vbCBiYWNrd2FyZCk7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLldvcmtzcGFjZU1h bmFnZXIgZ2V0X3dvcmtzcGFjZV9tYW5hZ2VyICgpOworKwkJcHVibGljIHVpbnQgZ3JhYl9hY2Nl bGVyYXRvciAoc3RyaW5nIGFjY2VsZXJhdG9yLCBNZXRhLktleUJpbmRpbmdGbGFncyBmbGFncyk7 CisrCQlwdWJsaWMgYm9vbCBpc19wb2ludGVyX2VtdWxhdGluZ19zZXF1ZW5jZSAoQ2x1dHRlci5F dmVudFNlcXVlbmNlPyBzZXF1ZW5jZSk7CisrCQlwdWJsaWMgYm9vbCByZW1vdmVfa2V5YmluZGlu ZyAoc3RyaW5nIG5hbWUpOworKwkJcHVibGljIHZvaWQgcmVxdWVzdF9wYWRfb3NkIChDbHV0dGVy LklucHV0RGV2aWNlIHBhZCwgYm9vbCBlZGl0aW9uX21vZGUpOworKwkJcHVibGljIHZvaWQgc2V0 X2N1cnNvciAoTWV0YS5DdXJzb3IgY3Vyc29yKTsKKysJCXB1YmxpYyB2b2lkIHNldF9pbnB1dF9m b2N1cyAoTWV0YS5XaW5kb3cgd2luZG93LCBib29sIGZvY3VzX2ZyYW1lLCB1aW50MzIgdGltZXN0 YW1wKTsKKysJCXB1YmxpYyBHTGliLlNMaXN0PHdlYWsgTWV0YS5XaW5kb3c+IHNvcnRfd2luZG93 c19ieV9zdGFja2luZyAoR0xpYi5TTGlzdDxNZXRhLldpbmRvdz4gd2luZG93cyk7CisrCQlwdWJs aWMgYm9vbCBzdXBwb3J0c19leHRlbmRlZF9iYXJyaWVycyAoKTsKKysJCXB1YmxpYyB2b2lkIHVu ZnJlZXplX2tleWJvYXJkICh1aW50MzIgdGltZXN0YW1wKTsKKysJCXB1YmxpYyBib29sIHVuZ3Jh Yl9hY2NlbGVyYXRvciAodWludCBhY3Rpb25faWQpOworKwkJcHVibGljIHZvaWQgdW5ncmFiX2tl eWJvYXJkICh1aW50MzIgdGltZXN0YW1wKTsKKysJCXB1YmxpYyB2b2lkIHVuc2V0X2lucHV0X2Zv Y3VzICh1aW50MzIgdGltZXN0YW1wKTsKKysJCXB1YmxpYyBib29sIHhzZXJ2ZXJfdGltZV9pc19i ZWZvcmUgKHVpbnQzMiB0aW1lMSwgdWludDMyIHRpbWUyKTsKKysJCXB1YmxpYyBNZXRhLldpbmRv dyBmb2N1c193aW5kb3cgeyBnZXQ7IH0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCBhY2NlbGVyYXRv cl9hY3RpdmF0ZWQgKHVpbnQgb2JqZWN0LCBDbHV0dGVyLklucHV0RGV2aWNlIHAwLCB1aW50IHAx KTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBjbG9zaW5nICgpOworKwkJcHVibGljIHNpZ25hbCB2 b2lkIGN1cnNvcl91cGRhdGVkICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGdsX3ZpZGVvX21l bW9yeV9wdXJnZWQgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgZ3JhYl9vcF9iZWdpbiAoTWV0 YS5EaXNwbGF5IG9iamVjdCwgTWV0YS5XaW5kb3cgcDAsIE1ldGEuR3JhYk9wIHAxKTsKKysJCXB1 YmxpYyBzaWduYWwgdm9pZCBncmFiX29wX2VuZCAoTWV0YS5EaXNwbGF5IG9iamVjdCwgTWV0YS5X aW5kb3cgcDAsIE1ldGEuR3JhYk9wIHAxKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBpbl9mdWxs c2NyZWVuX2NoYW5nZWQgKCk7CisrCQlwdWJsaWMgc2lnbmFsIGJvb2wgbW9kaWZpZXJzX2FjY2Vs ZXJhdG9yX2FjdGl2YXRlZCAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBvdmVybGF5X2tleSAo KTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBwYWRfbW9kZV9zd2l0Y2ggKENsdXR0ZXIuSW5wdXRE ZXZpY2Ugb2JqZWN0LCB1aW50IHAwLCB1aW50IHAxKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBy ZXN0YWNrZWQgKCk7CisrCQlwdWJsaWMgc2lnbmFsIGJvb2wgcmVzdGFydCAoKTsKKysJCXB1Ymxp YyBzaWduYWwgdm9pZCBzaG93X29zZCAoaW50IG9iamVjdCwgc3RyaW5nIHAwLCBzdHJpbmcgcDEp OworKwkJcHVibGljIHNpZ25hbCB1bm93bmVkIENsdXR0ZXIuQWN0b3I/IHNob3dfcGFkX29zZCAo Q2x1dHRlci5JbnB1dERldmljZSBwYWQsIEdMaWIuU2V0dGluZ3Mgc2V0dGluZ3MsIHN0cmluZyBs YXlvdXRfcGF0aCwgYm9vbCBlZGl0aW9uX21vZGUsIGludCBtb25pdG9yX2lkeCk7CisrCQlwdWJs aWMgc2lnbmFsIGJvb2wgc2hvd19yZXNpemVfcG9wdXAgKGJvb2wgb2JqZWN0LCBNZXRhLlJlY3Rh bmdsZSBwMCwgaW50IHAxLCBpbnQgcDIpOworKwkJcHVibGljIHNpZ25hbCBib29sIHNob3dfcmVz dGFydF9tZXNzYWdlIChzdHJpbmc/IG1lc3NhZ2UpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHNo b3dpbmdfZGVza3RvcF9jaGFuZ2VkICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHdpbmRvd19j cmVhdGVkIChNZXRhLldpbmRvdyBvYmplY3QpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHdpbmRv d19kZW1hbmRzX2F0dGVudGlvbiAoTWV0YS5XaW5kb3cgb2JqZWN0KTsKKysJCXB1YmxpYyBzaWdu YWwgdm9pZCB3aW5kb3dfZW50ZXJlZF9tb25pdG9yIChpbnQgb2JqZWN0LCBNZXRhLldpbmRvdyBw MCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgd2luZG93X2xlZnRfbW9uaXRvciAoaW50IG9iamVj dCwgTWV0YS5XaW5kb3cgcDApOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHdpbmRvd19tYXJrZWRf dXJnZW50IChNZXRhLldpbmRvdyBvYmplY3QpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHdvcmth cmVhc19jaGFuZ2VkICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHgxMV9kaXNwbGF5X2Nsb3Np bmcgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgeDExX2Rpc3BsYXlfb3BlbmVkICgpOworKwkJ cHVibGljIHNpZ25hbCB2b2lkIHgxMV9kaXNwbGF5X3NldHVwICgpOworKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtZG5kLmgiLCB0eXBlX2lkID0gIm1ldGFfZG5k X2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBEbmQgOiBHTGliLk9iamVjdCB7CisrCQlb Q0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgRG5k ICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGRuZF9lbnRlciAoKTsKKysJCXB1YmxpYyBzaWdu YWwgdm9pZCBkbmRfbGVhdmUgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgZG5kX3Bvc2l0aW9u X2NoYW5nZSAoaW50IG9iamVjdCwgaW50IHAwKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAibWV0YS9tYWluLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0NvbXBhY3Rd CisrCXB1YmxpYyBjbGFzcyBGcmFtZSB7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gIm1ldGEvbWV0YS1pZGxlLW1vbml0b3IuaCIsIHR5cGVfaWQgPSAibWV0YV9pZGxlX21vbml0 b3JfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIElkbGVNb25pdG9yIDogR0xpYi5PYmpl Y3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJv dGVjdGVkIElkbGVNb25pdG9yICgpOworKwkJcHVibGljIHVpbnQgYWRkX2lkbGVfd2F0Y2ggKHVp bnQ2NCBpbnRlcnZhbF9tc2VjLCBvd25lZCBNZXRhLklkbGVNb25pdG9yV2F0Y2hGdW5jPyBjYWxs YmFjayk7CisrCQlwdWJsaWMgdWludCBhZGRfdXNlcl9hY3RpdmVfd2F0Y2ggKG93bmVkIE1ldGEu SWRsZU1vbml0b3JXYXRjaEZ1bmM/IGNhbGxiYWNrKTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25l ZCBNZXRhLklkbGVNb25pdG9yIGdldF9jb3JlICgpOworKwkJcHVibGljIHN0YXRpYyB1bm93bmVk IE1ldGEuSWRsZU1vbml0b3IgZ2V0X2Zvcl9kZXZpY2UgKENsdXR0ZXIuSW5wdXREZXZpY2UgZGV2 aWNlKTsKKysJCXB1YmxpYyBpbnQ2NCBnZXRfaWRsZXRpbWUgKCk7CisrCQlwdWJsaWMgdm9pZCBy ZW1vdmVfd2F0Y2ggKHVpbnQgaWQpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMg Q2x1dHRlci5JbnB1dERldmljZSBkZXZpY2UgeyBvd25lZCBnZXQ7IGNvbnN0cnVjdDsgfQorKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNvcHlfZnVuY3Rp b24gPSAiZ19ib3hlZF9jb3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0eXBl X2lkID0gIm1ldGFfa2V5X2JpbmRpbmdfZ2V0X3R5cGUgKCkiKV0KKysJW0NvbXBhY3RdCisrCXB1 YmxpYyBjbGFzcyBLZXlCaW5kaW5nIHsKKysJCXB1YmxpYyB1aW50IGdldF9tYXNrICgpOworKwkJ cHVibGljIE1ldGEuVmlydHVhbE1vZGlmaWVyIGdldF9tb2RpZmllcnMgKCk7CisrCQlwdWJsaWMg dW5vd25lZCBzdHJpbmcgZ2V0X25hbWUgKCk7CisrCQlwdWJsaWMgYm9vbCBpc19idWlsdGluICgp OworKwkJcHVibGljIGJvb2wgaXNfcmV2ZXJzZWQgKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gIm1l dGFfa2V5YmluZGluZ3Nfc2V0X2N1c3RvbV9oYW5kbGVyIildCisrCQlwdWJsaWMgc3RhdGljIGJv b2wgc2V0X2N1c3RvbV9oYW5kbGVyIChzdHJpbmcgbmFtZSwgb3duZWQgTWV0YS5LZXlIYW5kbGVy RnVuYz8gaGFuZGxlcik7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEv bWV0YS1sYXVuY2gtY29udGV4dC5oIiwgdHlwZV9pZCA9ICJtZXRhX2xhdW5jaF9jb250ZXh0X2dl dF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBMYXVuY2hDb250ZXh0IDogR0xpYi5BcHBMYXVu Y2hDb250ZXh0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0K KysJCXByb3RlY3RlZCBMYXVuY2hDb250ZXh0ICgpOworKwkJcHVibGljIHZvaWQgc2V0X3RpbWVz dGFtcCAodWludDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfd29ya3NwYWNlIChN ZXRhLldvcmtzcGFjZSB3b3Jrc3BhY2UpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJs aWMgTWV0YS5EaXNwbGF5IGRpc3BsYXkgeyBvd25lZCBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJW05v QWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgdWludCB0aW1lc3RhbXAgeyBnZXQ7IHNldDsgfQor KwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgTWV0YS5Xb3Jrc3BhY2Ugd29ya3NwYWNl IHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi bWV0YS9tZXRhLW1vbml0b3ItbWFuYWdlci5oIiwgdHlwZV9pZCA9ICJtZXRhX21vbml0b3JfbWFu YWdlcl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgTW9uaXRvck1hbmFnZXIgOiBHTGli Lk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisr CQlwcm90ZWN0ZWQgTW9uaXRvck1hbmFnZXIgKCk7CisrCQlwdWJsaWMgYm9vbCBjYW5fc3dpdGNo X2NvbmZpZyAoKTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBNZXRhLk1vbml0b3JNYW5hZ2Vy IEBnZXQgKCk7CisrCQlwdWJsaWMgc3RhdGljIGludCBnZXRfZGlzcGxheV9jb25maWd1cmF0aW9u X3RpbWVvdXQgKCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfaXNfYnVpbHRpbl9kaXNwbGF5X29uICgp OworKwkJcHVibGljIGludCBnZXRfbW9uaXRvcl9mb3JfY29ubmVjdG9yIChzdHJpbmcgY29ubmVj dG9yKTsKKysJCXB1YmxpYyBNZXRhLk1vbml0b3JTd2l0Y2hDb25maWdUeXBlIGdldF9zd2l0Y2hf Y29uZmlnICgpOworKwkJcHVibGljIHZvaWQgc3dpdGNoX2NvbmZpZyAoTWV0YS5Nb25pdG9yU3dp dGNoQ29uZmlnVHlwZSBjb25maWdfdHlwZSk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1 YmxpYyBNZXRhLkJhY2tlbmQgYmFja2VuZCB7IG93bmVkIGdldDsgY29uc3RydWN0OyB9CisrCQlw dWJsaWMgc2lnbmFsIHZvaWQgY29uZmlybV9kaXNwbGF5X2NoYW5nZSAoKTsKKysJCXB1YmxpYyBz aWduYWwgdm9pZCBtb25pdG9yc19jaGFuZ2VkICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIG1v bml0b3JzX2NoYW5nZWRfaW50ZXJuYWwgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgcG93ZXJf c2F2ZV9tb2RlX2NoYW5nZWQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g Im1ldGEvbWV0YS1wbHVnaW4uaCIsIHR5cGVfaWQgPSAibWV0YV9wbHVnaW5fZ2V0X3R5cGUgKCki KV0KKysJcHVibGljIGFic3RyYWN0IGNsYXNzIFBsdWdpbiA6IEdMaWIuT2JqZWN0IHsKKysJCVtD Q29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBQbHVn aW4gKCk7CisrCQlwdWJsaWMgYm9vbCBiZWdpbl9tb2RhbCAoTWV0YS5Nb2RhbE9wdGlvbnMgb3B0 aW9ucywgdWludDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMgdm9pZCBjb21wbGV0ZV9kaXNwbGF5 X2NoYW5nZSAoYm9vbCBvayk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9p ZCBjb25maXJtX2Rpc3BsYXlfY2hhbmdlICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2 aXJ0dWFsIHZvaWQgZGVzdHJveSAoTWV0YS5XaW5kb3dBY3RvciBhY3Rvcik7CisrCQlwdWJsaWMg dm9pZCBkZXN0cm95X2NvbXBsZXRlZCAoTWV0YS5XaW5kb3dBY3RvciBhY3Rvcik7CisrCQlwdWJs aWMgdm9pZCBlbmRfbW9kYWwgKHVpbnQzMiB0aW1lc3RhbXApOworKwkJcHVibGljIHVub3duZWQg TWV0YS5EaXNwbGF5IGdldF9kaXNwbGF5ICgpOworKwkJcHVibGljIHVub3duZWQgTWV0YS5QbHVn aW5JbmZvPyBnZXRfaW5mbyAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2 b2lkIGhpZGVfdGlsZV9wcmV2aWV3ICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0 dWFsIGJvb2wga2V5YmluZGluZ19maWx0ZXIgKE1ldGEuS2V5QmluZGluZyBiaW5kaW5nKTsKKysJ CVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGtpbGxfc3dpdGNoX3dvcmtzcGFj ZSAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGtpbGxfd2luZG93 X2VmZmVjdHMgKE1ldGEuV2luZG93QWN0b3IgYWN0b3IpOworKwkJW05vV3JhcHBlcl0KKysJCXB1 YmxpYyB2aXJ0dWFsIHZvaWQgbG9jYXRlX3BvaW50ZXIgKCk7CisrCQlwdWJsaWMgc3RhdGljIHZv aWQgbWFuYWdlcl9zZXRfcGx1Z2luX3R5cGUgKEdMaWIuVHlwZSBndHlwZSk7CisrCQlbTm9XcmFw cGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBtYXAgKE1ldGEuV2luZG93QWN0b3IgYWN0b3Ip OworKwkJcHVibGljIHZvaWQgbWFwX2NvbXBsZXRlZCAoTWV0YS5XaW5kb3dBY3RvciBhY3Rvcik7 CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBtaW5pbWl6ZSAoTWV0YS5X aW5kb3dBY3RvciBhY3Rvcik7CisrCQlwdWJsaWMgdm9pZCBtaW5pbWl6ZV9jb21wbGV0ZWQgKE1l dGEuV2luZG93QWN0b3IgYWN0b3IpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFs IHVub3duZWQgTWV0YS5QbHVnaW5JbmZvPyBwbHVnaW5faW5mbyAoKTsKKysJCVtOb1dyYXBwZXJd CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHNob3dfdGlsZV9wcmV2aWV3IChNZXRhLldpbmRvdyB3 aW5kb3csIE1ldGEuUmVjdGFuZ2xlIHRpbGVfcmVjdCwgaW50IHRpbGVfbW9uaXRvcl9udW1iZXIp OworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgc2hvd193aW5kb3dfbWVu dSAoTWV0YS5XaW5kb3cgd2luZG93LCBNZXRhLldpbmRvd01lbnVUeXBlIG1lbnUsIGludCB4LCBp bnQgeSk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBzaG93X3dpbmRv d19tZW51X2Zvcl9yZWN0IChNZXRhLldpbmRvdyB3aW5kb3csIE1ldGEuV2luZG93TWVudVR5cGUg bWVudSwgTWV0YS5SZWN0YW5nbGUgcmVjdCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZp cnR1YWwgdm9pZCBzaXplX2NoYW5nZSAoTWV0YS5XaW5kb3dBY3RvciBhY3RvciwgTWV0YS5TaXpl Q2hhbmdlIHdoaWNoX2NoYW5nZSwgTWV0YS5SZWN0YW5nbGUgb2xkX2ZyYW1lX3JlY3QsIE1ldGEu UmVjdGFuZ2xlIG9sZF9idWZmZXJfcmVjdCk7CisrCQlwdWJsaWMgdm9pZCBzaXplX2NoYW5nZV9j b21wbGV0ZWQgKE1ldGEuV2luZG93QWN0b3IgYWN0b3IpOworKwkJW05vV3JhcHBlcl0KKysJCXB1 YmxpYyB2aXJ0dWFsIHZvaWQgc2l6ZV9jaGFuZ2VkIChNZXRhLldpbmRvd0FjdG9yIGFjdG9yKTsK KysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHN0YXJ0ICgpOworKwkJW05v V3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgc3dpdGNoX3dvcmtzcGFjZSAoaW50IGZy b20sIGludCB0bywgTWV0YS5Nb3Rpb25EaXJlY3Rpb24gZGlyZWN0aW9uKTsKKysJCXB1YmxpYyB2 b2lkIHN3aXRjaF93b3Jrc3BhY2VfY29tcGxldGVkICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1 YmxpYyB2aXJ0dWFsIHZvaWQgdW5taW5pbWl6ZSAoTWV0YS5XaW5kb3dBY3RvciBhY3Rvcik7Cisr CQlwdWJsaWMgdm9pZCB1bm1pbmltaXplX2NvbXBsZXRlZCAoTWV0YS5XaW5kb3dBY3RvciBhY3Rv cik7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgYm9vbCB4ZXZlbnRfZmlsdGVy IChYLkV2ZW50IGV2ZW50KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0 YS9tZXRhLXJlbW90ZS1hY2Nlc3MtY29udHJvbGxlci5oIiwgdHlwZV9pZCA9ICJtZXRhX3JlbW90 ZV9hY2Nlc3NfY29udHJvbGxlcl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgUmVtb3Rl QWNjZXNzQ29udHJvbGxlciA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVj dF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBSZW1vdGVBY2Nlc3NDb250cm9sbGVy ICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIG5ld19oYW5kbGUgKE1ldGEuUmVtb3RlQWNjZXNz SGFuZGxlIG9iamVjdCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEv bWV0YS1yZW1vdGUtYWNjZXNzLWNvbnRyb2xsZXIuaCIsIHR5cGVfaWQgPSAibWV0YV9yZW1vdGVf YWNjZXNzX2hhbmRsZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgUmVtb3RlQWNjZXNz SGFuZGxlIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9u ID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFJlbW90ZUFjY2Vzc0hhbmRsZSAoKTsKKysJCXB1Ymxp YyB2aXJ0dWFsIHZvaWQgc3RvcCAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBzdG9wcGVkICgp OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIHR5cGVf aWQgPSAibWV0YV9zZWxlY3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFNlbGVj dGlvbiA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9 IGZhbHNlKV0KKysJCXB1YmxpYyBTZWxlY3Rpb24gKE1ldGEuRGlzcGxheSBkaXNwbGF5KTsKKysJ CXB1YmxpYyBHTGliLkxpc3Q8c3RyaW5nPiBnZXRfbWltZXR5cGVzIChNZXRhLlNlbGVjdGlvblR5 cGUgc2VsZWN0aW9uX3R5cGUpOworKwkJcHVibGljIHZvaWQgc2V0X293bmVyIChNZXRhLlNlbGVj dGlvblR5cGUgc2VsZWN0aW9uX3R5cGUsIE1ldGEuU2VsZWN0aW9uU291cmNlIG93bmVyKTsKKysJ CXB1YmxpYyBhc3luYyBib29sIHRyYW5zZmVyX2FzeW5jIChNZXRhLlNlbGVjdGlvblR5cGUgc2Vs ZWN0aW9uX3R5cGUsIHN0cmluZyBtaW1ldHlwZSwgc3NpemVfdCBzaXplLCBHTGliLk91dHB1dFN0 cmVhbSBvdXRwdXQsIEdMaWIuQ2FuY2VsbGFibGU/IGNhbmNlbGxhYmxlKSB0aHJvd3MgR0xpYi5F cnJvcjsKKysJCXB1YmxpYyB2b2lkIHVuc2V0X293bmVyIChNZXRhLlNlbGVjdGlvblR5cGUgc2Vs ZWN0aW9uX3R5cGUsIE1ldGEuU2VsZWN0aW9uU291cmNlIG93bmVyKTsKKysJCXB1YmxpYyBzaWdu YWwgdm9pZCBvd25lcl9jaGFuZ2VkICh1aW50IG9iamVjdCwgTWV0YS5TZWxlY3Rpb25Tb3VyY2Ug cDApOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIHR5 cGVfaWQgPSAibWV0YV9zZWxlY3Rpb25fc291cmNlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBj bGFzcyBTZWxlY3Rpb25Tb3VyY2UgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25z dHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgU2VsZWN0aW9uU291cmNlICgp OworKwkJcHVibGljIHZpcnR1YWwgR0xpYi5MaXN0PHN0cmluZz4gZ2V0X21pbWV0eXBlcyAoKTsK KysJCXB1YmxpYyBib29sIGlzX2FjdGl2ZSAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIGFzeW5jIEdM aWIuSW5wdXRTdHJlYW0gcmVhZF9hc3luYyAoc3RyaW5nIG1pbWV0eXBlLCBHTGliLkNhbmNlbGxh YmxlPyBjYW5jZWxsYWJsZSkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlwdWJsaWMgdmlydHVhbCBz aWduYWwgdm9pZCBhY3RpdmF0ZWQgKCk7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBk ZWFjdGl2YXRlZCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9t YWluLmgiLCB0eXBlX2lkID0gIm1ldGFfc2VsZWN0aW9uX3NvdXJjZV9tZW1vcnlfZ2V0X3R5cGUg KCkiKV0KKysJcHVibGljIGNsYXNzIFNlbGVjdGlvblNvdXJjZU1lbW9yeSA6IE1ldGEuU2VsZWN0 aW9uU291cmNlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0 eXBlID0gIk1ldGFTZWxlY3Rpb25Tb3VyY2UqIildCisrCQlwdWJsaWMgU2VsZWN0aW9uU291cmNl TWVtb3J5IChzdHJpbmcgbWltZXR5cGUsIEdMaWIuQnl0ZXMgY29udGVudCk7CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1zZXR0aW5ncy5oIiwgaGFzX3R5cGVf aWQgPSBmYWxzZSldCisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3MgU2V0dGluZ3MgeworKwkJ cHVibGljIGludCBnZXRfZm9udF9kcGkgKCk7CisrCQlwdWJsaWMgaW50IGdldF91aV9zY2FsaW5n X2ZhY3RvciAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWlu LmgiLCByZWZfZnVuY3Rpb24gPSAibWV0YV9zaGFkb3dfcmVmIiwgdHlwZV9pZCA9ICJtZXRhX3No YWRvd19nZXRfdHlwZSAoKSIsIHVucmVmX2Z1bmN0aW9uID0gIm1ldGFfc2hhZG93X3VucmVmIild CisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3MgU2hhZG93IHsKKysJCXB1YmxpYyB2b2lkIGdl dF9ib3VuZHMgKGludCB3aW5kb3dfeCwgaW50IHdpbmRvd195LCBpbnQgd2luZG93X3dpZHRoLCBp bnQgd2luZG93X2hlaWdodCwgQ2Fpcm8uUmVjdGFuZ2xlSW50IGJvdW5kcyk7CisrCQlwdWJsaWMg dm9pZCBwYWludCAoQ29nbC5GcmFtZWJ1ZmZlciBmcmFtZWJ1ZmZlciwgaW50IHdpbmRvd194LCBp bnQgd2luZG93X3ksIGludCB3aW5kb3dfd2lkdGgsIGludCB3aW5kb3dfaGVpZ2h0LCB1aW50OCBv cGFjaXR5LCBDYWlyby5SZWdpb24/IGNsaXAsIGJvb2wgY2xpcF9zdHJpY3RseSk7CisrCQlwdWJs aWMgTWV0YS5TaGFkb3cgQHJlZiAoKTsKKysJCXB1YmxpYyB2b2lkIHVucmVmICgpOworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtc2hhZG93LWZhY3RvcnkuaCIs IHR5cGVfaWQgPSAibWV0YV9zaGFkb3dfZmFjdG9yeV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMg Y2xhc3MgU2hhZG93RmFjdG9yeSA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0 cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1YmxpYyBTaGFkb3dGYWN0b3J5ICgpOworKwkJ cHVibGljIHN0YXRpYyB1bm93bmVkIE1ldGEuU2hhZG93RmFjdG9yeSBnZXRfZGVmYXVsdCAoKTsK KysJCXB1YmxpYyBNZXRhLlNoYWRvd1BhcmFtcyBnZXRfcGFyYW1zIChzdHJpbmcgY2xhc3NfbmFt ZSwgYm9vbCBmb2N1c2VkKTsKKysJCXB1YmxpYyBNZXRhLlNoYWRvdyBnZXRfc2hhZG93IChNZXRh LldpbmRvd1NoYXBlIHNoYXBlLCBpbnQgd2lkdGgsIGludCBoZWlnaHQsIHN0cmluZyBjbGFzc19u YW1lLCBib29sIGZvY3VzZWQpOworKwkJcHVibGljIHZvaWQgc2V0X3BhcmFtcyAoc3RyaW5nIGNs YXNzX25hbWUsIGJvb2wgZm9jdXNlZCwgTWV0YS5TaGFkb3dQYXJhbXMgQHBhcmFtcyk7CisrCQlw dWJsaWMgc2lnbmFsIHZvaWQgY2hhbmdlZCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAibWV0YS9tZXRhLXNoYXBlZC10ZXh0dXJlLmgiLCB0eXBlX2lkID0gIm1ldGFfc2hh cGVkX3RleHR1cmVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFNoYXBlZFRleHR1cmUg OiBHTGliLk9iamVjdCwgQ2x1dHRlci5Db250ZW50IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVj dF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBTaGFwZWRUZXh0dXJlICgpOworKwkJ cHVibGljIENhaXJvLlN1cmZhY2U/IGdldF9pbWFnZSAoQ2Fpcm8uUmVjdGFuZ2xlSW50PyBjbGlw KTsKKysJCXB1YmxpYyB1bm93bmVkIENvZ2wuVGV4dHVyZSBnZXRfdGV4dHVyZSAoKTsKKysJCXB1 YmxpYyB2b2lkIHNldF9jcmVhdGVfbWlwbWFwcyAoYm9vbCBjcmVhdGVfbWlwbWFwcyk7CisrCQlw dWJsaWMgdm9pZCBzZXRfbWFza190ZXh0dXJlIChDb2dsLlRleHR1cmUgbWFza190ZXh0dXJlKTsK KysJCXB1YmxpYyB2b2lkIHNldF9vcGFxdWVfcmVnaW9uIChvd25lZCBDYWlyby5SZWdpb24gb3Bh cXVlX3JlZ2lvbik7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgc2l6ZV9jaGFuZ2VkICgpOworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtc291bmQtcGxheWVyLmgi LCB0eXBlX2lkID0gIm1ldGFfc291bmRfcGxheWVyX2dldF90eXBlICgpIildCisrCXB1YmxpYyBj bGFzcyBTb3VuZFBsYXllciA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVj dF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBTb3VuZFBsYXllciAoKTsKKysJCXB1 YmxpYyB2b2lkIHBsYXlfZnJvbV9maWxlIChHTGliLkZpbGUgZmlsZSwgc3RyaW5nIGRlc2NyaXB0 aW9uLCBHTGliLkNhbmNlbGxhYmxlPyBjYW5jZWxsYWJsZSA9IG51bGwpOworKwkJcHVibGljIHZv aWQgcGxheV9mcm9tX3RoZW1lIChzdHJpbmcgbmFtZSwgc3RyaW5nIGRlc2NyaXB0aW9uLCBHTGli LkNhbmNlbGxhYmxlPyBjYW5jZWxsYWJsZSA9IG51bGwpOworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJtZXRhL21ldGEtc3RhZ2UuaCIsIHR5cGVfaWQgPSAibWV0YV9zdGFnZV9n ZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgU3RhZ2UgOiBDbHV0dGVyLlN0YWdlLCBBdGsu SW1wbGVtZW50b3IsIENsdXR0ZXIuQW5pbWF0YWJsZSwgQ2x1dHRlci5Db250YWluZXIsIENsdXR0 ZXIuU2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxz ZSldCisrCQlwcm90ZWN0ZWQgU3RhZ2UgKCk7CisrCQlwdWJsaWMgc3RhdGljIGJvb2wgaXNfZm9j dXNlZCAoTWV0YS5EaXNwbGF5IGRpc3BsYXkpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGFjdG9y c19wYWludGVkICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21l dGEtc3RhcnR1cC1ub3RpZmljYXRpb24uaCIsIHR5cGVfaWQgPSAibWV0YV9zdGFydHVwX25vdGlm aWNhdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgU3RhcnR1cE5vdGlmaWNhdGlv biA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZh bHNlKV0KKysJCXByb3RlY3RlZCBTdGFydHVwTm90aWZpY2F0aW9uICgpOworKwkJcHVibGljIE1l dGEuTGF1bmNoQ29udGV4dCBjcmVhdGVfbGF1bmNoZXIgKCk7CisrCQlbTm9BY2Nlc3Nvck1ldGhv ZF0KKysJCXB1YmxpYyBNZXRhLkRpc3BsYXkgZGlzcGxheSB7IG93bmVkIGdldDsgY29uc3RydWN0 OyB9CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgY2hhbmdlZCAodm9pZCogb2JqZWN0KTsKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCB0eXBlX2lkID0gIm1l dGFfc3RhcnR1cF9zZXF1ZW5jZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgU3RhcnR1 cFNlcXVlbmNlIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0 aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFN0YXJ0dXBTZXF1ZW5jZSAoKTsKKysJCXB1Ymxp YyB1bm93bmVkIHN0cmluZyBnZXRfYXBwbGljYXRpb25faWQgKCk7CisrCQlwdWJsaWMgYm9vbCBn ZXRfY29tcGxldGVkICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9pY29uX25hbWUg KCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X2lkICgpOworKwkJcHVibGljIHVub3du ZWQgc3RyaW5nIGdldF9uYW1lICgpOworKwkJcHVibGljIHVpbnQ2NCBnZXRfdGltZXN0YW1wICgp OworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF93bWNsYXNzICgpOworKwkJcHVibGljIGlu dCBnZXRfd29ya3NwYWNlICgpOworKwkJcHVibGljIHN0cmluZyBhcHBsaWNhdGlvbl9pZCB7IGdl dDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgc3RyaW5nIGljb25fbmFtZSB7IGdldDsgY29uc3Ry dWN0OyB9CisrCQlwdWJsaWMgc3RyaW5nIGlkIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCXB1Ymxp YyBzdHJpbmcgbmFtZSB7IGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgdWludDY0IHRpbWVz dGFtcCB7IGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgc3RyaW5nIHdtY2xhc3MgeyBnZXQ7 IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIGludCB3b3Jrc3BhY2UgeyBnZXQ7IGNvbnN0cnVjdDsg fQorKwkJW0hhc0VtaXR0ZXJdCisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgY29tcGxldGUgKCk7Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdGhlbWUuaCIsIGhhc190eXBl X2lkID0gZmFsc2UpXQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIFRoZW1lIHsKKysJCXB1 YmxpYyB2b2lkIGZyZWUgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1l dGEvd2luZG93LmgiLCB0eXBlX2lkID0gIm1ldGFfd2luZG93X2dldF90eXBlICgpIildCisrCXB1 YmxpYyBhYnN0cmFjdCBjbGFzcyBXaW5kb3cgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhh c19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgV2luZG93ICgpOwor KwkJcHVibGljIHZvaWQgYWN0aXZhdGUgKHVpbnQzMiBjdXJyZW50X3RpbWUpOworKwkJcHVibGlj IHZvaWQgYWN0aXZhdGVfd2l0aF93b3Jrc3BhY2UgKHVpbnQzMiBjdXJyZW50X3RpbWUsIE1ldGEu V29ya3NwYWNlIHdvcmtzcGFjZSk7CisrCQlwdWJsaWMgYm9vbCBhbGxvd3NfbW92ZSAoKTsKKysJ CXB1YmxpYyBib29sIGFsbG93c19yZXNpemUgKCk7CisrCQlwdWJsaWMgdm9pZCBiZWdpbl9ncmFi X29wIChNZXRhLkdyYWJPcCBvcCwgYm9vbCBmcmFtZV9hY3Rpb24sIHVpbnQzMiB0aW1lc3RhbXAp OworKwkJcHVibGljIGJvb2wgY2FuX2Nsb3NlICgpOworKwkJcHVibGljIGJvb2wgY2FuX21heGlt aXplICgpOworKwkJcHVibGljIGJvb2wgY2FuX21pbmltaXplICgpOworKwkJcHVibGljIGJvb2wg Y2FuX3NoYWRlICgpOworKwkJcHVibGljIHZvaWQgY2hhbmdlX3dvcmtzcGFjZSAoTWV0YS5Xb3Jr c3BhY2Ugd29ya3NwYWNlKTsKKysJCXB1YmxpYyB2b2lkIGNoYW5nZV93b3Jrc3BhY2VfYnlfaW5k ZXggKGludCBzcGFjZV9pbmRleCwgYm9vbCBhcHBlbmQpOworKwkJcHVibGljIHZvaWQgY2hlY2tf YWxpdmUgKHVpbnQzMiB0aW1lc3RhbXApOworKwkJcHVibGljIE1ldGEuUmVjdGFuZ2xlIGNsaWVu dF9yZWN0X3RvX2ZyYW1lX3JlY3QgKE1ldGEuUmVjdGFuZ2xlIGNsaWVudF9yZWN0KTsKKysJCXB1 YmxpYyB2b2lkIGNvbXB1dGVfZ3JvdXAgKCk7CisrCQlwdWJsaWMgdm9pZCBAZGVsZXRlICh1aW50 MzIgdGltZXN0YW1wKTsKKysJCXB1YmxpYyB1bm93bmVkIE1ldGEuV2luZG93IGZpbmRfcm9vdF9h bmNlc3RvciAoKTsKKysJCXB1YmxpYyB2b2lkIGZvY3VzICh1aW50MzIgdGltZXN0YW1wKTsKKysJ CXB1YmxpYyB2b2lkIGZvcmVhY2hfYW5jZXN0b3IgKE1ldGEuV2luZG93Rm9yZWFjaEZ1bmMgZnVu Yyk7CisrCQlwdWJsaWMgdm9pZCBmb3JlYWNoX3RyYW5zaWVudCAoTWV0YS5XaW5kb3dGb3JlYWNo RnVuYyBmdW5jKTsKKysJCXB1YmxpYyBNZXRhLlJlY3RhbmdsZSBmcmFtZV9yZWN0X3RvX2NsaWVu dF9yZWN0IChNZXRhLlJlY3RhbmdsZSBmcmFtZV9yZWN0KTsKKysJCXB1YmxpYyBNZXRhLlJlY3Rh bmdsZSBnZXRfYnVmZmVyX3JlY3QgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X2Ns aWVudF9tYWNoaW5lICgpOworKwkJcHVibGljIE1ldGEuV2luZG93Q2xpZW50VHlwZSBnZXRfY2xp ZW50X3R5cGUgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBHTGliLk9iamVjdCBnZXRfY29tcG9zaXRv cl9wcml2YXRlICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9kZXNjcmlwdGlvbiAo KTsKKysJCXB1YmxpYyB1bm93bmVkIE1ldGEuRGlzcGxheSBnZXRfZGlzcGxheSAoKTsKKysJCXB1 YmxpYyB1bm93bmVkIENhaXJvLlJlZ2lvbj8gZ2V0X2ZyYW1lX2JvdW5kcyAoKTsKKysJCXB1Ymxp YyBNZXRhLlJlY3RhbmdsZSBnZXRfZnJhbWVfcmVjdCAoKTsKKysJCXB1YmxpYyBNZXRhLkZyYW1l VHlwZSBnZXRfZnJhbWVfdHlwZSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfZ3Rr X2FwcF9tZW51X29iamVjdF9wYXRoICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9n dGtfYXBwbGljYXRpb25faWQgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X2d0a19h cHBsaWNhdGlvbl9vYmplY3RfcGF0aCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRf Z3RrX21lbnViYXJfb2JqZWN0X3BhdGggKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0 X2d0a190aGVtZV92YXJpYW50ICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9ndGtf dW5pcXVlX2J1c19uYW1lICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9ndGtfd2lu ZG93X29iamVjdF9wYXRoICgpOworKwkJcHVibGljIGJvb2wgZ2V0X2ljb25fZ2VvbWV0cnkgKG91 dCBNZXRhLlJlY3RhbmdsZSByZWN0KTsKKysJCXB1YmxpYyB1aW50NjQgZ2V0X2lkICgpOworKwkJ cHVibGljIE1ldGEuU3RhY2tMYXllciBnZXRfbGF5ZXIgKCk7CisrCQlwdWJsaWMgTWV0YS5NYXhp bWl6ZUZsYWdzIGdldF9tYXhpbWl6ZWQgKCk7CisrCQlwdWJsaWMgaW50IGdldF9tb25pdG9yICgp OworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9tdXR0ZXJfaGludHMgKCk7CisrCQlwdWJs aWMgaW50IGdldF9waWQgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X3JvbGUgKCk7 CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X3NhbmRib3hlZF9hcHBfaWQgKCk7CisrCQlw dWJsaWMgdWludCBnZXRfc3RhYmxlX3NlcXVlbmNlICgpOworKwkJcHVibGljIHVub3duZWQgc3Ry aW5nIGdldF9zdGFydHVwX2lkICgpOworKwkJcHVibGljIHVub3duZWQgTWV0YS5XaW5kb3c/IGdl dF90aWxlX21hdGNoICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF90aXRsZSAoKTsK KysJCXB1YmxpYyB1bm93bmVkIE1ldGEuV2luZG93IGdldF90cmFuc2llbnRfZm9yICgpOworKwkJ cHVibGljIHVpbnQzMiBnZXRfdXNlcl90aW1lICgpOworKwkJcHVibGljIE1ldGEuV2luZG93VHlw ZSBnZXRfd2luZG93X3R5cGUgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X3dtX2Ns YXNzICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF93bV9jbGFzc19pbnN0YW5jZSAo KTsKKysJCXB1YmxpYyBNZXRhLlJlY3RhbmdsZSBnZXRfd29ya19hcmVhX2FsbF9tb25pdG9ycyAo KTsKKysJCXB1YmxpYyBNZXRhLlJlY3RhbmdsZSBnZXRfd29ya19hcmVhX2N1cnJlbnRfbW9uaXRv ciAoKTsKKysJCXB1YmxpYyBNZXRhLlJlY3RhbmdsZSBnZXRfd29ya19hcmVhX2Zvcl9tb25pdG9y IChpbnQgd2hpY2hfbW9uaXRvcik7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLldvcmtzcGFjZSBn ZXRfd29ya3NwYWNlICgpOworKwkJcHVibGljIFguV2luZG93IGdldF94d2luZG93ICgpOworKwkJ cHVibGljIHZvaWQgZ3JvdXBfbGVhZGVyX2NoYW5nZWQgKCk7CisrCQlwdWJsaWMgYm9vbCBoYXNf Zm9jdXMgKCk7CisrCQlwdWJsaWMgYm9vbCBpc19hYm92ZSAoKTsKKysJCXB1YmxpYyBib29sIGlz X2Fsd2F5c19vbl9hbGxfd29ya3NwYWNlcyAoKTsKKysJCXB1YmxpYyBib29sIGlzX2FuY2VzdG9y X29mX3RyYW5zaWVudCAoTWV0YS5XaW5kb3cgdHJhbnNpZW50KTsKKysJCXB1YmxpYyBib29sIGlz X2F0dGFjaGVkX2RpYWxvZyAoKTsKKysJCXB1YmxpYyBib29sIGlzX2NsaWVudF9kZWNvcmF0ZWQg KCk7CisrCQlwdWJsaWMgYm9vbCBpc19mdWxsc2NyZWVuICgpOworKwkJcHVibGljIGJvb2wgaXNf aGlkZGVuICgpOworKwkJcHVibGljIGJvb2wgaXNfbW9uaXRvcl9zaXplZCAoKTsKKysJCXB1Ymxp YyBib29sIGlzX29uX2FsbF93b3Jrc3BhY2VzICgpOworKwkJcHVibGljIGJvb2wgaXNfb25fcHJp bWFyeV9tb25pdG9yICgpOworKwkJcHVibGljIGJvb2wgaXNfb3ZlcnJpZGVfcmVkaXJlY3QgKCk7 CisrCQlwdWJsaWMgYm9vbCBpc19yZW1vdGUgKCk7CisrCQlwdWJsaWMgYm9vbCBpc19zY3JlZW5f c2l6ZWQgKCk7CisrCQlwdWJsaWMgYm9vbCBpc19zaGFkZWQgKCk7CisrCQlwdWJsaWMgYm9vbCBp c19za2lwX3Rhc2tiYXIgKCk7CisrCQlwdWJsaWMgdm9pZCBraWxsICgpOworKwkJcHVibGljIGJv b2wgbG9jYXRlZF9vbl93b3Jrc3BhY2UgKE1ldGEuV29ya3NwYWNlIHdvcmtzcGFjZSk7CisrCQlw dWJsaWMgdm9pZCBsb3dlciAoKTsKKysJCXB1YmxpYyB2b2lkIG1ha2VfYWJvdmUgKCk7CisrCQlw dWJsaWMgdm9pZCBtYWtlX2Z1bGxzY3JlZW4gKCk7CisrCQlwdWJsaWMgdm9pZCBtYXhpbWl6ZSAo TWV0YS5NYXhpbWl6ZUZsYWdzIGRpcmVjdGlvbnMpOworKwkJcHVibGljIHZvaWQgbWluaW1pemUg KCk7CisrCQlwdWJsaWMgdm9pZCBtb3ZlX2ZyYW1lIChib29sIHVzZXJfb3AsIGludCByb290X3hf bncsIGludCByb290X3lfbncpOworKwkJcHVibGljIHZvaWQgbW92ZV9yZXNpemVfZnJhbWUgKGJv b2wgdXNlcl9vcCwgaW50IHJvb3RfeF9udywgaW50IHJvb3RfeV9udywgaW50IHcsIGludCBoKTsK KysJCXB1YmxpYyB2b2lkIG1vdmVfdG9fbW9uaXRvciAoaW50IG1vbml0b3IpOworKwkJcHVibGlj IHZvaWQgcmFpc2UgKCk7CisrCQlwdWJsaWMgYm9vbCByZXF1ZXN0ZWRfYnlwYXNzX2NvbXBvc2l0 b3IgKCk7CisrCQlwdWJsaWMgYm9vbCByZXF1ZXN0ZWRfZG9udF9ieXBhc3NfY29tcG9zaXRvciAo KTsKKysJCXB1YmxpYyB2b2lkIHNldF9jb21wb3NpdG9yX3ByaXZhdGUgKEdMaWIuT2JqZWN0IHBy aXYpOworKwkJcHVibGljIHZvaWQgc2V0X2RlbWFuZHNfYXR0ZW50aW9uICgpOworKwkJcHVibGlj IHZvaWQgc2V0X2ljb25fZ2VvbWV0cnkgKE1ldGEuUmVjdGFuZ2xlPyByZWN0KTsKKysJCXB1Ymxp YyB2b2lkIHNoYWRlICh1aW50MzIgdGltZXN0YW1wKTsKKysJCXB1YmxpYyB2b2lkIHNob3ZlX3Rp dGxlYmFyX29uc2NyZWVuICgpOworKwkJcHVibGljIGJvb2wgc2hvd2luZ19vbl9pdHNfd29ya3Nw YWNlICgpOworKwkJcHVibGljIHZvaWQgc2h1dGRvd25fZ3JvdXAgKCk7CisrCQlwdWJsaWMgdm9p ZCBzdGljayAoKTsKKysJCXB1YmxpYyBib29sIHRpdGxlYmFyX2lzX29uc2NyZWVuICgpOworKwkJ cHVibGljIHZvaWQgdW5tYWtlX2Fib3ZlICgpOworKwkJcHVibGljIHZvaWQgdW5tYWtlX2Z1bGxz Y3JlZW4gKCk7CisrCQlwdWJsaWMgdm9pZCB1bm1heGltaXplIChNZXRhLk1heGltaXplRmxhZ3Mg ZGlyZWN0aW9ucyk7CisrCQlwdWJsaWMgdm9pZCB1bm1pbmltaXplICgpOworKwkJcHVibGljIHZv aWQgdW5zZXRfZGVtYW5kc19hdHRlbnRpb24gKCk7CisrCQlwdWJsaWMgdm9pZCB1bnNoYWRlICh1 aW50MzIgdGltZXN0YW1wKTsKKysJCXB1YmxpYyB2b2lkIHVuc3RpY2sgKCk7CisrCQlbTm9BY2Nl c3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIGFib3ZlIHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nv ck1ldGhvZF0KKysJCXB1YmxpYyBib29sIGFwcGVhcnNfZm9jdXNlZCB7IGdldDsgfQorKwkJW05v QWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9vbCBkZWNvcmF0ZWQgeyBnZXQ7IH0KKysJCVtO b0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wgZGVtYW5kc19hdHRlbnRpb24geyBnZXQ7 IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wgZnVsbHNjcmVlbiB7IGdl dDsgfQorKwkJcHVibGljIHN0cmluZyBndGtfYXBwX21lbnVfb2JqZWN0X3BhdGggeyBnZXQ7IH0K KysJCXB1YmxpYyBzdHJpbmcgZ3RrX2FwcGxpY2F0aW9uX2lkIHsgZ2V0OyB9CisrCQlwdWJsaWMg c3RyaW5nIGd0a19hcHBsaWNhdGlvbl9vYmplY3RfcGF0aCB7IGdldDsgfQorKwkJcHVibGljIHN0 cmluZyBndGtfbWVudWJhcl9vYmplY3RfcGF0aCB7IGdldDsgfQorKwkJcHVibGljIHN0cmluZyBn dGtfdW5pcXVlX2J1c19uYW1lIHsgZ2V0OyB9CisrCQlwdWJsaWMgc3RyaW5nIGd0a193aW5kb3df b2JqZWN0X3BhdGggeyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIHZv aWQqIGljb24geyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wg bWF4aW1pemVkX2hvcml6b250YWxseSB7IGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisr CQlwdWJsaWMgYm9vbCBtYXhpbWl6ZWRfdmVydGljYWxseSB7IGdldDsgfQorKwkJW05vQWNjZXNz b3JNZXRob2RdCisrCQlwdWJsaWMgdm9pZCogbWluaV9pY29uIHsgZ2V0OyB9CisrCQlbTm9BY2Nl c3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIG1pbmltaXplZCB7IGdldDsgfQorKwkJcHVibGlj IHN0cmluZyBtdXR0ZXJfaGludHMgeyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJ cHVibGljIGJvb2wgb25fYWxsX3dvcmtzcGFjZXMgeyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0 aG9kXQorKwkJcHVibGljIGJvb2wgcmVzaXplYWJsZSB7IGdldDsgfQorKwkJW05vQWNjZXNzb3JN ZXRob2RdCisrCQlwdWJsaWMgYm9vbCBza2lwX3Rhc2tiYXIgeyBnZXQ7IH0KKysJCXB1YmxpYyBz dHJpbmcgdGl0bGUgeyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJv b2wgdXJnZW50IHsgZ2V0OyB9CisrCQlwdWJsaWMgdWludCB1c2VyX3RpbWUgeyBnZXQ7IH0KKysJ CXB1YmxpYyBNZXRhLldpbmRvd1R5cGUgd2luZG93X3R5cGUgeyBnZXQ7IH0KKysJCXB1YmxpYyBz dHJpbmcgd21fY2xhc3MgeyBnZXQ7IH0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCBwb3NpdGlvbl9j aGFuZ2VkICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHJhaXNlZCAoKTsKKysJCXB1YmxpYyBz aWduYWwgdm9pZCBzaG93biAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBzaXplX2NoYW5nZWQg KCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgdW5tYW5hZ2VkICgpOworKwkJcHVibGljIHNpZ25h bCB2b2lkIHdvcmtzcGFjZV9jaGFuZ2VkICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJtZXRhL21ldGEtd2luZG93LWFjdG9yLmgiLCB0eXBlX2lkID0gIm1ldGFfd2luZG93 X2FjdG9yX2dldF90eXBlICgpIildCisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBXaW5kb3dBY3Rv ciA6IENsdXR0ZXIuQWN0b3IsIEF0ay5JbXBsZW1lbnRvciwgQ2x1dHRlci5BbmltYXRhYmxlLCBD bHV0dGVyLkNvbnRhaW5lciwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2Nv bnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBXaW5kb3dBY3RvciAoKTsK KysJCXB1YmxpYyBDYWlyby5TdXJmYWNlPyBnZXRfaW1hZ2UgKENhaXJvLlJlY3RhbmdsZUludD8g Y2xpcCk7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLldpbmRvdyBnZXRfbWV0YV93aW5kb3cgKCk7 CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLlNoYXBlZFRleHR1cmUgZ2V0X3RleHR1cmUgKCk7Cisr CQlwdWJsaWMgYm9vbCBpc19kZXN0cm95ZWQgKCk7CisrCQlwdWJsaWMgdm9pZCBzeW5jX3Zpc2li aWxpdHkgKCk7CisrCQlwdWJsaWMgTWV0YS5XaW5kb3cgbWV0YV93aW5kb3cgeyBnZXQ7IGNvbnN0 cnVjdDsgfQorKwkJcHVibGljIHNpZ25hbCB2b2lkIGRhbWFnZWQgKCk7CisrCQlwdWJsaWMgc2ln bmFsIHZvaWQgZWZmZWN0c19jb21wbGV0ZWQgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgZmly c3RfZnJhbWUgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgdGhhd2VkICgpOworKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtd2luZG93LWdyb3VwLmgiLCB0eXBl X2lkID0gIm1ldGFfd2luZG93X2dyb3VwX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBX aW5kb3dHcm91cCA6IENsdXR0ZXIuQWN0b3IsIEF0ay5JbXBsZW1lbnRvciwgQ2x1dHRlci5Bbmlt YXRhYmxlLCBDbHV0dGVyLkNvbnRhaW5lciwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29k ZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBXaW5kb3dH cm91cCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLXdp bmRvdy1zaGFwZS5oIiwgcmVmX2Z1bmN0aW9uID0gIm1ldGFfd2luZG93X3NoYXBlX3JlZiIsIHR5 cGVfaWQgPSAibWV0YV93aW5kb3dfc2hhcGVfZ2V0X3R5cGUgKCkiLCB1bnJlZl9mdW5jdGlvbiA9 ICJtZXRhX3dpbmRvd19zaGFwZV91bnJlZiIpXQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNz IFdpbmRvd1NoYXBlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNl KV0KKysJCXB1YmxpYyBXaW5kb3dTaGFwZSAoQ2Fpcm8uUmVnaW9uIHJlZ2lvbik7CisrCQlwdWJs aWMgYm9vbCBlcXVhbCAoTWV0YS5XaW5kb3dTaGFwZSBzaGFwZV9iKTsKKysJCXB1YmxpYyB2b2lk IGdldF9ib3JkZXJzIChpbnQgYm9yZGVyX3RvcCwgaW50IGJvcmRlcl9yaWdodCwgaW50IGJvcmRl cl9ib3R0b20sIGludCBib3JkZXJfbGVmdCk7CisrCQlwdWJsaWMgdWludCBoYXNoICgpOworKwkJ cHVibGljIE1ldGEuV2luZG93U2hhcGUgQHJlZiAoKTsKKysJCXB1YmxpYyBDYWlyby5SZWdpb24g dG9fcmVnaW9uIChpbnQgY2VudGVyX3dpZHRoLCBpbnQgY2VudGVyX2hlaWdodCk7CisrCQlwdWJs aWMgdm9pZCB1bnJlZiAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0 YS93b3Jrc3BhY2UuaCIsIHR5cGVfaWQgPSAibWV0YV93b3Jrc3BhY2VfZ2V0X3R5cGUgKCkiKV0K KysJcHVibGljIGNsYXNzIFdvcmtzcGFjZSA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFz X2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBXb3Jrc3BhY2UgKCk7 CisrCQlwdWJsaWMgdm9pZCBhY3RpdmF0ZSAodWludDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMg dm9pZCBhY3RpdmF0ZV93aXRoX2ZvY3VzIChNZXRhLldpbmRvdyBmb2N1c190aGlzLCB1aW50MzIg dGltZXN0YW1wKTsKKysJCXB1YmxpYyB1bm93bmVkIE1ldGEuRGlzcGxheSBnZXRfZGlzcGxheSAo KTsKKysJCXB1YmxpYyB1bm93bmVkIE1ldGEuV29ya3NwYWNlIGdldF9uZWlnaGJvciAoTWV0YS5N b3Rpb25EaXJlY3Rpb24gZGlyZWN0aW9uKTsKKysJCXB1YmxpYyBNZXRhLlJlY3RhbmdsZSBnZXRf d29ya19hcmVhX2FsbF9tb25pdG9ycyAoKTsKKysJCXB1YmxpYyBNZXRhLlJlY3RhbmdsZSBnZXRf d29ya19hcmVhX2Zvcl9tb25pdG9yIChpbnQgd2hpY2hfbW9uaXRvcik7CisrCQlwdWJsaWMgaW50 IGluZGV4ICgpOworKwkJcHVibGljIEdMaWIuTGlzdDx3ZWFrIE1ldGEuV2luZG93PiBsaXN0X3dp bmRvd3MgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfYnVpbHRpbl9zdHJ1dHMgKEdMaWIuU0xpc3Q8 TWV0YS5TdHJ1dD8+IHN0cnV0cyk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyB1 aW50IG5fd2luZG93cyB7IGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMg dWludCB3b3Jrc3BhY2VfaW5kZXggeyBnZXQ7IH0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCB3aW5k b3dfYWRkZWQgKE1ldGEuV2luZG93IG9iamVjdCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgd2lu ZG93X3JlbW92ZWQgKE1ldGEuV2luZG93IG9iamVjdCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gIm1ldGEvbWV0YS13b3Jrc3BhY2UtbWFuYWdlci5oIiwgdHlwZV9pZCA9ICJt ZXRhX3dvcmtzcGFjZV9tYW5hZ2VyX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBXb3Jr c3BhY2VNYW5hZ2VyIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1 bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFdvcmtzcGFjZU1hbmFnZXIgKCk7CisrCQlw dWJsaWMgdW5vd25lZCBNZXRhLldvcmtzcGFjZSBhcHBlbmRfbmV3X3dvcmtzcGFjZSAoYm9vbCBh Y3RpdmF0ZSwgdWludDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLldvcmtz cGFjZSBnZXRfYWN0aXZlX3dvcmtzcGFjZSAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0X2FjdGl2ZV93 b3Jrc3BhY2VfaW5kZXggKCk7CisrCQlwdWJsaWMgaW50IGdldF9uX3dvcmtzcGFjZXMgKCk7Cisr CQlwdWJsaWMgdW5vd25lZCBNZXRhLldvcmtzcGFjZT8gZ2V0X3dvcmtzcGFjZV9ieV9pbmRleCAo aW50IGluZGV4KTsKKysJCXB1YmxpYyB2b2lkIG92ZXJyaWRlX3dvcmtzcGFjZV9sYXlvdXQgKE1l dGEuRGlzcGxheUNvcm5lciBzdGFydGluZ19jb3JuZXIsIGJvb2wgdmVydGljYWxfbGF5b3V0LCBp bnQgbl9yb3dzLCBpbnQgbl9jb2x1bW5zKTsKKysJCXB1YmxpYyB2b2lkIHJlbW92ZV93b3Jrc3Bh Y2UgKE1ldGEuV29ya3NwYWNlIHdvcmtzcGFjZSwgdWludDMyIHRpbWVzdGFtcCk7CisrCQlwdWJs aWMgdm9pZCByZW9yZGVyX3dvcmtzcGFjZSAoTWV0YS5Xb3Jrc3BhY2Ugd29ya3NwYWNlLCBpbnQg bmV3X2luZGV4KTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGludCBsYXlvdXRf Y29sdW1ucyB7IGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgaW50IGxh eW91dF9yb3dzIHsgZ2V0OyB9CisrCQlwdWJsaWMgaW50IG5fd29ya3NwYWNlcyB7IGdldDsgfQor KwkJcHVibGljIHNpZ25hbCB2b2lkIGFjdGl2ZV93b3Jrc3BhY2VfY2hhbmdlZCAoKTsKKysJCXB1 YmxpYyBzaWduYWwgdm9pZCBzaG93aW5nX2Rlc2t0b3BfY2hhbmdlZCAoKTsKKysJCXB1YmxpYyBz aWduYWwgdm9pZCB3b3Jrc3BhY2VfYWRkZWQgKGludCBvYmplY3QpOworKwkJcHVibGljIHNpZ25h bCB2b2lkIHdvcmtzcGFjZV9yZW1vdmVkIChpbnQgb2JqZWN0KTsKKysJCXB1YmxpYyBzaWduYWwg dm9pZCB3b3Jrc3BhY2Vfc3dpdGNoZWQgKGludCBvYmplY3QsIGludCBwMCwgTWV0YS5Nb3Rpb25E aXJlY3Rpb24gcDEpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHdvcmtzcGFjZXNfcmVvcmRlcmVk ICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEteDExLWRp c3BsYXkuaCIsIHR5cGVfaWQgPSAibWV0YV94MTFfZGlzcGxheV9nZXRfdHlwZSAoKSIpXQorKwlw dWJsaWMgY2xhc3MgWDExRGlzcGxheSA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2Nv bnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBYMTFEaXNwbGF5ICgpOwor KwkJcHVibGljIHZvaWQgY2xlYXJfc3RhZ2VfaW5wdXRfcmVnaW9uICgpOworKwkJcHVibGljIGlu dCBnZXRfZGFtYWdlX2V2ZW50X2Jhc2UgKCk7CisrCQlwdWJsaWMgaW50IGdldF9zY3JlZW5fbnVt YmVyICgpOworKwkJcHVibGljIGludCBnZXRfc2hhcGVfZXZlbnRfYmFzZSAoKTsKKysJCXB1Ymxp YyBib29sIGhhc19zaGFwZSAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9jbV9zZWxlY3Rpb24gKCk7 CisrCQlwdWJsaWMgdm9pZCBzZXRfc3RhZ2VfaW5wdXRfcmVnaW9uIChYLlhzZXJ2ZXJSZWdpb24g cmVnaW9uKTsKKysJCXB1YmxpYyBib29sIHh3aW5kb3dfaXNfYV9ub19mb2N1c193aW5kb3cgKFgu V2luZG93IHh3aW5kb3cpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRh L21ldGEtY2xvc2UtZGlhbG9nLmgiLCB0eXBlX2NuYW1lID0gIk1ldGFDbG9zZURpYWxvZ0ludGVy ZmFjZSIsIHR5cGVfaWQgPSAibWV0YV9jbG9zZV9kaWFsb2dfZ2V0X3R5cGUgKCkiKV0KKysJcHVi bGljIGludGVyZmFjZSBDbG9zZURpYWxvZyA6IEdMaWIuT2JqZWN0IHsKKysJCXB1YmxpYyBhYnN0 cmFjdCB2b2lkIGZvY3VzICgpOworKwkJcHVibGljIGFic3RyYWN0IHZvaWQgaGlkZSAoKTsKKysJ CXB1YmxpYyBib29sIGlzX3Zpc2libGUgKCk7CisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBzaG93 ICgpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYWJzdHJhY3QgTWV0YS5XaW5k b3cgd2luZG93IHsgb3duZWQgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtIYXNFbWl0dGVyXQorKwkJ cHVibGljIHNpZ25hbCB2b2lkIHJlc3BvbnNlIChNZXRhLkNsb3NlRGlhbG9nUmVzcG9uc2UgcmVz cG9uc2UpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtaW5o aWJpdC1zaG9ydGN1dHMtZGlhbG9nLmgiLCB0eXBlX2NuYW1lID0gIk1ldGFJbmhpYml0U2hvcnRj dXRzRGlhbG9nSW50ZXJmYWNlIiwgdHlwZV9pZCA9ICJtZXRhX2luaGliaXRfc2hvcnRjdXRzX2Rp YWxvZ19nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgaW50ZXJmYWNlIEluaGliaXRTaG9ydGN1dHNE aWFsb2cgOiBHTGliLk9iamVjdCB7CisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBoaWRlICgpOwor KwkJcHVibGljIGFic3RyYWN0IHZvaWQgc2hvdyAoKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQor KwkJcHVibGljIGFic3RyYWN0IE1ldGEuV2luZG93IHdpbmRvdyB7IG93bmVkIGdldDsgY29uc3Ry dWN0OyB9CisrCQlbSGFzRW1pdHRlcl0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCByZXNwb25zZSAo TWV0YS5JbmhpYml0U2hvcnRjdXRzRGlhbG9nUmVzcG9uc2UgcmVzcG9uc2UpOworKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGhhc190eXBlX2lkID0gZmFs c2UpXQorKwlwdWJsaWMgc3RydWN0IEJ1dHRvbkxheW91dCB7CisrCQlbQ0NvZGUgKGFycmF5X2xl bmd0aCA9IGZhbHNlKV0KKysJCXB1YmxpYyB3ZWFrIE1ldGEuQnV0dG9uRnVuY3Rpb24gbGVmdF9i dXR0b25zWzRdOworKwkJW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldCisrCQlwdWJsaWMg d2VhayBib29sIGxlZnRfYnV0dG9uc19oYXNfc3BhY2VyWzRdOworKwkJW0NDb2RlIChhcnJheV9s ZW5ndGggPSBmYWxzZSldCisrCQlwdWJsaWMgd2VhayBNZXRhLkJ1dHRvbkZ1bmN0aW9uIHJpZ2h0 X2J1dHRvbnNbNF07CisrCQlbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0KKysJCXB1Ymxp YyB3ZWFrIGJvb2wgcmlnaHRfYnV0dG9uc19oYXNfc3BhY2VyWzRdOworKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQor KwlwdWJsaWMgc3RydWN0IEVkZ2UgeworKwkJcHVibGljIE1ldGEuUmVjdGFuZ2xlIHJlY3Q7Cisr CQlwdWJsaWMgTWV0YS5TaWRlIHNpZGVfdHlwZTsKKysJCXB1YmxpYyBNZXRhLkVkZ2VUeXBlIGVk Z2VfdHlwZTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgi LCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBGcmFtZUJvcmRlcnMgewor KwkJcHVibGljIEd0ay5Cb3JkZXIgdmlzaWJsZTsKKysJCXB1YmxpYyBHdGsuQm9yZGVyIGludmlz aWJsZTsKKysJCXB1YmxpYyBHdGsuQm9yZGVyIHRvdGFsOworKwkJcHVibGljIHZvaWQgY2xlYXIg KCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1wbHVnaW4u aCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgc3RydWN0IFBsdWdpbkluZm8gewor KwkJcHVibGljIHdlYWsgc3RyaW5nIG5hbWU7CisrCQlwdWJsaWMgd2VhayBzdHJpbmcgdmVyc2lv bjsKKysJCXB1YmxpYyB3ZWFrIHN0cmluZyBhdXRob3I7CisrCQlwdWJsaWMgd2VhayBzdHJpbmcg bGljZW5zZTsKKysJCXB1YmxpYyB3ZWFrIHN0cmluZyBkZXNjcmlwdGlvbjsKKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNl KV0KKysJcHVibGljIHN0cnVjdCBQbHVnaW5WZXJzaW9uIHsKKysJCXB1YmxpYyB1aW50IHZlcnNp b25fbWFqb3I7CisrCQlwdWJsaWMgdWludCB2ZXJzaW9uX21pbm9yOworKwkJcHVibGljIHVpbnQg dmVyc2lvbl9taWNybzsKKysJCXB1YmxpYyB1aW50IHZlcnNpb25fYXBpOworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNvcHlfZnVuY3Rpb24gPSAiZ19i b3hlZF9jb3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0eXBlX2lkID0gIm1l dGFfcmVjdGFuZ2xlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBzdHJ1Y3QgUmVjdGFuZ2xlIHsK KysJCXB1YmxpYyBpbnQgeDsKKysJCXB1YmxpYyBpbnQgeTsKKysJCXB1YmxpYyBpbnQgd2lkdGg7 CisrCQlwdWJsaWMgaW50IGhlaWdodDsKKysJCXB1YmxpYyBpbnQgYXJlYSAoKTsKKysJCXB1Ymxp YyBib29sIGNvbnRhaW5zX3JlY3QgKE1ldGEuUmVjdGFuZ2xlIGlubmVyX3JlY3QpOworKwkJcHVi bGljIE1ldGEuUmVjdGFuZ2xlPyBjb3B5ICgpOworKwkJcHVibGljIGJvb2wgY291bGRfZml0X3Jl Y3QgKE1ldGEuUmVjdGFuZ2xlIGlubmVyX3JlY3QpOworKwkJcHVibGljIGJvb2wgZXF1YWwgKE1l dGEuUmVjdGFuZ2xlIHNyYzIpOworKwkJcHVibGljIHZvaWQgZnJlZSAoKTsKKysJCXB1YmxpYyBi b29sIGhvcml6X292ZXJsYXAgKE1ldGEuUmVjdGFuZ2xlIHJlY3QyKTsKKysJCXB1YmxpYyBib29s IGludGVyc2VjdCAoTWV0YS5SZWN0YW5nbGUgc3JjMiwgb3V0IE1ldGEuUmVjdGFuZ2xlIGRlc3Qp OworKwkJcHVibGljIGJvb2wgb3ZlcmxhcCAoTWV0YS5SZWN0YW5nbGUgcmVjdDIpOworKwkJcHVi bGljIE1ldGEuUmVjdGFuZ2xlIHVuaW9uIChNZXRhLlJlY3RhbmdsZSByZWN0Mik7CisrCQlwdWJs aWMgYm9vbCB2ZXJ0X292ZXJsYXAgKE1ldGEuUmVjdGFuZ2xlIHJlY3QyKTsKKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNl KV0KKysJcHVibGljIHN0cnVjdCBTaGFkb3dQYXJhbXMgeworKwkJcHVibGljIGludCByYWRpdXM7 CisrCQlwdWJsaWMgaW50IHRvcF9mYWRlOworKwkJcHVibGljIGludCB4X29mZnNldDsKKysJCXB1 YmxpYyBpbnQgeV9vZmZzZXQ7CisrCQlwdWJsaWMgdWludDggb3BhY2l0eTsKKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNl KV0KKysJcHVibGljIHN0cnVjdCBTdHJ1dCB7CisrCQlwdWJsaWMgTWV0YS5SZWN0YW5nbGUgcmVj dDsKKysJCXB1YmxpYyBNZXRhLlNpZGUgc2lkZTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfQkFSUklFUl9ESVJFQ1RJT05f IiwgdHlwZV9pZCA9ICJtZXRhX2JhcnJpZXJfZGlyZWN0aW9uX2dldF90eXBlICgpIildCisrCVtG bGFnc10KKysJcHVibGljIGVudW0gQmFycmllckRpcmVjdGlvbiB7CisrCQlQT1NJVElWRV9YLAor KwkJUE9TSVRJVkVfWSwKKysJCU5FR0FUSVZFX1gsCisrCQlORUdBVElWRV9ZCisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX0JV VFRPTl9GVU5DVElPTl8iLCB0eXBlX2lkID0gIm1ldGFfYnV0dG9uX2Z1bmN0aW9uX2dldF90eXBl ICgpIildCisrCXB1YmxpYyBlbnVtIEJ1dHRvbkZ1bmN0aW9uIHsKKysJCU1FTlUsCisrCQlNSU5J TUlaRSwKKysJCU1BWElNSVpFLAorKwkJQ0xPU0UsCisrCQlMQVNUCisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX0NMT1NFX0RJ QUxPR19SRVNQT05TRV8iLCB0eXBlX2lkID0gIm1ldGFfY2xvc2VfZGlhbG9nX3Jlc3BvbnNlX2dl dF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIENsb3NlRGlhbG9nUmVzcG9uc2UgeworKwkJV0FJ VCwKKysJCUZPUkNFX0NMT1NFCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1l dGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX0NPTVBfRUZGRUNUXyIsIHR5cGVfaWQgPSAibWV0 YV9jb21wX2VmZmVjdF9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBDb21wRWZmZWN0IHsK KysJCUNSRUFURSwKKysJCVVOTUlOSU1JWkUsCisrCQlERVNUUk9ZLAorKwkJTUlOSU1JWkUsCisr CQlOT05FCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwg Y3ByZWZpeCA9ICJNRVRBX0NVUlNPUl8iLCB0eXBlX2lkID0gIm1ldGFfY3Vyc29yX2dldF90eXBl ICgpIildCisrCXB1YmxpYyBlbnVtIEN1cnNvciB7CisrCQlOT05FLAorKwkJREVGQVVMVCwKKysJ CU5PUlRIX1JFU0laRSwKKysJCVNPVVRIX1JFU0laRSwKKysJCVdFU1RfUkVTSVpFLAorKwkJRUFT VF9SRVNJWkUsCisrCQlTRV9SRVNJWkUsCisrCQlTV19SRVNJWkUsCisrCQlORV9SRVNJWkUsCisr CQlOV19SRVNJWkUsCisrCQlNT1ZFX09SX1JFU0laRV9XSU5ET1csCisrCQlCVVNZLAorKwkJRE5E X0lOX0RSQUcsCisrCQlETkRfTU9WRSwKKysJCURORF9DT1BZLAorKwkJRE5EX1VOU1VQUE9SVEVE X1RBUkdFVCwKKysJCVBPSU5USU5HX0hBTkQsCisrCQlDUk9TU0hBSVIsCisrCQlJQkVBTSwKKysJ CUxBU1QKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBj cHJlZml4ID0gIk1FVEFfREVCVUdfIiwgdHlwZV9pZCA9ICJtZXRhX2RlYnVnX3RvcGljX2dldF90 eXBlICgpIildCisrCVtGbGFnc10KKysJcHVibGljIGVudW0gRGVidWdUb3BpYyB7CisrCQlWRVJC T1NFLAorKwkJRk9DVVMsCisrCQlXT1JLQVJFQSwKKysJCVNUQUNLLAorKwkJVEhFTUVTLAorKwkJ U00sCisrCQlFVkVOVFMsCisrCQlXSU5ET1dfU1RBVEUsCisrCQlXSU5ET1dfT1BTLAorKwkJR0VP TUVUUlksCisrCQlQTEFDRU1FTlQsCisrCQlQSU5HLAorKwkJWElORVJBTUEsCisrCQlLRVlCSU5E SU5HUywKKysJCVNZTkMsCisrCQlFUlJPUlMsCisrCQlTVEFSVFVQLAorKwkJUFJFRlMsCisrCQlH Uk9VUFMsCisrCQlSRVNJWklORywKKysJCVNIQVBFUywKKysJCUNPTVBPU0lUT1IsCisrCQlFREdF X1JFU0lTVEFOQ0UsCisrCQlEQlVTCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g Im1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX0RJUkVDVElPTl8iLCB0eXBlX2lkID0gIm1l dGFfZGlyZWN0aW9uX2dldF90eXBlICgpIildCisrCVtGbGFnc10KKysJcHVibGljIGVudW0gRGly ZWN0aW9uIHsKKysJCUxFRlQsCisrCQlSSUdIVCwKKysJCVRPUCwKKysJCUJPVFRPTSwKKysJCVVQ LAorKwkJRE9XTiwKKysJCUhPUklaT05UQUwsCisrCQlWRVJUSUNBTAorKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9ESVNQTEFZ XyIsIHR5cGVfaWQgPSAibWV0YV9kaXNwbGF5X2Nvcm5lcl9nZXRfdHlwZSAoKSIpXQorKwlwdWJs aWMgZW51bSBEaXNwbGF5Q29ybmVyIHsKKysJCVRPUExFRlQsCisrCQlUT1BSSUdIVCwKKysJCUJP VFRPTUxFRlQsCisrCQlCT1RUT01SSUdIVAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9ESVNQTEFZXyIsIHR5cGVfaWQgPSAi bWV0YV9kaXNwbGF5X2RpcmVjdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBEaXNw bGF5RGlyZWN0aW9uIHsKKysJCVVQLAorKwkJRE9XTiwKKysJCUxFRlQsCisrCQlSSUdIVAorKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAi TUVUQV9FREdFXyIsIHR5cGVfaWQgPSAibWV0YV9lZGdlX3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJ cHVibGljIGVudW0gRWRnZVR5cGUgeworKwkJV0lORE9XLAorKwkJTU9OSVRPUiwKKysJCVNDUkVF TgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVm aXggPSAiTUVUQV9FWElUXyIsIHR5cGVfaWQgPSAibWV0YV9leGl0X2NvZGVfZ2V0X3R5cGUgKCki KV0KKysJcHVibGljIGVudW0gRXhpdENvZGUgeworKwkJU1VDQ0VTUywKKysJCUVSUk9SCisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJN RVRBX0ZSQU1FXyIsIHR5cGVfaWQgPSAibWV0YV9mcmFtZV9mbGFnc19nZXRfdHlwZSAoKSIpXQor KwlbRmxhZ3NdCisrCXB1YmxpYyBlbnVtIEZyYW1lRmxhZ3MgeworKwkJQUxMT1dTX0RFTEVURSwK KysJCUFMTE9XU19NRU5VLAorKwkJQUxMT1dTX01JTklNSVpFLAorKwkJQUxMT1dTX01BWElNSVpF LAorKwkJQUxMT1dTX1ZFUlRJQ0FMX1JFU0laRSwKKysJCUFMTE9XU19IT1JJWk9OVEFMX1JFU0la RSwKKysJCUhBU19GT0NVUywKKysJCVNIQURFRCwKKysJCVNUVUNLLAorKwkJTUFYSU1JWkVELAor KwkJQUxMT1dTX1NIQURFLAorKwkJQUxMT1dTX01PVkUsCisrCQlGVUxMU0NSRUVOLAorKwkJQUJP VkUsCisrCQlUSUxFRF9MRUZULAorKwkJVElMRURfUklHSFQKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfRlJBTUVfVFlQRV8i LCB0eXBlX2lkID0gIm1ldGFfZnJhbWVfdHlwZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51 bSBGcmFtZVR5cGUgeworKwkJTk9STUFMLAorKwkJRElBTE9HLAorKwkJTU9EQUxfRElBTE9HLAor KwkJVVRJTElUWSwKKysJCU1FTlUsCisrCQlCT1JERVIsCisrCQlBVFRBQ0hFRCwKKysJCUxBU1Q7 CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgdG9fc3RyaW5nICgpOworKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9HUkFCX09Q XyIsIHR5cGVfaWQgPSAibWV0YV9ncmFiX29wX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVt IEdyYWJPcCB7CisrCQlOT05FLAorKwkJV0lORE9XX0JBU0UsCisrCQlDT01QT1NJVE9SLAorKwkJ V0FZTEFORF9QT1BVUCwKKysJCUZSQU1FX0JVVFRPTiwKKysJCU1PVklORywKKysJCVJFU0laSU5H X05XLAorKwkJUkVTSVpJTkdfTiwKKysJCVJFU0laSU5HX05FLAorKwkJUkVTSVpJTkdfRSwKKysJ CVJFU0laSU5HX1NXLAorKwkJUkVTSVpJTkdfUywKKysJCVJFU0laSU5HX1NFLAorKwkJUkVTSVpJ TkdfVywKKysJCUtFWUJPQVJEX01PVklORywKKysJCUtFWUJPQVJEX1JFU0laSU5HX1VOS05PV04s CisrCQlLRVlCT0FSRF9SRVNJWklOR19OVywKKysJCUtFWUJPQVJEX1JFU0laSU5HX04sCisrCQlL RVlCT0FSRF9SRVNJWklOR19ORSwKKysJCUtFWUJPQVJEX1JFU0laSU5HX0UsCisrCQlLRVlCT0FS RF9SRVNJWklOR19TVywKKysJCUtFWUJPQVJEX1JFU0laSU5HX1MsCisrCQlLRVlCT0FSRF9SRVNJ WklOR19TRSwKKysJCUtFWUJPQVJEX1JFU0laSU5HX1cKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfSU5ISUJJVF9TSE9SVENV VFNfRElBTE9HX1JFU1BPTlNFXyIsIHR5cGVfaWQgPSAibWV0YV9pbmhpYml0X3Nob3J0Y3V0c19k aWFsb2dfcmVzcG9uc2VfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gSW5oaWJpdFNob3J0 Y3V0c0RpYWxvZ1Jlc3BvbnNlIHsKKysJCUFMTE9XLAorKwkJREVOWQorKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9LRVlCSU5E SU5HX0FDVElPTl8iLCB0eXBlX2lkID0gIm1ldGFfa2V5X2JpbmRpbmdfYWN0aW9uX2dldF90eXBl ICgpIildCisrCXB1YmxpYyBlbnVtIEtleUJpbmRpbmdBY3Rpb24geworKwkJTk9ORSwKKysJCVdP UktTUEFDRV8xLAorKwkJV09SS1NQQUNFXzIsCisrCQlXT1JLU1BBQ0VfMywKKysJCVdPUktTUEFD RV80LAorKwkJV09SS1NQQUNFXzUsCisrCQlXT1JLU1BBQ0VfNiwKKysJCVdPUktTUEFDRV83LAor KwkJV09SS1NQQUNFXzgsCisrCQlXT1JLU1BBQ0VfOSwKKysJCVdPUktTUEFDRV8xMCwKKysJCVdP UktTUEFDRV8xMSwKKysJCVdPUktTUEFDRV8xMiwKKysJCVdPUktTUEFDRV9MRUZULAorKwkJV09S S1NQQUNFX1JJR0hULAorKwkJV09SS1NQQUNFX1VQLAorKwkJV09SS1NQQUNFX0RPV04sCisrCQlX T1JLU1BBQ0VfTEFTVCwKKysJCVNXSVRDSF9BUFBMSUNBVElPTlMsCisrCQlTV0lUQ0hfQVBQTElD QVRJT05TX0JBQ0tXQVJELAorKwkJU1dJVENIX0dST1VQLAorKwkJU1dJVENIX0dST1VQX0JBQ0tX QVJELAorKwkJU1dJVENIX1dJTkRPV1MsCisrCQlTV0lUQ0hfV0lORE9XU19CQUNLV0FSRCwKKysJ CVNXSVRDSF9QQU5FTFMsCisrCQlTV0lUQ0hfUEFORUxTX0JBQ0tXQVJELAorKwkJQ1lDTEVfR1JP VVAsCisrCQlDWUNMRV9HUk9VUF9CQUNLV0FSRCwKKysJCUNZQ0xFX1dJTkRPV1MsCisrCQlDWUNM RV9XSU5ET1dTX0JBQ0tXQVJELAorKwkJQ1lDTEVfUEFORUxTLAorKwkJQ1lDTEVfUEFORUxTX0JB Q0tXQVJELAorKwkJU0hPV19ERVNLVE9QLAorKwkJUEFORUxfTUFJTl9NRU5VLAorKwkJUEFORUxf UlVOX0RJQUxPRywKKysJCVRPR0dMRV9SRUNPUkRJTkcsCisrCQlTRVRfU1BFV19NQVJLLAorKwkJ QUNUSVZBVEVfV0lORE9XX01FTlUsCisrCQlUT0dHTEVfRlVMTFNDUkVFTiwKKysJCVRPR0dMRV9N QVhJTUlaRUQsCisrCQlUT0dHTEVfVElMRURfTEVGVCwKKysJCVRPR0dMRV9USUxFRF9SSUdIVCwK KysJCVRPR0dMRV9BQk9WRSwKKysJCU1BWElNSVpFLAorKwkJVU5NQVhJTUlaRSwKKysJCVRPR0dM RV9TSEFERUQsCisrCQlNSU5JTUlaRSwKKysJCUNMT1NFLAorKwkJQkVHSU5fTU9WRSwKKysJCUJF R0lOX1JFU0laRSwKKysJCVRPR0dMRV9PTl9BTExfV09SS1NQQUNFUywKKysJCU1PVkVfVE9fV09S S1NQQUNFXzEsCisrCQlNT1ZFX1RPX1dPUktTUEFDRV8yLAorKwkJTU9WRV9UT19XT1JLU1BBQ0Vf MywKKysJCU1PVkVfVE9fV09SS1NQQUNFXzQsCisrCQlNT1ZFX1RPX1dPUktTUEFDRV81LAorKwkJ TU9WRV9UT19XT1JLU1BBQ0VfNiwKKysJCU1PVkVfVE9fV09SS1NQQUNFXzcsCisrCQlNT1ZFX1RP X1dPUktTUEFDRV84LAorKwkJTU9WRV9UT19XT1JLU1BBQ0VfOSwKKysJCU1PVkVfVE9fV09SS1NQ QUNFXzEwLAorKwkJTU9WRV9UT19XT1JLU1BBQ0VfMTEsCisrCQlNT1ZFX1RPX1dPUktTUEFDRV8x MiwKKysJCU1PVkVfVE9fV09SS1NQQUNFX0xFRlQsCisrCQlNT1ZFX1RPX1dPUktTUEFDRV9SSUdI VCwKKysJCU1PVkVfVE9fV09SS1NQQUNFX1VQLAorKwkJTU9WRV9UT19XT1JLU1BBQ0VfRE9XTiwK KysJCU1PVkVfVE9fV09SS1NQQUNFX0xBU1QsCisrCQlNT1ZFX1RPX01PTklUT1JfTEVGVCwKKysJ CU1PVkVfVE9fTU9OSVRPUl9SSUdIVCwKKysJCU1PVkVfVE9fTU9OSVRPUl9VUCwKKysJCU1PVkVf VE9fTU9OSVRPUl9ET1dOLAorKwkJUkFJU0VfT1JfTE9XRVIsCisrCQlSQUlTRSwKKysJCUxPV0VS LAorKwkJTUFYSU1JWkVfVkVSVElDQUxMWSwKKysJCU1BWElNSVpFX0hPUklaT05UQUxMWSwKKysJ CU1PVkVfVE9fQ09STkVSX05XLAorKwkJTU9WRV9UT19DT1JORVJfTkUsCisrCQlNT1ZFX1RPX0NP Uk5FUl9TVywKKysJCU1PVkVfVE9fQ09STkVSX1NFLAorKwkJTU9WRV9UT19TSURFX04sCisrCQlN T1ZFX1RPX1NJREVfUywKKysJCU1PVkVfVE9fU0lERV9FLAorKwkJTU9WRV9UT19TSURFX1csCisr CQlNT1ZFX1RPX0NFTlRFUiwKKysJCU9WRVJMQVlfS0VZLAorKwkJTE9DQVRFX1BPSU5URVJfS0VZ LAorKwkJSVNPX05FWFRfR1JPVVAsCisrCQlBTFdBWVNfT05fVE9QLAorKwkJU1dJVENIX01PTklU T1IsCisrCQlST1RBVEVfTU9OSVRPUiwKKysJCUxBU1QKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfS0VZX0JJTkRJTkdfIiwg dHlwZV9pZCA9ICJtZXRhX2tleV9iaW5kaW5nX2ZsYWdzX2dldF90eXBlICgpIildCisrCVtGbGFn c10KKysJcHVibGljIGVudW0gS2V5QmluZGluZ0ZsYWdzIHsKKysJCU5PTkUsCisrCQlQRVJfV0lO RE9XLAorKwkJQlVJTFRJTiwKKysJCUlTX1JFVkVSU0VELAorKwkJTk9OX01BU0tBQkxFLAorKwkJ SUdOT1JFX0FVVE9SRVBFQVQsCisrCQlOT19BVVRPX0dSQUIKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfTEFURVJfIiwgdHlw ZV9pZCA9ICJtZXRhX2xhdGVyX3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gTGF0 ZXJUeXBlIHsKKysJCVJFU0laRSwKKysJCUNBTENfU0hPV0lORywKKysJCUNIRUNLX0ZVTExTQ1JF RU4sCisrCQlTWU5DX1NUQUNLLAorKwkJQkVGT1JFX1JFRFJBVywKKysJCUlETEUKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFf TE9DQUxFX0RJUkVDVElPTl8iLCB0eXBlX2lkID0gIm1ldGFfbG9jYWxlX2RpcmVjdGlvbl9nZXRf dHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBMb2NhbGVEaXJlY3Rpb24geworKwkJTFRSLAorKwkJ UlRMCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3By ZWZpeCA9ICJNRVRBX01BWElNSVpFXyIsIHR5cGVfaWQgPSAibWV0YV9tYXhpbWl6ZV9mbGFnc19n ZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCXB1YmxpYyBlbnVtIE1heGltaXplRmxhZ3Mgewor KwkJSE9SSVpPTlRBTCwKKysJCVZFUlRJQ0FMLAorKwkJQk9USAorKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9NT0RBTF8iLCB0 eXBlX2lkID0gIm1ldGFfbW9kYWxfb3B0aW9uc19nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisr CXB1YmxpYyBlbnVtIE1vZGFsT3B0aW9ucyB7CisrCQlQT0lOVEVSX0FMUkVBRFlfR1JBQkJFRCwK KysJCUtFWUJPQVJEX0FMUkVBRFlfR1JBQkJFRAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9NT05JVE9SX1NXSVRDSF9DT05G SUdfIiwgdHlwZV9pZCA9ICJtZXRhX21vbml0b3Jfc3dpdGNoX2NvbmZpZ190eXBlX2dldF90eXBl ICgpIildCisrCXB1YmxpYyBlbnVtIE1vbml0b3JTd2l0Y2hDb25maWdUeXBlIHsKKysJCUFMTF9N SVJST1IsCisrCQlBTExfTElORUFSLAorKwkJRVhURVJOQUwsCisrCQlCVUlMVElOLAorKwkJVU5L Tk9XTgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNw cmVmaXggPSAiTUVUQV9NT1RJT05fIiwgdHlwZV9pZCA9ICJtZXRhX21vdGlvbl9kaXJlY3Rpb25f Z2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gTW90aW9uRGlyZWN0aW9uIHsKKysJCVVQLAor KwkJRE9XTiwKKysJCUxFRlQsCisrCQlSSUdIVCwKKysJCVVQX0xFRlQsCisrCQlVUF9SSUdIVCwK KysJCURPV05fTEVGVCwKKysJCURPV05fUklHSFQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfUEFEX0FDVElPTl8iLCB0eXBl X2lkID0gIm1ldGFfcGFkX2FjdGlvbl90eXBlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVt IFBhZEFjdGlvblR5cGUgeworKwkJQlVUVE9OLAorKwkJUklORywKKysJCVNUUklQCisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNwcmVmaXggPSAiTUVU QV9QUkVGXyIsIHR5cGVfaWQgPSAibWV0YV9wcmVmZXJlbmNlX2dldF90eXBlICgpIildCisrCXB1 YmxpYyBlbnVtIFByZWZlcmVuY2UgeworKwkJTU9VU0VfQlVUVE9OX01PRFMsCisrCQlGT0NVU19N T0RFLAorKwkJRk9DVVNfTkVXX1dJTkRPV1MsCisrCQlBVFRBQ0hfTU9EQUxfRElBTE9HUywKKysJ CVJBSVNFX09OX0NMSUNLLAorKwkJQUNUSU9OX0RPVUJMRV9DTElDS19USVRMRUJBUiwKKysJCUFD VElPTl9NSURETEVfQ0xJQ0tfVElUTEVCQVIsCisrCQlBQ1RJT05fUklHSFRfQ0xJQ0tfVElUTEVC QVIsCisrCQlBVVRPX1JBSVNFLAorKwkJQVVUT19SQUlTRV9ERUxBWSwKKysJCUZPQ1VTX0NIQU5H RV9PTl9QT0lOVEVSX1JFU1QsCisrCQlUSVRMRUJBUl9GT05ULAorKwkJTlVNX1dPUktTUEFDRVMs CisrCQlEWU5BTUlDX1dPUktTUEFDRVMsCisrCQlLRVlCSU5ESU5HUywKKysJCURJU0FCTEVfV09S S0FST1VORFMsCisrCQlCVVRUT05fTEFZT1VULAorKwkJV09SS1NQQUNFX05BTUVTLAorKwkJVklT VUFMX0JFTEwsCisrCQlBVURJQkxFX0JFTEwsCisrCQlWSVNVQUxfQkVMTF9UWVBFLAorKwkJR05P TUVfQUNDRVNTSUJJTElUWSwKKysJCUdOT01FX0FOSU1BVElPTlMsCisrCQlDVVJTT1JfVEhFTUUs CisrCQlDVVJTT1JfU0laRSwKKysJCVJFU0laRV9XSVRIX1JJR0hUX0JVVFRPTiwKKysJCUVER0Vf VElMSU5HLAorKwkJRk9SQ0VfRlVMTFNDUkVFTiwKKysJCVdPUktTUEFDRVNfT05MWV9PTl9QUklN QVJZLAorKwkJRFJBR0dBQkxFX0JPUkRFUl9XSURUSCwKKysJCUFVVE9fTUFYSU1JWkUsCisrCQlD RU5URVJfTkVXX1dJTkRPV1MsCisrCQlEUkFHX1RIUkVTSE9MRCwKKysJCUxPQ0FURV9QT0lOVEVS OworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIHRvX3N0cmluZyAoKTsKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfIiwgdHlw ZV9pZCA9ICJtZXRhX3NlbGVjdGlvbl90eXBlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVt IFNlbGVjdGlvblR5cGUgeworKwkJU0VMRUNUSU9OX1BSSU1BUlksCisrCQlTRUxFQ1RJT05fQ0xJ UEJPQVJELAorKwkJU0VMRUNUSU9OX0RORCwKKysJCU5fU0VMRUNUSU9OX1RZUEVTCisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRB X1NIQURPV19NT0RFXyIsIHR5cGVfaWQgPSAibWV0YV9zaGFkb3dfbW9kZV9nZXRfdHlwZSAoKSIp XQorKwlwdWJsaWMgZW51bSBTaGFkb3dNb2RlIHsKKysJCUFVVE8sCisrCQlGT1JDRURfT0ZGLAor KwkJRk9SQ0VEX09OCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFp bi5oIiwgY3ByZWZpeCA9ICJNRVRBX1NJREVfIiwgdHlwZV9pZCA9ICJtZXRhX3NpZGVfZ2V0X3R5 cGUgKCkiKV0KKysJcHVibGljIGVudW0gU2lkZSB7CisrCQlMRUZULAorKwkJUklHSFQsCisrCQlU T1AsCisrCQlCT1RUT00KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9t YWluLmgiLCBjcHJlZml4ID0gIk1FVEFfU0laRV9DSEFOR0VfIiwgdHlwZV9pZCA9ICJtZXRhX3Np emVfY2hhbmdlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIFNpemVDaGFuZ2UgeworKwkJ TUFYSU1JWkUsCisrCQlVTk1BWElNSVpFLAorKwkJRlVMTFNDUkVFTiwKKysJCVVORlVMTFNDUkVF TgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVm aXggPSAiTUVUQV9MQVlFUl8iLCB0eXBlX2lkID0gIm1ldGFfc3RhY2tfbGF5ZXJfZ2V0X3R5cGUg KCkiKV0KKysJcHVibGljIGVudW0gU3RhY2tMYXllciB7CisrCQlERVNLVE9QLAorKwkJQk9UVE9N LAorKwkJTk9STUFMLAorKwkJVE9QLAorKwkJRE9DSywKKysJCU9WRVJSSURFX1JFRElSRUNULAor KwkJTEFTVAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIs IGNwcmVmaXggPSAiTUVUQV9UQUJfTElTVF8iLCB0eXBlX2lkID0gIm1ldGFfdGFiX2xpc3RfZ2V0 X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gVGFiTGlzdCB7CisrCQlOT1JNQUwsCisrCQlET0NL UywKKysJCUdST1VQLAorKwkJTk9STUFMX0FMTAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9UQUJfU0hPV18iLCB0eXBlX2lk ID0gIm1ldGFfdGFiX3Nob3dfdHlwZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBUYWJT aG93VHlwZSB7CisrCQlJQ09OLAorKwkJSU5TVEFOVExZCisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX1ZJUlRVQUxfIiwgdHlw ZV9pZCA9ICJtZXRhX3ZpcnR1YWxfbW9kaWZpZXJfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQor KwlwdWJsaWMgZW51bSBWaXJ0dWFsTW9kaWZpZXIgeworKwkJU0hJRlRfTUFTSywKKysJCUNPTlRS T0xfTUFTSywKKysJCUFMVF9NQVNLLAorKwkJTUVUQV9NQVNLLAorKwkJU1VQRVJfTUFTSywKKysJ CUhZUEVSX01BU0ssCisrCQlNT0QyX01BU0ssCisrCQlNT0QzX01BU0ssCisrCQlNT0Q0X01BU0ss CisrCQlNT0Q1X01BU0sKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9t YWluLmgiLCBjcHJlZml4ID0gIk1FVEFfV0lORE9XX0NMSUVOVF9UWVBFXyIsIHR5cGVfaWQgPSAi bWV0YV93aW5kb3dfY2xpZW50X3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gV2lu ZG93Q2xpZW50VHlwZSB7CisrCQlXQVlMQU5ELAorKwkJWDExCisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX1dJTkRPV19NRU5V XyIsIHR5cGVfaWQgPSAibWV0YV93aW5kb3dfbWVudV90eXBlX2dldF90eXBlICgpIildCisrCXB1 YmxpYyBlbnVtIFdpbmRvd01lbnVUeXBlIHsKKysJCVdNLAorKwkJQVBQCisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX1dJTkRP V18iLCB0eXBlX2lkID0gIm1ldGFfd2luZG93X3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGlj IGVudW0gV2luZG93VHlwZSB7CisrCQlOT1JNQUwsCisrCQlERVNLVE9QLAorKwkJRE9DSywKKysJ CURJQUxPRywKKysJCU1PREFMX0RJQUxPRywKKysJCVRPT0xCQVIsCisrCQlNRU5VLAorKwkJVVRJ TElUWSwKKysJCVNQTEFTSFNDUkVFTiwKKysJCURST1BET1dOX01FTlUsCisrCQlQT1BVUF9NRU5V LAorKwkJVE9PTFRJUCwKKysJCU5PVElGSUNBVElPTiwKKysJCUNPTUJPLAorKwkJRE5ELAorKwkJ T1ZFUlJJREVfT1RIRVIKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9t YWluLmgiLCBpbnN0YW5jZV9wb3MgPSAyLjkpXQorKwlwdWJsaWMgZGVsZWdhdGUgdm9pZCBJZGxl TW9uaXRvcldhdGNoRnVuYyAoTWV0YS5JZGxlTW9uaXRvciBtb25pdG9yLCB1aW50IHdhdGNoX2lk KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgaW5zdGFuY2Vf cG9zID0gNC45KV0KKysJcHVibGljIGRlbGVnYXRlIHZvaWQgS2V5SGFuZGxlckZ1bmMgKE1ldGEu RGlzcGxheSBkaXNwbGF5LCBNZXRhLldpbmRvdyB3aW5kb3csIFtDQ29kZSAodHlwZSA9ICJDbHV0 dGVyS2V5RXZlbnQqIildIENsdXR0ZXIuS2V5RXZlbnQ/IGV2ZW50LCBNZXRhLktleUJpbmRpbmcg YmluZGluZyk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGlu c3RhbmNlX3BvcyA9IDEuOSldCisrCXB1YmxpYyBkZWxlZ2F0ZSB2b2lkIFByZWZzQ2hhbmdlZEZ1 bmMgKE1ldGEuUHJlZmVyZW5jZSBwcmVmKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g Im1ldGEvbWFpbi5oIiwgaW5zdGFuY2VfcG9zID0gMS45KV0KKysJcHVibGljIGRlbGVnYXRlIGJv b2wgV2luZG93Rm9yZWFjaEZ1bmMgKE1ldGEuV2luZG93IHdpbmRvdyk7CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNuYW1lID0gIk1FVEFfQ1VSUkVOVF9USU1F IildCisrCXB1YmxpYyBjb25zdCBpbnQgQ1VSUkVOVF9USU1FOworKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjbmFtZSA9ICJNRVRBX0RFRkFVTFRfSUNPTl9OQU1F IildCisrCXB1YmxpYyBjb25zdCBzdHJpbmcgREVGQVVMVF9JQ09OX05BTUU7CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNuYW1lID0gIk1FVEFfSUNPTl9IRUlH SFQiKV0KKysJcHVibGljIGNvbnN0IGludCBJQ09OX0hFSUdIVDsKKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY25hbWUgPSAiTUVUQV9JQ09OX1dJRFRIIildCisr CXB1YmxpYyBjb25zdCBpbnQgSUNPTl9XSURUSDsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gIm1ldGEvbWFpbi5oIiwgY25hbWUgPSAiTUVUQV9NQUpPUl9WRVJTSU9OIildCisrCXB1Ymxp YyBjb25zdCBpbnQgTUFKT1JfVkVSU0lPTjsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g Im1ldGEvbWFpbi5oIiwgY25hbWUgPSAiTUVUQV9NSUNST19WRVJTSU9OIildCisrCXB1YmxpYyBj b25zdCBpbnQgTUlDUk9fVkVSU0lPTjsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1l dGEvbWFpbi5oIiwgY25hbWUgPSAiTUVUQV9NSU5JX0lDT05fSEVJR0hUIildCisrCXB1YmxpYyBj b25zdCBpbnQgTUlOSV9JQ09OX0hFSUdIVDsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g Im1ldGEvbWFpbi5oIiwgY25hbWUgPSAiTUVUQV9NSU5JX0lDT05fV0lEVEgiKV0KKysJcHVibGlj IGNvbnN0IGludCBNSU5JX0lDT05fV0lEVEg7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJtZXRhL21haW4uaCIsIGNuYW1lID0gIk1FVEFfTUlOT1JfVkVSU0lPTiIpXQorKwlwdWJsaWMg Y29uc3QgaW50IE1JTk9SX1ZFUlNJT047CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJt ZXRhL21haW4uaCIsIGNuYW1lID0gIk1FVEFfUExVR0lOX0FQSV9WRVJTSU9OIildCisrCXB1Ymxp YyBjb25zdCBpbnQgUExVR0lOX0FQSV9WRVJTSU9OOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAibWV0YS9tYWluLmgiLCBjbmFtZSA9ICJNRVRBX1BSSU9SSVRZX0JFRk9SRV9SRURSQVci KV0KKysJcHVibGljIGNvbnN0IGludCBQUklPUklUWV9CRUZPUkVfUkVEUkFXOworKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjbmFtZSA9ICJNRVRBX1BSSU9SSVRZ X1BSRUZTX05PVElGWSIpXQorKwlwdWJsaWMgY29uc3QgaW50IFBSSU9SSVRZX1BSRUZTX05PVElG WTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY25hbWUgPSAi TUVUQV9QUklPUklUWV9SRURSQVciKV0KKysJcHVibGljIGNvbnN0IGludCBQUklPUklUWV9SRURS QVc7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNuYW1lID0g Ik1FVEFfUFJJT1JJVFlfUkVTSVpFIildCisrCXB1YmxpYyBjb25zdCBpbnQgUFJJT1JJVFlfUkVT SVpFOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjbmFtZSA9 ICJNRVRBX1ZJUlRVQUxfQ09SRV9LRVlCT0FSRF9JRCIpXQorKwlwdWJsaWMgY29uc3QgaW50IFZJ UlRVQUxfQ09SRV9LRVlCT0FSRF9JRDsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1l dGEvbWFpbi5oIiwgY25hbWUgPSAiTUVUQV9WSVJUVUFMX0NPUkVfUE9JTlRFUl9JRCIpXQorKwlw dWJsaWMgY29uc3QgaW50IFZJUlRVQUxfQ09SRV9QT0lOVEVSX0lEOworKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGFjdGl2 YXRlX3Nlc3Npb24gKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4u aCIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgYWRkX2NsdXR0ZXJfZGVidWdfZmxhZ3MgKENsdXR0 ZXIuRGVidWdGbGFnIGRlYnVnX2ZsYWdzLCBDbHV0dGVyLkRyYXdEZWJ1Z0ZsYWcgZHJhd19mbGFn cywgQ2x1dHRlci5QaWNrRGVidWdGbGFnIHBpY2tfZmxhZ3MpOworKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIGV4aXQgKE1l dGEuRXhpdENvZGUgY29kZSk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21h aW4uaCIpXQorKwlwdWJsaWMgc3RhdGljIHN0cmluZyBnX3V0Zjhfc3RybmR1cCAoc3RyaW5nIHNy Yywgc2l6ZV90IG4pOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgi KV0KKysJcHVibGljIHN0YXRpYyB1bm93bmVkIEdMaWIuT3B0aW9uQ29udGV4dCBnZXRfb3B0aW9u X2NvbnRleHQgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIp XQorKwlwdWJsaWMgc3RhdGljIGJvb2wgZ2V0X3JlcGxhY2VfY3VycmVudF93bSAoKTsKKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIildCisrCXB1YmxpYyBzdGF0aWMg dm9pZCBpbml0ICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgi KV0KKysJcHVibGljIHN0YXRpYyBib29sIGlzX3Jlc3RhcnQgKCk7CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgcXVpdCAo TWV0YS5FeGl0Q29kZSBjb2RlKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEv bWFpbi5oIildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCByZWdpc3Rlcl93aXRoX3Nlc3Npb24gKCk7 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIpXQorKwlwdWJsaWMg c3RhdGljIHZvaWQgcmVtb3ZlX2NsdXR0ZXJfZGVidWdfZmxhZ3MgKENsdXR0ZXIuRGVidWdGbGFn IGRlYnVnX2ZsYWdzLCBDbHV0dGVyLkRyYXdEZWJ1Z0ZsYWcgZHJhd19mbGFncywgQ2x1dHRlci5Q aWNrRGVidWdGbGFnIHBpY2tfZmxhZ3MpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi bWV0YS9tYWluLmgiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIHJlc3RhcnQgKHN0cmluZz8gbWVz c2FnZSk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIpXQorKwlw dWJsaWMgc3RhdGljIGludCBydW4gKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJt ZXRhL21haW4uaCIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgc2V0X2dub21lX3dtX2tleWJpbmRp bmdzIChzdHJpbmcgd21fa2V5YmluZGluZ3MpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAibWV0YS9tYWluLmgiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIHNldF93bV9uYW1lIChzdHJp bmcgd21fbmFtZSk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIp XQorKwlwdWJsaWMgc3RhdGljIHZvaWQgdGVzdF9pbml0ICgpOworKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiKV0KKysJcHVibGljIHN0YXRpYyBib29sIHgxMV9pbml0 X2dka19kaXNwbGF5ICgpIHRocm93cyBHTGliLkVycm9yOworK30KK2RpZmYgLS1naXQgYS92YXBp L211dHRlci1jbHV0dGVyLTYtY3VzdG9tLnZhbGEgYi92YXBpL211dHRlci1jbHV0dGVyLTYtY3Vz dG9tLnZhbGEKK25ldyBmaWxlIG1vZGUgMTAwNjQ0CitpbmRleCAwMDAwMDAwMC4uODkyMjRiZTYK Ky0tLSAvZGV2L251bGwKKysrKyBiL3ZhcGkvbXV0dGVyLWNsdXR0ZXItNi1jdXN0b20udmFsYQor QEAgLTAsMCArMSwxNDcgQEAKKytuYW1lc3BhY2UgQ2x1dHRlciB7CisrCisrICBwdWJsaWMgc3Ry dWN0IE1hdHJpeCA6IENvZ2wuTWF0cml4IHsKKysgIH0KKysKKysgIHB1YmxpYyBjbGFzcyBCYWNr ZW5kIDogR0xpYi5PYmplY3QgeworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMgdmlydHVh bCB2b2lkIGFkZF9vcHRpb25zIChHTGliLk9wdGlvbkdyb3VwIGdyb3VwKTsKKysgICAgW05vV3Jh cHBlcl0KKysgICAgcHVibGljIHZpcnR1YWwgYm9vbCBjcmVhdGVfY29udGV4dCAoKSB0aHJvd3Mg R0xpYi5FcnJvcjsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVibGljIHZpcnR1YWwgdW5vd25l ZCBDbHV0dGVyLlN0YWdlV2luZG93IGNyZWF0ZV9zdGFnZSAoQ2x1dHRlci5TdGFnZSB3cmFwcGVy KSB0aHJvd3MgR0xpYi5FcnJvcjsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVibGljIHZpcnR1 YWwgdm9pZCBlbnN1cmVfY29udGV4dCAoQ2x1dHRlci5TdGFnZSBzdGFnZSk7CisrICAgIFtOb1dy YXBwZXJdCisrICAgIHB1YmxpYyB2aXJ0dWFsIENsdXR0ZXIuRmVhdHVyZUZsYWdzIGdldF9mZWF0 dXJlcyAoKTsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVibGljIHZpcnR1YWwgdm9pZCBpbml0 X2V2ZW50cyAoKTsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVibGljIHZpcnR1YWwgdm9pZCBp bml0X2ZlYXR1cmVzICgpOworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMgdmlydHVhbCBi b29sIHBvc3RfcGFyc2UgKCkgdGhyb3dzIEdMaWIuRXJyb3I7CisrICAgIFtOb1dyYXBwZXJdCisr ICAgIHB1YmxpYyB2aXJ0dWFsIGJvb2wgcHJlX3BhcnNlICgpIHRocm93cyBHTGliLkVycm9yOwor KyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMgdmlydHVhbCB2b2lkIHJlZHJhdyAoQ2x1dHRl ci5TdGFnZSBzdGFnZSk7CisrICB9CisrCisrICBbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfYm94X2dldF90eXBlICgpIild CisrICBwdWJsaWMgY2xhc3MgQm94IDogQ2x1dHRlci5BY3RvciB7CisrICAgIHB1YmxpYyBDbHV0 dGVyLkxheW91dE1hbmFnZXIgbGF5b3V0X21hbmFnZXIgeyBnZXQ7IHNldDsgfQorKyAgfQorKwor KyAgW0NDb2RlICh0eXBlX2lkID0gIkNMVVRURVJfVFlQRV9DT0xPUiIsIGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysgIHB1YmxpYyBzdHJ1Y3QgQ29sb3IgeworKyAg ICBbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfY29sb3JfZnJvbV9obHMiKV0KKysgICAgcHVibGlj IENvbG9yLmZyb21faGxzIChmbG9hdCBodWUsIGZsb2F0IGx1bWluYW5jZSwgZmxvYXQgc2F0dXJh dGlvbik7CisrICAgIFtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl9jb2xvcl9mcm9tX3BpeGVsIild CisrICAgIHB1YmxpYyBDb2xvci5mcm9tX3BpeGVsICh1aW50MzIgcGl4ZWwpOworKyAgICBbQ0Nv ZGUgKGNuYW1lID0gImNsdXR0ZXJfY29sb3JfZnJvbV9zdHJpbmciKV0KKysgICAgcHVibGljIENv bG9yLmZyb21fc3RyaW5nIChzdHJpbmcgc3RyKTsKKysgICAgW0NDb2RlIChjbmFtZSA9ICJjbHV0 dGVyX2NvbG9yX2Zyb21fc3RyaW5nIildCisrICAgIHB1YmxpYyBib29sIHBhcnNlX3N0cmluZyAo c3RyaW5nIHN0cik7CisrICAgIHB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLkNvbG9yPyBn ZXRfc3RhdGljIChDbHV0dGVyLlN0YXRpY0NvbG9yIGNvbG9yKTsKKysgIH0KKysKKysgIFtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1 dHRlcl9jb250YWluZXJfZ2V0X3R5cGUgKCkiKV0KKysgIHB1YmxpYyBpbnRlcmZhY2UgQ29udGFp bmVyIDogR0xpYi5PYmplY3QgeworKyAgICBwdWJsaWMgdm9pZCBhZGQgKHBhcmFtcyBDbHV0dGVy LkFjdG9yW10gYWN0b3JzKTsKKysgICAgW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX2NvbnRhaW5l cl9jbGFzc19maW5kX2NoaWxkX3Byb3BlcnR5IildCisrICAgIHB1YmxpYyBjbGFzcyB1bm93bmVk IEdMaWIuUGFyYW1TcGVjIGZpbmRfY2hpbGRfcHJvcGVydHkgKHN0cmluZyBwcm9wZXJ0eV9uYW1l KTsKKysgICAgW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX2NvbnRhaW5lcl9jbGFzc19saXN0X2No aWxkX3Byb3BlcnRpZXMiKV0KKysgICAgcHVibGljIGNsYXNzIHVub3duZWQgR0xpYi5QYXJhbVNw ZWNbXSBsaXN0X2NoaWxkX3Byb3BlcnRpZXMgKCk7CisrICB9CisrCisrICBbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjb3B5X2Z1bmN0aW9uID0gImdfYm94 ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJjbHV0 dGVyX2V2ZW50X2dldF90eXBlICgpIildCisrICBbQ29tcGFjdF0KKysgIHB1YmxpYyBjbGFzcyBF dmVudCB7CisrICAgIHB1YmxpYyBDbHV0dGVyLkFueUV2ZW50IGFueSB7IFtDQ29kZSAoY25hbWUg PSAiKENsdXR0ZXJBbnlFdmVudCAqKSIpXSBnZXQ7IH0KKysgICAgcHVibGljIENsdXR0ZXIuQnV0 dG9uRXZlbnQgYnV0dG9uIHsgW0NDb2RlIChjbmFtZSA9ICIoQ2x1dHRlckJ1dHRvbkV2ZW50ICop IildIGdldDsgfQorKyAgICBwdWJsaWMgQ2x1dHRlci5Dcm9zc2luZ0V2ZW50IGNyb3NzaW5nIHsg W0NDb2RlIChjbmFtZSA9ICIoQ2x1dHRlckNyb3NzaW5nRXZlbnQgKikiKV0gZ2V0OyB9CisrICAg IHB1YmxpYyBDbHV0dGVyLktleUV2ZW50IGtleSB7IFtDQ29kZSAoY25hbWUgPSAiKENsdXR0ZXJL ZXlFdmVudCAqKSIpXSBnZXQ7IH0KKysgICAgcHVibGljIENsdXR0ZXIuTW90aW9uRXZlbnQgbW90 aW9uIHsgW0NDb2RlIChjbmFtZSA9ICIoQ2x1dHRlck1vdGlvbkV2ZW50ICopIildIGdldDsgfQor KyAgICBwdWJsaWMgQ2x1dHRlci5TY3JvbGxFdmVudCBzY3JvbGwgeyBbQ0NvZGUgKGNuYW1lID0g IihDbHV0dGVyU2Nyb2xsRXZlbnQgKikiKV0gZ2V0OyB9CisrICAgIHB1YmxpYyBDbHV0dGVyLlN0 YWdlU3RhdGVFdmVudCBzdGFnZV9zdGF0ZSB7IFtDQ29kZSAoY25hbWUgPSAiKENsdXR0ZXJTdGFn ZVN0YXRlRXZlbnQgKikiKV0gZ2V0OyB9CisrICAgIHB1YmxpYyBDbHV0dGVyLlRvdWNoRXZlbnQg dG91Y2ggeyBbQ0NvZGUgKGNuYW1lID0gIihDbHV0dGVyVG91Y2hFdmVudCAqKSIpXSBnZXQ7IH0K KysgICAgcHVibGljIENsdXR0ZXIuVG91Y2hwYWRQaW5jaEV2ZW50IHRvdWNocGFkX3BpbmNoIHsg W0NDb2RlIChjbmFtZSA9ICIoQ2x1dHRlclRvdWNocGFkUGluY2hFdmVudCAqKSIpXSBnZXQ7IH0K KysgICAgcHVibGljIENsdXR0ZXIuVG91Y2hwYWRTd2lwZUV2ZW50IHRvdWNocGFkX3N3aXBlIHsg W0NDb2RlIChjbmFtZSA9ICIoQ2x1dHRlclRvdWNocGFkU3dpcGVFdmVudCAqKSIpXSBnZXQ7IH0K KysgIH0KKysKKysgIFtDQ29kZSAodHlwZV9pZCA9ICJjbHV0dGVyX3N0YWdlX2dldF90eXBlICgp IiwgY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKyAgcHVibGljIGNs YXNzIFN0YWdlIDogQ2x1dHRlci5Hcm91cCB7CisrICAgIFtDQ29kZSAoY25hbWUgPSAiY2x1dHRl cl9yZWRyYXciKV0KKysgICAgcHVibGljIHZvaWQgcmVkcmF3ICgpOworKyAgfQorKworKyAgW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrICBwdWJsaWMg aW50ZXJmYWNlIFN0YWdlV2luZG93IDogR0xpYi5PYmplY3QgeworKyAgICBbTm9XcmFwcGVyXQor KyAgICBwdWJsaWMgYWJzdHJhY3QgaW50IGdldF9wZW5kaW5nX3N3YXBzICgpOworKyAgICBbTm9X cmFwcGVyXQorKyAgICBwdWJsaWMgYWJzdHJhY3QgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF93 cmFwcGVyICgpOworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMgYWJzdHJhY3QgYm9vbCBo YXNfcmVkcmF3X2NsaXBzICgpOworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMgYWJzdHJh Y3Qgdm9pZCBoaWRlICgpOworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMgYWJzdHJhY3Qg Ym9vbCBpZ25vcmluZ19yZWRyYXdfY2xpcHMgKCk7CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1 YmxpYyBhYnN0cmFjdCBib29sIHJlYWxpemUgKCk7CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1 YmxpYyBhYnN0cmFjdCB2b2lkIHJlc2l6ZSAoaW50IHdpZHRoLCBpbnQgaGVpZ2h0KTsKKysgICAg W05vV3JhcHBlcl0KKysgICAgcHVibGljIGFic3RyYWN0IHZvaWQgc2V0X2N1cnNvcl92aXNpYmxl IChib29sIGN1cnNvcl92aXNpYmxlKTsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVibGljIGFi c3RyYWN0IHZvaWQgc2V0X2Z1bGxzY3JlZW4gKGJvb2wgaXNfZnVsbHNjcmVlbik7CisrICAgIFtO b1dyYXBwZXJdCisrICAgIHB1YmxpYyBhYnN0cmFjdCB2b2lkIHNldF90aXRsZSAoc3RyaW5nIHRp dGxlKTsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVibGljIGFic3RyYWN0IHZvaWQgc2V0X3Vz ZXJfcmVzaXphYmxlIChib29sIGlzX3Jlc2l6YWJsZSk7CisrICAgIFtOb1dyYXBwZXJdCisrICAg IHB1YmxpYyBhYnN0cmFjdCB2b2lkIHNob3cgKGJvb2wgZG9fcmFpc2UpOworKyAgICBbTm9XcmFw cGVyXQorKyAgICBwdWJsaWMgYWJzdHJhY3Qgdm9pZCB1bnJlYWxpemUgKCk7CisrICB9CisrCisr ICBbQ0NvZGUgKHR5cGVfaWQgPSAiY2x1dHRlcl90ZXh0dXJlX2dldF90eXBlICgpIiwgY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKyAgcHVibGljIGNsYXNzIFRleHR1 cmUgOiBDbHV0dGVyLkFjdG9yIHsKKysgICAgcHVibGljIENvZ2wuTWF0ZXJpYWwgY29nbF9tYXRl cmlhbCB7IGdldDsgc2V0OyB9CisrICAgIHB1YmxpYyBDb2dsLlRleHR1cmUgY29nbF90ZXh0dXJl IHsgZ2V0OyBzZXQ7IH0KKysgIH0KKysKKysgIFtDb21wYWN0XQorKyAgW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrICBwdWJsaWMgY2xhc3MgVGltZW91 dFBvb2wgeworKyAgICBbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisr ICAgIHB1YmxpYyBUaW1lb3V0UG9vbCAoaW50IHByaW9yaXR5KTsKKysgIH0KKysKKysgIFtDQ29k ZSAoY3ByZWZpeCA9ICJDTFVUVEVSX0ZFQVRVUkVfIiwgY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIpXQorKyAgW0ZsYWdzXQorKyAgcHVibGljIGVudW0gRmVhdHVyZUZsYWdz IHsKKysgICAgVEVYVFVSRV9OUE9UOworKyAgICBbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfZmVh dHVyZV9hdmFpbGFibGUiKV0KKysgICAgcHVibGljIGJvb2wgaXNfYXZhaWxhYmxlICgpOworKyAg ICBbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfZmVhdHVyZV9nZXRfYWxsIildCisrICAgIHB1Ymxp YyBzdGF0aWMgQ2x1dHRlci5GZWF0dXJlRmxhZ3MgQGdldCAoKTsKKysgIH0KKysKKysgIFtDQ29k ZSAodHlwZV9pZCA9ICJDTFVUVEVSX1RZUEVfVU5JVFMiLCBjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIildCisrICBwdWJsaWMgc3RydWN0IFVuaXRzIHsKKysgICAgW0NDb2Rl IChjbmFtZSA9ICJjbHV0dGVyX3VuaXRzX2Zyb21fY20iKV0KKysgICAgcHVibGljIFVuaXRzLmZy b21fY20gKGZsb2F0IGNtKTsKKysgICAgW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX3VuaXRzX2Zy b21fZW0iKV0KKysgICAgcHVibGljIFVuaXRzLmZyb21fZW0gKGZsb2F0IGVtKTsKKysgICAgW0ND b2RlIChjbmFtZSA9ICJjbHV0dGVyX3VuaXRzX2Zyb21fZW1fZm9yX2ZvbnQiKV0KKysgICAgcHVi bGljIFVuaXRzLmZyb21fZW1fZm9yX2ZvbnQgKHN0cmluZyBmb250X25hbWUsIGZsb2F0IGVtKTsK KysgICAgW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX3VuaXRzX2Zyb21fbW0iKV0KKysgICAgcHVi bGljIFVuaXRzLmZyb21fbW0gKGZsb2F0IG1tKTsKKysgICAgW0NDb2RlIChjbmFtZSA9ICJjbHV0 dGVyX3VuaXRzX2Zyb21fcGl4ZWxzIildCisrICAgIHB1YmxpYyBVbml0cy5mcm9tX3BpeGVscyAo aW50IHB4KTsKKysgICAgW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX3VuaXRzX2Zyb21fcHQiKV0K KysgICAgcHVibGljIFVuaXRzLmZyb21fcHQgKGZsb2F0IHB0KTsKKysgICAgW0NDb2RlIChjbmFt ZSA9ICJjbHV0dGVyX3VuaXRzX2Zyb21fc3RyaW5nIildCisrICAgIHB1YmxpYyBVbml0cy5mcm9t X3N0cmluZyAoc3RyaW5nIHN0cik7CisrICB9CisrfQorZGlmZiAtLWdpdCBhL3ZhcGkvbXV0dGVy LWNsdXR0ZXItNi5kZXBzIGIvdmFwaS9tdXR0ZXItY2x1dHRlci02LmRlcHMKK25ldyBmaWxlIG1v ZGUgMTAwNjQ0CitpbmRleCAwMDAwMDAwMC4uN2E3MGQ2ZGYKKy0tLSAvZGV2L251bGwKKysrKyBi L3ZhcGkvbXV0dGVyLWNsdXR0ZXItNi5kZXBzCitAQCAtMCwwICsxLDQgQEAKKythdGsKKytjYWly bworK2pzb24tZ2xpYi0xLjAKKyttdXR0ZXItY29nbC02CitkaWZmIC0tZ2l0IGEvdmFwaS9tdXR0 ZXItY2x1dHRlci02LnZhcGkgYi92YXBpL211dHRlci1jbHV0dGVyLTYudmFwaQorbmV3IGZpbGUg bW9kZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAwLi5kNjZmOWFjOAorLS0tIC9kZXYvbnVsbAorKysr IGIvdmFwaS9tdXR0ZXItY2x1dHRlci02LnZhcGkKK0BAIC0wLDAgKzEsODY4NyBAQAorKy8qIG11 dHRlci1jbHV0dGVyLTYudmFwaSBnZW5lcmF0ZWQgYnkgdmFwaWdlbiwgZG8gbm90IG1vZGlmeS4g Ki8KKysKKytbQ0NvZGUgKGNwcmVmaXggPSAiQ2x1dHRlciIsIGdpcl9uYW1lc3BhY2UgPSAiQ2x1 dHRlciIsIGdpcl92ZXJzaW9uID0gIjYiLCBsb3dlcl9jYXNlX2NwcmVmaXggPSAiY2x1dHRlcl8i KV0KKytuYW1lc3BhY2UgQ2x1dHRlciB7CisrCW5hbWVzcGFjZSBLZXkgeworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfMCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8xIildCisr CQlwdWJsaWMgY29uc3QgdWludCBAMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzIiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEAyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg QDM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX0FsdEN1cnNvciIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQDMyNzBfQWx0Q3Vyc29yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9BdHRuIildCisrCQlwdWJs aWMgY29uc3QgdWludCBAMzI3MF9BdHRuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9CYWNrVGFiIild CisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9CYWNrVGFiOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3 MF9DaGFuZ2VTY3JlZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX0NoYW5nZVNjcmVl bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZXzMyNzBfQ29weSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMy NzBfQ29weTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfQ3Vyc29yQmxpbmsiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEAzMjcwX0N1cnNvckJsaW5rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9DdXJzb3JT ZWxlY3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX0N1cnNvclNlbGVjdDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZXzMyNzBfRGVsZXRlV29yZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBf RGVsZXRlV29yZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfRHVwbGljYXRlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBAMzI3MF9EdXBsaWNhdGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX0VudGVyIild CisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9FbnRlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBf RXJhc2VFT0YiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX0VyYXNlRU9GOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfMzI3MF9FcmFzZUlucHV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9F cmFzZUlucHV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9FeFNlbGVjdCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQDMyNzBfRXhTZWxlY3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX0ZpZWxkTWFyayIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfRmllbGRNYXJrOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf MzI3MF9JZGVudCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfSWRlbnQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV8zMjcwX0p1bXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX0p1bXA7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV8zMjcwX0tleUNsaWNrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3 MF9LZXlDbGljazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfTGVmdDIiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEAzMjcwX0xlZnQyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9QQTEiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEAzMjcwX1BBMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfUEEyIildCisrCQlw dWJsaWMgY29uc3QgdWludCBAMzI3MF9QQTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX1BBMyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfUEEzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9QbGF5 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9QbGF5OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3 MF9QcmludFNjcmVlbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfUHJpbnRTY3JlZW47 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV8zMjcwX1F1aXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcw X1F1aXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX1JlY29yZCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQDMyNzBfUmVjb3JkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9SZXNldCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQDMyNzBfUmVzZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX1JpZ2h0MiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfUmlnaHQyOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9S dWxlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9SdWxlOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf MzI3MF9TZXR1cCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfU2V0dXA7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV8zMjcwX1Rlc3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX1Rlc3Q7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV80IildCisrCQlwdWJsaWMgY29uc3QgdWludCBANDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZXzUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEA1OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfNiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQDY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV83IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBANzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEA4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfOSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDk7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9BIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QUUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQWFjdXRlIild CisrCQlwdWJsaWMgY29uc3QgdWludCBBYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BYmVsb3dkb3Qi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFiZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FicmV2 ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQWJyZXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQWJyZXZl YWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFicmV2ZWFjdXRlOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQWJyZXZlYmVsb3dkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFicmV2ZWJlbG93ZG90 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQWJyZXZlZ3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFi cmV2ZWdyYXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQWJyZXZlaG9vayIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQWJyZXZlaG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FicmV2ZXRpbGRlIildCisrCQlwdWJs aWMgY29uc3QgdWludCBBYnJldmV0aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FjY2Vzc1hfRW5hYmxl IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBY2Nlc3NYX0VuYWJsZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0FjY2Vzc1hfRmVlZGJhY2tfRW5hYmxlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBY2Nlc3NY X0ZlZWRiYWNrX0VuYWJsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FjaXJjdW1mbGV4IildCisrCQlwdWJs aWMgY29uc3QgdWludCBBY2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FjaXJjdW1mbGV4YWN1 dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFjaXJjdW1mbGV4YWN1dGU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9BY2lyY3VtZmxleGJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBY2lyY3Vt ZmxleGJlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQWNpcmN1bWZsZXhncmF2ZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQWNpcmN1bWZsZXhncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FjaXJjdW1m bGV4aG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQWNpcmN1bWZsZXhob29rOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQWNpcmN1bWZsZXh0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQWNpcmN1 bWZsZXh0aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FkZEZhdm9yaXRlIildCisrCQlwdWJsaWMgY29u c3QgdWludCBBZGRGYXZvcml0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FkaWFlcmVzaXMiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEFkaWFlcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BZ3JhdmUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEFncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Fob29rIildCisrCQlw dWJsaWMgY29uc3QgdWludCBBaG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FsdF9MIildCisrCQlwdWJs aWMgY29uc3QgdWludCBBbHRfTDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FsdF9SIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBBbHRfUjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FtYWNyb24iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEFtYWNyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bb2dvbmVrIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBBb2dvbmVrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXBwbGljYXRpb25MZWZ0IildCisr CQlwdWJsaWMgY29uc3QgdWludCBBcHBsaWNhdGlvbkxlZnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcHBs aWNhdGlvblJpZ2h0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcHBsaWNhdGlvblJpZ2h0Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQXJhYmljXzAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY18w OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljXzEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJp Y18xOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljXzIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFy YWJpY18yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljXzMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEFyYWJpY18zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljXzQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEFyYWJpY180OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljXzUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEFyYWJpY181OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljXzYiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEFyYWJpY182OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljXzciKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEFyYWJpY183OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljXzgiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEFyYWJpY184OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljXzkiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY185OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2FpbiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2FpbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJp Y19hbGVmIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfYWxlZjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0FyYWJpY19hbGVmbWFrc3VyYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2Fs ZWZtYWtzdXJhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2JlaCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQXJhYmljX2JlaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19jb21tYSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQXJhYmljX2NvbW1hOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2RhZCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2RhZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJp Y19kYWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19kYWw7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9BcmFiaWNfZGFtbWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19kYW1tYTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0FyYWJpY19kYW1tYXRhbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJh YmljX2RhbW1hdGFuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2RkYWwiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEFyYWJpY19kZGFsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2ZhcnNpX3llaCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2ZhcnNpX3llaDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0FyYWJpY19mYXRoYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2ZhdGhhOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQXJhYmljX2ZhdGhhdGFuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFi aWNfZmF0aGF0YW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfZmVoIildCisrCQlwdWJsaWMgY29u c3QgdWludCBBcmFiaWNfZmVoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2Z1bGxzdG9wIildCisr CQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfZnVsbHN0b3A7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFi aWNfZ2FmIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfZ2FmOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQXJhYmljX2doYWluIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfZ2hhaW47Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9BcmFiaWNfaGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19o YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19oYWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFy YWJpY19oYWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfaGFtemEiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEFyYWJpY19oYW16YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19oYW16YV9hYm92ZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2hhbXphX2Fib3ZlOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQXJhYmljX2hhbXphX2JlbG93IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfaGFt emFfYmVsb3c7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfaGFtemFvbmFsZWYiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEFyYWJpY19oYW16YW9uYWxlZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19o YW16YW9ud2F3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfaGFtemFvbndhdzsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0FyYWJpY19oYW16YW9ueWVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBB cmFiaWNfaGFtemFvbnllaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19oYW16YXVuZGVyYWxlZiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2hhbXphdW5kZXJhbGVmOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQXJhYmljX2hlaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2hlaDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0FyYWJpY19oZWhfZG9hY2hhc2htZWUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEFyYWJpY19oZWhfZG9hY2hhc2htZWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfaGVoX2dv YWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19oZWhfZ29hbDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0FyYWJpY19qZWVtIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfamVlbTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0FyYWJpY19qZWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19q ZWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfa2FmIildCisrCQlwdWJsaWMgY29uc3QgdWludCBB cmFiaWNfa2FmOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2thc3JhIildCisrCQlwdWJsaWMgY29u c3QgdWludCBBcmFiaWNfa2FzcmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfa2FzcmF0YW4iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19rYXNyYXRhbjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Fy YWJpY19rZWhlaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2tlaGVoOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQXJhYmljX2toYWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19raGFo OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2xhbSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJh YmljX2xhbTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19tYWRkYV9hYm92ZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQXJhYmljX21hZGRhX2Fib3ZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX21h ZGRhb25hbGVmIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfbWFkZGFvbmFsZWY7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9BcmFiaWNfbWVlbSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmlj X21lZW07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfbm9vbiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQXJhYmljX25vb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfbm9vbl9naHVubmEiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19ub29uX2dodW5uYTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Fy YWJpY19wZWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19wZWg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9BcmFiaWNfcGVyY2VudCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3BlcmNl bnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfcWFmIildCisrCQlwdWJsaWMgY29uc3QgdWludCBB cmFiaWNfcWFmOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3F1ZXN0aW9uX21hcmsiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEFyYWJpY19xdWVzdGlvbl9tYXJrOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJh YmljX3JhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfcmE7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9BcmFiaWNfcnJlaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3JyZWg7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9BcmFiaWNfc2FkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfc2Fk OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3NlZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFy YWJpY19zZWVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3NlbWljb2xvbiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQXJhYmljX3NlbWljb2xvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19zaGFk ZGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19zaGFkZGE7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9BcmFiaWNfc2hlZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19zaGVlbjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0FyYWJpY19zdWt1biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmlj X3N1a3VuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3N1cGVyc2NyaXB0X2FsZWYiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEFyYWJpY19zdXBlcnNjcmlwdF9hbGVmOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QXJhYmljX3N3aXRjaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3N3aXRjaDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0FyYWJpY190YWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY190 YWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfdGF0d2VlbCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQXJhYmljX3RhdHdlZWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfdGNoZWgiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEFyYWJpY190Y2hlaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY190ZWgi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY190ZWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFi aWNfdGVobWFyYnV0YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3RlaG1hcmJ1dGE7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfdGhhbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJh YmljX3RoYWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfdGhlaCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQXJhYmljX3RoZWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfdHRlaCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQXJhYmljX3R0ZWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfdmVoIild CisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfdmVoOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmlj X3dhdyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3dhdzsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0FyYWJpY195ZWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY195ZWg7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9BcmFiaWNfeWVoX2JhcmVlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNf eWVoX2JhcmVlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3phaCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQXJhYmljX3phaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY196YWluIildCisrCQlwdWJs aWMgY29uc3QgdWludCBBcmFiaWNfemFpbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyaW5nIildCisrCQlw dWJsaWMgY29uc3QgdWludCBBcmluZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0FUIildCisr CQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9BVDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFu X0FZQiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fQVlCOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQXJtZW5pYW5fQkVOIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9CRU47Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9DSEEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVu aWFuX0NIQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0RBIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBBcm1lbmlhbl9EQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0RaQSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fRFpBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fRSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVu aWFuX0ZFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9GRTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0FybWVuaWFuX0dIQVQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX0dIQVQ7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9HSU0iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFy bWVuaWFuX0dJTTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0hJIildCisrCQlwdWJsaWMgY29u c3QgdWludCBBcm1lbmlhbl9ISTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0hPIildCisrCQlw dWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9ITzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0lO SSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fSU5JOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QXJtZW5pYW5fSkUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX0pFOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQXJtZW5pYW5fS0UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX0tF OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fS0VOIildCisrCQlwdWJsaWMgY29uc3QgdWludCBB cm1lbmlhbl9LRU47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9LSEUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEFybWVuaWFuX0tIRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0xZVU4iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX0xZVU47CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1l bmlhbl9NRU4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX01FTjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0FybWVuaWFuX05VIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9OVTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX08iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVu aWFuX087CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9QRSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQXJtZW5pYW5fUEU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9QWVVSIildCisrCQlwdWJs aWMgY29uc3QgdWludCBBcm1lbmlhbl9QWVVSOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fUkEi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX1JBOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJt ZW5pYW5fUkUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX1JFOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQXJtZW5pYW5fU0UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX1NFOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fU0hBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1l bmlhbl9TSEE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9UQ0hFIildCisrCQlwdWJsaWMgY29u c3QgdWludCBBcm1lbmlhbl9UQ0hFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fVE8iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX1RPOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5f VFNBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9UU0E7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9Bcm1lbmlhbl9UU08iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX1RTTzsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0FybWVuaWFuX1RZVU4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVu aWFuX1RZVU47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9WRVYiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEFybWVuaWFuX1ZFVjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX1ZPIildCisrCQlw dWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9WTzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX1ZZ VU4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX1ZZVU47CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9Bcm1lbmlhbl9ZRUNIIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9ZRUNIOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fWkEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVu aWFuX1pBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fWkhFIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBBcm1lbmlhbl9aSEU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9hY2NlbnQiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2FjY2VudDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVu aWFuX2FtYW5hayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fYW1hbmFrOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQXJtZW5pYW5fYXBvc3Ryb3BoZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg QXJtZW5pYW5fYXBvc3Ryb3BoZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2F0IildCisrCQlw dWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9hdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2F5 YiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fYXliOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QXJtZW5pYW5fYmVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9iZW47CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9Bcm1lbmlhbl9idXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFu X2J1dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2NoYSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQXJtZW5pYW5fY2hhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fZGEiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEFybWVuaWFuX2RhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fZHphIild CisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9kemE7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1l bmlhbl9lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9lOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQXJtZW5pYW5fZXhjbGFtIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9leGNs YW07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9mZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg QXJtZW5pYW5fZmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9mdWxsX3N0b3AiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2Z1bGxfc3RvcDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVu aWFuX2doYXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2doYXQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9Bcm1lbmlhbl9naW0iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2dp bTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2hpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBB cm1lbmlhbl9oaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2hvIildCisrCQlwdWJsaWMgY29u c3QgdWludCBBcm1lbmlhbl9obzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2h5cGhlbiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5faHlwaGVuOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJt ZW5pYW5faW5pIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9pbmk7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9Bcm1lbmlhbl9qZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5famU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9rZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJt ZW5pYW5fa2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9rZW4iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEFybWVuaWFuX2tlbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2toZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fa2hlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5f bGlnYXR1cmVfZXciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2xpZ2F0dXJlX2V3 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fbHl1biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg QXJtZW5pYW5fbHl1bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX21lbiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQXJtZW5pYW5fbWVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fbnUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX251OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5p YW5fbyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fbzsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0FybWVuaWFuX3BhcnV5ayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fcGFydXlr OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fcGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFy bWVuaWFuX3BlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fcHl1ciIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQXJtZW5pYW5fcHl1cjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3F1ZXN0aW9u IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9xdWVzdGlvbjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0FybWVuaWFuX3JhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9yYTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0FybWVuaWFuX3JlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlh bl9yZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3NlIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBBcm1lbmlhbl9zZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3NlcGFyYXRpb25fbWFyayIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fc2VwYXJhdGlvbl9tYXJrOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQXJtZW5pYW5fc2hhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9z aGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9zaGVzaHQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEFybWVuaWFuX3NoZXNodDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3RjaGUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX3RjaGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlh bl90byIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fdG87CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9Bcm1lbmlhbl90c2EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX3RzYTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0FybWVuaWFuX3RzbyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5p YW5fdHNvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fdHl1biIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQXJtZW5pYW5fdHl1bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3Zlcmpha2V0Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl92ZXJqYWtldDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0FybWVuaWFuX3ZldiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fdmV2OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQXJtZW5pYW5fdm8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFu X3ZvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fdnl1biIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQXJtZW5pYW5fdnl1bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3llY2giKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX3llY2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl95 ZW50YW1uYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5feWVudGFtbmE7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9Bcm1lbmlhbl96YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5f emE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl96aGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEFybWVuaWFuX3poZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0F0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQXRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXVkaWJsZUJlbGxfRW5hYmxlIildCisrCQlw dWJsaWMgY29uc3QgdWludCBBdWRpYmxlQmVsbF9FbmFibGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BdWRp b0N5Y2xlVHJhY2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEF1ZGlvQ3ljbGVUcmFjazsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0F1ZGlvRm9yd2FyZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXVkaW9G b3J3YXJkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXVkaW9Mb3dlclZvbHVtZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQXVkaW9Mb3dlclZvbHVtZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0F1ZGlvTWVkaWEiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEF1ZGlvTWVkaWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BdWRpb01p Y011dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEF1ZGlvTWljTXV0ZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0F1ZGlvTXV0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXVkaW9NdXRlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQXVkaW9OZXh0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBdWRpb05leHQ7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9BdWRpb1BhdXNlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBdWRpb1Bh dXNlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQXVkaW9QbGF5IildCisrCQlwdWJsaWMgY29uc3QgdWludCBB dWRpb1BsYXk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BdWRpb1ByZXYiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEF1ZGlvUHJldjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0F1ZGlvUmFpc2VWb2x1bWUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEF1ZGlvUmFpc2VWb2x1bWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BdWRpb1Jh bmRvbVBsYXkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEF1ZGlvUmFuZG9tUGxheTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0F1ZGlvUmVjb3JkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBdWRpb1JlY29y ZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0F1ZGlvUmVwZWF0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBB dWRpb1JlcGVhdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0F1ZGlvUmV3aW5kIildCisrCQlwdWJsaWMgY29u c3QgdWludCBBdWRpb1Jld2luZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0F1ZGlvU3RvcCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQXVkaW9TdG9wOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXdheSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQXdheTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0IiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9CYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEJhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0JhY2siKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEJhY2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9CYWNrRm9yd2FyZCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQmFja0ZvcndhcmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9CYWNrU3BhY2UiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEJhY2tTcGFjZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0JhdHRlcnkiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEJhdHRlcnk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9CZWdpbiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQmVnaW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9CbHVlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBCbHVlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQmx1ZXRvb3RoIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBCbHVldG9vdGg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Cb29rIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBCb29rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQm91bmNlS2V5c19FbmFibGUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEJvdW5jZUtleXNfRW5hYmxlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQnJl YWsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEJyZWFrOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQnJpZ2h0 bmVzc0FkanVzdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQnJpZ2h0bmVzc0FkanVzdDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0J5ZWxvcnVzc2lhbl9TSE9SVFUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEJ5ZWxvcnVzc2lhbl9TSE9SVFU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9CeWVsb3J1c3NpYW5fc2hvcnR1 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBCeWVsb3J1c3NpYW5fc2hvcnR1OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQzsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NEIild CisrCQlwdWJsaWMgY29uc3QgdWludCBDRDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NIIildCisrCQlwdWJs aWMgY29uc3QgdWludCBDSDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NfSCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQ19IOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ19oIildCisrCQlwdWJsaWMgY29uc3QgdWludCBD X2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9DYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENh Ym92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg Q2FjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ2FsY3VsYXRvciIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQ2FsY3VsYXRvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NhbGVuZGFyIildCisrCQlwdWJsaWMgY29u c3QgdWludCBDYWxlbmRhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NhbmNlbCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQ2FuY2VsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ2Fwc19Mb2NrIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBDYXBzX0xvY2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DY2Fyb24iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IENjYXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NjZWRpbGxhIildCisrCQlwdWJs aWMgY29uc3QgdWludCBDY2VkaWxsYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NjaXJjdW1mbGV4IildCisr CQlwdWJsaWMgY29uc3QgdWludCBDY2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NoIildCisr CQlwdWJsaWMgY29uc3QgdWludCBDaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NsZWFyIildCisrCQlwdWJs aWMgY29uc3QgdWludCBDbGVhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NsZWFyR3JhYiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQ2xlYXJHcmFiOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ2xvc2UiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IENsb3NlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ29kZWlucHV0IildCisrCQlw dWJsaWMgY29uc3QgdWludCBDb2RlaW5wdXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Db2xvblNpZ24iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IENvbG9uU2lnbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NvbW11bml0 eSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ29tbXVuaXR5OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ29u dHJhc3RBZGp1c3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENvbnRyYXN0QWRqdXN0OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQ29udHJvbF9MIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDb250cm9sX0w7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9Db250cm9sX1IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENvbnRy b2xfUjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0NvcHkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENvcHk7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9DcnV6ZWlyb1NpZ24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENy dXplaXJvU2lnbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N1dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg Q3V0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3ljbGVBbmdsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg Q3ljbGVBbmdsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0EiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEN5cmlsbGljX0E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19CRSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfQkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19DSEUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0NIRTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5 cmlsbGljX0NIRV9kZXNjZW5kZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0NI RV9kZXNjZW5kZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19DSEVfdmVydHN0cm9rZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfQ0hFX3ZlcnRzdHJva2U7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9DeXJpbGxpY19ERSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfREU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19EWkhFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJp bGxpY19EWkhFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfRSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQ3lyaWxsaWNfRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0VGIildCisrCQlwdWJs aWMgY29uc3QgdWludCBDeXJpbGxpY19FRjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0VMIild CisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19FTDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmls bGljX0VNIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19FTTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0N5cmlsbGljX0VOIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19FTjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0N5cmlsbGljX0VOX2Rlc2NlbmRlciIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQ3lyaWxsaWNfRU5fZGVzY2VuZGVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfRVIiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0VSOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxs aWNfRVMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0VTOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQ3lyaWxsaWNfR0hFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19HSEU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19HSEVfYmFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBD eXJpbGxpY19HSEVfYmFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfSEEiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEN5cmlsbGljX0hBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfSEFSRFNJ R04iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0hBUkRTSUdOOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQ3lyaWxsaWNfSEFfZGVzY2VuZGVyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJp bGxpY19IQV9kZXNjZW5kZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19JIildCisrCQlwdWJs aWMgY29uc3QgdWludCBDeXJpbGxpY19JOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfSUUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0lFOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxs aWNfSU8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0lPOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQ3lyaWxsaWNfSV9tYWNyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0lf bWFjcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfSkUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEN5cmlsbGljX0pFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfS0EiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEN5cmlsbGljX0tBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfS0FfZGVz Y2VuZGVyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19LQV9kZXNjZW5kZXI7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19LQV92ZXJ0c3Ryb2tlIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBDeXJpbGxpY19LQV92ZXJ0c3Ryb2tlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfTEpF IildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19MSkU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9D eXJpbGxpY19OSkUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX05KRTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0N5cmlsbGljX08iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX087 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19PX2JhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg Q3lyaWxsaWNfT19iYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19QRSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQ3lyaWxsaWNfUEU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19TQ0hXQSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfU0NIV0E7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9D eXJpbGxpY19TSEEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX1NIQTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0N5cmlsbGljX1NIQ0hBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxp Y19TSENIQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX1NISEEiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEN5cmlsbGljX1NISEE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19TSE9SVEkiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX1NIT1JUSTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5 cmlsbGljX1NPRlRTSUdOIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19TT0ZUU0lH TjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX1RFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBD eXJpbGxpY19URTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX1RTRSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQ3lyaWxsaWNfVFNFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfVSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX1Vf bWFjcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19VX21hY3JvbjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0N5cmlsbGljX1Vfc3RyYWlnaHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5 cmlsbGljX1Vfc3RyYWlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19VX3N0cmFpZ2h0X2Jh ciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfVV9zdHJhaWdodF9iYXI7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9DeXJpbGxpY19WRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNf VkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19ZQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg Q3lyaWxsaWNfWUE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19ZRVJVIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBDeXJpbGxpY19ZRVJVOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfWVUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX1lVOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxs aWNfWkUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX1pFOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQ3lyaWxsaWNfWkhFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19aSEU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19aSEVfZGVzY2VuZGVyIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBDeXJpbGxpY19aSEVfZGVzY2VuZGVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfYSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmls bGljX2JlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19iZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0N5cmlsbGljX2NoZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfY2hlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfY2hlX2Rlc2NlbmRlciIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQ3lyaWxsaWNfY2hlX2Rlc2NlbmRlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2No ZV92ZXJ0c3Ryb2tlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19jaGVfdmVydHN0 cm9rZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2RlIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBDeXJpbGxpY19kZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2R6aGUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEN5cmlsbGljX2R6aGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19lIild CisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19lOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxs aWNfZWYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2VmOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQ3lyaWxsaWNfZWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2VsOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQ3lyaWxsaWNfZW0iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGlj X2VtOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEN5cmlsbGljX2VuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfZW5fZGVzY2VuZGVyIildCisr CQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19lbl9kZXNjZW5kZXI7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9DeXJpbGxpY19lciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfZXI7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9DeXJpbGxpY19lcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNf ZXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19naGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEN5cmlsbGljX2doZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2doZV9iYXIiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2doZV9iYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxp Y19oYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfaGE7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9DeXJpbGxpY19oYV9kZXNjZW5kZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGlj X2hhX2Rlc2NlbmRlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2hhcmRzaWduIildCisrCQlw dWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19oYXJkc2lnbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmls bGljX2kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2k7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9DeXJpbGxpY19pX21hY3JvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfaV9t YWNyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19pZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQ3lyaWxsaWNfaWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19pbyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQ3lyaWxsaWNfaW87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19qZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfamU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxp Y19rYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfa2E7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9DeXJpbGxpY19rYV9kZXNjZW5kZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGlj X2thX2Rlc2NlbmRlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2thX3ZlcnRzdHJva2UiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2thX3ZlcnRzdHJva2U7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9DeXJpbGxpY19samUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2xqZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX25qZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3ly aWxsaWNfbmplOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfbyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQ3lyaWxsaWNfbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX29fYmFyIildCisrCQlw dWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19vX2JhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGlj X3BlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19wZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0N5cmlsbGljX3NjaHdhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19zY2h3YTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3NoYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3ly aWxsaWNfc2hhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfc2hjaGEiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEN5cmlsbGljX3NoY2hhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfc2hoYSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfc2hoYTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5 cmlsbGljX3Nob3J0aSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfc2hvcnRpOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfc29mdHNpZ24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEN5cmlsbGljX3NvZnRzaWduOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfdGUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX3RlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfdHNl IildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY190c2U7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9D eXJpbGxpY191IildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY191OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQ3lyaWxsaWNfdV9tYWNyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGlj X3VfbWFjcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfdV9zdHJhaWdodCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfdV9zdHJhaWdodDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmls bGljX3Vfc3RyYWlnaHRfYmFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY191X3N0 cmFpZ2h0X2JhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3ZlIildCisrCQlwdWJsaWMgY29u c3QgdWludCBDeXJpbGxpY192ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3lhIildCisrCQlw dWJsaWMgY29uc3QgdWludCBDeXJpbGxpY195YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3ll cnUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX3llcnU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9DeXJpbGxpY195dSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfeXU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9DeXJpbGxpY196ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNf emU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY196aGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEN5cmlsbGljX3poZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3poZV9kZXNjZW5kZXIiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX3poZV9kZXNjZW5kZXI7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9EIildCisrCQlwdWJsaWMgY29uc3QgdWludCBEOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRE9TIild CisrCQlwdWJsaWMgY29uc3QgdWludCBET1M7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9EYWJvdmVkb3QiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IERhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0RjYXJvbiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgRGNhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRGVsZXRlIild CisrCQlwdWJsaWMgY29uc3QgdWludCBEZWxldGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9EaXNwbGF5Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBEaXNwbGF5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRG9jdW1lbnRz IildCisrCQlwdWJsaWMgY29uc3QgdWludCBEb2N1bWVudHM7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Eb25n U2lnbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRG9uZ1NpZ247CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9E b3duIildCisrCQlwdWJsaWMgY29uc3QgdWludCBEb3duOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRHN0cm9r ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRHN0cm9rZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0UiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FTkciKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEVORzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0VUSCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgRVRIOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRVpIIildCisrCQlwdWJsaWMgY29uc3QgdWludCBF Wkg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9FYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEVh Ym92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0VhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg RWFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRWJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBFYmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEVjYXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0VjaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29u c3QgdWludCBFY2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0VjaXJjdW1mbGV4YWN1dGUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEVjaXJjdW1mbGV4YWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9F Y2lyY3VtZmxleGJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBFY2lyY3VtZmxleGJl bG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRWNpcmN1bWZsZXhncmF2ZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgRWNpcmN1bWZsZXhncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0VjaXJjdW1mbGV4aG9v ayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRWNpcmN1bWZsZXhob29rOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfRWNpcmN1bWZsZXh0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRWNpcmN1bWZsZXh0 aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0VjdVNpZ24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEVj dVNpZ247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FZGlhZXJlc2lzIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBFZGlhZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRWdyYXZlIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBFZ3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FaG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgRWhvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FaXN1X1NoaWZ0IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBFaXN1X1NoaWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRWlzdV90b2dnbGUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEVpc3VfdG9nZ2xlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRWplY3QiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEVqZWN0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRW1hY3JvbiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgRW1hY3JvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0VuZCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgRW5kOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRW9nb25layIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgRW9nb25lazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0VzY2FwZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgRXNjYXBlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRXRoIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBFdGg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FdGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEV0aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0V1cm9TaWduIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBFdXJvU2lnbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0V4Y2VsIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBFeGNlbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0V4ZWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEV4ZWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FeHBsb3JlciIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgRXhwbG9yZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GIildCisrCQlwdWJsaWMgY29uc3QgdWludCBG OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfRjEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYxOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfRjEwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMTA7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9GMTEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYxMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YxMiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjEyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjEzIildCisrCQlw dWJsaWMgY29uc3QgdWludCBGMTM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMTQiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEYxNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YxNSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgRjE1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjE2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMTY7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9GMTciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYxNzsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0YxOCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjE4OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfRjE5IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMTk7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMjAiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEYyMDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YyMSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgRjIxOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjIyIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBGMjI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMjMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYyMzsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0YyNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjI0OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfRjI1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMjU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9GMjYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYyNjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YyNyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjI3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjI4IildCisrCQlw dWJsaWMgY29uc3QgdWludCBGMjg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMjkiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEYyOTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YzIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBGMzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0YzMCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjMwOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfRjMxIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMzE7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9GMzIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYzMjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0YzMyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjMzOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjM0Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBGMzQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMzUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEYzNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Y0IildCisrCQlwdWJsaWMgY29u c3QgdWludCBGNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Y1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBG NTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0Y2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGNjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0Y3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGNzsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0Y4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Y5IildCisr CQlwdWJsaWMgY29uc3QgdWludCBGOTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0ZGcmFuY1NpZ24iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEZGcmFuY1NpZ247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GYWJvdmVkb3Qi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEZhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0ZhcnNp XzAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEZhcnNpXzA7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GYXJz aV8xIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGYXJzaV8xOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRmFy c2lfMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRmFyc2lfMjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Zh cnNpXzMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEZhcnNpXzM7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9G YXJzaV80IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGYXJzaV80OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf RmFyc2lfNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRmFyc2lfNTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0ZhcnNpXzYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEZhcnNpXzY7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9GYXJzaV83IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGYXJzaV83OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfRmFyc2lfOCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRmFyc2lfODsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0ZhcnNpXzkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEZhcnNpXzk7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9GYXJzaV95ZWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEZhcnNpX3llaDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0Zhdm9yaXRlcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRmF2b3JpdGVzOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfRmluYW5jZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRmluYW5jZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0ZpbmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEZpbmQ7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9GaXJzdF9WaXJ0dWFsX1NjcmVlbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg Rmlyc3RfVmlydHVhbF9TY3JlZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Gb3J3YXJkIildCisrCQlwdWJs aWMgY29uc3QgdWludCBGb3J3YXJkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRnJhbWVCYWNrIildCisrCQlw dWJsaWMgY29uc3QgdWludCBGcmFtZUJhY2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GcmFtZUZvcndhcmQi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEZyYW1lRm9yd2FyZDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0ci KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HYWJvdmVkb3QiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEdhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dhbWUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEdhbWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HYnJldmUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEdicmV2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0djYXJvbiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgR2Nhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2NlZGlsbGEiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEdjZWRpbGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2NpcmN1bWZsZXgi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdjaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2Vv cmdpYW5fYW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2FuOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfR2VvcmdpYW5fYmFuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9iYW47 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9jYW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdl b3JnaWFuX2NhbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX2NoYXIiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEdlb3JnaWFuX2NoYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9jaGluIild CisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9jaGluOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2Vv cmdpYW5fY2lsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9jaWw7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9HZW9yZ2lhbl9kb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2Rv bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX2VuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBH ZW9yZ2lhbl9lbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX2ZpIildCisrCQlwdWJsaWMgY29u c3QgdWludCBHZW9yZ2lhbl9maTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX2dhbiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fZ2FuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5f Z2hhbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fZ2hhbjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0dlb3JnaWFuX2hhZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5faGFlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5faGFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9y Z2lhbl9oYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9oZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgR2VvcmdpYW5faGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9oaWUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2hpZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX2hv ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5faG9lOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf R2VvcmdpYW5faW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2luOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfR2VvcmdpYW5famhhbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5f amhhbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX2ppbCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgR2VvcmdpYW5famlsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fa2FuIildCisrCQlwdWJs aWMgY29uc3QgdWludCBHZW9yZ2lhbl9rYW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9raGFy IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9raGFyOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf R2VvcmdpYW5fbGFzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9sYXM7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9HZW9yZ2lhbl9tYW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFu X21hbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX25hciIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgR2VvcmdpYW5fbmFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fb24iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEdlb3JnaWFuX29uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fcGFyIild CisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9wYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9y Z2lhbl9waGFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9waGFyOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfR2VvcmdpYW5fcWFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9x YXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9yYWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEdlb3JnaWFuX3JhZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX3NhbiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgR2VvcmdpYW5fc2FuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fc2hpbiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fc2hpbjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dl b3JnaWFuX3RhbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fdGFuOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfR2VvcmdpYW5fdGFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl90 YXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl91biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg R2VvcmdpYW5fdW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl92aW4iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEdlb3JnaWFuX3ZpbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX3dlIildCisr CQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl93ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFu X3hhbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5feGFuOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfR2VvcmdpYW5femVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl96ZW47Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl96aGFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9y Z2lhbl96aGFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR28iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdv OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfQUxQSEEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdy ZWVrX0FMUEhBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfQUxQSEFhY2NlbnQiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEdyZWVrX0FMUEhBYWNjZW50OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfQkVU QSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfQkVUQTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dy ZWVrX0NISSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfQ0hJOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfR3JlZWtfREVMVEEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX0RFTFRBOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfR3JlZWtfRVBTSUxPTiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtf RVBTSUxPTjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX0VQU0lMT05hY2NlbnQiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEdyZWVrX0VQU0lMT05hY2NlbnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19F VEEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX0VUQTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dy ZWVrX0VUQWFjY2VudCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfRVRBYWNjZW50Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfR3JlZWtfR0FNTUEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVr X0dBTU1BOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfSU9UQSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgR3JlZWtfSU9UQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX0lPVEFhY2NlbnQiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEdyZWVrX0lPVEFhY2NlbnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19J T1RBZGlhZXJlc2lzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19JT1RBZGlhZXJlc2lz OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfSU9UQWRpZXJlc2lzIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBHcmVla19JT1RBZGllcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19LQVBQQSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfS0FQUEE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19M QU1CREEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX0xBTUJEQTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0dyZWVrX0xBTURBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19MQU1EQTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0dyZWVrX01VIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19NVTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0dyZWVrX05VIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19O VTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX09NRUdBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBH cmVla19PTUVHQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX09NRUdBYWNjZW50IildCisrCQlwdWJs aWMgY29uc3QgdWludCBHcmVla19PTUVHQWFjY2VudDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX09N SUNST04iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX09NSUNST047CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9HcmVla19PTUlDUk9OYWNjZW50IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19P TUlDUk9OYWNjZW50OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfUEhJIildCisrCQlwdWJsaWMgY29u c3QgdWludCBHcmVla19QSEk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19QSSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgR3JlZWtfUEk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19QU0kiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEdyZWVrX1BTSTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX1JITyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfUkhPOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfU0lH TUEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX1NJR01BOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf R3JlZWtfVEFVIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19UQVU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9HcmVla19USEVUQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfVEhFVEE7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9HcmVla19VUFNJTE9OIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVl a19VUFNJTE9OOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfVVBTSUxPTmFjY2VudCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgR3JlZWtfVVBTSUxPTmFjY2VudDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVr X1VQU0lMT05kaWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfVVBTSUxPTmRp ZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfWEkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEdyZWVrX1hJOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfWkVUQSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgR3JlZWtfWkVUQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX2FjY2VudGRpZXJlc2lzIild CisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19hY2NlbnRkaWVyZXNpczsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0dyZWVrX2FscGhhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19hbHBoYTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0dyZWVrX2FscGhhYWNjZW50IildCisrCQlwdWJsaWMgY29uc3QgdWludCBH cmVla19hbHBoYWFjY2VudDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX2JldGEiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEdyZWVrX2JldGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19jaGkiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX2NoaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX2RlbHRh IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19kZWx0YTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dy ZWVrX2Vwc2lsb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX2Vwc2lsb247CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9HcmVla19lcHNpbG9uYWNjZW50IildCisrCQlwdWJsaWMgY29uc3QgdWludCBH cmVla19lcHNpbG9uYWNjZW50OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfZXRhIildCisrCQlwdWJs aWMgY29uc3QgdWludCBHcmVla19ldGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19ldGFhY2NlbnQi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX2V0YWFjY2VudDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0dyZWVrX2ZpbmFsc21hbGxzaWdtYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfZmlu YWxzbWFsbHNpZ21hOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfZ2FtbWEiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEdyZWVrX2dhbW1hOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfaG9yaXpiYXIiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX2hvcml6YmFyOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3Jl ZWtfaW90YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfaW90YTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0dyZWVrX2lvdGFhY2NlbnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX2lvdGFh Y2NlbnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19pb3RhYWNjZW50ZGllcmVzaXMiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEdyZWVrX2lvdGFhY2NlbnRkaWVyZXNpczsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0dyZWVrX2lvdGFkaWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfaW90YWRp ZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfa2FwcGEiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEdyZWVrX2thcHBhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfbGFtYmRhIildCisrCQlwdWJs aWMgY29uc3QgdWludCBHcmVla19sYW1iZGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19sYW1kYSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfbGFtZGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVl a19tdSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfbXU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9H cmVla19udSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfbnU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9HcmVla19vbWVnYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfb21lZ2E7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9HcmVla19vbWVnYWFjY2VudCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3Jl ZWtfb21lZ2FhY2NlbnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19vbWljcm9uIildCisrCQlwdWJs aWMgY29uc3QgdWludCBHcmVla19vbWljcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfb21pY3Jv bmFjY2VudCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfb21pY3JvbmFjY2VudDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0dyZWVrX3BoaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfcGhp OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfcGkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVr X3BpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfcHNpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBH cmVla19wc2k7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19yaG8iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEdyZWVrX3JobzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX3NpZ21hIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBHcmVla19zaWdtYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX3N3aXRjaCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfc3dpdGNoOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtf dGF1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla190YXU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9H cmVla190aGV0YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfdGhldGE7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9HcmVla191cHNpbG9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla191cHNp bG9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfdXBzaWxvbmFjY2VudCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgR3JlZWtfdXBzaWxvbmFjY2VudDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX3Vwc2ls b25hY2NlbnRkaWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfdXBzaWxvbmFj Y2VudGRpZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfdXBzaWxvbmRpZXJlc2lzIildCisr CQlwdWJsaWMgY29uc3QgdWludCBHcmVla191cHNpbG9uZGllcmVzaXM7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9HcmVla194aSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfeGk7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9HcmVla196ZXRhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla196ZXRhOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfR3JlZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVuOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfSCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hh bmd1bCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFu Z3VsX0EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9BOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf SGFuZ3VsX0FFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfQUU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9IYW5ndWxfQXJhZUEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9BcmFlQTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0hhbmd1bF9BcmFlQUUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhh bmd1bF9BcmFlQUU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfQmFuamEiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEhhbmd1bF9CYW5qYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9DaWV1YyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0NpZXVjOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3Vs X0NvZGVpbnB1dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0NvZGVpbnB1dDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0hhbmd1bF9EaWtldWQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1 bF9EaWtldWQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfRSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgSGFuZ3VsX0U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfRU8iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEhhbmd1bF9FTzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9FVSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgSGFuZ3VsX0VVOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0VuZCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0VuZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9IYW5q YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0hhbmphOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf SGFuZ3VsX0hpZXVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSGlldWg7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9IYW5ndWxfSSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0k7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9IYW5ndWxfSWV1bmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1 bF9JZXVuZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX0NpZXVjIildCisrCQlwdWJsaWMgY29u c3QgdWludCBIYW5ndWxfSl9DaWV1YzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX0Rpa2V1ZCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfRGlrZXVkOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf SGFuZ3VsX0pfSGlldWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX0hpZXVoOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfSWV1bmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhh bmd1bF9KX0lldW5nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfSmlldWoiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEhhbmd1bF9KX0ppZXVqOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfS2hp ZXVxIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9LaGlldXE7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9IYW5ndWxfSl9LaXllb2ciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX0tp eWVvZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX0tpeWVvZ1Npb3MiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEhhbmd1bF9KX0tpeWVvZ1Npb3M7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9L a29namlEYWxyaW5JZXVuZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfS2tvZ2pp RGFscmluSWV1bmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9NaWV1bSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgSGFuZ3VsX0pfTWlldW07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9OaWV1 biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfTmlldW47CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9IYW5ndWxfSl9OaWV1bkhpZXVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9O aWV1bkhpZXVoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfTmlldW5KaWV1aiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfTmlldW5KaWV1ajsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1 bF9KX1BhblNpb3MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX1BhblNpb3M7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9QaGlldWYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhh bmd1bF9KX1BoaWV1ZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX1BpZXViIildCisrCQlwdWJs aWMgY29uc3QgdWludCBIYW5ndWxfSl9QaWV1YjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX1Bp ZXViU2lvcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfUGlldWJTaW9zOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfSGFuZ3VsX0pfUmlldWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1 bF9KX1JpZXVsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfUmlldWxIaWV1aCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfUmlldWxIaWV1aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1 bF9KX1JpZXVsS2l5ZW9nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9SaWV1bEtp eWVvZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX1JpZXVsTWlldW0iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEhhbmd1bF9KX1JpZXVsTWlldW07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9S aWV1bFBoaWV1ZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfUmlldWxQaGlldWY7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9SaWV1bFBpZXViIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBIYW5ndWxfSl9SaWV1bFBpZXViOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfUmlldWxT aW9zIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9SaWV1bFNpb3M7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9IYW5ndWxfSl9SaWV1bFRpZXV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5n dWxfSl9SaWV1bFRpZXV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfU2lvcyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfU2lvczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX1Nz YW5nS2l5ZW9nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9Tc2FuZ0tpeWVvZzsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX1NzYW5nU2lvcyIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgSGFuZ3VsX0pfU3NhbmdTaW9zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfVGlldXQiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX1RpZXV0OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFu Z3VsX0pfWWVvcmluSGlldWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX1llb3Jp bkhpZXVoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0phbW8iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEhhbmd1bF9KYW1vOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0plb25qYSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgSGFuZ3VsX0plb25qYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KaWV1 aiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0ppZXVqOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf SGFuZ3VsX0toaWV1cSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0toaWV1cTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0hhbmd1bF9LaXllb2ciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1 bF9LaXllb2c7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfS2l5ZW9nU2lvcyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgSGFuZ3VsX0tpeWVvZ1Npb3M7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfS2tv Z2ppRGFscmluSWV1bmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9La29namlEYWxy aW5JZXVuZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9NaWV1bSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgSGFuZ3VsX01pZXVtOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX011bHRpcGxlQ2FuZGlk YXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfTXVsdGlwbGVDYW5kaWRhdGU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9IYW5ndWxfTmlldW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1 bF9OaWV1bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9OaWV1bkhpZXVoIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBIYW5ndWxfTmlldW5IaWV1aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9OaWV1 bkppZXVqIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfTmlldW5KaWV1ajsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0hhbmd1bF9PIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfTzsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0hhbmd1bF9PRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX09F OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1BhblNpb3MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEhhbmd1bF9QYW5TaW9zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1BoaWV1ZiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgSGFuZ3VsX1BoaWV1ZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9QaWV1 YiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1BpZXViOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf SGFuZ3VsX1BpZXViU2lvcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1BpZXViU2lv czsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9Qb3N0SGFuamEiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEhhbmd1bF9Qb3N0SGFuamE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfUHJlSGFuamEiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9QcmVIYW5qYTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hh bmd1bF9QcmV2aW91c0NhbmRpZGF0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1By ZXZpb3VzQ2FuZGlkYXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1JpZXVsIildCisrCQlwdWJs aWMgY29uc3QgdWludCBIYW5ndWxfUmlldWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfUmlldWxI aWV1aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1JpZXVsSGlldWg7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9IYW5ndWxfUmlldWxLaXllb2ciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1 bF9SaWV1bEtpeWVvZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9SaWV1bE1pZXVtIildCisrCQlw dWJsaWMgY29uc3QgdWludCBIYW5ndWxfUmlldWxNaWV1bTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1 bF9SaWV1bFBoaWV1ZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1JpZXVsUGhpZXVm OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1JpZXVsUGlldWIiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEhhbmd1bF9SaWV1bFBpZXViOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1JpZXVsU2lvcyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1JpZXVsU2lvczsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0hhbmd1bF9SaWV1bFRpZXV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfUmlldWxU aWV1dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9SaWV1bFllb3JpbkhpZXVoIildCisrCQlwdWJs aWMgY29uc3QgdWludCBIYW5ndWxfUmlldWxZZW9yaW5IaWV1aDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hh bmd1bF9Sb21hamEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9Sb21hamE7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9IYW5ndWxfU2luZ2xlQ2FuZGlkYXRlIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBIYW5ndWxfU2luZ2xlQ2FuZGlkYXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1Npb3MiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9TaW9zOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3Vs X1NwZWNpYWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9TcGVjaWFsOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfSGFuZ3VsX1NzYW5nRGlrZXVkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5n dWxfU3NhbmdEaWtldWQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfU3NhbmdKaWV1aiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1NzYW5nSmlldWo7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5n dWxfU3NhbmdLaXllb2ciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9Tc2FuZ0tpeWVv ZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9Tc2FuZ1BpZXViIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBIYW5ndWxfU3NhbmdQaWV1YjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9Tc2FuZ1Npb3Mi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9Tc2FuZ1Npb3M7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9IYW5ndWxfU3RhcnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9TdGFydDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0hhbmd1bF9TdW5reWVvbmdldW1NaWV1bSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgSGFuZ3VsX1N1bmt5ZW9uZ2V1bU1pZXVtOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1N1 bmt5ZW9uZ2V1bVBoaWV1ZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1N1bmt5ZW9u Z2V1bVBoaWV1ZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9TdW5reWVvbmdldW1QaWV1YiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1N1bmt5ZW9uZ2V1bVBpZXViOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfSGFuZ3VsX1RpZXV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfVGlldXQ7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfVSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3Vs X1U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfV0EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhh bmd1bF9XQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9XQUUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEhhbmd1bF9XQUU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfV0UiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEhhbmd1bF9XRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9XRU8iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEhhbmd1bF9XRU87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfV0kiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9XSTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9Z QSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1lBOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFu Z3VsX1lBRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1lBRTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0hhbmd1bF9ZRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1lFOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfSGFuZ3VsX1lFTyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1lFTzsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0hhbmd1bF9ZSSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3Vs X1lJOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1lPIildCisrCQlwdWJsaWMgY29uc3QgdWludCBI YW5ndWxfWU87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfWVUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEhhbmd1bF9ZVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9ZZW9yaW5IaWV1aCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1llb3JpbkhpZXVoOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFu Z3VsX3N3aXRjaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX3N3aXRjaDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0hhbmtha3UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmtha3U7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9IY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGNpcmN1bWZs ZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9IZWJyZXdfc3dpdGNoIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBIZWJyZXdfc3dpdGNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGVscCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgSGVscDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hlbmthbiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgSGVua2FuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGVua2FuX01vZGUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEhlbmthbl9Nb2RlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGliZXJuYXRlIildCisrCQlwdWJs aWMgY29uc3QgdWludCBIaWJlcm5hdGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IaXJhZ2FuYSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgSGlyYWdhbmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IaXJhZ2FuYV9LYXRh a2FuYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGlyYWdhbmFfS2F0YWthbmE7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9IaXN0b3J5IildCisrCQlwdWJsaWMgY29uc3QgdWludCBIaXN0b3J5OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfSG9tZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSG9tZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0hvbWVQYWdlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIb21lUGFnZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0hvdExpbmtzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIb3RMaW5rczsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0hzdHJva2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhzdHJva2U7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9IeXBlcl9MIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIeXBlcl9MOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfSHlwZXJfUiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSHlwZXJfUjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEk7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9JU09fQ2VudGVyX09iamVjdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0NlbnRlcl9P YmplY3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fQ29udGludW91c19VbmRlcmxpbmUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IElTT19Db250aW51b3VzX1VuZGVybGluZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0lTT19EaXNjb250aW51b3VzX1VuZGVybGluZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNP X0Rpc2NvbnRpbnVvdXNfVW5kZXJsaW5lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0VtcGhhc2l6ZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0VtcGhhc2l6ZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lT T19FbnRlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0VudGVyOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfSVNPX0Zhc3RfQ3Vyc29yX0Rvd24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19GYXN0 X0N1cnNvcl9Eb3duOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0Zhc3RfQ3Vyc29yX0xlZnQiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IElTT19GYXN0X0N1cnNvcl9MZWZ0OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf SVNPX0Zhc3RfQ3Vyc29yX1JpZ2h0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fRmFzdF9D dXJzb3JfUmlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fRmFzdF9DdXJzb3JfVXAiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IElTT19GYXN0X0N1cnNvcl9VcDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19G aXJzdF9Hcm91cCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0ZpcnN0X0dyb3VwOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfSVNPX0ZpcnN0X0dyb3VwX0xvY2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IElTT19GaXJzdF9Hcm91cF9Mb2NrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0dyb3VwX0xhdGNoIild CisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fR3JvdXBfTGF0Y2g7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9J U09fR3JvdXBfTG9jayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0dyb3VwX0xvY2s7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9JU09fR3JvdXBfU2hpZnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElT T19Hcm91cF9TaGlmdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19MYXN0X0dyb3VwIildCisrCQlwdWJs aWMgY29uc3QgdWludCBJU09fTGFzdF9Hcm91cDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19MYXN0X0dy b3VwX0xvY2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19MYXN0X0dyb3VwX0xvY2s7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9JU09fTGVmdF9UYWIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19M ZWZ0X1RhYjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19MZXZlbDJfTGF0Y2giKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IElTT19MZXZlbDJfTGF0Y2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fTGV2ZWwzX0xh dGNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fTGV2ZWwzX0xhdGNoOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfSVNPX0xldmVsM19Mb2NrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fTGV2ZWwz X0xvY2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fTGV2ZWwzX1NoaWZ0IildCisrCQlwdWJsaWMgY29u c3QgdWludCBJU09fTGV2ZWwzX1NoaWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0xldmVsNV9MYXRj aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0xldmVsNV9MYXRjaDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0lTT19MZXZlbDVfTG9jayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0xldmVsNV9M b2NrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0xldmVsNV9TaGlmdCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgSVNPX0xldmVsNV9TaGlmdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19Mb2NrIildCisrCQlw dWJsaWMgY29uc3QgdWludCBJU09fTG9jazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19Nb3ZlX0xpbmVf RG93biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX01vdmVfTGluZV9Eb3duOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfSVNPX01vdmVfTGluZV9VcCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX01v dmVfTGluZV9VcDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19OZXh0X0dyb3VwIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBJU09fTmV4dF9Hcm91cDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19OZXh0X0dyb3Vw X0xvY2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19OZXh0X0dyb3VwX0xvY2s7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9JU09fUGFydGlhbF9MaW5lX0Rvd24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IElTT19QYXJ0aWFsX0xpbmVfRG93bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19QYXJ0aWFsX0xpbmVf VXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19QYXJ0aWFsX0xpbmVfVXA7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9JU09fUGFydGlhbF9TcGFjZV9MZWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBJ U09fUGFydGlhbF9TcGFjZV9MZWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX1BhcnRpYWxfU3BhY2Vf UmlnaHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19QYXJ0aWFsX1NwYWNlX1JpZ2h0Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfSVNPX1ByZXZfR3JvdXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElT T19QcmV2X0dyb3VwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX1ByZXZfR3JvdXBfTG9jayIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgSVNPX1ByZXZfR3JvdXBfTG9jazsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lT T19SZWxlYXNlX0JvdGhfTWFyZ2lucyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX1JlbGVh c2VfQm90aF9NYXJnaW5zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX1JlbGVhc2VfTWFyZ2luX0xlZnQi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19SZWxlYXNlX01hcmdpbl9MZWZ0OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfSVNPX1JlbGVhc2VfTWFyZ2luX1JpZ2h0IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBJU09fUmVsZWFzZV9NYXJnaW5fUmlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fU2V0X01hcmdp bl9MZWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fU2V0X01hcmdpbl9MZWZ0OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfSVNPX1NldF9NYXJnaW5fUmlnaHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IElTT19TZXRfTWFyZ2luX1JpZ2h0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSWFib3ZlZG90IildCisrCQlw dWJsaWMgY29uc3QgdWludCBJYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JYWN1dGUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IElhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0liZWxvd2RvdCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgSWJlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSWJyZXZlIild CisrCQlwdWJsaWMgY29uc3QgdWludCBJYnJldmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JY2lyY3VtZmxl eCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSWNpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9J ZGlhZXJlc2lzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJZGlhZXJlc2lzOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfSWdyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJZ3JhdmU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9JaG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSWhvb2s7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9JbWFjcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJbWFjcm9uOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfSW5zZXJ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBJbnNlcnQ7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9Jb2dvbmVrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJb2dvbmVrOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfSXRpbGRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJdGlsZGU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9KIildCisrCQlwdWJsaWMgY29uc3QgdWludCBKOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSmNpcmN1bWZs ZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEpjaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf SyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQXzAiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEtQXzA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF8xIildCisrCQlwdWJs aWMgY29uc3QgdWludCBLUF8xOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfMiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgS1BfMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQXzMiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEtQXzM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF80IildCisrCQlwdWJsaWMgY29uc3QgdWludCBL UF80OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfNTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0tQXzYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQXzY7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9LUF83IildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF83OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfS1BfOCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfODsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0tQXzkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQXzk7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9B ZGQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX0FkZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX0Jl Z2luIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9CZWdpbjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQ X0RlY2ltYWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX0RlY2ltYWw7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9LUF9EZWxldGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX0RlbGV0ZTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0tQX0RpdmlkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfRGl2aWRlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfS1BfRG93biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfRG93bjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0tQX0VuZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfRW5kOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfS1BfRW50ZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX0VudGVy OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfS1BfRXF1YWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX0Vx dWFsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfRjEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX0Yx OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfS1BfRjIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX0YyOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfS1BfRjMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX0YzOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfS1BfRjQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX0Y0OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfS1BfSG9tZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfSG9tZTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0tQX0luc2VydCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfSW5zZXJ0Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfS1BfTGVmdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfTGVmdDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0tQX011bHRpcGx5IildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9N dWx0aXBseTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX05leHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEtQX05leHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9QYWdlX0Rvd24iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEtQX1BhZ2VfRG93bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX1BhZ2VfVXAiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEtQX1BhZ2VfVXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9QcmlvciIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgS1BfUHJpb3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9SaWdodCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfUmlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9TZXBh cmF0b3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX1NlcGFyYXRvcjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0tQX1NwYWNlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9TcGFjZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0tQX1N1YnRyYWN0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9TdWJ0cmFjdDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0tQX1RhYiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfVGFiOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfS1BfVXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX1VwOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfS2FuYV9Mb2NrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLYW5hX0xvY2s7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9LYW5hX1NoaWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBLYW5h X1NoaWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS2FuamkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEth bmppOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfS2FuamlfQmFuZ291IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBLYW5qaV9CYW5nb3U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LYXRha2FuYSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgS2F0YWthbmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LYmRCcmlnaHRuZXNzRG93biIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgS2JkQnJpZ2h0bmVzc0Rvd247CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9L YmRCcmlnaHRuZXNzVXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtiZEJyaWdodG5lc3NVcDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0tiZExpZ2h0T25PZmYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEti ZExpZ2h0T25PZmY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LY2VkaWxsYSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgS2NlZGlsbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Lb3JlYW5fV29uIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBLb3JlYW5fV29uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgTDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0wxIildCisrCQlwdWJsaWMgY29uc3QgdWludCBM MTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0wxMCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTDEwOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfTDIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEwyOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfTDMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEwzOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTDQiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEw0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTDUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEw1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTDYiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEw2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTDciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEw3Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfTDgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEw4OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfTDkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEw5OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGFj dXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBMYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MYXN0 X1ZpcnR1YWxfU2NyZWVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBMYXN0X1ZpcnR1YWxfU2Ny ZWVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfTGF1bmNoMCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGF1 bmNoMDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0xhdW5jaDEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExh dW5jaDE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MYXVuY2gyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBM YXVuY2gyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGF1bmNoMyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg TGF1bmNoMzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xhdW5jaDQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IExhdW5jaDQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MYXVuY2g1IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBMYXVuY2g1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGF1bmNoNiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgTGF1bmNoNjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xhdW5jaDciKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IExhdW5jaDc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MYXVuY2g4IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBMYXVuY2g4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGF1bmNoOSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgTGF1bmNoOTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xhdW5jaEEiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IExhdW5jaEE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MYXVuY2hCIildCisrCQlwdWJsaWMgY29u c3QgdWludCBMYXVuY2hCOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGF1bmNoQyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgTGF1bmNoQzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xhdW5jaEQiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IExhdW5jaEQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MYXVuY2hFIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBMYXVuY2hFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGF1bmNoRiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgTGF1bmNoRjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xiZWxvd2RvdCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgTGJlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGNhcm9uIildCisrCQlw dWJsaWMgY29uc3QgdWludCBMY2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MY2VkaWxsYSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgTGNlZGlsbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MZWZ0IildCisrCQlw dWJsaWMgY29uc3QgdWludCBMZWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGlnaHRCdWxiIildCisrCQlw dWJsaWMgY29uc3QgdWludCBMaWdodEJ1bGI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MaW5lZmVlZCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgTGluZWZlZWQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MaXJhU2lnbiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGlyYVNpZ247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Mb2dHcmFi SW5mbyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTG9nR3JhYkluZm87CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9Mb2dPZmYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExvZ09mZjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0xvZ1dpbmRvd1RyZWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExvZ1dpbmRvd1RyZWU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9Mc3Ryb2tlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBMc3Ryb2tlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfTSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX01hYm92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTWFib3ZlZG90OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfTWFjZWRvbmlhX0RTRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTWFjZWRvbmlh X0RTRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX01hY2Vkb25pYV9HSkUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IE1hY2Vkb25pYV9HSkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NYWNlZG9uaWFfS0pFIildCisrCQlw dWJsaWMgY29uc3QgdWludCBNYWNlZG9uaWFfS0pFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWFjZWRvbmlh X2RzZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTWFjZWRvbmlhX2RzZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX01hY2Vkb25pYV9namUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1hY2Vkb25pYV9namU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9NYWNlZG9uaWFfa2plIildCisrCQlwdWJsaWMgY29uc3QgdWludCBN YWNlZG9uaWFfa2plOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWFlX0tvaG8iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IE1hZV9Lb2hvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWFpbCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgTWFpbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01haWxGb3J3YXJkIildCisrCQlwdWJsaWMgY29u c3QgdWludCBNYWlsRm9yd2FyZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01hcmtldCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgTWFya2V0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWFzc3lvIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBNYXNzeW87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NZWV0aW5nIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBNZWV0aW5nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWVtbyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgTWVtbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01lbnUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IE1lbnU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NZW51S0IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IE1lbnVLQjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01lbnVQQiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg TWVudVBCOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWVzc2VuZ2VyIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBNZXNzZW5nZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NZXRhX0wiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IE1ldGFfTDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01ldGFfUiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgTWV0YV9SOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWlsbFNpZ24iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IE1pbGxTaWduOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTW9kZUxvY2siKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IE1vZGVMb2NrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTW9kZV9zd2l0Y2giKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IE1vZGVfc3dpdGNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTW9uQnJpZ2h0bmVzc0Rv d24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1vbkJyaWdodG5lc3NEb3duOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfTW9uQnJpZ2h0bmVzc1VwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNb25CcmlnaHRu ZXNzVXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Nb3VzZUtleXNfQWNjZWxfRW5hYmxlIildCisrCQlwdWJs aWMgY29uc3QgdWludCBNb3VzZUtleXNfQWNjZWxfRW5hYmxlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTW91 c2VLZXlzX0VuYWJsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTW91c2VLZXlzX0VuYWJsZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX011aGVua2FuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNdWhlbmth bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX011bHRpX2tleSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTXVs dGlfa2V5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTXVsdGlwbGVDYW5kaWRhdGUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IE11bHRpcGxlQ2FuZGlkYXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTXVzaWMiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IE11c2ljOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTXlDb21wdXRlciIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgTXlDb21wdXRlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX015U2l0ZXMi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE15U2l0ZXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9OIildCisr CQlwdWJsaWMgY29uc3QgdWludCBOOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTmFjdXRlIildCisrCQlwdWJs aWMgY29uc3QgdWludCBOYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9OYWlyYVNpZ24iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IE5haXJhU2lnbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX05jYXJvbiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgTmNhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTmNlZGlsbGEiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IE5jZWRpbGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTmV3IildCisrCQlw dWJsaWMgY29uc3QgdWludCBOZXc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9OZXdTaGVxZWxTaWduIildCisr CQlwdWJsaWMgY29uc3QgdWludCBOZXdTaGVxZWxTaWduOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTmV3cyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgTmV3czsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX05leHQiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IE5leHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9OZXh0X1ZNb2RlIildCisr CQlwdWJsaWMgY29uc3QgdWludCBOZXh0X1ZNb2RlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTmV4dF9WaXJ0 dWFsX1NjcmVlbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTmV4dF9WaXJ0dWFsX1NjcmVlbjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX050aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTnRpbGRlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfTnVtX0xvY2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE51bV9Mb2Nr OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfTyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX09FIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPRTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09h Y3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2FjdXRlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT2Jh cnJlZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2JhcnJlZDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09i ZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2JlbG93ZG90OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfT2Nhcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPY2Fyb247CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9PY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2NpcmN1bWZsZXg7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9PY2lyY3VtZmxleGFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPY2ly Y3VtZmxleGFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT2NpcmN1bWZsZXhiZWxvd2RvdCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgT2NpcmN1bWZsZXhiZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09j aXJjdW1mbGV4Z3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9jaXJjdW1mbGV4Z3JhdmU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9PY2lyY3VtZmxleGhvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IE9jaXJjdW1mbGV4aG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09jaXJjdW1mbGV4dGlsZGUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IE9jaXJjdW1mbGV4dGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PZGlh ZXJlc2lzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPZGlhZXJlc2lzOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfT2RvdWJsZWFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPZG91YmxlYWN1dGU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9PZmZpY2VIb21lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPZmZpY2VI b21lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfT2dyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPZ3Jh dmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9PaG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2hvb2s7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9PaG9ybiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2hvcm47Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9PaG9ybmFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPaG9ybmFj dXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfT2hvcm5iZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgT2hvcm5iZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09ob3JuZ3JhdmUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IE9ob3JuZ3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PaG9ybmhvb2siKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IE9ob3JuaG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09ob3JudGlsZGUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9ob3JudGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PbWFj cm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPbWFjcm9uOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT29i bGlxdWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9vYmxpcXVlOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf T3BlbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT3BlbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09wZW5V UkwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9wZW5VUkw7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PcHRp b24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9wdGlvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09zbGFz aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT3NsYXNoOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT3RpbGRl IildCisrCQlwdWJsaWMgY29uc3QgdWludCBPdGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PdmVybGF5 MV9FbmFibGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE92ZXJsYXkxX0VuYWJsZTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX092ZXJsYXkyX0VuYWJsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT3Zlcmxh eTJfRW5hYmxlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1BhYm92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUGFib3Zl ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfUGFnZV9Eb3duIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQ YWdlX0Rvd247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9QYWdlX1VwIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBQYWdlX1VwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUGFzdGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFBhc3RlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUGF1c2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBh dXNlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfUGVzZXRhU2lnbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg UGVzZXRhU2lnbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Bob25lIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBQaG9uZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BpY3R1cmVzIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBQaWN0dXJlczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfQWNjZWxlcmF0ZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgUG9pbnRlcl9BY2NlbGVyYXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRl cl9CdXR0b24xIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0J1dHRvbjE7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9Qb2ludGVyX0J1dHRvbjIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50 ZXJfQnV0dG9uMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfQnV0dG9uMyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgUG9pbnRlcl9CdXR0b24zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9CdXR0 b240IildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0J1dHRvbjQ7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9Qb2ludGVyX0J1dHRvbjUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfQnV0 dG9uNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfQnV0dG9uX0RmbHQiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFBvaW50ZXJfQnV0dG9uX0RmbHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0Ri bENsaWNrMSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9EYmxDbGljazE7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9Qb2ludGVyX0RibENsaWNrMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9p bnRlcl9EYmxDbGljazI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0RibENsaWNrMyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9EYmxDbGljazM7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2lu dGVyX0RibENsaWNrNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9EYmxDbGljazQ7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0RibENsaWNrNSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgUG9pbnRlcl9EYmxDbGljazU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0RibENsaWNrX0Rm bHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfRGJsQ2xpY2tfRGZsdDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1BvaW50ZXJfRGZsdEJ0bk5leHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBv aW50ZXJfRGZsdEJ0bk5leHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0RmbHRCdG5QcmV2Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0RmbHRCdG5QcmV2OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfUG9pbnRlcl9Eb3duIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0Rvd247Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0Rvd25MZWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBQ b2ludGVyX0Rvd25MZWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9Eb3duUmlnaHQiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfRG93blJpZ2h0OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9p bnRlcl9EcmFnMSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9EcmFnMTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1BvaW50ZXJfRHJhZzIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJf RHJhZzI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0RyYWczIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBQb2ludGVyX0RyYWczOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9EcmFnNCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9EcmFnNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJf RHJhZzUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfRHJhZzU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9Qb2ludGVyX0RyYWdfRGZsdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9E cmFnX0RmbHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0VuYWJsZUtleXMiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFBvaW50ZXJfRW5hYmxlS2V5czsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJf TGVmdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9MZWZ0OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfUG9pbnRlcl9SaWdodCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9SaWdodDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfVXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50 ZXJfVXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX1VwTGVmdCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgUG9pbnRlcl9VcExlZnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX1VwUmlnaHQiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfVXBSaWdodDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Bv d2VyRG93biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG93ZXJEb3duOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfUG93ZXJPZmYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvd2VyT2ZmOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfUHJldl9WTW9kZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUHJldl9WTW9kZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1ByZXZfVmlydHVhbF9TY3JlZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFByZXZfVmlydHVhbF9TY3JlZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9QcmV2aW91c0NhbmRpZGF0ZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgUHJldmlvdXNDYW5kaWRhdGU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9QcmludCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUHJpbnQ7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Q cmlvciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUHJpb3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9RIild CisrCQlwdWJsaWMgY29uc3QgdWludCBROworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgUjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1IxIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBSMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1IxMCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUjEwOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfUjExIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSMTE7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9SMTIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFIxMjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1IxMyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUjEzOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUjE0Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBSMTQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SMTUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFIxNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1IyIildCisrCQlwdWJsaWMgY29u c3QgdWludCBSMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1IzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBS MzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1I0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBSNDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1I1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBSNTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1I2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBSNjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1I3IildCisr CQlwdWJsaWMgY29uc3QgdWludCBSNzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1I4IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBSODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1I5IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBSOTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1JhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUmFj dXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfUmNhcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSY2Fy b247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9SY2VkaWxsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUmNl ZGlsbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SZWQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFJlZDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1JlZG8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFJlZG87CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9SZWZyZXNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSZWZyZXNoOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfUmVsb2FkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSZWxvYWQ7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9SZXBlYXRLZXlzX0VuYWJsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUmVw ZWF0S2V5c19FbmFibGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SZXBseSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgUmVwbHk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SZXR1cm4iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFJldHVybjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1JpZ2h0IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBSaWdodDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1JvY2tlckRvd24iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFJvY2tlckRvd247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Sb2NrZXJFbnRlciIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgUm9ja2VyRW50ZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Sb2NrZXJVcCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgUm9ja2VyVXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Sb21hamkiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFJvbWFqaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1JvdGF0ZVdpbmRvd3Mi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFJvdGF0ZVdpbmRvd3M7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9S b3RhdGlvbktCIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSb3RhdGlvbktCOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfUm90YXRpb25QQiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUm90YXRpb25QQjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1J1cGVlU2lnbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUnVwZWVTaWdu OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfUyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1NDSFdBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTQ0hXQTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1NhYm92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2Fib3ZlZG90OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfU2FjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTYWN1dGU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9TYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTYXZlOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfU2Nhcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTY2Fyb247CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9TY2VkaWxsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2NlZGlsbGE7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9TY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2NpcmN1bWZsZXg7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9TY3JlZW5TYXZlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2NyZWVu U2F2ZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TY3JvbGxDbGljayIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgU2Nyb2xsQ2xpY2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TY3JvbGxEb3duIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBTY3JvbGxEb3duOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2Nyb2xsVXAiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFNjcm9sbFVwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2Nyb2xsX0xvY2siKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFNjcm9sbF9Mb2NrOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2VhcmNo IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTZWFyY2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TZWxlY3Qi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNlbGVjdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NlbGVjdEJ1 dHRvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2VsZWN0QnV0dG9uOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfU2VuZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2VuZDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Nl cmJpYW5fREpFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTZXJiaWFuX0RKRTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1NlcmJpYW5fRFpFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTZXJiaWFuX0RaRTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1NlcmJpYW5fSkUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNlcmJp YW5fSkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TZXJiaWFuX0xKRSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgU2VyYmlhbl9MSkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TZXJiaWFuX05KRSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgU2VyYmlhbl9OSkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TZXJiaWFuX1RTSEUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFNlcmJpYW5fVFNIRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NlcmJp YW5fZGplIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTZXJiaWFuX2RqZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1NlcmJpYW5fZHplIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTZXJiaWFuX2R6ZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1NlcmJpYW5famUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNlcmJpYW5f amU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9TZXJiaWFuX2xqZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg U2VyYmlhbl9samU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TZXJiaWFuX25qZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgU2VyYmlhbl9uamU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TZXJiaWFuX3RzaGUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFNlcmJpYW5fdHNoZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NoaWZ0X0wi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNoaWZ0X0w7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaGlmdF9M b2NrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaGlmdF9Mb2NrOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf U2hpZnRfUiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2hpZnRfUjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1Nob3AiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNob3A7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5n bGVDYW5kaWRhdGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmdsZUNhbmRpZGF0ZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1NpbmhfYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9hOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfU2luaF9hYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9hYTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1NpbmhfYWEyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2FhMjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1NpbmhfYWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfYWU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2FlMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9h ZTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2FlZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2lu aF9hZWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2FlZTIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFNpbmhfYWVlMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfYWkiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFNpbmhfYWk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2FpMiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgU2luaF9haTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2FsIildCisrCQlwdWJsaWMgY29u c3QgdWludCBTaW5oX2FsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9hdSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgU2luaF9hdTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfYXUyIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBTaW5oX2F1MjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfYmEiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFNpbmhfYmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2JoYSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgU2luaF9iaGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2NhIildCisrCQlw dWJsaWMgY29uc3QgdWludCBTaW5oX2NhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9jaGEiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFNpbmhfY2hhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9kZGEiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfZGRhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9kZGhh IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2RkaGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5o X2RoYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9kaGE7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9T aW5oX2RoaGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfZGhoYTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1NpbmhfZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9lOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfU2luaF9lMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9lMjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1NpbmhfZWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfZWU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9TaW5oX2VlMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9lZTI7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9TaW5oX2ZhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2ZhOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfU2luaF9nYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9nYTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1NpbmhfZ2hhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2doYTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1NpbmhfaDIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfaDI7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9TaW5oX2hhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2hhOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfU2luaF9pIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2k7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9TaW5oX2kyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2kyOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfU2luaF9paSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9paTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1NpbmhfaWkyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2lp MjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1NpbmhfamEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhf amE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2poYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2lu aF9qaGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2pueWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFNpbmhfam55YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Npbmhfa2EiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFNpbmhfa2E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2toYSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgU2luaF9raGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2t1bmRkYWxpeWEiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFNpbmhfa3VuZGRhbGl5YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfbGEi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2xs YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9sbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5o X2x1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2x1OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2lu aF9sdTIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfbHUyOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf U2luaF9sdXUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfbHV1OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfU2luaF9sdXUyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2x1dTI7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9TaW5oX21hIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX21hOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfU2luaF9tYmEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfbWJhOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfU2luaF9uYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9uYTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1NpbmhfbmRkYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9uZGRh OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9uZGhhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5o X25kaGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX25nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBT aW5oX25nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9uZzIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFNpbmhfbmcyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9uZ2EiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFNpbmhfbmdhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9uamEiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFNpbmhfbmphOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9ubmEiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFNpbmhfbm5hOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9ueWEiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFNpbmhfbnlhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9vIildCisrCQlwdWJs aWMgY29uc3QgdWludCBTaW5oX287CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX28yIildCisrCQlwdWJs aWMgY29uc3QgdWludCBTaW5oX28yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9vbyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgU2luaF9vbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Npbmhfb28yIildCisrCQlw dWJsaWMgY29uc3QgdWludCBTaW5oX29vMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfcGEiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFNpbmhfcGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX3BoYSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9waGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX3JhIild CisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX3JhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9yaSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9yaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Npbmhfcmlp IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX3JpaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Npbmhf cnUyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX3J1MjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Np bmhfcnV1MiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9ydXUyOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfU2luaF9zYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9zYTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1Npbmhfc2hhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX3NoYTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1Npbmhfc3NoYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9zc2hhOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfU2luaF90aGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfdGhhOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfU2luaF90aGhhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX3Ro aGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX3R0YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2lu aF90dGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX3R0aGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFNpbmhfdHRoYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfdSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgU2luaF91OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF91MiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgU2luaF91MjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfdXUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFNpbmhfdXU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX3V1MiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgU2luaF91dTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX3ZhIildCisrCQlwdWJsaWMgY29u c3QgdWludCBTaW5oX3ZhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF95YSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgU2luaF95YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NsZWVwIildCisrCQlwdWJsaWMgY29u c3QgdWludCBTbGVlcDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Nsb3dLZXlzX0VuYWJsZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgU2xvd0tleXNfRW5hYmxlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3BlbGwiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFNwZWxsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3BsaXRTY3JlZW4i KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNwbGl0U2NyZWVuOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3Rh bmRieSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU3RhbmRieTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N0 YXJ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTdGFydDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N0aWNr eUtleXNfRW5hYmxlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTdGlja3lLZXlzX0VuYWJsZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1N0b3AiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN0b3A7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9TdWJ0aXRsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU3VidGl0bGU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9TdXBlcl9MIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTdXBlcl9MOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfU3VwZXJfUiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU3VwZXJfUjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1N1cHBvcnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN1cHBvcnQ7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9TdXNwZW5kIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTdXNwZW5k OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfU3dpdGNoX1ZUXzEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN3 aXRjaF9WVF8xOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3dpdGNoX1ZUXzEwIildCisrCQlwdWJsaWMgY29u c3QgdWludCBTd2l0Y2hfVlRfMTA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Td2l0Y2hfVlRfMTEiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFN3aXRjaF9WVF8xMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N3aXRjaF9W VF8xMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU3dpdGNoX1ZUXzEyOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfU3dpdGNoX1ZUXzIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN3aXRjaF9WVF8yOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfU3dpdGNoX1ZUXzMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN3aXRjaF9W VF8zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfU3dpdGNoX1ZUXzQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFN3aXRjaF9WVF80OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3dpdGNoX1ZUXzUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFN3aXRjaF9WVF81OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3dpdGNoX1ZUXzYiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFN3aXRjaF9WVF82OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3dpdGNoX1ZU XzciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN3aXRjaF9WVF83OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf U3dpdGNoX1ZUXzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN3aXRjaF9WVF84OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfU3dpdGNoX1ZUXzkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN3aXRjaF9WVF85 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfU3lzX1JlcSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU3lzX1Jl cTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9USE9STiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVEhPUk47CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9UYWIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRhYjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Rh Ym92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGFib3ZlZG90OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfVGFza1BhbmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRhc2tQYW5lOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfVGNhcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUY2Fyb247CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9UY2VkaWxsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGNlZGlsbGE7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9UZXJtaW5hbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGVybWluYWw7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9UZXJtaW5hdGVfU2VydmVyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUZXJt aW5hdGVfU2VydmVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9iYWh0IildCisrCQlwdWJsaWMgY29u c3QgdWludCBUaGFpX2JhaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2JvYmFpbWFpIildCisrCQlw dWJsaWMgY29uc3QgdWludCBUaGFpX2JvYmFpbWFpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9jaG9j aGFuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2Nob2NoYW47CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9UaGFpX2Nob2NoYW5nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2Nob2NoYW5nOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfVGhhaV9jaG9jaGluZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhh aV9jaG9jaGluZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfY2hvY2hvZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgVGhhaV9jaG9jaG9lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9kb2NoYWRhIildCisr CQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2RvY2hhZGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2Rv ZGVrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2RvZGVrOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf VGhhaV9mb2ZhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2ZvZmE7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9UaGFpX2ZvZmFuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2ZvZmFuOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfVGhhaV9ob2hpcCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9ob2hp cDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1RoYWlfaG9ub2todWsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFRoYWlfaG9ub2todWs7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2tob2toYWkiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFRoYWlfa2hva2hhaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfa2hva2hvbiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9raG9raG9uOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhh aV9raG9raHVhdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9raG9raHVhdDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1RoYWlfa2hva2h3YWkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfa2hv a2h3YWk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2tob3Jha2hhbmciKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFRoYWlfa2hvcmFraGFuZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfa29rYWkiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFRoYWlfa29rYWk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2xha2to YW5neWFvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2xha2toYW5neWFvOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfVGhhaV9sZWtjaGV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2xla2No ZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2xla2hhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBU aGFpX2xla2hhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9sZWtob2siKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFRoYWlfbGVraG9rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9sZWtrYW8iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFRoYWlfbGVra2FvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9sZWtudW5n IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2xla251bmc7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9U aGFpX2xla3BhZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbGVrcGFldDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1RoYWlfbGVrc2FtIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2xla3Nh bTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbGVrc2kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRo YWlfbGVrc2k7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2xla3NvbmciKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFRoYWlfbGVrc29uZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbGVrc3VuIildCisrCQlw dWJsaWMgY29uc3QgdWludCBUaGFpX2xla3N1bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbG9jaHVs YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9sb2NodWxhOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf VGhhaV9sb2xpbmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbG9saW5nOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfVGhhaV9sdSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9sdTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1RoYWlfbWFpY2hhdHRhd2EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlf bWFpY2hhdHRhd2E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX21haWVrIildCisrCQlwdWJsaWMgY29u c3QgdWludCBUaGFpX21haWVrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9tYWloYW5ha2F0IildCisr CQlwdWJsaWMgY29uc3QgdWludCBUaGFpX21haWhhbmFrYXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFp X21haWhhbmFrYXRfbWFpdGhvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX21haWhhbmFr YXRfbWFpdGhvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9tYWl0YWlraHUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFRoYWlfbWFpdGFpa2h1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9tYWl0aG8iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbWFpdGhvOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9t YWl0cmkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbWFpdHJpOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfVGhhaV9tYWl5YW1vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9tYWl5YW1vazsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1RoYWlfbW9tYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9t b21hOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9uZ29uZ3UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFRoYWlfbmdvbmd1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9uaWtoYWhpdCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgVGhhaV9uaWtoYWhpdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbm9uZW4iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbm9uZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX25v bnUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbm9udTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Ro YWlfb2FuZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9vYW5nOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfVGhhaV9wYWl5YW5ub2kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfcGFpeWFubm9p OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9waGludGh1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBU aGFpX3BoaW50aHU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3Bob3BoYW4iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFRoYWlfcGhvcGhhbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfcGhvcGh1bmciKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfcGhvcGh1bmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFp X3Bob3NhbXBoYW8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfcGhvc2FtcGhhbzsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1RoYWlfcG9wbGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfcG9w bGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3JvcnVhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBU aGFpX3JvcnVhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9ydSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgVGhhaV9ydTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfc2FyYWEiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFRoYWlfc2FyYWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3NhcmFhYSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgVGhhaV9zYXJhYWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3NhcmFhZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9zYXJhYWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFp X3NhcmFhaW1haW1hbGFpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3NhcmFhaW1haW1h bGFpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9zYXJhYWltYWltdWFuIildCisrCQlwdWJsaWMgY29u c3QgdWludCBUaGFpX3NhcmFhaW1haW11YW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3NhcmFhbSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9zYXJhYW07CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFp X3NhcmFlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3NhcmFlOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfVGhhaV9zYXJhaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9zYXJhaTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1RoYWlfc2FyYWlpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3NhcmFp aTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1RoYWlfc2FyYW8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRo YWlfc2FyYW87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3NhcmF1IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBUaGFpX3NhcmF1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9zYXJhdWUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFRoYWlfc2FyYXVlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9zYXJhdWVlIild CisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3NhcmF1ZWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFp X3NhcmF1dSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9zYXJhdXU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9UaGFpX3NvcnVzaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9zb3J1c2k7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9UaGFpX3Nvc2FsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9z b3NhbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3Nvc28iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFRoYWlfc29zbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfc29zdWEiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFRoYWlfc29zdWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3RoYW50aGFraGF0IildCisr CQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3RoYW50aGFraGF0OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhh aV90aG9uYW5nbW9udGhvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3Rob25hbmdtb250 aG87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3Rob3BodXRoYW8iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFRoYWlfdGhvcGh1dGhhbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfdGhvdGhhaGFuIildCisr CQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3Rob3RoYWhhbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlf dGhvdGhhbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV90aG90aGFuOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfVGhhaV90aG90aG9uZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV90aG90aG9u ZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1RoYWlfdGhvdGh1bmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFRoYWlfdGhvdGh1bmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3RvcGF0YWsiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFRoYWlfdG9wYXRhazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfdG90YW8iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfdG90YW87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3dv d2FlbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV93b3dhZW47CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9UaGFpX3lveWFrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3lveWFrOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfVGhhaV95b3lpbmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfeW95aW5n OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfVGhvcm4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRob3JuOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfVGltZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGltZTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1RvRG9MaXN0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUb0RvTGlzdDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1Rvb2xzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUb29sczsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1RvcE1lbnUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRvcE1lbnU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9Ub3VjaHBhZE9mZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVG91Y2hwYWRP ZmY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Ub3VjaHBhZE9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBU b3VjaHBhZE9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVG91Y2hwYWRUb2dnbGUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFRvdWNocGFkVG9nZ2xlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVG91cm9rdSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgVG91cm9rdTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RyYXZlbCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgVHJhdmVsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVHNsYXNoIildCisrCQlw dWJsaWMgY29uc3QgdWludCBUc2xhc2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBVOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVVdCIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBVV0I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVh Y3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1ViZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg VWJlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWJyZXZlIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBVYnJldmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgVWNpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VZGlhZXJlc2lzIildCisrCQlwdWJs aWMgY29uc3QgdWludCBVZGlhZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWRvdWJsZWFjdXRlIild CisrCQlwdWJsaWMgY29uc3QgdWludCBVZG91YmxlYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VZ3Jh dmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Vob29r IildCisrCQlwdWJsaWMgY29uc3QgdWludCBVaG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Vob3JuIild CisrCQlwdWJsaWMgY29uc3QgdWludCBVaG9ybjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Vob3JuYWN1dGUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVob3JuYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VaG9y bmJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBVaG9ybmJlbG93ZG90OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfVWhvcm5ncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWhvcm5ncmF2ZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1Vob3JuaG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWhvcm5o b29rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfVWhvcm50aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg VWhvcm50aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VrcmFpbmlhbl9HSEVfV0lUSF9VUFRVUk4iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFVrcmFpbmlhbl9HSEVfV0lUSF9VUFRVUk47CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9Va3JhaW5pYW5fSSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWtyYWluaWFuX0k7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9Va3JhaW5pYW5fSUUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVr cmFpbmlhbl9JRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VrcmFpbmlhbl9ZSSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgVWtyYWluaWFuX1lJOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWtyYWluaWFuX2doZV93aXRo X3VwdHVybiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWtyYWluaWFuX2doZV93aXRoX3VwdHVy bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1VrcmFpbmlhbl9pIildCisrCQlwdWJsaWMgY29uc3QgdWludCBV a3JhaW5pYW5faTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VrcmFpbmlhbl9pZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgVWtyYWluaWFuX2llOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWtyYWluaWFuX3lpIildCisr CQlwdWJsaWMgY29uc3QgdWludCBVa3JhaW5pYW5feWk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Va3Jhbmlh bl9JIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVa3Jhbmlhbl9JOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf VWtyYW5pYW5fSkUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVrcmFuaWFuX0pFOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfVWtyYW5pYW5fWUkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVrcmFuaWFuX1lJ OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfVWtyYW5pYW5faSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWty YW5pYW5faTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VrcmFuaWFuX2plIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBVa3Jhbmlhbl9qZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VrcmFuaWFuX3lpIildCisrCQlwdWJs aWMgY29uc3QgdWludCBVa3Jhbmlhbl95aTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VtYWNyb24iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFVtYWNyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VbmRvIildCisrCQlw dWJsaWMgY29uc3QgdWludCBVbmRvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVW5ncmFiIildCisrCQlwdWJs aWMgY29uc3QgdWludCBVbmdyYWI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Vb2dvbmVrIildCisrCQlwdWJs aWMgY29uc3QgdWludCBVb2dvbmVrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVXAiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFVwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVXJpbmciKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFVyaW5nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVXNlcjFLQiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgVXNlcjFLQjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VzZXIyS0IiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFVzZXIyS0I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Vc2VyUEIiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFVzZXJQQjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1V0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgVXRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfViIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1ZlbmRvckhvbWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFZlbmRv ckhvbWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9WaWRlbyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVmlk ZW87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9WaWV3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBWaWV3Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfVm9pZFN5bWJvbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVm9pZFN5 bWJvbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1ciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFc7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9XTEFOIildCisrCQlwdWJsaWMgY29uc3QgdWludCBXTEFOOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfV1dXIildCisrCQlwdWJsaWMgY29uc3QgdWludCBXV1c7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9X YWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFdhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1dh a2VVcCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgV2FrZVVwOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfV2Np cmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFdjaXJjdW1mbGV4OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfV2RpYWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgV2RpYWVyZXNpczsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1dlYkNhbSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgV2ViQ2FtOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfV2dyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBXZ3JhdmU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9XaGVlbEJ1dHRvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgV2hlZWxCdXR0 b247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9XaW5kb3dDbGVhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg V2luZG93Q2xlYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Xb25TaWduIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBXb25TaWduOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfV29yZCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgV29yZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFg7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9YYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFhhYm92ZWRv dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1hmZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFhmZXI7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9ZIildCisrCQlwdWJsaWMgY29uc3QgdWludCBZOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfWWFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBZYWN1dGU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9ZYmVsb3dkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFliZWxvd2RvdDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1ljaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBZY2lyY3VtZmxleDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1lkaWFlcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFlkaWFl cmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ZZWxsb3ciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFll bGxvdzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1lncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgWWdy YXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfWWhvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFlob29r OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfWXRpbGRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBZdGlsZGU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9aIildCisrCQlwdWJsaWMgY29uc3QgdWludCBaOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfWmFib3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBaYWJvdmVkb3Q7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9aYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFphY3V0ZTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1pjYXJvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgWmNhcm9uOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfWmVuX0tvaG8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFplbl9Lb2hvOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfWmVua2FrdSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgWmVua2FrdTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1plbmtha3VfSGFua2FrdSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgWmVu a2FrdV9IYW5rYWt1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWm9vbUluIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBab29tSW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ab29tT3V0IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBab29tT3V0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWnN0cm9rZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgWnN0cm9rZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9hYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFhY3V0 ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2FiZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYWJl bG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGFib3ZlZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYWJyZXZlIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBhYnJldmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hYnJldmVhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYWJyZXZlYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hYnJldmViZWxvd2RvdCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYWJyZXZlYmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hYnJldmVn cmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYWJyZXZlZ3JhdmU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9hYnJldmVob29rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBhYnJldmVob29rOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYWJyZXZldGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFicmV2ZXRpbGRl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYWNpcmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFj aXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYWNpcmN1bWZsZXhhY3V0ZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYWNpcmN1bWZsZXhhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FjaXJjdW1mbGV4 YmVsb3dkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFjaXJjdW1mbGV4YmVsb3dkb3Q7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9hY2lyY3VtZmxleGdyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBh Y2lyY3VtZmxleGdyYXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYWNpcmN1bWZsZXhob29rIildCisrCQlw dWJsaWMgY29uc3QgdWludCBhY2lyY3VtZmxleGhvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hY2lyY3Vt ZmxleHRpbGRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBhY2lyY3VtZmxleHRpbGRlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFjdXRlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYWRpYWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYWRpYWVyZXNpczsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2FlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBhZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2FncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYWdyYXZlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYWhvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFob29rOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYW1hY3JvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYW1hY3JvbjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2FtcGVyc2FuZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYW1wZXJzYW5kOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYW9nb25layIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYW9nb25lazsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2Fwb3N0cm9waGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFwb3N0cm9waGU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9hcHByb3hlcSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYXBwcm94 ZXE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9hcHByb3hpbWF0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YXBwcm94aW1hdGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hcmluZyIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYXJpbmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hc2NpaWNpcmN1bSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYXNjaWljaXJjdW07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hc2NpaXRpbGRlIildCisrCQlwdWJs aWMgY29uc3QgdWludCBhc2NpaXRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYXN0ZXJpc2siKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGFzdGVyaXNrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYXQiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGF0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYXRpbGRlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBhdGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9iIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBiOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYmFib3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBiYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9iYWNrc2xhc2giKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJhY2tzbGFzaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JhbGxvdGNyb3NzIildCisrCQlwdWJs aWMgY29uc3QgdWludCBiYWxsb3Rjcm9zczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JhciIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYmFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYmVjYXVzZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYmVjYXVzZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JsYW5rIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBibGFuazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JvdGludGVncmFsIildCisrCQlwdWJs aWMgY29uc3QgdWludCBib3RpbnRlZ3JhbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JvdGxlZnRwYXJlbnMi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJvdGxlZnRwYXJlbnM7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i b3RsZWZ0c3FicmFja2V0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBib3RsZWZ0c3FicmFja2V0 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYm90bGVmdHN1bW1hdGlvbiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYm90bGVmdHN1bW1hdGlvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JvdHJpZ2h0cGFyZW5zIildCisr CQlwdWJsaWMgY29uc3QgdWludCBib3RyaWdodHBhcmVuczsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JvdHJp Z2h0c3FicmFja2V0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBib3RyaWdodHNxYnJhY2tldDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JvdHJpZ2h0c3VtbWF0aW9uIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBib3RyaWdodHN1bW1hdGlvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JvdHQiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJvdHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ib3R2ZXJ0c3VtbWF0aW9uY29ubmVjdG9y IildCisrCQlwdWJsaWMgY29uc3QgdWludCBib3R2ZXJ0c3VtbWF0aW9uY29ubmVjdG9yOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJhY2VsZWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFjZWxlZnQ7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFjZXJpZ2h0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFj ZXJpZ2h0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhY2tldGxlZnQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyYWNrZXRsZWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhY2tldHJpZ2h0IildCisrCQlwdWJs aWMgY29uc3QgdWludCBicmFja2V0cmlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2JsYW5r IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2JsYW5rOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RfMSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RfMTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90XzEwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdF8xMDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90XzIiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90XzI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdF8zIild CisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdF8zOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RfNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RfNDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JyYWlsbGVfZG90XzUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90XzU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdF82IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBicmFpbGxlX2RvdF82OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RfNyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RfNzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90XzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90Xzg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdF85IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdF85 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90c18xOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyIildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxl X2RvdHNfMTIzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c18xMjM0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzQ1IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNDU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfMTIzNDU2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNf MTIzNDU2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzQ1NjciKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM0NTY3OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzEyMzQ1Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIz NDU2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNDU2OCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzQ1Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxl X2RvdHNfMTIzNDU3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNDU3 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzQ1NzgiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c18xMjM0NTc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzEyMzQ1OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzQ1ODsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM0NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzEyMzQ2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzQ2NyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzQ2NzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c18xMjM0Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxl X2RvdHNfMTIzNDY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM0NjgiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM0Njg7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfMTIzNDciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18x MjM0NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM0NzgiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM0Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfMTIzNDgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM0ODsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMTIzNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM1NiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzU2OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzEyMzU2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rz XzEyMzU2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM1Njc4IildCisrCQlwdWJs aWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNTY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18xMjM1NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM1 Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNTciKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c18xMjM1NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18x MjM1NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM1Nzg7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNTgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c18xMjM1ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM2IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90c18xMjM2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEy MzY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzY3OCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c18xMjM2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzY4OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c18xMjM3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzc4IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNzg7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfMTIzOCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEy Mzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI0IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBicmFpbGxlX2RvdHNfMTI0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNDUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjQ1OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzEyNDU2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfMTI0NTY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI0NTY3IildCisrCQlwdWJs aWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI0NTY3OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzEyNDU2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjQ1 Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNDU2OCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNDU2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c18xMjQ1NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNDU3OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNDU3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzEyNDU3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjQ1OCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNDU4OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzEyNDYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18xMjQ2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNDY3IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI0Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfMTI0Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI0Njc4Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNDY4IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfMTI0Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI0NyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNDc7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9icmFpbGxlX2RvdHNfMTI0NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18xMjQ3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjQ4IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI0ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c18xMjUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfMTI1NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RzXzEyNTY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI1NjciKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjU2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18xMjU2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjU2 Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI1NjgiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c18xMjU2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18x MjU3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI1NzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c18xMjU3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RzXzEyNTc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNTgiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjU4OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzEyNiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMTI2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjY3OCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNjc4OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzEyNjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18x MjY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzEyNzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjc4 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI3ODsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c18xMjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18xMjg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTMiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c18xMzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzQi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzQ7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9icmFpbGxlX2RvdHNfMTM0NSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rz XzEzNDU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM0NTYiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c18xMzQ1NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c18xMzQ1NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzQ1Njc7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM0NTY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzEzNDU2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM0 NTY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM0NTY4OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNDU3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfMTM0NTc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM0NTc4IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM0NTc4OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzEzNDU4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNf MTM0NTg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM0NiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNDY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf MTM0NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzQ2NzsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzQ2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c18xMzQ2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM0NjgiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzQ2ODsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2JyYWlsbGVfZG90c18xMzQ3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNf MTM0NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzQ3OCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNDc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzEzNDgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzQ4OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RzXzEzNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzU2IildCisrCQlwdWJs aWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM1NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90c18xMzU2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNTY3Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNTY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzEzNTY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzU2 OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNTY4OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzEzNTciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18xMzU3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNTc4IildCisrCQlwdWJs aWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM1Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxl X2RvdHNfMTM1OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNTg7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMTM2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNjciKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzY3OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzEzNjc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM2 Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM2OCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzEzNjg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM3 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM3OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzEzNzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18xMzc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzOCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18x NCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE0OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzE0NSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rz XzE0NTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNDU2IildCisrCQlwdWJsaWMgY29u c3QgdWludCBicmFpbGxlX2RvdHNfMTQ1NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18x NDU2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE0NTY3OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE0NTY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJh aWxsZV9kb3RzXzE0NTY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNDU2OCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE0NTY4OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzE0NTciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18x NDU3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE0NTc4IildCisrCQlwdWJsaWMgY29u c3QgdWludCBicmFpbGxlX2RvdHNfMTQ1Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf MTQ1OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE0NTg7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfMTQ2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxl X2RvdHNfMTQ2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE0NjciKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNDY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9k b3RzXzE0Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTQ2Nzg7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTQ2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzE0Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTQ3IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTQ3OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzE0NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNDc4 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE0OCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzE0ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE1OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzE1NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE1NjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNTY3IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfMTU2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNTY3OCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE1Njc4OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzE1NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18xNTY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE1NyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE1NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18x NTc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTU3ODsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c18xNTgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18xNTg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTYiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c18xNjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18x NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNjc7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMTY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzE2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTY4IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMTY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzE3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTc7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMTc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfMTc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE4IildCisrCQlwdWJsaWMgY29u c3QgdWludCBicmFpbGxlX2RvdHNfMTg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfMjMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90c18yMzQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM0NSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNDU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfMjM0NTYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18y MzQ1NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzQ1NjciKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c18yMzQ1Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfMjM0NTY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNDU2Nzg7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM0NTY4IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBicmFpbGxlX2RvdHNfMjM0NTY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIz NDU3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM0NTc7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfMjM0NTc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfMjM0NTc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNDU4IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM0NTg7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfMjM0NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIz NDY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM0NjciKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c18yMzQ2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18y MzQ2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzQ2Nzg7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM0NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c18yMzQ2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzQ3IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM0NzsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90c18yMzQ3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIz NDc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNDgiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c18yMzQ4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIz NSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c18yMzU2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfMjM1NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzU2NyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNTY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9k b3RzXzIzNTY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNTY3ODsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzU2OCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzIzNTY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNTci KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzU3OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzIzNTc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfMjM1Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM1OCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNTg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfMjM2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM2OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18yMzY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNjc4IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMjM2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNjg7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM3IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfMjM3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNzgiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzc4OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzIzOCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIz ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzI0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI0NSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI0NTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90c18yNDU2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjQ1 NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNDU2NyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzI0NTY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI0 NTY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI0NTY3ODsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JyYWlsbGVfZG90c18yNDU2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJh aWxsZV9kb3RzXzI0NTY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI0NTciKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNDU3OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzI0NTc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjQ1 Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjQ1OCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzI0NTg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjQ2 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjQ2OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzI0NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18yNDY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI0Njc4IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMjQ2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfMjQ2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI0Njg7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjQ3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfMjQ3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI0NzgiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNDc4OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzI0OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI0ODsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJh aWxsZV9kb3RzXzI1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI1NiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI1NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90c18yNTY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjU2NzsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNTY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzI1Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI1NjgiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNTY4OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzI1NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI1 NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNTc4IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBicmFpbGxlX2RvdHNfMjU3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNTgi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNTg7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9icmFpbGxlX2RvdHNfMjYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18y NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNjciKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyYWlsbGVfZG90c18yNjc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjY3OCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI2Nzg7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9icmFpbGxlX2RvdHNfMjY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNf MjY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI3IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBicmFpbGxlX2RvdHNfMjc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjc4Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjc4OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzI4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjg7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzQiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90c18zNDUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNDU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzQ1NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJh aWxsZV9kb3RzXzM0NTY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzQ1NjciKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNDU2NzsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90c18zNDU2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18z NDU2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzQ1NjgiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c18zNDU2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c18zNDU3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzQ1NzsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JyYWlsbGVfZG90c18zNDU3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJh aWxsZV9kb3RzXzM0NTc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM0NTgiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNDU4OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzM0NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM0NjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNDY3IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfMzQ2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNDY3OCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM0Njc4OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzM0NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18zNDY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM0NyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM0NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18z NDc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzQ3ODsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c18zNDgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18zNDg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c18zNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18z NTYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNTY7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMzU2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzM1Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzU2NzgiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNTY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90c18zNTY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzU2ODsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNTciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c18zNTc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzU3OCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM1Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMzU4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzU4Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMzY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzY3IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzY3OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzM2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNjc4Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzM2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM3OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzM3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM3ODsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zOCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJh aWxsZV9kb3RzXzM4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzQiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c180OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzQ1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNDU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfNDU2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfNDU2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzQ1NjciKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c180NTY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzQ1Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNDU2Nzg7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNDU2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJh aWxsZV9kb3RzXzQ1Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNDU3IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNDU3OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzQ1NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c180NTc4Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzQ1OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzQ1ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c180NiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzQ2OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzQ2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzQ2NzsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c180Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfNDY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c180NjgiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c180Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfNDciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c180NzsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c180NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c180Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNDgiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c180ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90c181IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c181NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzU2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzU2NyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzU2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c181 Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNTY3ODsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c181NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c181Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNTciKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c181NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c181 NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c181Nzg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfNTgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c181ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c182IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBicmFpbGxlX2RvdHNfNjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c182NyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzY3OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzY3ODsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c182OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzciKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c183OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9k b3RzXzc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNzg7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfOCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmV2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJl dmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9icm9rZW5iYXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy b2tlbmJhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGM7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9jX2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNfaDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2NhYm92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY2Fib3ZlZG90OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfY2FjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBjYWN1dGU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9jYXJlb2YiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNhcmVvZjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2NhcmV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBjYXJldDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2Nhcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBjYXJvbjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2NjYXJvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY2Nhcm9uOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfY2NlZGlsbGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNjZWRpbGxhOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfY2NpcmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNjaXJjdW1mbGV4Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfY2VkaWxsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY2VkaWxsYTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2NlbnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNlbnQ7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9jaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY2g7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9jaGVja2VyYm9hcmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNoZWNrZXJib2FyZDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2NoZWNrbWFyayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY2hlY2ttYXJr OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfY2lyY2xlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBjaXJjbGU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9jbHViIildCisrCQlwdWJsaWMgY29uc3QgdWludCBjbHViOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfY29sb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNvbG9uOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfY29tbWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNvbW1hOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfY29udGFpbnNhcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY29udGFpbnNhczsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2NvcHlyaWdodCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY29weXJpZ2h0 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfY3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNyOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfY3Jvc3NpbmdsaW5lcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY3Jvc3Npbmds aW5lczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2N1YmVyb290IildCisrCQlwdWJsaWMgY29uc3QgdWludCBj dWJlcm9vdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2N1cnJlbmN5IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBjdXJyZW5jeTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2N1cnNvciIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgY3Vyc29yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2RhYm92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGFib3Zl ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfZGFnZ2VyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkYWdn ZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9kY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRjYXJv bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2RlYWRfQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9B OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9FIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX0U7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9kZWFkX0kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfSTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2RlYWRfTyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9POwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfZGVhZF9VIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX1U7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9kZWFkX2EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfYTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2RlYWRfYWJvdmVjb21tYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVh ZF9hYm92ZWNvbW1hOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9hYm92ZWRvdCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgZGVhZF9hYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfYWJvdmVyZXZl cnNlZGNvbW1hIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2Fib3ZlcmV2ZXJzZWRjb21t YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2RlYWRfYWJvdmVyaW5nIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBkZWFkX2Fib3ZlcmluZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfYWJvdmV2ZXJ0aWNhbGxpbmUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfYWJvdmV2ZXJ0aWNhbGxpbmU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9kZWFkX2FjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2FjdXRlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfZGVhZF9iZWxvd2JyZXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBk ZWFkX2JlbG93YnJldmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2JlbG93Y2lyY3VtZmxleCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9iZWxvd2NpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9kZWFkX2JlbG93Y29tbWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfYmVsb3djb21t YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2RlYWRfYmVsb3dkaWFlcmVzaXMiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGRlYWRfYmVsb3dkaWFlcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2JlbG93ZG90 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2JlbG93ZG90OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf ZGVhZF9iZWxvd21hY3JvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9iZWxvd21hY3Jv bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2RlYWRfYmVsb3dyaW5nIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBkZWFkX2JlbG93cmluZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfYmVsb3d0aWxkZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgZGVhZF9iZWxvd3RpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9i ZWxvd3ZlcnRpY2FsbGluZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9iZWxvd3ZlcnRp Y2FsbGluZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfYnJldmUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGRlYWRfYnJldmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2NhcGl0YWxfc2Nod2EiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGRlYWRfY2FwaXRhbF9zY2h3YTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Rl YWRfY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfY2Fyb247CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9kZWFkX2NlZGlsbGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfY2VkaWxsYTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2RlYWRfY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg ZGVhZF9jaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9jdXJyZW5jeSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgZGVhZF9jdXJyZW5jeTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfZGFzaWEi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfZGFzaWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFk X2RpYWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9kaWFlcmVzaXM7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9kZWFkX2RvdWJsZWFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFk X2RvdWJsZWFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9kb3VibGVncmF2ZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgZGVhZF9kb3VibGVncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9ncmF2 ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9ncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Rl YWRfZ3JlZWsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfZ3JlZWs7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9kZWFkX2hvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfaG9vazsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2RlYWRfaG9ybiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9ob3JuOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfZGVhZF9pIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2k7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9kZWFkX2ludmVydGVkYnJldmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGRlYWRfaW52ZXJ0ZWRicmV2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfaW90YSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgZGVhZF9pb3RhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9sb25nc29saWR1 c292ZXJsYXkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfbG9uZ3NvbGlkdXNvdmVybGF5 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9sb3dsaW5lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBk ZWFkX2xvd2xpbmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX21hY3JvbiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgZGVhZF9tYWNyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX28iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGRlYWRfbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfb2dvbmVrIildCisrCQlw dWJsaWMgY29uc3QgdWludCBkZWFkX29nb25lazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfcGVyaXNw b21lbmkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfcGVyaXNwb21lbmk7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9kZWFkX3BzaWxpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX3BzaWxpOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfZGVhZF9zZW1pdm9pY2VkX3NvdW5kIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBkZWFkX3NlbWl2b2ljZWRfc291bmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX3NtYWxsX3Nj aHdhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX3NtYWxsX3NjaHdhOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfZGVhZF9zdHJva2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfc3Ryb2tlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfZGVhZF90aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF90 aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfdSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVh ZF91OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF92b2ljZWRfc291bmQiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGRlYWRfdm9pY2VkX3NvdW5kOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVjaW1hbHBvaW50Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBkZWNpbWFscG9pbnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWdy ZWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlZ3JlZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RpYWVy ZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGlhZXJlc2lzOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf ZGlhbW9uZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGlhbW9uZDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2RpZ2l0c3BhY2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRpZ2l0c3BhY2U7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9kaW50ZWdyYWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRpbnRlZ3JhbDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2RpdmlzaW9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkaXZpc2lvbjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2RvbGxhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZG9sbGFyOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfZG91YmJhc2VsaW5lZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBk b3ViYmFzZWxpbmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kb3VibGVhY3V0ZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgZG91YmxlYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kb3VibGVkYWdnZXIiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGRvdWJsZWRhZ2dlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RvdWJs ZWxvd3F1b3RlbWFyayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZG91YmxlbG93cXVvdGVtYXJr OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfZG93bmFycm93IildCisrCQlwdWJsaWMgY29uc3QgdWludCBkb3du YXJyb3c7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kb3duY2FyZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGRvd25jYXJldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Rvd25zaG9lIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBkb3duc2hvZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Rvd25zdGlsZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgZG93bnN0aWxlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZG93bnRhY2siKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGRvd250YWNrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZHN0cm9rZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgZHN0cm9rZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2UiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGVhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VhY3V0ZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgZWFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZWJlbG93ZG90IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBlYmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lY2Fyb24iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGVjYXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VjaXJjdW1mbGV4IildCisrCQlw dWJsaWMgY29uc3QgdWludCBlY2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VjaXJjdW1mbGV4 YWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVjaXJjdW1mbGV4YWN1dGU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9lY2lyY3VtZmxleGJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBlY2ly Y3VtZmxleGJlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZWNpcmN1bWZsZXhncmF2ZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgZWNpcmN1bWZsZXhncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VjaXJj dW1mbGV4aG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZWNpcmN1bWZsZXhob29rOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfZWNpcmN1bWZsZXh0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZWNp cmN1bWZsZXh0aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VkaWFlcmVzaXMiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGVkaWFlcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lZ3JhdmUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGVncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Vob29rIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBlaG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VpZ2h0c3Vic2NyaXB0IildCisrCQlw dWJsaWMgY29uc3QgdWludCBlaWdodHN1YnNjcmlwdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VpZ2h0c3Vw ZXJpb3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVpZ2h0c3VwZXJpb3I7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9lbGVtZW50b2YiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVsZW1lbnRvZjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2VsbGlwc2lzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlbGxpcHNpczsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2VtM3NwYWNlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlbTNzcGFjZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2VtNHNwYWNlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlbTRzcGFj ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2VtYWNyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVtYWNy b247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9lbWRhc2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVtZGFz aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2VtZmlsbGVkY2lyY2xlIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBlbWZpbGxlZGNpcmNsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VtZmlsbGVkcmVjdCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgZW1maWxsZWRyZWN0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW1vcGVuY2lyY2xl IildCisrCQlwdWJsaWMgY29uc3QgdWludCBlbW9wZW5jaXJjbGU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9l bW9wZW5yZWN0YW5nbGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVtb3BlbnJlY3RhbmdsZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2VtcHR5c2V0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBlbXB0eXNl dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2Vtc3BhY2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVtc3Bh Y2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9lbmRhc2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVuZGFz aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2VuZmlsbGVkY2lyY2J1bGxldCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgZW5maWxsZWRjaXJjYnVsbGV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW5maWxsZWRzcWJ1bGxl dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZW5maWxsZWRzcWJ1bGxldDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2VuZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZW5nOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW5v cGVuY2lyY2J1bGxldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZW5vcGVuY2lyY2J1bGxldDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2Vub3BlbnNxdWFyZWJ1bGxldCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgZW5vcGVuc3F1YXJlYnVsbGV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW5zcGFjZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgZW5zcGFjZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VvZ29uZWsiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGVvZ29uZWs7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lcXVhbCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgZXF1YWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ldGgiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGV0aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2V0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgZXRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZXhjbGFtIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBleGNsYW07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9leGNsYW1kb3duIildCisrCQlwdWJsaWMgY29u c3QgdWludCBleGNsYW1kb3duOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZXpoIildCisrCQlwdWJsaWMgY29u c3QgdWludCBlemg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9mIildCisrCQlwdWJsaWMgY29uc3QgdWludCBm OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfZmFib3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBmYWJv dmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9mZW1hbGVzeW1ib2wiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGZlbWFsZXN5bWJvbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ZmIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBmZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ZpZ2Rhc2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGZpZ2Rhc2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9maWxsZWRsZWZ0dHJpYnVsbGV0IildCisrCQlwdWJs aWMgY29uc3QgdWludCBmaWxsZWRsZWZ0dHJpYnVsbGV0OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZmlsbGVk cmVjdGJ1bGxldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZmlsbGVkcmVjdGJ1bGxldDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2ZpbGxlZHJpZ2h0dHJpYnVsbGV0IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBmaWxsZWRyaWdodHRyaWJ1bGxldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ZpbGxlZHRyaWJ1bGxldGRv d24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGZpbGxlZHRyaWJ1bGxldGRvd247CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9maWxsZWR0cmlidWxsZXR1cCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZmlsbGVk dHJpYnVsbGV0dXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9maXZlZWlnaHRocyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgZml2ZWVpZ2h0aHM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9maXZlc2l4dGhzIildCisrCQlw dWJsaWMgY29uc3QgdWludCBmaXZlc2l4dGhzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZml2ZXN1YnNjcmlw dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZml2ZXN1YnNjcmlwdDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2ZpdmVzdXBlcmlvciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZml2ZXN1cGVyaW9yOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfZm91cmZpZnRocyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZm91cmZpZnRo czsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2ZvdXJzdWJzY3JpcHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGZvdXJzdWJzY3JpcHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9mb3Vyc3VwZXJpb3IiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGZvdXJzdXBlcmlvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ZvdXJ0aHJvb3QiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGZvdXJ0aHJvb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9mdW5jdGlv biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZnVuY3Rpb247CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9nIild CisrCQlwdWJsaWMgY29uc3QgdWludCBnOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZ2Fib3ZlZG90IildCisr CQlwdWJsaWMgY29uc3QgdWludCBnYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9nYnJldmUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGdicmV2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2djYXJvbiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgZ2Nhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZ2NlZGlsbGEiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGdjZWRpbGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZ2NpcmN1bWZs ZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGdjaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf Z3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGdyYXZlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZ3Jl YXRlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZ3JlYXRlcjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2dy ZWF0ZXJ0aGFuZXF1YWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGdyZWF0ZXJ0aGFuZXF1YWw7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9ndWlsbGVtb3RsZWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBn dWlsbGVtb3RsZWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZ3VpbGxlbW90cmlnaHQiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGd1aWxsZW1vdHJpZ2h0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hhaXJzcGFjZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgaGFpcnNwYWNlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGNpcmN1bWZsZXgiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGhjaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVhcnQiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGhlYXJ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X2FsZXBo IildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfYWxlcGg7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9o ZWJyZXdfYXlpbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X2F5aW47CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9oZWJyZXdfYmV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfYmV0Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfaGVicmV3X2JldGgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJl d19iZXRoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X2NoZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGhlYnJld19jaGV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X2RhbGV0IildCisrCQlwdWJs aWMgY29uc3QgdWludCBoZWJyZXdfZGFsZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfZGFsZXRo IildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfZGFsZXRoOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf aGVicmV3X2RvdWJsZWxvd2xpbmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19kb3Vi bGVsb3dsaW5lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X2ZpbmFsa2FwaCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgaGVicmV3X2ZpbmFsa2FwaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19maW5h bG1lbSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X2ZpbmFsbWVtOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfaGVicmV3X2ZpbmFsbnVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfZmlu YWxudW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfZmluYWxwZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgaGVicmV3X2ZpbmFscGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfZmluYWx6YWRlIild CisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfZmluYWx6YWRlOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf aGVicmV3X2ZpbmFsemFkaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X2ZpbmFsemFk aTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19naW1lbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg aGVicmV3X2dpbWVsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X2dpbW1lbCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgaGVicmV3X2dpbW1lbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19oZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X2hlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X2hl dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X2hldDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hl YnJld19rYXBoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfa2FwaDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2hlYnJld19rdWYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19rdWY7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9oZWJyZXdfbGFtZWQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJl d19sYW1lZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19tZW0iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGhlYnJld19tZW07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfbnVuIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBoZWJyZXdfbnVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X3BlIildCisrCQlw dWJsaWMgY29uc3QgdWludCBoZWJyZXdfcGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfcW9waCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X3FvcGg7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJy ZXdfcmVzaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X3Jlc2g7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9oZWJyZXdfc2FtZWNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfc2FtZWNo OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X3NhbWVraCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg aGVicmV3X3NhbWVraDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19zaGluIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBoZWJyZXdfc2hpbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld190YWYiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGhlYnJld190YWY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfdGF3 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfdGF3OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVi cmV3X3RldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X3RldDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2hlYnJld190ZXRoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfdGV0aDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2hlYnJld193YXciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld193 YXc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfeW9kIildCisrCQlwdWJsaWMgY29uc3QgdWludCBo ZWJyZXdfeW9kOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X3phZGUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGhlYnJld196YWRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X3phZGkiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGhlYnJld196YWRpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X3phaW4i KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld196YWluOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVi cmV3X3pheWluIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfemF5aW47CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9oZXhhZ3JhbSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGV4YWdyYW07CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9ob3JpemNvbm5lY3RvciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaG9yaXpj b25uZWN0b3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ob3JpemxpbmVzY2FuMSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgaG9yaXpsaW5lc2NhbjE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ob3JpemxpbmVzY2FuMyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgaG9yaXpsaW5lc2NhbjM7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9o b3JpemxpbmVzY2FuNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaG9yaXpsaW5lc2NhbjU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9ob3JpemxpbmVzY2FuNyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaG9y aXpsaW5lc2Nhbjc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ob3JpemxpbmVzY2FuOSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgaG9yaXpsaW5lc2Nhbjk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oc3Ryb2tlIildCisr CQlwdWJsaWMgY29uc3QgdWludCBoc3Ryb2tlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaHQiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGh0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaHlwaGVuIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBoeXBoZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaVRvdWNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBp VG91Y2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGlh Y3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2liZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg aWJlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaWJyZXZlIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBpYnJldmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgaWNpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pZGVudGljYWwiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGlkZW50aWNhbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2lkaWFlcmVzaXMiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGlkaWFlcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pZG90bGVzcyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgaWRvdGxlc3M7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pZm9ubHlp ZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaWZvbmx5aWY7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pZ3Jh dmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGlncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2lob29r IildCisrCQlwdWJsaWMgY29uc3QgdWludCBpaG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ltYWNyb24i KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGltYWNyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pbXBsaWVz IildCisrCQlwdWJsaWMgY29uc3QgdWludCBpbXBsaWVzOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaW5jbHVk ZWRpbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaW5jbHVkZWRpbjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2luY2x1ZGVzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBpbmNsdWRlczsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2luZmluaXR5IildCisrCQlwdWJsaWMgY29uc3QgdWludCBpbmZpbml0eTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2ludGVncmFsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBpbnRlZ3JhbDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2ludGVyc2VjdGlvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaW50ZXJzZWN0 aW9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfaW9nb25layIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaW9n b25lazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2l0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaXRp bGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfaiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgajsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2pjaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBqY2lyY3VtZmxl eDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2pvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgam90OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgazsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2thbmFfQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9BOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf a2FuYV9DSEkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfQ0hJOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfa2FuYV9FIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX0U7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9rYW5hX0ZVIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX0ZVOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfa2FuYV9IQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9IQTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2thbmFfSEUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfSEU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9rYW5hX0hJIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX0hJOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfa2FuYV9ITyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9ITzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2thbmFfSFUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfSFU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9rYW5hX0kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfSTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2thbmFfS0EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfS0E7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9rYW5hX0tFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX0tFOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfa2FuYV9LSSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9LSTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2thbmFfS08iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfS087CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9rYW5hX0tVIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX0tVOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfa2FuYV9NQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9NQTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2thbmFfTUUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfTUU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9rYW5hX01JIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX01JOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfa2FuYV9NTyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9NTzsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2thbmFfTVUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfTVU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9rYW5hX04iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfTjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2thbmFfTkEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfTkE7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9rYW5hX05FIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX05F OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9OSSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9O STsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2thbmFfTk8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFf Tk87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX05VIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5h X05VOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9PIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5h X087CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX1JBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5h X1JBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9SRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2Fu YV9SRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfUkkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGth bmFfUkk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX1JPIildCisrCQlwdWJsaWMgY29uc3QgdWludCBr YW5hX1JPOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9SVSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg a2FuYV9SVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfU0EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGthbmFfU0E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX1NFIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBrYW5hX1NFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9TSEkiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGthbmFfU0hJOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9TTyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQga2FuYV9TTzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfU1UiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGthbmFfU1U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX1RBIildCisrCQlwdWJsaWMgY29u c3QgdWludCBrYW5hX1RBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9URSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQga2FuYV9URTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfVEkiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGthbmFfVEk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX1RPIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBrYW5hX1RPOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9UU1UiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGthbmFfVFNVOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9UVSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQga2FuYV9UVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfVSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQga2FuYV9VOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9XQSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQga2FuYV9XQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfV08iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGthbmFfV087CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX1lBIildCisrCQlw dWJsaWMgY29uc3QgdWludCBrYW5hX1lBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9ZTyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQga2FuYV9ZTzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfWVUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGthbmFfWVU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX2EiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGthbmFfYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfY2xvc2luZ2Jy YWNrZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfY2xvc2luZ2JyYWNrZXQ7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9rYW5hX2NvbW1hIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX2NvbW1h OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9jb25qdW5jdGl2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQga2FuYV9jb25qdW5jdGl2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQga2FuYV9lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9mdWxsc3RvcCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQga2FuYV9mdWxsc3RvcDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfaSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9pOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9taWRk bGVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfbWlkZGxlZG90OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfa2FuYV9vIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX287CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9rYW5hX29wZW5pbmdicmFja2V0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX29w ZW5pbmdicmFja2V0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9zd2l0Y2giKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGthbmFfc3dpdGNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV90c3UiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGthbmFfdHN1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV90dSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQga2FuYV90dTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfdSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQga2FuYV91OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV95YSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQga2FuYV95YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfeW8iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGthbmFfeW87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX3l1IildCisr CQlwdWJsaWMgY29uc3QgdWludCBrYW5hX3l1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FwcGEiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGthcHBhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2NlZGlsbGEiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGtjZWRpbGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa3JhIildCisrCQlw dWJsaWMgY29uc3QgdWludCBrcmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sIildCisrCQlwdWJsaWMgY29u c3QgdWludCBsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbGFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBsYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sYXRpbmNyb3NzIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBsYXRpbmNyb3NzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbGJlbG93ZG90IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBsYmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sY2Fyb24iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGxjYXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xjZWRpbGxhIildCisrCQlwdWJs aWMgY29uc3QgdWludCBsY2VkaWxsYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xlZnRhbmdsZWJyYWNrZXQi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxlZnRhbmdsZWJyYWNrZXQ7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9sZWZ0YXJyb3ciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxlZnRhcnJvdzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2xlZnRjYXJldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbGVmdGNhcmV0OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfbGVmdGRvdWJsZXF1b3RlbWFyayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg bGVmdGRvdWJsZXF1b3RlbWFyazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xlZnRtaWRkbGVjdXJseWJyYWNl IildCisrCQlwdWJsaWMgY29uc3QgdWludCBsZWZ0bWlkZGxlY3VybHlicmFjZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2xlZnRvcGVudHJpYW5nbGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxlZnRvcGVu dHJpYW5nbGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sZWZ0cG9pbnRlciIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgbGVmdHBvaW50ZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sZWZ0cmFkaWNhbCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgbGVmdHJhZGljYWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sZWZ0c2hvZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgbGVmdHNob2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sZWZ0c2luZ2xl cXVvdGVtYXJrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBsZWZ0c2luZ2xlcXVvdGVtYXJrOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfbGVmdHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxlZnR0OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfbGVmdHRhY2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxlZnR0YWNrOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfbGVzcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbGVzczsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2xlc3N0aGFuZXF1YWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxlc3N0aGFu ZXF1YWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbGY7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9sb2dpY2FsYW5kIildCisrCQlwdWJsaWMgY29uc3QgdWludCBsb2dpY2Fs YW5kOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfbG9naWNhbG9yIildCisrCQlwdWJsaWMgY29uc3QgdWludCBs b2dpY2Fsb3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sb3dsZWZ0Y29ybmVyIildCisrCQlwdWJsaWMgY29u c3QgdWludCBsb3dsZWZ0Y29ybmVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbG93cmlnaHRjb3JuZXIiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGxvd3JpZ2h0Y29ybmVyOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbHN0 cm9rZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbHN0cm9rZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX20i KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9tYWJvdmVkb3QiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IG1hYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX21hY3JvbiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgbWFjcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbWFsZXN5bWJv bCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbWFsZXN5bWJvbDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX21h bHRlc2Vjcm9zcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbWFsdGVzZWNyb3NzOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfbWFya2VyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBtYXJrZXI7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9tYXNjdWxpbmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG1hc2N1bGluZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX21pbnVzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBtaW51czsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX21pbnV0ZXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG1pbnV0ZXM7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9tdSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbXU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9tdWx0aXBseSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbXVsdGlwbHk7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9tdXNpY2FsZmxhdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbXVzaWNhbGZsYXQ7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9tdXNpY2Fsc2hhcnAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG11c2lj YWxzaGFycDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG47Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9uYWJsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbmFibGE7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9uYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG5hY3V0ZTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX25jYXJvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbmNhcm9uOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfbmNlZGlsbGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG5jZWRpbGxhOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfbmluZXN1YnNjcmlwdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbmluZXN1 YnNjcmlwdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX25pbmVzdXBlcmlvciIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgbmluZXN1cGVyaW9yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbmwiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IG5sOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbm9icmVha3NwYWNlIildCisrCQlwdWJsaWMgY29u c3QgdWludCBub2JyZWFrc3BhY2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ub3RhcHByb3hlcSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgbm90YXBwcm94ZXE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ub3RlbGVtZW50 b2YiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG5vdGVsZW1lbnRvZjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X25vdGVxdWFsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBub3RlcXVhbDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX25vdGlkZW50aWNhbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbm90aWRlbnRpY2FsOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfbm90c2lnbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbm90c2lnbjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX250aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbnRpbGRlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfbnVtYmVyc2lnbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbnVtYmVy c2lnbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX251bWVyb3NpZ24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IG51bWVyb3NpZ247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vIildCisrCQlwdWJsaWMgY29uc3QgdWludCBv OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfb2FjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvYWN1dGU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9vYmFycmVkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvYmFycmVk OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfb2JlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBvYmVs b3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9j YXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX29jaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBvY2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29jaXJjdW1mbGV4YWN1dGUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IG9jaXJjdW1mbGV4YWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vY2lyY3Vt ZmxleGJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBvY2lyY3VtZmxleGJlbG93ZG90 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfb2NpcmN1bWZsZXhncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgb2NpcmN1bWZsZXhncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29jaXJjdW1mbGV4aG9vayIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgb2NpcmN1bWZsZXhob29rOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb2Np cmN1bWZsZXh0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2NpcmN1bWZsZXh0aWxkZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX29kaWFlcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9kaWFl cmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vZG91YmxlYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IG9kb3VibGVhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29lIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBvZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29nb25layIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg b2dvbmVrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb2dyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBv Z3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vaG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2hv b2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9vaG9ybiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2hvcm47 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9vaG9ybmFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvaG9y bmFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb2hvcm5iZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgb2hvcm5iZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29ob3JuZ3JhdmUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IG9ob3JuZ3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vaG9ybmhvb2siKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IG9ob3JuaG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29ob3JudGls ZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9ob3JudGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9v bWFjcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvbWFjcm9uOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf b25lZWlnaHRoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvbmVlaWdodGg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9vbmVmaWZ0aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb25lZmlmdGg7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9vbmVoYWxmIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvbmVoYWxmOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfb25lcXVhcnRlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb25lcXVhcnRlcjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX29uZXNpeHRoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvbmVzaXh0 aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX29uZXN1YnNjcmlwdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg b25lc3Vic2NyaXB0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb25lc3VwZXJpb3IiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IG9uZXN1cGVyaW9yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb25ldGhpcmQiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IG9uZXRoaXJkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb29ibGlxdWUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IG9vYmxpcXVlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb3BlbnJlY3RidWxs ZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9wZW5yZWN0YnVsbGV0OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfb3BlbnN0YXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9wZW5zdGFyOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfb3BlbnRyaWJ1bGxldGRvd24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9wZW50cmli dWxsZXRkb3duOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb3BlbnRyaWJ1bGxldHVwIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBvcGVudHJpYnVsbGV0dXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vcmRmZW1pbmluZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgb3JkZmVtaW5pbmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vc2xh c2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9zbGFzaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX290aWxk ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb3RpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb3ZlcmJh ciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb3ZlcmJhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX292ZXJs aW5lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvdmVybGluZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Ai KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9wYWJvdmVkb3QiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IHBhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3BhcmFncmFw aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcGFyYWdyYXBoOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcGFy ZW5sZWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBwYXJlbmxlZnQ7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9wYXJlbnJpZ2h0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBwYXJlbnJpZ2h0OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfcGFydGRpZmZlcmVudGlhbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcGFydGRp ZmZlcmVudGlhbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3BhcnRpYWxkZXJpdmF0aXZlIildCisrCQlwdWJs aWMgY29uc3QgdWludCBwYXJ0aWFsZGVyaXZhdGl2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3BlcmNlbnQi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHBlcmNlbnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9wZXJpb2Qi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHBlcmlvZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3BlcmlvZGNl bnRlcmVkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBwZXJpb2RjZW50ZXJlZDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX3Blcm1pbGxlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBwZXJtaWxsZTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX3Bob25vZ3JhcGhjb3B5cmlnaHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHBo b25vZ3JhcGhjb3B5cmlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9wbHVzIildCisrCQlwdWJsaWMgY29u c3QgdWludCBwbHVzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcGx1c21pbnVzIildCisrCQlwdWJsaWMgY29u c3QgdWludCBwbHVzbWludXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9wcmVzY3JpcHRpb24iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IHByZXNjcmlwdGlvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Byb2xvbmdlZHNv dW5kIildCisrCQlwdWJsaWMgY29uc3QgdWludCBwcm9sb25nZWRzb3VuZDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX3B1bmN0c3BhY2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHB1bmN0c3BhY2U7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9xIildCisrCQlwdWJsaWMgY29uc3QgdWludCBxOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf cXVhZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcXVhZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3F1ZXN0 aW9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBxdWVzdGlvbjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3F1 ZXN0aW9uZG93biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcXVlc3Rpb25kb3duOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfcXVvdGVkYmwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHF1b3RlZGJsOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfcXVvdGVsZWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBxdW90ZWxlZnQ7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9xdW90ZXJpZ2h0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBxdW90 ZXJpZ2h0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX3JhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcmFjdXRlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfcmFkaWNhbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcmFkaWNhbDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX3JjYXJvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcmNhcm9uOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfcmNlZGlsbGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHJjZWRpbGxhOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfcmVnaXN0ZXJlZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcmVnaXN0 ZXJlZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX3JpZ2h0YW5nbGVicmFja2V0IildCisrCQlwdWJsaWMgY29u c3QgdWludCByaWdodGFuZ2xlYnJhY2tldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3JpZ2h0YXJyb3ciKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IHJpZ2h0YXJyb3c7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9yaWdodGNh cmV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCByaWdodGNhcmV0OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf cmlnaHRkb3VibGVxdW90ZW1hcmsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHJpZ2h0ZG91Ymxl cXVvdGVtYXJrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcmlnaHRtaWRkbGVjdXJseWJyYWNlIildCisrCQlw dWJsaWMgY29uc3QgdWludCByaWdodG1pZGRsZWN1cmx5YnJhY2U7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9y aWdodG1pZGRsZXN1bW1hdGlvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcmlnaHRtaWRkbGVz dW1tYXRpb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9yaWdodG9wZW50cmlhbmdsZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgcmlnaHRvcGVudHJpYW5nbGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9yaWdodHBvaW50 ZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHJpZ2h0cG9pbnRlcjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X3JpZ2h0c2hvZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcmlnaHRzaG9lOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfcmlnaHRzaW5nbGVxdW90ZW1hcmsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHJpZ2h0 c2luZ2xlcXVvdGVtYXJrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcmlnaHR0IildCisrCQlwdWJsaWMgY29u c3QgdWludCByaWdodHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9yaWdodHRhY2siKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IHJpZ2h0dGFjazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3MiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IHM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IHNhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3NhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgc2FjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc2Nhcm9uIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBzY2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zY2VkaWxsYSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgc2NlZGlsbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zY2h3YSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgc2Nod2E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgc2NpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zY3JpcHRfc3dpdGNoIildCisr CQlwdWJsaWMgY29uc3QgdWludCBzY3JpcHRfc3dpdGNoOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc2Vjb25k cyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc2Vjb25kczsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3NlY3Rp b24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNlY3Rpb247CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zZW1p Y29sb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNlbWljb2xvbjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X3NlbWl2b2ljZWRzb3VuZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc2VtaXZvaWNlZHNvdW5k OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfc2V2ZW5laWdodGhzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBz ZXZlbmVpZ2h0aHM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zZXZlbnN1YnNjcmlwdCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgc2V2ZW5zdWJzY3JpcHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zZXZlbnN1cGVyaW9y IildCisrCQlwdWJsaWMgY29uc3QgdWludCBzZXZlbnN1cGVyaW9yOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf c2lnbmF0dXJlbWFyayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc2lnbmF0dXJlbWFyazsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX3NpZ25pZmJsYW5rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBzaWduaWZi bGFuazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX3NpbWlsYXJlcXVhbCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgc2ltaWxhcmVxdWFsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc2luZ2xlbG93cXVvdGVtYXJrIildCisr CQlwdWJsaWMgY29uc3QgdWludCBzaW5nbGVsb3dxdW90ZW1hcms7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9z aXhzdWJzY3JpcHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNpeHN1YnNjcmlwdDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX3NpeHN1cGVyaW9yIildCisrCQlwdWJsaWMgY29uc3QgdWludCBzaXhzdXBlcmlv cjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX3NsYXNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBzbGFzaDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX3NvbGlkZGlhbW9uZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc29s aWRkaWFtb25kOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc3BhY2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IHNwYWNlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc3F1YXJlcm9vdCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgc3F1YXJlcm9vdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3NzaGFycCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgc3NoYXJwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc3RlcmxpbmciKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IHN0ZXJsaW5nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc3RyaWN0ZXEiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IHN0cmljdGVxOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3RhYm92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgdGFib3ZlZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdGNhcm9uIildCisrCQlwdWJsaWMgY29uc3Qg dWludCB0Y2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90Y2VkaWxsYSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgdGNlZGlsbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90ZWxlcGhvbmUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IHRlbGVwaG9uZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3RlbGVwaG9uZXJlY29yZGVyIild CisrCQlwdWJsaWMgY29uc3QgdWludCB0ZWxlcGhvbmVyZWNvcmRlcjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X3RoZXJlZm9yZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdGhlcmVmb3JlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfdGhpbnNwYWNlIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0aGluc3BhY2U7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV90aG9ybiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdGhvcm47CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV90aHJlZWVpZ2h0aHMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRocmVlZWlnaHRo czsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX3RocmVlZmlmdGhzIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0 aHJlZWZpZnRoczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3RocmVlcXVhcnRlcnMiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IHRocmVlcXVhcnRlcnM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90aHJlZXN1YnNjcmlwdCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgdGhyZWVzdWJzY3JpcHQ7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90 aHJlZXN1cGVyaW9yIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0aHJlZXN1cGVyaW9yOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfdGludGVncmFsIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0aW50ZWdyYWw7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV90b3BpbnRlZ3JhbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdG9w aW50ZWdyYWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90b3BsZWZ0cGFyZW5zIildCisrCQlwdWJsaWMgY29u c3QgdWludCB0b3BsZWZ0cGFyZW5zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdG9wbGVmdHJhZGljYWwiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IHRvcGxlZnRyYWRpY2FsOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdG9w bGVmdHNxYnJhY2tldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdG9wbGVmdHNxYnJhY2tldDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX3RvcGxlZnRzdW1tYXRpb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IHRvcGxlZnRzdW1tYXRpb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90b3ByaWdodHBhcmVucyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgdG9wcmlnaHRwYXJlbnM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90b3ByaWdo dHNxYnJhY2tldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdG9wcmlnaHRzcWJyYWNrZXQ7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV90b3ByaWdodHN1bW1hdGlvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg dG9wcmlnaHRzdW1tYXRpb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90b3B0IildCisrCQlwdWJsaWMgY29u c3QgdWludCB0b3B0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdG9wdmVydHN1bW1hdGlvbmNvbm5lY3RvciIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgdG9wdmVydHN1bW1hdGlvbmNvbm5lY3RvcjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX3RyYWRlbWFyayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdHJhZGVtYXJrOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfdHJhZGVtYXJraW5jaXJjbGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IHRyYWRlbWFya2luY2lyY2xlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdHNsYXNoIildCisrCQlwdWJsaWMg Y29uc3QgdWludCB0c2xhc2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90d29maWZ0aHMiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IHR3b2ZpZnRoczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3R3b3N1YnNjcmlwdCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgdHdvc3Vic2NyaXB0OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdHdvc3Vw ZXJpb3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHR3b3N1cGVyaW9yOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfdHdvdGhpcmRzIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0d290aGlyZHM7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV91IildCisrCQlwdWJsaWMgY29uc3QgdWludCB1OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdWFj dXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCB1YWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91YmVs b3dkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHViZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X3VicmV2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdWJyZXZlOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf dWNpcmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVjaXJjdW1mbGV4OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfdWRpYWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdWRpYWVyZXNpczsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX3Vkb3VibGVhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdWRv dWJsZWFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdWdyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCB1Z3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91aG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg dWhvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91aG9ybiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdWhv cm47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV91aG9ybmFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCB1 aG9ybmFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdWhvcm5iZWxvd2RvdCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgdWhvcm5iZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Vob3JuZ3JhdmUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IHVob3JuZ3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91aG9ybmhvb2si KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVob3JuaG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Vob3Ju dGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVob3JudGlsZGU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV91bWFjcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCB1bWFjcm9uOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfdW5kZXJiYXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVuZGVyYmFyOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfdW5kZXJzY29yZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdW5kZXJzY29yZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX3VuaW9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCB1bmlvbjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX3VvZ29uZWsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVvZ29uZWs7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV91cGFycm93IildCisrCQlwdWJsaWMgY29uc3QgdWludCB1cGFycm93OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfdXBjYXJldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdXBjYXJldDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX3VwbGVmdGNvcm5lciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdXBsZWZ0 Y29ybmVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdXByaWdodGNvcm5lciIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgdXByaWdodGNvcm5lcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Vwc2hvZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgdXBzaG9lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdXBzdGlsZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgdXBzdGlsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3VwdGFjayIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgdXB0YWNrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdXJpbmciKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IHVyaW5nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdXRpbGRlIildCisrCQlwdWJsaWMgY29u c3QgdWludCB1dGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV92IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCB2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfdmFyaWF0aW9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCB2 YXJpYXRpb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV92ZXJ0YmFyIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCB2ZXJ0YmFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdmVydGNvbm5lY3RvciIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgdmVydGNvbm5lY3RvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3ZvaWNlZHNvdW5kIildCisr CQlwdWJsaWMgY29uc3QgdWludCB2b2ljZWRzb3VuZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Z0IildCisr CQlwdWJsaWMgY29uc3QgdWludCB2dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3ciKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IHc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV93YWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IHdhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3djaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29u c3QgdWludCB3Y2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3dkaWFlcmVzaXMiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IHdkaWFlcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV93Z3JhdmUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IHdncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3giKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IHg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV94YWJvdmVkb3QiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IHhhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3kiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IHk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV95YWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IHlhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3liZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgeWJlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfeWNpcmN1bWZsZXgiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IHljaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfeWRpYWVyZXNpcyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgeWRpYWVyZXNpczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3llbiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgeWVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfeWdyYXZlIildCisrCQlwdWJs aWMgY29uc3QgdWludCB5Z3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV95aG9vayIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgeWhvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV95dGlsZGUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IHl0aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3oiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IHo7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV96YWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IHphYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3phY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgemFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfemNhcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCB6Y2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV96ZXJvc3Vic2NyaXB0IildCisrCQlwdWJsaWMgY29u c3QgdWludCB6ZXJvc3Vic2NyaXB0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfemVyb3N1cGVyaW9yIildCisr CQlwdWJsaWMgY29uc3QgdWludCB6ZXJvc3VwZXJpb3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV96c3Ryb2tl IildCisrCQlwdWJsaWMgY29uc3QgdWludCB6c3Ryb2tlOworKwl9CisrCW5hbWVzcGFjZSBUaHJl YWRzIHsKKysJCW5hbWVzcGFjZSBJZGxlIHsKKysJCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJjbHV0dGVyX3RocmVhZHNfYWRkX2lkbGUi KV0KKysJCQlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCQkJcHVibGljIHN0YXRpYyB1aW50 IGFkZCAoR0xpYi5Tb3VyY2VGdW5jIGZ1bmMpOworKwkJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gImNsdXR0ZXJfdGhyZWFkc19hZGRfaWRs ZV9mdWxsIildCisrCQkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwkJCXB1YmxpYyBzdGF0 aWMgdWludCBhZGRfZnVsbCAoaW50IHByaW9yaXR5LCBvd25lZCBHTGliLlNvdXJjZUZ1bmMgZnVu Yyk7CisrCQl9CisrCQluYW1lc3BhY2UgVGltZW91dCB7CisrCQkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiY2x1dHRlcl90aHJlYWRzX2Fk ZF90aW1lb3V0IildCisrCQkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwkJCXB1YmxpYyBz dGF0aWMgdWludCBhZGQgKHVpbnQgaW50ZXJ2YWwsIEdMaWIuU291cmNlRnVuYyBmdW5jKTsKKysJ CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJjbHV0dGVyX3RocmVhZHNfYWRkX3RpbWVvdXRfZnVsbCIpXQorKwkJCVtWZXJzaW9uIChzaW5j ZSA9ICIwLjQiKV0KKysJCQlwdWJsaWMgc3RhdGljIHVpbnQgYWRkX2Z1bGwgKGludCBwcmlvcml0 eSwgdWludCBpbnRlcnZhbCwgb3duZWQgR0xpYi5Tb3VyY2VGdW5jIGZ1bmMpOworKwkJfQorKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgc3RhdGljIHVpbnQgYWRkX3JlcGFpbnRf ZnVuYyAob3duZWQgR0xpYi5Tb3VyY2VGdW5jIGZ1bmMpOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MCIpXQorKwkJcHVibGljIHN0YXRpYyB1aW50IGFkZF9yZXBhaW50X2Z1bmNfZnVsbCAoQ2x1dHRl ci5SZXBhaW50RmxhZ3MgZmxhZ3MsIG93bmVkIEdMaWIuU291cmNlRnVuYyBmdW5jKTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyB2b2lkIHJlbW92ZV9yZXBhaW50 X2Z1bmMgKHVpbnQgaGFuZGxlX2lkKTsKKysJfQorKwluYW1lc3BhY2UgVmFsdWUgeworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHN0YXRpYyBDbHV0dGVyLlBhaW50Tm9kZSBk dXBfcGFpbnRfbm9kZSAoR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgi KV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLkNvbG9yPyBnZXRfY29sb3IgKEdM aWIuVmFsdWUgdmFsdWUpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHN0 YXRpYyB1bm93bmVkIENsdXR0ZXIuUGFpbnROb2RlIGdldF9wYWludF9ub2RlIChHTGliLlZhbHVl IHZhbHVlKTsKKysJCVtDQ29kZSAoYXJyYXlfbGVuZ3RoX3BvcyA9IDEuMSwgYXJyYXlfbGVuZ3Ro X3R5cGUgPSAiZ3NpemUiLCBjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIild CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQg ZmxvYXRbXSBnZXRfc2hhZGVyX2Zsb2F0IChHTGliLlZhbHVlIHZhbHVlKTsKKysJCVtDQ29kZSAo YXJyYXlfbGVuZ3RoX3BvcyA9IDEuMSwgYXJyYXlfbGVuZ3RoX3R5cGUgPSAiZ3NpemUiLCBjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMC44IildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgaW50W10gZ2V0X3NoYWRlcl9pbnQg KEdMaWIuVmFsdWUgdmFsdWUpOworKwkJW0NDb2RlIChhcnJheV9sZW5ndGhfcG9zID0gMS4xLCBh cnJheV9sZW5ndGhfdHlwZSA9ICJnc2l6ZSIsIGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBzdGF0 aWMgdW5vd25lZCBmbG9hdFtdIGdldF9zaGFkZXJfbWF0cml4IChHTGliLlZhbHVlIHZhbHVlKTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIENsdXR0 ZXIuVW5pdHM/IGdldF91bml0cyAoR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIwLjgiKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBzZXRfY29sb3IgKEdMaWIuVmFsdWUgdmFs dWUsIENsdXR0ZXIuQ29sb3IgY29sb3IpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJ cHVibGljIHN0YXRpYyB2b2lkIHNldF9wYWludF9ub2RlIChHTGliLlZhbHVlIHZhbHVlLCBDbHV0 dGVyLlBhaW50Tm9kZT8gbm9kZSk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1Ymxp YyBzdGF0aWMgdm9pZCBzZXRfc2hhZGVyX2Zsb2F0IChHTGliLlZhbHVlIHZhbHVlLCBbQ0NvZGUg KGFycmF5X2xlbmd0aF9jbmFtZSA9ICJzaXplIiwgYXJyYXlfbGVuZ3RoX3BvcyA9IDEuNSldIGZs b2F0W10gZmxvYXRzKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHN0YXRp YyB2b2lkIHNldF9zaGFkZXJfaW50IChHTGliLlZhbHVlIHZhbHVlLCBbQ0NvZGUgKGFycmF5X2xl bmd0aF9jbmFtZSA9ICJzaXplIiwgYXJyYXlfbGVuZ3RoX3BvcyA9IDEuNSldIGludFtdIGludHMp OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQgc2V0X3No YWRlcl9tYXRyaXggKEdMaWIuVmFsdWUgdmFsdWUsIFtDQ29kZSAoYXJyYXlfbGVuZ3RoX2NuYW1l ID0gInNpemUiLCBhcnJheV9sZW5ndGhfcG9zID0gMS41KV0gZmxvYXRbXSBtYXRyaXgpOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQgc2V0X3VuaXRzIChH TGliLlZhbHVlIHZhbHVlLCBDbHV0dGVyLlVuaXRzIHVuaXRzKTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCB0YWtlX3BhaW50X25vZGUgKEdMaWIuVmFs dWUgdmFsdWUsIENsdXR0ZXIuUGFpbnROb2RlPyBub2RlKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfYWN0 aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGlj IGFic3RyYWN0IGNsYXNzIEFjdGlvbiA6IENsdXR0ZXIuQWN0b3JNZXRhIHsKKysJCVtDQ29kZSAo aGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBBY3Rpb24gKCk7 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg dHlwZV9pZCA9ICJjbHV0dGVyX2FjdG9yX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBB Y3RvciA6IEdMaWIuSW5pdGlhbGx5VW5vd25lZCwgQXRrLkltcGxlbWVudG9yLCBDbHV0dGVyLkFu aW1hdGFibGUsIENsdXR0ZXIuQ29udGFpbmVyLCBDbHV0dGVyLlNjcmlwdGFibGUgeworKwkJcHVi bGljIHVpbnQzMiBmbGFnczsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZh bHNlKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQWN0b3IgKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBhZGRfYWN0aW9u IChDbHV0dGVyLkFjdGlvbiBhY3Rpb24pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQor KwkJcHVibGljIHZvaWQgYWRkX2FjdGlvbl93aXRoX25hbWUgKHN0cmluZyBuYW1lLCBDbHV0dGVy LkFjdGlvbiBhY3Rpb24pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1Ymxp YyB2b2lkIGFkZF9jaGlsZCAoQ2x1dHRlci5BY3RvciBjaGlsZCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBhZGRfY29uc3RyYWludCAoQ2x1dHRlci5Db25z dHJhaW50IGNvbnN0cmFpbnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVi bGljIHZvaWQgYWRkX2NvbnN0cmFpbnRfd2l0aF9uYW1lIChzdHJpbmcgbmFtZSwgQ2x1dHRlci5D b25zdHJhaW50IGNvbnN0cmFpbnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJ cHVibGljIHZvaWQgYWRkX2VmZmVjdCAoQ2x1dHRlci5FZmZlY3QgZWZmZWN0KTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIGFkZF9lZmZlY3Rfd2l0aF9uYW1l IChzdHJpbmcgbmFtZSwgQ2x1dHRlci5FZmZlY3QgZWZmZWN0KTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBhZGRfdHJhbnNpdGlvbiAoc3RyaW5nIG5hbWUs IENsdXR0ZXIuVHJhbnNpdGlvbiB0cmFuc2l0aW9uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIw LjgiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgYWxsb2NhdGUgKENsdXR0ZXIuQWN0b3JCb3gg Ym94LCBDbHV0dGVyLkFsbG9jYXRpb25GbGFncyBmbGFncyk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBhbGxvY2F0ZV9hbGlnbl9maWxsIChDbHV0dGVyLkFj dG9yQm94IGJveCwgZG91YmxlIHhfYWxpZ24sIGRvdWJsZSB5X2FsaWduLCBib29sIHhfZmlsbCwg Ym9vbCB5X2ZpbGwsIENsdXR0ZXIuQWxsb2NhdGlvbkZsYWdzIGZsYWdzKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIGFsbG9jYXRlX2F2YWlsYWJsZV9zaXpl IChmbG9hdCB4LCBmbG9hdCB5LCBmbG9hdCBhdmFpbGFibGVfd2lkdGgsIGZsb2F0IGF2YWlsYWJs ZV9oZWlnaHQsIENsdXR0ZXIuQWxsb2NhdGlvbkZsYWdzIGZsYWdzKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2b2lkIGFsbG9jYXRlX3ByZWZlcnJlZF9zaXplIChD bHV0dGVyLkFsbG9jYXRpb25GbGFncyBmbGFncyk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9 IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVi bGljIHVub3duZWQgQ2x1dHRlci5BbmltYXRpb24gYW5pbWF0ZSAodWxvbmcgbW9kZSwgdWludCBk dXJhdGlvbiwgLi4uKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRl ZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0 dGVyLkFuaW1hdGlvbiBhbmltYXRlX3dpdGhfdGltZWxpbmUgKHVsb25nIG1vZGUsIENsdXR0ZXIu VGltZWxpbmUgdGltZWxpbmUsIC4uLik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisr CQlwdWJsaWMgdm9pZCBhcHBseV9yZWxhdGl2ZV90cmFuc2Zvcm1fdG9fcG9pbnQgKENsdXR0ZXIu QWN0b3I/IGFuY2VzdG9yLCBHcmFwaGVuZS5Qb2ludDNEIHBvaW50LCBvdXQgdW5vd25lZCBHcmFw aGVuZS5Qb2ludDNEIHZlcnRleCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwg dm9pZCBhcHBseV90cmFuc2Zvcm0gKHJlZiBDbHV0dGVyLk1hdHJpeCBtYXRyaXgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwkJcHVibGljIHZvaWQgYXBwbHlfdHJhbnNmb3JtX3Rv X3BvaW50IChHcmFwaGVuZS5Qb2ludDNEIHBvaW50LCBvdXQgdW5vd25lZCBHcmFwaGVuZS5Qb2lu dDNEIHZlcnRleCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yNCIpXQorKwkJcHVibGljIHZv aWQgYmluZF9tb2RlbCAoR0xpYi5MaXN0TW9kZWw/IG1vZGVsLCBvd25lZCBDbHV0dGVyLkFjdG9y Q3JlYXRlQ2hpbGRGdW5jIGNyZWF0ZV9jaGlsZF9mdW5jKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIGNsZWFyX2FjdGlvbnMgKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBjbGVhcl9jb25zdHJhaW50cyAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIGNsZWFyX2VmZmVjdHMg KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgYm9vbCBjb250YWlu cyAoQ2x1dHRlci5BY3RvciBkZXNjZW5kYW50KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgi KV0KKysJCXB1YmxpYyB2b2lkIGNvbnRpbnVlX3BhaW50IChDbHV0dGVyLlBhaW50Q29udGV4dCBw YWludF9jb250ZXh0KTsKKysJCXB1YmxpYyB2b2lkIGNvbnRpbnVlX3BpY2sgKENsdXR0ZXIuUGlj a0NvbnRleHQgcGlja19jb250ZXh0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJ CXB1YmxpYyBQYW5nby5Db250ZXh0IGNyZWF0ZV9wYW5nb19jb250ZXh0ICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIFBhbmdvLkxheW91dCBjcmVhdGVfcGFuZ29f bGF5b3V0IChzdHJpbmc/IHRleHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyB2b2lkIGRlc3Ryb3lfYWxsX2NoaWxkcmVuICgpOworKwkJW0NDb2RlIChjbmFtZSA9 ICJjbHV0dGVyX2FjdG9yX2V2ZW50IildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisr CQlwdWJsaWMgYm9vbCBlbWl0X2V2ZW50IChDbHV0dGVyLkV2ZW50IGV2ZW50LCBib29sIGNhcHR1 cmUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwkJcHVibGljIHZvaWQgZ2V0X2Fi c19hbGxvY2F0aW9uX3ZlcnRpY2VzIChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gR3Jh cGhlbmUuUG9pbnQzRCB2ZXJ0c1s0XSk7CisrCQlwdWJsaWMgdmlydHVhbCB1bm93bmVkIEF0ay5P YmplY3QgZ2V0X2FjY2Vzc2libGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisr CQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdGlvbiBnZXRfYWN0aW9uIChzdHJpbmcgbmFtZSk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgR0xpYi5MaXN0PHdlYWsg Q2x1dHRlci5BY3Rpb24+IGdldF9hY3Rpb25zICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAu OCIpXQorKwkJcHVibGljIENsdXR0ZXIuQWN0b3JCb3ggZ2V0X2FsbG9jYXRpb25fYm94ICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZvaWQgZ2V0X2FsbG9jYXRp b25fdmVydGljZXMgKENsdXR0ZXIuQWN0b3I/IGFuY2VzdG9yLCBbQ0NvZGUgKGFycmF5X2xlbmd0 aCA9IGZhbHNlKV0gR3JhcGhlbmUuUG9pbnQzRCB2ZXJ0c1s0XSk7CisrCQlbVmVyc2lvbiAoZGVw cmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMCIp XQorKwkJcHVibGljIENsdXR0ZXIuR3Jhdml0eSBnZXRfYW5jaG9yX3BvaW50X2dyYXZpdHkgKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENsdXR0ZXIuQ29sb3Ig Z2V0X2JhY2tncm91bmRfY29sb3IgKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfZ2V0 X2FjdG9yX2J5X2dpZCIpXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNh dGVkX3NpbmNlID0gIjEuOCIsIHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93 bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X2J5X2dpZCAodWludDMyIGlkXyk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfY2hp bGRfYXRfaW5kZXggKGludCBpbmRleF8pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0K KysJCXB1YmxpYyBDbHV0dGVyLk1hdHJpeCBnZXRfY2hpbGRfdHJhbnNmb3JtICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBHTGliLkxpc3Q8d2VhayBDbHV0dGVy LkFjdG9yPiBnZXRfY2hpbGRyZW4gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisr CQlwdWJsaWMgdm9pZCBnZXRfY2xpcCAob3V0IGZsb2F0IHhvZmYsIG91dCBmbG9hdCB5b2ZmLCBv dXQgZmxvYXQgd2lkdGgsIG91dCBmbG9hdCBoZWlnaHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuNCIpXQorKwkJcHVibGljIGJvb2wgZ2V0X2NsaXBfdG9fYWxsb2NhdGlvbiAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQ29uc3Ry YWludCBnZXRfY29uc3RyYWludCAoc3RyaW5nIG5hbWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuNCIpXQorKwkJcHVibGljIEdMaWIuTGlzdDx3ZWFrIENsdXR0ZXIuQ29uc3RyYWludD4gZ2V0 X2NvbnN0cmFpbnRzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1Ymxp YyB1bm93bmVkIENsdXR0ZXIuQ29udGVudCBnZXRfY29udGVudCAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvckJveCBnZXRfY29udGVudF9i b3ggKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENsdXR0ZXIu Q29udGVudEdyYXZpdHkgZ2V0X2NvbnRlbnRfZ3Jhdml0eSAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEyIildCisrCQlwdWJsaWMgQ2x1dHRlci5Db250ZW50UmVwZWF0IGdldF9jb250ZW50 X3JlcGVhdCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9p ZCBnZXRfY29udGVudF9zY2FsaW5nX2ZpbHRlcnMgKG91dCBDbHV0dGVyLlNjYWxpbmdGaWx0ZXIg bWluX2ZpbHRlciwgb3V0IENsdXR0ZXIuU2NhbGluZ0ZpbHRlciBtYWdfZmlsdGVyKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLlBhaW50 Vm9sdW1lIGdldF9kZWZhdWx0X3BhaW50X3ZvbHVtZSAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNh dGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgZmxvYXQg Z2V0X2RlcHRoICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1 aW50IGdldF9lYXNpbmdfZGVsYXkgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQor KwkJcHVibGljIHVpbnQgZ2V0X2Vhc2luZ19kdXJhdGlvbiAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ2x1dHRlci5BbmltYXRpb25Nb2RlIGdldF9lYXNpbmdf bW9kZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB1bm93bmVk IENsdXR0ZXIuRWZmZWN0IGdldF9lZmZlY3QgKHN0cmluZyBuYW1lKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBHTGliLkxpc3Q8d2VhayBDbHV0dGVyLkVmZmVjdD4g Z2V0X2VmZmVjdHMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfZmlyc3RfY2hpbGQgKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgYm9vbCBnZXRfZml4ZWRfcG9zaXRpb25fc2V0ICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIENsdXR0ZXIuQWN0b3JG bGFncyBnZXRfZmxhZ3MgKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfYWN0b3JfaGFz X3BvaW50ZXIiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBib29s IGdldF9oYXNfcG9pbnRlciAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfaGVpZ2h0ICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0 b3IgZ2V0X2xhc3RfY2hpbGQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJ cHVibGljIHVub3duZWQgQ2x1dHRlci5MYXlvdXRNYW5hZ2VyIGdldF9sYXlvdXRfbWFuYWdlciAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBnZXRfbWFy Z2luIChDbHV0dGVyLk1hcmdpbiBtYXJnaW4pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAi KV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfbWFyZ2luX2JvdHRvbSAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X21hcmdpbl9sZWZ0ICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfbWFyZ2luX3Jp Z2h0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBmbG9hdCBn ZXRfbWFyZ2luX3RvcCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJs aWMgaW50IGdldF9uX2NoaWxkcmVuICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9u YW1lICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1bm93bmVk IENsdXR0ZXIuQWN0b3IgZ2V0X25leHRfc2libGluZyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjgiKV0KKysJCXB1YmxpYyBDbHV0dGVyLk9mZnNjcmVlblJlZGlyZWN0IGdldF9vZmZzY3Jl ZW5fcmVkaXJlY3QgKCk7CisrCQlwdWJsaWMgdWludDggZ2V0X29wYWNpdHkgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4yMiIpXQorKwkJcHVibGljIGludCBnZXRfb3BhY2l0eV9vdmVycmlk ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBib29sIGdldF9w YWludF9ib3ggKG91dCBDbHV0dGVyLkFjdG9yQm94IGJveCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMC44IildCisrCQlwdWJsaWMgdWludDggZ2V0X3BhaW50X29wYWNpdHkgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgYm9vbCBnZXRfcGFpbnRfdmlzaWJpbGl0 eSAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCBib29sIGdldF9wYWludF92 b2x1bWUgKENsdXR0ZXIuUGFpbnRWb2x1bWUgdm9sdW1lKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIFBhbmdvLkNvbnRleHQgZ2V0X3BhbmdvX2NvbnRl eHQgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yPyBnZXRfcGFyZW50ICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9waXZvdF9w b2ludCAob3V0IGZsb2F0IHBpdm90X3gsIG91dCBmbG9hdCBwaXZvdF95KTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3Bpdm90X3BvaW50X3ogKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdm9pZCBnZXRfcG9zaXRp b24gKG91dCBmbG9hdCB4LCBvdXQgZmxvYXQgeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44 IildCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGdldF9wcmVmZXJyZWRfaGVpZ2h0IChmbG9hdCBm b3Jfd2lkdGgsIG91dCBmbG9hdCBtaW5faGVpZ2h0X3AsIG91dCBmbG9hdCBuYXR1cmFsX2hlaWdo dF9wKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9w cmVmZXJyZWRfc2l6ZSAob3V0IGZsb2F0IG1pbl93aWR0aF9wLCBvdXQgZmxvYXQgbWluX2hlaWdo dF9wLCBvdXQgZmxvYXQgbmF0dXJhbF93aWR0aF9wLCBvdXQgZmxvYXQgbmF0dXJhbF9oZWlnaHRf cCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdmlydHVhbCB2b2lk IGdldF9wcmVmZXJyZWRfd2lkdGggKGZsb2F0IGZvcl9oZWlnaHQsIG91dCBmbG9hdCBtaW5fd2lk dGhfcCwgb3V0IGZsb2F0IG5hdHVyYWxfd2lkdGhfcCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfcHJldmlvdXNfc2li bGluZyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBib29sIGdl dF9yZWFjdGl2ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBD bHV0dGVyLlJlcXVlc3RNb2RlIGdldF9yZXF1ZXN0X21vZGUgKCk7CisrCQlwdWJsaWMgYm9vbCBn ZXRfcmVzb3VyY2Vfc2NhbGUgKG91dCBmbG9hdCByZXNvdXJjZV9zY2FsZSk7CisrCQlbVmVyc2lv biAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0g IjAuOCIpXQorKwkJcHVibGljIGRvdWJsZSBnZXRfcm90YXRpb24gKENsdXR0ZXIuUm90YXRlQXhp cyBheGlzLCBvdXQgZmxvYXQgeCwgb3V0IGZsb2F0IHksIG91dCBmbG9hdCB6KTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgZG91YmxlIGdldF9yb3RhdGlvbl9hbmds ZSAoQ2x1dHRlci5Sb3RhdGVBeGlzIGF4aXMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIp XQorKwkJcHVibGljIHZvaWQgZ2V0X3NjYWxlIChvdXQgZG91YmxlIHNjYWxlX3gsIG91dCBkb3Vi bGUgc2NhbGVfeSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRf c2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgZ2V0X3NjYWxl X2NlbnRlciAob3V0IGZsb2F0IGNlbnRlcl94LCBvdXQgZmxvYXQgY2VudGVyX3kpOworKwkJW1Zl cnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5j ZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkdyYXZpdHkgZ2V0X3NjYWxlX2dyYXZpdHkg KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGRvdWJsZSBnZXRf c2NhbGVfeiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyB2b2lk IGdldF9zaXplIChvdXQgZmxvYXQgd2lkdGgsIG91dCBmbG9hdCBoZWlnaHQpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5TdGFnZSBnZXRf c3RhZ2UgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgQ2x1dHRl ci5UZXh0RGlyZWN0aW9uIGdldF90ZXh0X2RpcmVjdGlvbiAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEyIildCisrCQlwdWJsaWMgQ2x1dHRlci5NYXRyaXggZ2V0X3RyYW5zZm9ybSAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIu UGFpbnRWb2x1bWUgZ2V0X3RyYW5zZm9ybWVkX3BhaW50X3ZvbHVtZSAoQ2x1dHRlci5BY3RvciBy ZWxhdGl2ZV90b19hbmNlc3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlw dWJsaWMgdm9pZCBnZXRfdHJhbnNmb3JtZWRfcG9zaXRpb24gKG91dCBmbG9hdCB4LCBvdXQgZmxv YXQgeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdm9pZCBnZXRf dHJhbnNmb3JtZWRfc2l6ZSAob3V0IGZsb2F0IHdpZHRoLCBvdXQgZmxvYXQgaGVpZ2h0KTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLlRy YW5zaXRpb24gZ2V0X3RyYW5zaXRpb24gKHN0cmluZyBuYW1lKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBnZXRfdHJhbnNsYXRpb24gKG91dCBmbG9hdCB0 cmFuc2xhdGVfeCwgb3V0IGZsb2F0IHRyYW5zbGF0ZV95LCBvdXQgZmxvYXQgdHJhbnNsYXRlX3op OworKwkJcHVibGljIGZsb2F0IGdldF93aWR0aCAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfeCAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ2x1dHRlci5BY3Rv ckFsaWduIGdldF94X2FsaWduICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJ CXB1YmxpYyBib29sIGdldF94X2V4cGFuZCAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfeSAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvckFs aWduIGdldF95X2FsaWduICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1 YmxpYyBib29sIGdldF95X2V4cGFuZCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIild CisrCQlwdWJsaWMgZmxvYXQgZ2V0X3pfcG9zaXRpb24gKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVj YXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMCIpXQor KwkJcHVibGljIENsdXR0ZXIuR3Jhdml0eSBnZXRfel9yb3RhdGlvbl9ncmF2aXR5ICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgZ3JhYl9rZXlfZm9jdXMg KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGJvb2wgaGFzX2Fj dGlvbnMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgYm9vbCBo YXNfYWxsb2NhdGlvbiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJs aWMgYm9vbCBoYXNfY29uc3RyYWludHMgKCk7CisrCQlwdWJsaWMgYm9vbCBoYXNfZGFtYWdlICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBib29sIGhhc19lZmZl Y3RzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIGJvb2wgaGFz X2tleV9mb2N1cyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2IildCisrCQlwdWJsaWMg Ym9vbCBoYXNfbWFwcGVkX2Nsb25lcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0K KysJCXB1YmxpYyB2aXJ0dWFsIGJvb2wgaGFzX292ZXJsYXBzICgpOworKwkJW05vV3JhcHBlcl0K KysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgaGlkZV9hbGwgKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgaW5zZXJ0X2NoaWxkX2Fib3ZlIChDbHV0dGVyLkFj dG9yIGNoaWxkLCBDbHV0dGVyLkFjdG9yPyBzaWJsaW5nKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBpbnNlcnRfY2hpbGRfYXRfaW5kZXggKENsdXR0ZXIu QWN0b3IgY2hpbGQsIGludCBpbmRleF8pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0K KysJCXB1YmxpYyB2b2lkIGluc2VydF9jaGlsZF9iZWxvdyAoQ2x1dHRlci5BY3RvciBjaGlsZCwg Q2x1dHRlci5BY3Rvcj8gc2libGluZyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisr CQlwdWJsaWMgYm9vbCBpc19pbl9jbG9uZV9wYWludCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjI0IildCisrCQlwdWJsaWMgYm9vbCBpc19tYXBwZWQgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4yNCIpXQorKwkJcHVibGljIGJvb2wgaXNfcmVhbGl6ZWQgKCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgYm9vbCBpc19yb3RhdGVkICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIGJvb2wgaXNfc2NhbGVkICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMjQiKV0KKysJCXB1YmxpYyBib29sIGlzX3Zpc2libGUgKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIG1h cCAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9 ICIxLjEyIiwgc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdm9pZCBtb3ZlX2FuY2hvcl9wb2lu dCAoZmxvYXQgYW5jaG9yX3gsIGZsb2F0IGFuY2hvcl95KTsKKysJCVtWZXJzaW9uIChkZXByZWNh dGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMC42IildCisr CQlwdWJsaWMgdm9pZCBtb3ZlX2FuY2hvcl9wb2ludF9mcm9tX2dyYXZpdHkgKENsdXR0ZXIuR3Jh dml0eSBncmF2aXR5KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyB2 b2lkIG1vdmVfYnkgKGZsb2F0IGR4LCBmbG9hdCBkeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMiIpXQorKwkJcHVibGljIGJvb2wgbmVlZHNfZXhwYW5kIChDbHV0dGVyLk9yaWVudGF0aW9u IG9yaWVudGF0aW9uKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHBh aW50X25vZGUgKENsdXR0ZXIuUGFpbnROb2RlIHJvb3QpOworKwkJcHVibGljIHZvaWQgcGlja19i b3ggKENsdXR0ZXIuUGlja0NvbnRleHQgcGlja19jb250ZXh0LCBDbHV0dGVyLkFjdG9yQm94IGJv eCk7CisrCQlwdWJsaWMgdm9pZCBwb3BfaW50ZXJuYWwgKCk7CisrCQlwdWJsaWMgdm9pZCBwdXNo X2ludGVybmFsICgpOworKwkJcHVibGljIHZvaWQgcXVldWVfcmVkcmF3ICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHF1ZXVlX3JlZHJhd193aXRoX2Ns aXAgKENhaXJvLlJlY3RhbmdsZUludD8gY2xpcCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40 IildCisrCQlwdWJsaWMgdm9pZCByZW1vdmVfYWN0aW9uIChDbHV0dGVyLkFjdGlvbiBhY3Rpb24p OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgcmVtb3ZlX2Fj dGlvbl9ieV9uYW1lIChzdHJpbmcgbmFtZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIp XQorKwkJcHVibGljIHZvaWQgcmVtb3ZlX2FsbF9jaGlsZHJlbiAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCByZW1vdmVfYWxsX3RyYW5zaXRpb25zICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHJlbW92ZV9j aGlsZCAoQ2x1dHRlci5BY3RvciBjaGlsZCk7CisrCQlwdWJsaWMgdm9pZCByZW1vdmVfY2xpcCAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHJlbW92ZV9j b25zdHJhaW50IChDbHV0dGVyLkNvbnN0cmFpbnQgY29uc3RyYWludCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCByZW1vdmVfY29uc3RyYWludF9ieV9uYW1l IChzdHJpbmcgbmFtZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMg dm9pZCByZW1vdmVfZWZmZWN0IChDbHV0dGVyLkVmZmVjdCBlZmZlY3QpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgcmVtb3ZlX2VmZmVjdF9ieV9uYW1lIChz dHJpbmcgbmFtZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZv aWQgcmVtb3ZlX3RyYW5zaXRpb24gKHN0cmluZyBuYW1lKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCByZXBsYWNlX2NoaWxkIChDbHV0dGVyLkFjdG9yIG9s ZF9jaGlsZCwgQ2x1dHRlci5BY3RvciBuZXdfY2hpbGQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHJlc3RvcmVfZWFzaW5nX3N0YXRlICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNhdmVfZWFzaW5nX3N0YXRl ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9h bGxvY2F0aW9uIChDbHV0dGVyLkFjdG9yQm94IGJveCwgQ2x1dHRlci5BbGxvY2F0aW9uRmxhZ3Mg ZmxhZ3MpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNl ID0gIjEuMTIiLCBzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9hbmNob3JfcG9p bnQgKGZsb2F0IGFuY2hvcl94LCBmbG9hdCBhbmNob3JfeSk7CisrCQlbVmVyc2lvbiAoZGVwcmVj YXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjAuNiIpXQor KwkJcHVibGljIHZvaWQgc2V0X2FuY2hvcl9wb2ludF9mcm9tX2dyYXZpdHkgKENsdXR0ZXIuR3Jh dml0eSBncmF2aXR5KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMg dm9pZCBzZXRfYmFja2dyb3VuZF9jb2xvciAoQ2x1dHRlci5Db2xvcj8gY29sb3IpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9jaGlsZF9hYm92ZV9z aWJsaW5nIChDbHV0dGVyLkFjdG9yIGNoaWxkLCBDbHV0dGVyLkFjdG9yPyBzaWJsaW5nKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfY2hpbGRfYXRf aW5kZXggKENsdXR0ZXIuQWN0b3IgY2hpbGQsIGludCBpbmRleF8pOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9jaGlsZF9iZWxvd19zaWJsaW5nIChD bHV0dGVyLkFjdG9yIGNoaWxkLCBDbHV0dGVyLkFjdG9yPyBzaWJsaW5nKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBzZXRfY2hpbGRfdHJhbnNmb3JtIChD bHV0dGVyLk1hdHJpeD8gdHJhbnNmb3JtKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0K KysJCXB1YmxpYyB2b2lkIHNldF9jbGlwIChmbG9hdCB4b2ZmLCBmbG9hdCB5b2ZmLCBmbG9hdCB3 aWR0aCwgZmxvYXQgaGVpZ2h0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1 YmxpYyB2b2lkIHNldF9jbGlwX3RvX2FsbG9jYXRpb24gKGJvb2wgY2xpcF9zZXQpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9jb250ZW50IChDbHV0 dGVyLkNvbnRlbnQ/IGNvbnRlbnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyB2b2lkIHNldF9jb250ZW50X2dyYXZpdHkgKENsdXR0ZXIuQ29udGVudEdyYXZpdHkg Z3Jhdml0eSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQg c2V0X2NvbnRlbnRfcmVwZWF0IChDbHV0dGVyLkNvbnRlbnRSZXBlYXQgcmVwZWF0KTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfY29udGVudF9zY2Fs aW5nX2ZpbHRlcnMgKENsdXR0ZXIuU2NhbGluZ0ZpbHRlciBtaW5fZmlsdGVyLCBDbHV0dGVyLlNj YWxpbmdGaWx0ZXIgbWFnX2ZpbHRlcik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUs IGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2RlcHRoIChm bG9hdCBkZXB0aCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZv aWQgc2V0X2Vhc2luZ19kZWxheSAodWludCBtc2Vjcyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2Vhc2luZ19kdXJhdGlvbiAodWludCBtc2Vjcyk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2Vhc2lu Z19tb2RlIChDbHV0dGVyLkFuaW1hdGlvbk1vZGUgbW9kZSk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMC44IildCisrCQlwdWJsaWMgdm9pZCBzZXRfZml4ZWRfcG9zaXRpb25fc2V0IChib29sIGlz X3NldCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRf ZmxhZ3MgKENsdXR0ZXIuQWN0b3JGbGFncyBmbGFncyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MC4yIildCisrCQlwdWJsaWMgdm9pZCBzZXRfaGVpZ2h0IChmbG9hdCBoZWlnaHQpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9sYXlvdXRfbWFuYWdl ciAoQ2x1dHRlci5MYXlvdXRNYW5hZ2VyPyBtYW5hZ2VyKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbWFyZ2luIChDbHV0dGVyLk1hcmdpbiBtYXJn aW4pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9t YXJnaW5fYm90dG9tIChmbG9hdCBtYXJnaW4pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAi KV0KKysJCXB1YmxpYyB2b2lkIHNldF9tYXJnaW5fbGVmdCAoZmxvYXQgbWFyZ2luKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbWFyZ2luX3JpZ2h0 IChmbG9hdCBtYXJnaW4pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1Ymxp YyB2b2lkIHNldF9tYXJnaW5fdG9wIChmbG9hdCBtYXJnaW4pOworKwkJcHVibGljIHZvaWQgc2V0 X25hbWUgKHN0cmluZyBuYW1lKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1 YmxpYyB2b2lkIHNldF9vZmZzY3JlZW5fcmVkaXJlY3QgKENsdXR0ZXIuT2Zmc2NyZWVuUmVkaXJl Y3QgcmVkaXJlY3QpOworKwkJcHVibGljIHZvaWQgc2V0X29wYWNpdHkgKHVpbnQ4IG9wYWNpdHkp OworKwkJcHVibGljIHZvaWQgc2V0X29wYWNpdHlfb3ZlcnJpZGUgKGludCBvcGFjaXR5KTsKKysJ CVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIild CisrCQlwdWJsaWMgdm9pZCBzZXRfcGFyZW50IChDbHV0dGVyLkFjdG9yIHBhcmVudCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3Bpdm90X3BvaW50 IChmbG9hdCBwaXZvdF94LCBmbG9hdCBwaXZvdF95KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEyIildCisrCQlwdWJsaWMgdm9pZCBzZXRfcGl2b3RfcG9pbnRfeiAoZmxvYXQgcGl2b3Rfeik7 CisrCQlwdWJsaWMgdm9pZCBzZXRfcG9zaXRpb24gKGZsb2F0IHgsIGZsb2F0IHkpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3JlYWN0aXZlIChib29s IHJlYWN0aXZlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lk IHNldF9yZXF1ZXN0X21vZGUgKENsdXR0ZXIuUmVxdWVzdE1vZGUgbW9kZSk7CisrCQlbVmVyc2lv biAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0g IjAuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3JvdGF0aW9uIChDbHV0dGVyLlJvdGF0ZUF4aXMg YXhpcywgZG91YmxlIGFuZ2xlLCBmbG9hdCB4LCBmbG9hdCB5LCBmbG9hdCB6KTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBzZXRfcm90YXRpb25fYW5nbGUg KENsdXR0ZXIuUm90YXRlQXhpcyBheGlzLCBkb3VibGUgYW5nbGUpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjAuMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3NjYWxlIChkb3VibGUgc2NhbGVfeCwg ZG91YmxlIHNjYWxlX3kpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNh dGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9z Y2FsZV9mdWxsIChkb3VibGUgc2NhbGVfeCwgZG91YmxlIHNjYWxlX3ksIGZsb2F0IGNlbnRlcl94 LCBmbG9hdCBjZW50ZXJfeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVi bGljIHZvaWQgc2V0X3NjYWxlX3ogKGRvdWJsZSBzY2FsZV96KTsKKysJCXB1YmxpYyB2b2lkIHNl dF9zaXplIChmbG9hdCB3aWR0aCwgZmxvYXQgaGVpZ2h0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF90ZXh0X2RpcmVjdGlvbiAoQ2x1dHRlci5UZXh0 RGlyZWN0aW9uIHRleHRfZGlyKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlw dWJsaWMgdm9pZCBzZXRfdHJhbnNmb3JtIChDbHV0dGVyLk1hdHJpeD8gdHJhbnNmb3JtKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBzZXRfdHJhbnNsYXRp b24gKGZsb2F0IHRyYW5zbGF0ZV94LCBmbG9hdCB0cmFuc2xhdGVfeSwgZmxvYXQgdHJhbnNsYXRl X3opOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3dp ZHRoIChmbG9hdCB3aWR0aCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJs aWMgdm9pZCBzZXRfeCAoZmxvYXQgeCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQor KwkJcHVibGljIHZvaWQgc2V0X3hfYWxpZ24gKENsdXR0ZXIuQWN0b3JBbGlnbiB4X2FsaWduKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBzZXRfeF9leHBh bmQgKGJvb2wgZXhwYW5kKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1Ymxp YyB2b2lkIHNldF95IChmbG9hdCB5KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisr CQlwdWJsaWMgdm9pZCBzZXRfeV9hbGlnbiAoQ2x1dHRlci5BY3RvckFsaWduIHlfYWxpZ24pOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF95X2V4cGFu ZCAoYm9vbCBleHBhbmQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1Ymxp YyB2b2lkIHNldF96X3Bvc2l0aW9uIChmbG9hdCB6X3Bvc2l0aW9uKTsKKysJCVtWZXJzaW9uIChk ZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgdm9pZCBzZXRfel9yb3RhdGlvbl9mcm9tX2dyYXZpdHkgKGRvdWJsZSBh bmdsZSwgQ2x1dHRlci5HcmF2aXR5IGdyYXZpdHkpOworKwkJcHVibGljIGJvb2wgc2hvdWxkX3Bp Y2tfcGFpbnQgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRf c2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBz aG93X2FsbCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBib29s IHRyYW5zZm9ybV9zdGFnZV9wb2ludCAoZmxvYXQgeCwgZmxvYXQgeSwgb3V0IGZsb2F0IHhfb3V0 LCBvdXQgZmxvYXQgeV9vdXQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVi bGljIHZpcnR1YWwgdm9pZCB1bm1hcCAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1 ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMC4yIildCisrCQlwdWJsaWMg dm9pZCB1bnBhcmVudCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1Ymxp YyB2b2lkIHVuc2V0X2ZsYWdzIChDbHV0dGVyLkFjdG9yRmxhZ3MgZmxhZ3MpOworKwkJW05vQWNj ZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgQ2x1 dHRlci5BY3Rpb24gYWN0aW9ucyB7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvckJveCBhbGxv Y2F0aW9uIHsgb3duZWQgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9u IChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAi MS4wIildCisrCQlwdWJsaWMgQ2x1dHRlci5HcmF2aXR5IGFuY2hvcl9ncmF2aXR5IHsgZ2V0OyBz ZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0 cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIwLjgiKV0KKysJCXB1Ymxp YyBmbG9hdCBhbmNob3JfeCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJ CVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwg c2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgZmxvYXQgYW5jaG9yX3kgeyBnZXQ7IHNldDsgfQor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIGJh Y2tncm91bmRfY29sb3IgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGJvb2wgYmFja2dyb3VuZF9jb2xv cl9zZXQgeyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTIiKV0KKysJCXB1YmxpYyBib29sIGNoaWxkX3RyYW5zZm9ybV9zZXQgeyBnZXQ7IH0K KysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJ CXB1YmxpYyBHcmFwaGVuZS5SZWN0IGNsaXBfcmVjdCB7IG93bmVkIGdldDsgc2V0OyB9CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgYm9vbCBjbGlwX3RvX2FsbG9jYXRp b24geyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS40IildCisrCQlwdWJsaWMgQ2x1dHRlci5Db25zdHJhaW50IGNvbnN0cmFpbnRzIHsg c2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENsdXR0ZXIu Q29udGVudCBjb250ZW50IHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEw IildCisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvckJveCBjb250ZW50X2JveCB7IGdldDsgfQorKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbnRlbnRHcmF2 aXR5IGNvbnRlbnRfZ3Jhdml0eSB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMiIpXQorKwkJcHVibGljIENsdXR0ZXIuQ29udGVudFJlcGVhdCBjb250ZW50X3JlcGVhdCB7 IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRf c2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIGZsb2F0IGRlcHRoIHsg Z2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuNCIpXQorKwkJcHVibGljIENsdXR0ZXIuRWZmZWN0IGVmZmVjdCB7IHNldDsgfQorKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFjdG9yIGZpcnN0X2No aWxkIHsgZ2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgYm9v bCBmaXhlZF9wb3NpdGlvbl9zZXQgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2Rd CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgZmxvYXQgZml4ZWRfeCB7 IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIwLjgiKV0KKysJCXB1YmxpYyBmbG9hdCBmaXhlZF95IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0Fj Y2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wgaGFzX2NsaXAgeyBnZXQ7IH0KKysJCVtOb0Fj Y2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIGJv b2wgaGFzX3BvaW50ZXIgeyBnZXQ7IH0KKysJCXB1YmxpYyBmbG9hdCBoZWlnaHQgeyBnZXQ7IHNl dDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFj dG9yIGxhc3RfY2hpbGQgeyBnZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisr CQlwdWJsaWMgQ2x1dHRlci5MYXlvdXRNYW5hZ2VyIGxheW91dF9tYW5hZ2VyIHsgZ2V0OyBzZXQ7 IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIENsdXR0ZXIuU2NhbGluZ0ZpbHRl ciBtYWduaWZpY2F0aW9uX2ZpbHRlciB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhv ZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBib29sIG1hcHBlZCB7 IGdldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBmbG9hdCBt YXJnaW5fYm90dG9tIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIild CisrCQlwdWJsaWMgZmxvYXQgbWFyZ2luX2xlZnQgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBmbG9hdCBtYXJnaW5fcmlnaHQgeyBnZXQ7IHNl dDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBmbG9hdCBtYXJn aW5fdG9wIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24g KHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIGZsb2F0IG1pbl9oZWlnaHQgeyBnZXQ7IHNldDsg fQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisr CQlwdWJsaWMgYm9vbCBtaW5faGVpZ2h0X3NldCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nv ck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBmbG9hdCBt aW5fd2lkdGggeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lv biAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgYm9vbCBtaW5fd2lkdGhfc2V0IHsgZ2V0OyBz ZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIENsdXR0ZXIuU2NhbGluZ0Zp bHRlciBtaW5pZmljYXRpb25fZmlsdGVyIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIwLjIiKV0KKysJCXB1YmxpYyBzdHJpbmcgbmFtZSB7IGdldDsgc2V0OyB9CisrCQlbTm9B Y2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBm bG9hdCBuYXR1cmFsX2hlaWdodCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0K KysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBib29sIG5hdHVyYWxfaGVp Z2h0X3NldCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9u IChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBmbG9hdCBuYXR1cmFsX3dpZHRoIHsgZ2V0OyBz ZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIp XQorKwkJcHVibGljIGJvb2wgbmF0dXJhbF93aWR0aF9zZXQgeyBnZXQ7IHNldDsgfQorKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIENsdXR0ZXIuT2Zmc2NyZWVuUmVkaXJl Y3Qgb2Zmc2NyZWVuX3JlZGlyZWN0IHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyB1aW50IG9wYWNp dHkgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMiIpXQorKwkJcHVibGljIEdyYXBoZW5lLlBvaW50IHBpdm90X3BvaW50IHsgb3du ZWQgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMg ZmxvYXQgcGl2b3RfcG9pbnRfeiB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0K KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQg cG9zaXRpb24geyBvd25lZCBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIp XQorKwkJcHVibGljIGJvb2wgcmVhY3RpdmUgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JN ZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgYm9vbCByZWFs aXplZCB7IGdldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIENs dXR0ZXIuUmVxdWVzdE1vZGUgcmVxdWVzdF9tb2RlIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vz c29yTWV0aG9kXQorKwkJcHVibGljIGZsb2F0IHJlc291cmNlX3NjYWxlIHsgZ2V0OyB9CisrCQlb Tm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1Ymxp YyBkb3VibGUgcm90YXRpb25fYW5nbGVfeCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1l dGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBkb3VibGUgcm90 YXRpb25fYW5nbGVfeSB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBkb3VibGUgcm90YXRpb25fYW5nbGVf eiB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChkZXBy ZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMC42Iild CisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQzRCByb3RhdGlvbl9jZW50ZXJfeCB7IG93bmVkIGdl dDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVk ID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMC42IildCisrCQlw dWJsaWMgR3JhcGhlbmUuUG9pbnQzRCByb3RhdGlvbl9jZW50ZXJfeSB7IG93bmVkIGdldDsgc2V0 OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1 ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMg R3JhcGhlbmUuUG9pbnQzRCByb3RhdGlvbl9jZW50ZXJfeiB7IG93bmVkIGdldDsgc2V0OyB9Cisr CQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVw cmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgQ2x1dHRl ci5HcmF2aXR5IHJvdGF0aW9uX2NlbnRlcl96X2dyYXZpdHkgeyBnZXQ7IHNldDsgfQorKwkJW05v QWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0 ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IHNjYWxl X2NlbnRlcl94IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNp b24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9 ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBzY2FsZV9jZW50ZXJfeSB7IGdldDsgc2V0OyB9Cisr CQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVw cmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgQ2x1dHRl ci5HcmF2aXR5IHNjYWxlX2dyYXZpdHkgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRo b2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgZG91YmxlIHNjYWxl X3ggeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMC42IildCisrCQlwdWJsaWMgZG91YmxlIHNjYWxlX3kgeyBnZXQ7IHNldDsgfQorKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBkb3VibGUgc2NhbGVfeiB7IGdl dDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIw LjgiKV0KKysJCXB1YmxpYyBib29sIHNob3dfb25fc2V0X3BhcmVudCB7IGdldDsgc2V0OyB9Cisr CQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlw dWJsaWMgR3JhcGhlbmUuU2l6ZSBzaXplIHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLlRleHREaXJlY3Rpb24gdGV4dF9k aXJlY3Rpb24geyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGJvb2wgdHJhbnNmb3JtX3NldCB7IGdldDsg fQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQor KwkJcHVibGljIGZsb2F0IHRyYW5zbGF0aW9uX3ggeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNz b3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGZsb2F0 IHRyYW5zbGF0aW9uX3kgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGZsb2F0IHRyYW5zbGF0aW9uX3og eyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9vbCB2aXNp YmxlIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBmbG9hdCB3aWR0aCB7IGdldDsgc2V0OyB9Cisr CQlwdWJsaWMgZmxvYXQgeCB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MCIpXQorKwkJcHVibGljIENsdXR0ZXIuQWN0b3JBbGlnbiB4X2FsaWduIHsgZ2V0OyBzZXQ7IH0K KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgYm9vbCB4X2V4cGFuZCB7 IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgZmxvYXQgeSB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENsdXR0ZXIuQWN0b3JBbGlnbiB5X2FsaWdu IHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMg Ym9vbCB5X2V4cGFuZCB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIp XQorKwkJcHVibGljIGZsb2F0IHpfcG9zaXRpb24geyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHNpZ25hbCB2b2lkIGFsbG9jYXRpb25fY2hhbmdl ZCAoQ2x1dHRlci5BY3RvckJveCBib3gsIENsdXR0ZXIuQWxsb2NhdGlvbkZsYWdzIGZsYWdzKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCBi b29sIGJ1dHRvbl9wcmVzc19ldmVudCAoQ2x1dHRlci5CdXR0b25FdmVudCBldmVudCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCBi dXR0b25fcmVsZWFzZV9ldmVudCAoQ2x1dHRlci5CdXR0b25FdmVudCBldmVudCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCBjYXB0 dXJlZF9ldmVudCAoQ2x1dHRlci5FdmVudCBldmVudCk7CisrCQlbSGFzRW1pdHRlcl0KKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGRl c3Ryb3kgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdmlydHVh bCBzaWduYWwgYm9vbCBlbnRlcl9ldmVudCAoQ2x1dHRlci5Dcm9zc2luZ0V2ZW50IGV2ZW50KTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCBi b29sIGV2ZW50IChDbHV0dGVyLkV2ZW50IGV2ZW50KTsKKysJCVtIYXNFbWl0dGVyXQorKwkJW1Zl cnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgaGlk ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNp Z25hbCB2b2lkIGtleV9mb2N1c19pbiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0K KysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGtleV9mb2N1c19vdXQgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCBrZXlf cHJlc3NfZXZlbnQgKENsdXR0ZXIuS2V5RXZlbnQgZXZlbnQpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjAuNiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIGJvb2wga2V5X3JlbGVhc2VfZXZl bnQgKENsdXR0ZXIuS2V5RXZlbnQgZXZlbnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIp XQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIGJvb2wgbGVhdmVfZXZlbnQgKENsdXR0ZXIuQ3Jv c3NpbmdFdmVudCBldmVudCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJs aWMgdmlydHVhbCBzaWduYWwgYm9vbCBtb3Rpb25fZXZlbnQgKENsdXR0ZXIuTW90aW9uRXZlbnQg ZXZlbnQpOworKwkJW0hhc0VtaXR0ZXJdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUs IGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZp cnR1YWwgc2lnbmFsIHZvaWQgcGFpbnQgKENsdXR0ZXIuUGFpbnRDb250ZXh0IHBhaW50X2NvbnRl eHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2ln bmFsIHZvaWQgcGFyZW50X3NldCAoQ2x1dHRlci5BY3Rvcj8gb2xkX3BhcmVudCk7CisrCQlbSGFz RW1pdHRlcl0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2aXJ0dWFs IHNpZ25hbCB2b2lkIHBpY2sgKENsdXR0ZXIuUGlja0NvbnRleHQgcGlja19jb250ZXh0KTsKKysJ CVtIYXNFbWl0dGVyXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZp cnR1YWwgc2lnbmFsIHZvaWQgcXVldWVfcmVsYXlvdXQgKCk7CisrCQlbSGFzRW1pdHRlcl0KKysJ CVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2Iiwg c2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCByZWFsaXplICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFs IGJvb2wgc2Nyb2xsX2V2ZW50IChDbHV0dGVyLlNjcm9sbEV2ZW50IGV2ZW50KTsKKysJCVtIYXNF bWl0dGVyXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIHZpcnR1YWwg c2lnbmFsIHZvaWQgc2hvdyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlw dWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCB0b3VjaF9ldmVudCAoQ2x1dHRlci5FdmVudCBldmVu dCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHNpZ25hbCB2b2lk IHRyYW5zaXRpb25fc3RvcHBlZCAoc3RyaW5nIG5hbWUsIGJvb2wgaXNfZmluaXNoZWQpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCB0cmFuc2l0 aW9uc19jb21wbGV0ZWQgKCk7CisrCQlbSGFzRW1pdHRlcl0KKysJCVtWZXJzaW9uIChkZXByZWNh dGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2UgPSAiMC44IildCisr CQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCB1bnJlYWxpemUgKCk7CisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0 dGVyX2FjdG9yX21ldGFfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIp XQorKwlwdWJsaWMgYWJzdHJhY3QgY2xhc3MgQWN0b3JNZXRhIDogR0xpYi5Jbml0aWFsbHlVbm93 bmVkIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXBy b3RlY3RlZCBBY3Rvck1ldGEgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdl dF9hY3RvciAoKTsKKysJCXB1YmxpYyBib29sIGdldF9lbmFibGVkICgpOworKwkJcHVibGljIHVu b3duZWQgc3RyaW5nIGdldF9uYW1lICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0 dWFsIHZvaWQgc2V0X2FjdG9yIChDbHV0dGVyLkFjdG9yPyBhY3Rvcik7CisrCQlwdWJsaWMgdm9p ZCBzZXRfZW5hYmxlZCAoYm9vbCBpc19lbmFibGVkKTsKKysJCXB1YmxpYyB2b2lkIHNldF9uYW1l IChzdHJpbmcgbmFtZSk7CisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvciBhY3RvciB7IGdldDsgfQor KwkJcHVibGljIGJvb2wgZW5hYmxlZCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgc3RyaW5nIG5h bWUgeyBnZXQ7IHNldDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9hY3Rvcl9ub2RlX2dldF90eXBlICgp IildCisrCXB1YmxpYyBjbGFzcyBBY3Rvck5vZGUgOiBDbHV0dGVyLlBhaW50Tm9kZSB7CisrCQlb Q0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyUGFp bnROb2RlKiIpXQorKwkJcHVibGljIEFjdG9yTm9kZSAoQ2x1dHRlci5BY3RvciBhY3Rvcik7Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlw ZV9pZCA9ICJjbHV0dGVyX2FsaWduX2NvbnN0cmFpbnRfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgY2xhc3MgQWxpZ25Db25zdHJhaW50IDogQ2x1 dHRlci5Db25zdHJhaW50IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZh bHNlLCB0eXBlID0gIkNsdXR0ZXJDb25zdHJhaW50KiIpXQorKwkJcHVibGljIEFsaWduQ29uc3Ry YWludCAoQ2x1dHRlci5BY3Rvcj8gc291cmNlLCBDbHV0dGVyLkFsaWduQXhpcyBheGlzLCBmbG9h dCBmYWN0b3IpOworKwkJcHVibGljIENsdXR0ZXIuQWxpZ25BeGlzIGdldF9hbGlnbl9heGlzICgp OworKwkJcHVibGljIGZsb2F0IGdldF9mYWN0b3IgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0 dGVyLkFjdG9yIGdldF9zb3VyY2UgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfYWxpZ25fYXhpcyAo Q2x1dHRlci5BbGlnbkF4aXMgYXhpcyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfZmFjdG9yIChmbG9h dCBmYWN0b3IpOworKwkJcHVibGljIHZvaWQgc2V0X3NvdXJjZSAoQ2x1dHRlci5BY3Rvcj8gc291 cmNlKTsKKysJCXB1YmxpYyBDbHV0dGVyLkFsaWduQXhpcyBhbGlnbl9heGlzIHsgZ2V0OyBzZXQg Y29uc3RydWN0OyB9CisrCQlwdWJsaWMgZmxvYXQgZmFjdG9yIHsgZ2V0OyBzZXQgY29uc3RydWN0 OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvciBzb3VyY2UgeyBnZXQ7IHNldCBjb25zdHJ1Y3Q7 IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCB0eXBlX2lkID0gImNsdXR0ZXJfYWxwaGFfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKGRl cHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIwLjIi KV0KKysJcHVibGljIGNsYXNzIEFscGhhIDogR0xpYi5Jbml0aWFsbHlVbm93bmVkLCBDbHV0dGVy LlNjcmlwdGFibGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2Up XQorKwkJcHVibGljIEFscGhhICgpOworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9u ID0gZmFsc2UpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEFscGhh LmZ1bGwgKENsdXR0ZXIuVGltZWxpbmUgdGltZWxpbmUsIHVsb25nIG1vZGUpOworKwkJcHVibGlj IGRvdWJsZSBnZXRfYWxwaGEgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlw dWJsaWMgdWxvbmcgZ2V0X21vZGUgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLlRpbWVs aW5lIGdldF90aW1lbGluZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1 YmxpYyB2b2lkIHNldF9jbG9zdXJlIChHTGliLkNsb3N1cmUgY2xvc3VyZSk7CisrCQlwdWJsaWMg dm9pZCBzZXRfZnVuYyAob3duZWQgQ2x1dHRlci5BbHBoYUZ1bmMgZnVuYyk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbW9kZSAodWxvbmcgbW9kZSk7 CisrCQlwdWJsaWMgdm9pZCBzZXRfdGltZWxpbmUgKENsdXR0ZXIuVGltZWxpbmUgdGltZWxpbmUp OworKwkJcHVibGljIGRvdWJsZSBhbHBoYSB7IGdldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMCIpXQorKwkJcHVibGljIHVsb25nIG1vZGUgeyBnZXQ7IHNldCBjb25zdHJ1Y3Q7IH0KKysJ CXB1YmxpYyBDbHV0dGVyLlRpbWVsaW5lIHRpbWVsaW5lIHsgZ2V0OyBzZXQ7IH0KKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0g ImNsdXR0ZXJfYW5pbWF0aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVk ID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4wIildCisrCXB1 YmxpYyBjbGFzcyBBbmltYXRpb24gOiBHTGliLk9iamVjdCwgQ2x1dHRlci5TY3JpcHRhYmxlIHsK KysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1YmxpYyBB bmltYXRpb24gKCk7CisrCQlwdWJsaWMgdWludCBnZXRfZHVyYXRpb24gKCk7CisrCQlwdWJsaWMg dW5vd25lZCBDbHV0dGVyLkludGVydmFsIGdldF9pbnRlcnZhbCAoc3RyaW5nIHByb3BlcnR5X25h bWUpOworKwkJcHVibGljIGJvb2wgZ2V0X2xvb3AgKCk7CisrCQlwdWJsaWMgdWxvbmcgZ2V0X21v ZGUgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLlRpbWVsaW5lIGdldF90aW1lbGluZSAo KTsKKysJCXB1YmxpYyBib29sIGhhc19wcm9wZXJ0eSAoc3RyaW5nIHByb3BlcnR5X25hbWUpOwor KwkJcHVibGljIHZvaWQgc2V0X2R1cmF0aW9uICh1aW50IG1zZWNzKTsKKysJCXB1YmxpYyB2b2lk IHNldF9sb29wIChib29sIGxvb3ApOworKwkJcHVibGljIHZvaWQgc2V0X21vZGUgKHVsb25nIG1v ZGUpOworKwkJcHVibGljIHZvaWQgc2V0X29iamVjdCAoR0xpYi5PYmplY3Qgb2JqZWN0KTsKKysJ CXB1YmxpYyB2b2lkIHNldF90aW1lbGluZSAoQ2x1dHRlci5UaW1lbGluZT8gdGltZWxpbmUpOwor KwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRl cHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIENsdXR0 ZXIuQWxwaGEgYWxwaGEgeyBvd25lZCBnZXQ7IHNldDsgfQorKwkJcHVibGljIHVpbnQgZHVyYXRp b24geyBnZXQ7IHNldDsgfQorKwkJcHVibGljIGJvb2wgbG9vcCB7IGdldDsgc2V0OyB9CisrCQlw dWJsaWMgdWxvbmcgbW9kZSB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJ CXB1YmxpYyBHTGliLk9iamVjdCBvYmplY3QgeyBvd25lZCBnZXQ7IHNldDsgfQorKwkJcHVibGlj IENsdXR0ZXIuVGltZWxpbmUgdGltZWxpbmUgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIHZpcnR1 YWwgc2lnbmFsIHZvaWQgY29tcGxldGVkICgpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZv aWQgc3RhcnRlZCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0NvbXBhY3RdCisrCVtWZXJz aW9uIChzaW5jZSA9ICIwLjIiKV0KKysJcHVibGljIGNsYXNzIEFueUV2ZW50IDogQ2x1dHRlci5F dmVudCB7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudEZsYWdzIGZsYWdzOworKwkJcHVibGljIHdl YWsgQ2x1dHRlci5BY3RvciBzb3VyY2U7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLlN0YWdlIHN0 YWdlOworKwkJcHVibGljIHVpbnQzMiB0aW1lOworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRUeXBl IHR5cGU7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2JhY2tlbmRfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjAuNCIpXQorKwlwdWJsaWMgY2xhc3MgQmFja2VuZCA6IEdMaWIuT2JqZWN0 IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3Rl Y3RlZCBCYWNrZW5kICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQg YWRkX29wdGlvbnMgKEdMaWIuT3B0aW9uR3JvdXAgZ3JvdXApOworKwkJW05vV3JhcHBlcl0KKysJ CXB1YmxpYyB2aXJ0dWFsIGJvb2wgY3JlYXRlX2NvbnRleHQgKCkgdGhyb3dzIEdMaWIuRXJyb3I7 CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdW5vd25lZCBDbHV0dGVyLlN0YWdl V2luZG93IGNyZWF0ZV9zdGFnZSAoQ2x1dHRlci5TdGFnZSB3cmFwcGVyKSB0aHJvd3MgR0xpYi5F cnJvcjsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGVuc3VyZV9jb250 ZXh0IChDbHV0dGVyLlN0YWdlIHN0YWdlKTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuU2Vh dCBnZXRfZGVmYXVsdF9zZWF0ICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFs IENsdXR0ZXIuRmVhdHVyZUZsYWdzIGdldF9mZWF0dXJlcyAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB1bm93bmVkIENhaXJvLkZvbnRPcHRpb25zIGdldF9mb250 X29wdGlvbnMgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLklucHV0TWV0aG9kIGdldF9p bnB1dF9tZXRob2QgKCk7CisrCQlwdWJsaWMgZG91YmxlIGdldF9yZXNvbHV0aW9uICgpOworKwkJ W05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgaW5pdF9ldmVudHMgKCk7CisrCQlb Tm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBpbml0X2ZlYXR1cmVzICgpOworKwkJ W05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIGJvb2wgcG9zdF9wYXJzZSAoKSB0aHJvd3Mg R0xpYi5FcnJvcjsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCBib29sIHByZV9w YXJzZSAoKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmly dHVhbCB2b2lkIHJlZHJhdyAoQ2x1dHRlci5TdGFnZSBzdGFnZSk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMC44IildCisrCQlwdWJsaWMgdm9pZCBzZXRfZm9udF9vcHRpb25zIChDYWlyby5Gb250 T3B0aW9ucyBvcHRpb25zKTsKKysJCXB1YmxpYyB2b2lkIHNldF9pbnB1dF9tZXRob2QgKENsdXR0 ZXIuSW5wdXRNZXRob2QgbWV0aG9kKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJ CXB1YmxpYyBzaWduYWwgdm9pZCBmb250X2NoYW5nZWQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgcmVzb2x1dGlvbl9jaGFuZ2VkICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHNpZ25hbCB2b2lkIHNldHRp bmdzX2NoYW5nZWQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2Jpbl9sYXlvdXRfZ2V0X3R5cGUgKCki KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwlwdWJsaWMgY2xhc3MgQmluTGF5b3V0 IDogQ2x1dHRlci5MYXlvdXRNYW5hZ2VyIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5j dGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJMYXlvdXRNYW5hZ2VyKiIpXQorKwkJcHVibGlj IEJpbkxheW91dCAoQ2x1dHRlci5CaW5BbGlnbm1lbnQgeF9hbGlnbiA9IENsdXR0ZXIuQmluQWxp Z25tZW50LlNUQVJULCBDbHV0dGVyLkJpbkFsaWdubWVudCB5X2FsaWduID0gQ2x1dHRlci5CaW5B bGlnbm1lbnQuU1RBUlQpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoZGVw cmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIp XQorKwkJcHVibGljIENsdXR0ZXIuQmluQWxpZ25tZW50IHhfYWxpZ24geyBnZXQ7IHNldDsgfQor KwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRl cHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIENsdXR0 ZXIuQmluQWxpZ25tZW50IHlfYWxpZ24geyBnZXQ7IHNldDsgfQorKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9i aW5kX2NvbnN0cmFpbnRfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIp XQorKwlwdWJsaWMgY2xhc3MgQmluZENvbnN0cmFpbnQgOiBDbHV0dGVyLkNvbnN0cmFpbnQgewor KwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRl ckNvbnN0cmFpbnQqIildCisrCQlwdWJsaWMgQmluZENvbnN0cmFpbnQgKENsdXR0ZXIuQWN0b3I/ IHNvdXJjZSwgQ2x1dHRlci5CaW5kQ29vcmRpbmF0ZSBjb29yZGluYXRlLCBmbG9hdCBvZmZzZXQp OworKwkJcHVibGljIENsdXR0ZXIuQmluZENvb3JkaW5hdGUgZ2V0X2Nvb3JkaW5hdGUgKCk7Cisr CQlwdWJsaWMgZmxvYXQgZ2V0X29mZnNldCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIu QWN0b3IgZ2V0X3NvdXJjZSAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9jb29yZGluYXRlIChDbHV0 dGVyLkJpbmRDb29yZGluYXRlIGNvb3JkaW5hdGUpOworKwkJcHVibGljIHZvaWQgc2V0X29mZnNl dCAoZmxvYXQgb2Zmc2V0KTsKKysJCXB1YmxpYyB2b2lkIHNldF9zb3VyY2UgKENsdXR0ZXIuQWN0 b3I/IHNvdXJjZSk7CisrCQlwdWJsaWMgQ2x1dHRlci5CaW5kQ29vcmRpbmF0ZSBjb29yZGluYXRl IHsgZ2V0OyBzZXQgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgZmxvYXQgb2Zmc2V0IHsgZ2V0OyBz ZXQgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvciBzb3VyY2UgeyBnZXQ7IHNl dCBjb25zdHJ1Y3Q7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfYmluZGluZ19wb29sX2dldF90eXBlICgp IildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGNsYXNzIEJpbmRpbmdQ b29sIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0g ZmFsc2UpXQorKwkJcHVibGljIEJpbmRpbmdQb29sIChzdHJpbmcgbmFtZSk7CisrCQlwdWJsaWMg Ym9vbCBhY3RpdmF0ZSAodWludCBrZXlfdmFsLCBDbHV0dGVyLk1vZGlmaWVyVHlwZSBtb2RpZmll cnMsIEdMaWIuT2JqZWN0IGdvYmplY3QpOworKwkJcHVibGljIHZvaWQgYmxvY2tfYWN0aW9uIChz dHJpbmcgYWN0aW9uX25hbWUpOworKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIENsdXR0ZXIuQmlu ZGluZ1Bvb2wgZmluZCAoc3RyaW5nIG5hbWUpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGZp bmRfYWN0aW9uICh1aW50IGtleV92YWwsIENsdXR0ZXIuTW9kaWZpZXJUeXBlIG1vZGlmaWVycyk7 CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgQ2x1dHRlci5CaW5kaW5nUG9vbCBnZXRfZm9yX2Ns YXNzICh2b2lkKiBrbGFzcyk7CisrCQlwdWJsaWMgdm9pZCBpbnN0YWxsX2FjdGlvbiAoc3RyaW5n IGFjdGlvbl9uYW1lLCB1aW50IGtleV92YWwsIENsdXR0ZXIuTW9kaWZpZXJUeXBlIG1vZGlmaWVy cywgb3duZWQgQ2x1dHRlci5CaW5kaW5nQWN0aW9uRnVuYyBjYWxsYmFjayk7CisrCQlwdWJsaWMg dm9pZCBpbnN0YWxsX2Nsb3N1cmUgKHN0cmluZyBhY3Rpb25fbmFtZSwgdWludCBrZXlfdmFsLCBD bHV0dGVyLk1vZGlmaWVyVHlwZSBtb2RpZmllcnMsIEdMaWIuQ2xvc3VyZSBjbG9zdXJlKTsKKysJ CXB1YmxpYyB2b2lkIG92ZXJyaWRlX2FjdGlvbiAodWludCBrZXlfdmFsLCBDbHV0dGVyLk1vZGlm aWVyVHlwZSBtb2RpZmllcnMsIG93bmVkIEdMaWIuQ2FsbGJhY2sgY2FsbGJhY2spOworKwkJcHVi bGljIHZvaWQgb3ZlcnJpZGVfY2xvc3VyZSAodWludCBrZXlfdmFsLCBDbHV0dGVyLk1vZGlmaWVy VHlwZSBtb2RpZmllcnMsIEdMaWIuQ2xvc3VyZSBjbG9zdXJlKTsKKysJCXB1YmxpYyB2b2lkIHJl bW92ZV9hY3Rpb24gKHVpbnQga2V5X3ZhbCwgQ2x1dHRlci5Nb2RpZmllclR5cGUgbW9kaWZpZXJz KTsKKysJCXB1YmxpYyB2b2lkIHVuYmxvY2tfYWN0aW9uIChzdHJpbmcgYWN0aW9uX25hbWUpOwor KwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgc3RyaW5nIG5hbWUgeyBvd25lZCBnZXQ7 IGNvbnN0cnVjdDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9ibHVyX2VmZmVjdF9nZXRfdHlwZSAoKSIp XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBjbGFzcyBCbHVyRWZmZWN0 IDogQ2x1dHRlci5PZmZzY3JlZW5FZmZlY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1 bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckVmZmVjdCoiKV0KKysJCXB1YmxpYyBCbHVy RWZmZWN0ICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9ib3hfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjEuMiIpXQorKwlwdWJsaWMgY2xhc3MgQm94IDogQ2x1dHRlci5BY3Rvciwg QXRrLkltcGxlbWVudG9yLCBDbHV0dGVyLkFuaW1hdGFibGUsIENsdXR0ZXIuQ29udGFpbmVyLCBD bHV0dGVyLlNjcmlwdGFibGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0g ZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFjdG9yKiIpXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQg PSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1 YmxpYyBCb3ggKENsdXR0ZXIuTGF5b3V0TWFuYWdlciBtYW5hZ2VyKTsKKysJCVtWZXJzaW9uIChk ZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMS4y IildCisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBnZXRfY29sb3IgKCk7CisrCQlbVmVyc2lvbiAo ZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjEu MiIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5MYXlvdXRNYW5hZ2VyIGdldF9sYXlvdXRf bWFuYWdlciAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9z aW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBwYWNrIChDbHV0 dGVyLkFjdG9yIGFjdG9yLCAuLi4pOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBk ZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lk IHBhY2tfYWZ0ZXIgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIENsdXR0ZXIuQWN0b3I/IHNpYmxpbmcs IC4uLik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2Ug PSAiMS4xMCIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgcGFja19hdCAoQ2x1dHRl ci5BY3RvciBhY3RvciwgaW50IHBvc2l0aW9uLCAuLi4pOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0 ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIxLjIiKV0KKysJ CXB1YmxpYyB2b2lkIHBhY2tfYmVmb3JlIChDbHV0dGVyLkFjdG9yIGFjdG9yLCBDbHV0dGVyLkFj dG9yPyBzaWJsaW5nLCAuLi4pOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXBy ZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHBh Y2t2IChDbHV0dGVyLkFjdG9yIGFjdG9yLCBbQ0NvZGUgKGFycmF5X2xlbmd0aF9jbmFtZSA9ICJu X3Byb3BlcnRpZXMiLCBhcnJheV9sZW5ndGhfcG9zID0gMS41LCBhcnJheV9sZW5ndGhfdHlwZSA9 ICJndWludCIpXSBzdHJpbmdbXSBwcm9wZXJ0aWVzLCBbQ0NvZGUgKGFycmF5X2xlbmd0aF9jbmFt ZSA9ICJuX3Byb3BlcnRpZXMiLCBhcnJheV9sZW5ndGhfcG9zID0gMS41LCBhcnJheV9sZW5ndGhf dHlwZSA9ICJndWludCIpXSBHTGliLlZhbHVlW10gdmFsdWVzKTsKKysJCVtWZXJzaW9uIChkZXBy ZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMS4yIild CisrCQlwdWJsaWMgdm9pZCBzZXRfY29sb3IgKENsdXR0ZXIuQ29sb3I/IGNvbG9yKTsKKysJCVtW ZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2lu Y2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbGF5b3V0X21hbmFnZXIgKENsdXR0ZXIu TGF5b3V0TWFuYWdlciBtYW5hZ2VyKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwg ZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgQ2x1 dHRlci5Db2xvciBjb2xvciB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJ CVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwg c2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgYm9vbCBjb2xvcl9zZXQgeyBnZXQ7IHNldDsgfQor KwkJcHVibGljIENsdXR0ZXIuTGF5b3V0TWFuYWdlciBsYXlvdXRfbWFuYWdlciB7IGdldDsgc2V0 OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgdHlwZV9pZCA9ICJjbHV0dGVyX2JveF9sYXlvdXRfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjEuMiIpXQorKwlwdWJsaWMgY2xhc3MgQm94TGF5b3V0IDogQ2x1dHRlci5M YXlvdXRNYW5hZ2VyIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNl LCB0eXBlID0gIkNsdXR0ZXJMYXlvdXRNYW5hZ2VyKiIpXQorKwkJcHVibGljIEJveExheW91dCAo KTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIx LjEyIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBnZXRfYWxpZ25tZW50IChDbHV0 dGVyLkFjdG9yIGFjdG9yLCBvdXQgQ2x1dHRlci5Cb3hBbGlnbm1lbnQgeF9hbGlnbiwgb3V0IENs dXR0ZXIuQm94QWxpZ25tZW50IHlfYWxpZ24pOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0 cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1Ymxp YyB1aW50IGdldF9lYXNpbmdfZHVyYXRpb24gKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9 IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVi bGljIHVsb25nIGdldF9lYXNpbmdfbW9kZSAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0g dHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJs aWMgYm9vbCBnZXRfZXhwYW5kIChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJCVtWZXJzaW9uIChk ZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4y IildCisrCQlwdWJsaWMgdm9pZCBnZXRfZmlsbCAoQ2x1dHRlci5BY3RvciBhY3Rvciwgb3V0IGJv b2wgeF9maWxsLCBvdXQgYm9vbCB5X2ZpbGwpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIp XQorKwkJcHVibGljIGJvb2wgZ2V0X2hvbW9nZW5lb3VzICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTIiKV0KKysJCXB1YmxpYyBDbHV0dGVyLk9yaWVudGF0aW9uIGdldF9vcmllbnRhdGlv biAoKTsKKysJCXB1YmxpYyBib29sIGdldF9wYWNrX3N0YXJ0ICgpOworKwkJcHVibGljIHVpbnQg Z2V0X3NwYWNpbmcgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0 ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIGJvb2wgZ2V0X3Vz ZV9hbmltYXRpb25zICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNh dGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBib29sIGdldF92 ZXJ0aWNhbCAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9z aW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBwYWNrIChDbHV0 dGVyLkFjdG9yIGFjdG9yLCBib29sIGV4cGFuZCwgYm9vbCB4X2ZpbGwsIGJvb2wgeV9maWxsLCBD bHV0dGVyLkJveEFsaWdubWVudCB4X2FsaWduLCBDbHV0dGVyLkJveEFsaWdubWVudCB5X2FsaWdu KTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIx LjEyIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBzZXRfYWxpZ25tZW50IChDbHV0 dGVyLkFjdG9yIGFjdG9yLCBDbHV0dGVyLkJveEFsaWdubWVudCB4X2FsaWduLCBDbHV0dGVyLkJv eEFsaWdubWVudCB5X2FsaWduKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVw cmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBz ZXRfZWFzaW5nX2R1cmF0aW9uICh1aW50IG1zZWNzKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVk ID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4yIildCisrCQlw dWJsaWMgdm9pZCBzZXRfZWFzaW5nX21vZGUgKHVsb25nIG1vZGUpOworKwkJW1ZlcnNpb24gKGRl cHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIi KV0KKysJCXB1YmxpYyB2b2lkIHNldF9leHBhbmQgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIGJvb2wg ZXhwYW5kKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5j ZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBzZXRfZmlsbCAoQ2x1 dHRlci5BY3RvciBhY3RvciwgYm9vbCB4X2ZpbGwsIGJvb2wgeV9maWxsKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9ob21vZ2VuZW91cyAoYm9vbCBo b21vZ2VuZW91cyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZv aWQgc2V0X29yaWVudGF0aW9uIChDbHV0dGVyLk9yaWVudGF0aW9uIG9yaWVudGF0aW9uKTsKKysJ CXB1YmxpYyB2b2lkIHNldF9wYWNrX3N0YXJ0IChib29sIHBhY2tfc3RhcnQpOworKwkJcHVibGlj IHZvaWQgc2V0X3NwYWNpbmcgKHVpbnQgc3BhY2luZyk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRl ZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJ cHVibGljIHZvaWQgc2V0X3VzZV9hbmltYXRpb25zIChib29sIGFuaW1hdGUpOworKwkJW1ZlcnNp b24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9 ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF92ZXJ0aWNhbCAoYm9vbCB2ZXJ0aWNhbCk7Cisr CQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIs IHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHVpbnQgZWFzaW5nX2R1cmF0aW9uIHsgZ2V0OyBz ZXQ7IH0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9 ICIxLjEyIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdWxvbmcgZWFzaW5nX21vZGUgeyBn ZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIGJvb2wg aG9tb2dlbmVvdXMgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0K KysJCXB1YmxpYyBDbHV0dGVyLk9yaWVudGF0aW9uIG9yaWVudGF0aW9uIHsgZ2V0OyBzZXQ7IH0K KysJCXB1YmxpYyBib29sIHBhY2tfc3RhcnQgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIHVpbnQg c3BhY2luZyB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRl cHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIGJvb2wg dXNlX2FuaW1hdGlvbnMgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0 cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1Ymxp YyBib29sIHZlcnRpY2FsIHsgZ2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfYnJpZ2h0bmVz c19jb250cmFzdF9lZmZlY3RfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTAiKV0KKysJcHVibGljIGNsYXNzIEJyaWdodG5lc3NDb250cmFzdEVmZmVjdCA6IENsdXR0ZXIu T2Zmc2NyZWVuRWZmZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZh bHNlLCB0eXBlID0gIkNsdXR0ZXJFZmZlY3QqIildCisrCQlwdWJsaWMgQnJpZ2h0bmVzc0NvbnRy YXN0RWZmZWN0ICgpOworKwkJcHVibGljIHZvaWQgZ2V0X2JyaWdodG5lc3MgKG91dCBmbG9hdCBy ZWQsIG91dCBmbG9hdCBncmVlbiwgb3V0IGZsb2F0IGJsdWUpOworKwkJcHVibGljIHZvaWQgZ2V0 X2NvbnRyYXN0IChvdXQgZmxvYXQgcmVkLCBvdXQgZmxvYXQgZ3JlZW4sIG91dCBmbG9hdCBibHVl KTsKKysJCXB1YmxpYyB2b2lkIHNldF9icmlnaHRuZXNzIChmbG9hdCBicmlnaHRuZXNzKTsKKysJ CXB1YmxpYyB2b2lkIHNldF9icmlnaHRuZXNzX2Z1bGwgKGZsb2F0IHJlZCwgZmxvYXQgZ3JlZW4s IGZsb2F0IGJsdWUpOworKwkJcHVibGljIHZvaWQgc2V0X2NvbnRyYXN0IChmbG9hdCBjb250cmFz dCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfY29udHJhc3RfZnVsbCAoZmxvYXQgcmVkLCBmbG9hdCBn cmVlbiwgZmxvYXQgYmx1ZSk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBDbHV0 dGVyLkNvbG9yIGJyaWdodG5lc3MgeyBvd25lZCBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JN ZXRob2RdCisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBjb250cmFzdCB7IG93bmVkIGdldDsgc2V0 OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtDb21wYWN0XQorKwlbVmVyc2lvbiAoc2luY2Ug PSAiMC4yIildCisrCXB1YmxpYyBjbGFzcyBCdXR0b25FdmVudCA6IENsdXR0ZXIuRXZlbnQgewor KwkJcHVibGljIGRvdWJsZSBheGVzOworKwkJcHVibGljIHVpbnQzMiBidXR0b247CisrCQlwdWJs aWMgdWludCBjbGlja19jb3VudDsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuSW5wdXREZXZpY2Ug ZGV2aWNlOworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRGbGFncyBmbGFnczsKKysJCXB1YmxpYyBD bHV0dGVyLk1vZGlmaWVyVHlwZSBtb2RpZmllcl9zdGF0ZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0 ZXIuQWN0b3Igc291cmNlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5TdGFnZSBzdGFnZTsKKysJ CXB1YmxpYyB1aW50MzIgdGltZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50VHlwZSB0eXBlOwor KwkJcHVibGljIGZsb2F0IHg7CisrCQlwdWJsaWMgZmxvYXQgeTsKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJf Y2FudmFzX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1 YmxpYyBjbGFzcyBDYW52YXMgOiBHTGliLk9iamVjdCwgQ2x1dHRlci5Db250ZW50IHsKKysJCVtD Q29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJDb250 ZW50KiIpXQorKwkJcHVibGljIENhbnZhcyAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfc2NhbGVf ZmFjdG9yICgpOworKwkJcHVibGljIHZvaWQgc2V0X3NjYWxlX2ZhY3RvciAoZmxvYXQgc2NhbGUp OworKwkJcHVibGljIGJvb2wgc2V0X3NpemUgKGludCB3aWR0aCwgaW50IGhlaWdodCk7CisrCQlb Tm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBpbnQgaGVpZ2h0IHsgZ2V0OyBzZXQ7IH0KKysJ CXB1YmxpYyBmbG9hdCBzY2FsZV9mYWN0b3IgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JN ZXRob2RdCisrCQlwdWJsaWMgaW50IHdpZHRoIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyB2aXJ0 dWFsIHNpZ25hbCBib29sIGRyYXcgKENhaXJvLkNvbnRleHQgY3IsIGludCB3aWR0aCwgaW50IGhl aWdodCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2NoaWxkX21ldGFfZ2V0X3R5cGUgKCkiKV0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwlwdWJsaWMgYWJzdHJhY3QgY2xhc3MgQ2hpbGRNZXRh IDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFs c2UpXQorKwkJcHJvdGVjdGVkIENoaWxkTWV0YSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0 ZXIuQWN0b3IgZ2V0X2FjdG9yICgpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5Db250YWlu ZXIgZ2V0X2NvbnRhaW5lciAoKTsKKysJCXB1YmxpYyBDbHV0dGVyLkFjdG9yIGFjdG9yIHsgZ2V0 OyBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbnRhaW5lciBjb250YWluZXIgeyBn ZXQ7IGNvbnN0cnVjdDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9jbGlja19hY3Rpb25fZ2V0X3R5cGUg KCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgY2xhc3MgQ2xpY2tB Y3Rpb24gOiBDbHV0dGVyLkFjdGlvbiB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rp b24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0aW9uKiIpXQorKwkJcHVibGljIENsaWNrQWN0 aW9uICgpOworKwkJcHVibGljIHVpbnQgZ2V0X2J1dHRvbiAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9jb29yZHMgKG91dCBmbG9hdCBwcmVzc194 LCBvdXQgZmxvYXQgcHJlc3NfeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlw dWJsaWMgQ2x1dHRlci5Nb2RpZmllclR5cGUgZ2V0X3N0YXRlICgpOworKwkJcHVibGljIHZvaWQg cmVsZWFzZSAoKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wgaGVsZCB7 IGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44 IildCisrCQlwdWJsaWMgaW50IGxvbmdfcHJlc3NfZHVyYXRpb24geyBnZXQ7IHNldDsgfQorKwkJ W05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJs aWMgaW50IGxvbmdfcHJlc3NfdGhyZXNob2xkIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29y TWV0aG9kXQorKwkJcHVibGljIGJvb2wgcHJlc3NlZCB7IGdldDsgfQorKwkJcHVibGljIHZpcnR1 YWwgc2lnbmFsIHZvaWQgY2xpY2tlZCAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCBsb25nX3By ZXNzIChDbHV0dGVyLkFjdG9yIGFjdG9yLCBDbHV0dGVyLkxvbmdQcmVzc1N0YXRlIHN0YXRlKTsK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0 eXBlX2lkID0gImNsdXR0ZXJfY2xpcF9ub2RlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBjbGFzcyBDbGlwTm9kZSA6IENsdXR0ZXIuUGFpbnRO b2RlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0g IkNsdXR0ZXJQYWludE5vZGUqIildCisrCQlwdWJsaWMgQ2xpcE5vZGUgKCk7CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJj bHV0dGVyX2Nsb25lX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0K KysJcHVibGljIGNsYXNzIENsb25lIDogQ2x1dHRlci5BY3RvciwgQXRrLkltcGxlbWVudG9yLCBD bHV0dGVyLkFuaW1hdGFibGUsIENsdXR0ZXIuQ29udGFpbmVyLCBDbHV0dGVyLlNjcmlwdGFibGUg eworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1 dHRlckFjdG9yKiIpXQorKwkJcHVibGljIENsb25lIChDbHV0dGVyLkFjdG9yIHNvdXJjZSk7Cisr CQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF9zb3VyY2UgKCk7CisrCQlwdWJsaWMg dm9pZCBzZXRfc291cmNlIChDbHV0dGVyLkFjdG9yPyBzb3VyY2UpOworKwkJcHVibGljIENsdXR0 ZXIuQWN0b3Igc291cmNlIHsgZ2V0OyBzZXQgY29uc3RydWN0OyB9CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVy X2NvbG9yX25vZGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0K KysJcHVibGljIGNsYXNzIENvbG9yTm9kZSA6IENsdXR0ZXIuUGlwZWxpbmVOb2RlIHsKKysJCVtD Q29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJQYWlu dE5vZGUqIildCisrCQlwdWJsaWMgQ29sb3JOb2RlIChDbHV0dGVyLkNvbG9yPyBjb2xvcik7Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlw ZV9pZCA9ICJjbHV0dGVyX2NvbG9yaXplX2VmZmVjdF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBjbGFzcyBDb2xvcml6ZUVmZmVjdCA6IENsdXR0 ZXIuT2Zmc2NyZWVuRWZmZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9 IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJFZmZlY3QqIildCisrCQlwdWJsaWMgQ29sb3JpemVFZmZl Y3QgKENsdXR0ZXIuQ29sb3IgdGludCk7CisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBnZXRfdGlu dCAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF90aW50IChDbHV0dGVyLkNvbG9yIHRpbnQpOworKwkJ cHVibGljIENsdXR0ZXIuQ29sb3IgdGludCB7IGdldDsgc2V0OyB9CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVy X2NvbnN0cmFpbnRfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQor KwlwdWJsaWMgYWJzdHJhY3QgY2xhc3MgQ29uc3RyYWludCA6IENsdXR0ZXIuQWN0b3JNZXRhIHsK KysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3Rl ZCBDb25zdHJhaW50ICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQg dXBkYXRlX2FsbG9jYXRpb24gKENsdXR0ZXIuQWN0b3IgYWN0b3IsIENsdXR0ZXIuQWN0b3JCb3gg YWxsb2NhdGlvbik7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCB1cGRh dGVfcHJlZmVycmVkX3NpemUgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIENsdXR0ZXIuT3JpZW50YXRp b24gZGlyZWN0aW9uLCBmbG9hdCBmb3Jfc2l6ZSwgZmxvYXQgbWluaW11bV9zaXplLCBmbG9hdCBu YXR1cmFsX3NpemUpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbQ29tcGFjdF0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjAuMiIpXQorKwlwdWJsaWMgY2xhc3MgQ3Jvc3NpbmdFdmVudCA6IENsdXR0 ZXIuRXZlbnQgeworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5JbnB1dERldmljZSBkZXZpY2U7Cisr CQlwdWJsaWMgQ2x1dHRlci5FdmVudEZsYWdzIGZsYWdzOworKwkJcHVibGljIHdlYWsgQ2x1dHRl ci5BY3RvciByZWxhdGVkOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5FdmVudFNlcXVlbmNlIHNl cXVlbmNlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5BY3RvciBzb3VyY2U7CisrCQlwdWJsaWMg d2VhayBDbHV0dGVyLlN0YWdlIHN0YWdlOworKwkJcHVibGljIHVpbnQzMiB0aW1lOworKwkJcHVi bGljIENsdXR0ZXIuRXZlbnRUeXBlIHR5cGU7CisrCQlwdWJsaWMgZmxvYXQgeDsKKysJCXB1Ymxp YyBmbG9hdCB5OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9kZWZvcm1fZWZmZWN0X2dldF90eXBlICgpIild CisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGFic3RyYWN0IGNsYXNzIERl Zm9ybUVmZmVjdCA6IENsdXR0ZXIuT2Zmc2NyZWVuRWZmZWN0IHsKKysJCVtDQ29kZSAoaGFzX2Nv bnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBEZWZvcm1FZmZlY3QgKCk7 CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBkZWZvcm1fdmVydGV4IChm bG9hdCB3aWR0aCwgZmxvYXQgaGVpZ2h0LCBDb2dsLlRleHR1cmVWZXJ0ZXggdmVydGV4KTsKKysJ CXB1YmxpYyB1bm93bmVkIENvZ2wuSGFuZGxlIGdldF9iYWNrX21hdGVyaWFsICgpOworKwkJcHVi bGljIHZvaWQgZ2V0X25fdGlsZXMgKG91dCB1aW50IHhfdGlsZXMsIG91dCB1aW50IHlfdGlsZXMp OworKwkJcHVibGljIHZvaWQgaW52YWxpZGF0ZSAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9iYWNr X21hdGVyaWFsIChDb2dsLkhhbmRsZT8gbWF0ZXJpYWwpOworKwkJcHVibGljIHZvaWQgc2V0X25f dGlsZXMgKHVpbnQgeF90aWxlcywgdWludCB5X3RpbGVzKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9k XQorKwkJcHVibGljIHVpbnQgeF90aWxlcyB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1l dGhvZF0KKysJCXB1YmxpYyB1aW50IHlfdGlsZXMgeyBnZXQ7IHNldDsgfQorKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1 dHRlcl9kZXNhdHVyYXRlX2VmZmVjdF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2Ug PSAiMS40IildCisrCXB1YmxpYyBjbGFzcyBEZXNhdHVyYXRlRWZmZWN0IDogQ2x1dHRlci5PZmZz Y3JlZW5FZmZlY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2Us IHR5cGUgPSAiQ2x1dHRlckVmZmVjdCoiKV0KKysJCXB1YmxpYyBEZXNhdHVyYXRlRWZmZWN0IChk b3VibGUgZmFjdG9yKTsKKysJCXB1YmxpYyBkb3VibGUgZ2V0X2ZhY3RvciAoKTsKKysJCXB1Ymxp YyB2b2lkIHNldF9mYWN0b3IgKGRvdWJsZSBmYWN0b3IpOworKwkJcHVibGljIGRvdWJsZSBmYWN0 b3IgeyBnZXQ7IHNldDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9kcmFnX2FjdGlvbl9nZXRfdHlwZSAo KSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBjbGFzcyBEcmFnQWN0 aW9uIDogQ2x1dHRlci5BY3Rpb24geworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9u ID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFjdGlvbioiKV0KKysJCXB1YmxpYyBEcmFnQWN0aW9u ICgpOworKwkJcHVibGljIGJvb2wgZ2V0X2RyYWdfYXJlYSAoR3JhcGhlbmUuUmVjdCBkcmFnX2Fy ZWEpOworKwkJcHVibGljIENsdXR0ZXIuRHJhZ0F4aXMgZ2V0X2RyYWdfYXhpcyAoKTsKKysJCXB1 YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X2RyYWdfaGFuZGxlICgpOworKwkJcHVibGlj IHZvaWQgZ2V0X2RyYWdfdGhyZXNob2xkIChvdXQgdWludCB4X3RocmVzaG9sZCwgb3V0IHVpbnQg eV90aHJlc2hvbGQpOworKwkJcHVibGljIHZvaWQgZ2V0X21vdGlvbl9jb29yZHMgKG91dCBmbG9h dCBtb3Rpb25feCwgb3V0IGZsb2F0IG1vdGlvbl95KTsKKysJCXB1YmxpYyB2b2lkIGdldF9wcmVz c19jb29yZHMgKG91dCBmbG9hdCBwcmVzc194LCBvdXQgZmxvYXQgcHJlc3NfeSk7CisrCQlwdWJs aWMgdm9pZCBzZXRfZHJhZ19hcmVhIChHcmFwaGVuZS5SZWN0PyBkcmFnX2FyZWEpOworKwkJcHVi bGljIHZvaWQgc2V0X2RyYWdfYXhpcyAoQ2x1dHRlci5EcmFnQXhpcyBheGlzKTsKKysJCXB1Ymxp YyB2b2lkIHNldF9kcmFnX2hhbmRsZSAoQ2x1dHRlci5BY3Rvcj8gaGFuZGxlKTsKKysJCXB1Ymxp YyB2b2lkIHNldF9kcmFnX3RocmVzaG9sZCAoaW50IHhfdGhyZXNob2xkLCBpbnQgeV90aHJlc2hv bGQpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIp XQorKwkJcHVibGljIEdyYXBoZW5lLlJlY3QgZHJhZ19hcmVhIHsgb3duZWQgZ2V0OyBzZXQ7IH0K KysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJ CXB1YmxpYyBib29sIGRyYWdfYXJlYV9zZXQgeyBnZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLkRy YWdBeGlzIGRyYWdfYXhpcyB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvciBk cmFnX2hhbmRsZSB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1Ymxp YyBpbnQgeF9kcmFnX3RocmVzaG9sZCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhv ZF0KKysJCXB1YmxpYyBpbnQgeV9kcmFnX3RocmVzaG9sZCB7IGdldDsgc2V0OyB9CisrCQlwdWJs aWMgdmlydHVhbCBzaWduYWwgdm9pZCBkcmFnX2JlZ2luIChDbHV0dGVyLkFjdG9yIGFjdG9yLCBm bG9hdCBldmVudF94LCBmbG9hdCBldmVudF95LCBDbHV0dGVyLk1vZGlmaWVyVHlwZSBtb2RpZmll cnMpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgZHJhZ19lbmQgKENsdXR0ZXIuQWN0 b3IgYWN0b3IsIGZsb2F0IGV2ZW50X3gsIGZsb2F0IGV2ZW50X3ksIENsdXR0ZXIuTW9kaWZpZXJU eXBlIG1vZGlmaWVycyk7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBkcmFnX21vdGlv biAoQ2x1dHRlci5BY3RvciBhY3RvciwgZmxvYXQgZGVsdGFfeCwgZmxvYXQgZGVsdGFfeSk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIGJv b2wgZHJhZ19wcm9ncmVzcyAoQ2x1dHRlci5BY3RvciBhY3RvciwgZmxvYXQgZGVsdGFfeCwgZmxv YXQgZGVsdGFfeSk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2Ryb3BfYWN0aW9uX2dldF90eXBlICgpIild CisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJcHVibGljIGNsYXNzIERyb3BBY3Rpb24g OiBDbHV0dGVyLkFjdGlvbiB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBm YWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0aW9uKiIpXQorKwkJcHVibGljIERyb3BBY3Rpb24gKCk7 CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCBjYW5fZHJvcCAoQ2x1dHRlci5BY3RvciBh Y3RvciwgZmxvYXQgZXZlbnRfeCwgZmxvYXQgZXZlbnRfeSk7CisrCQlwdWJsaWMgdmlydHVhbCBz aWduYWwgdm9pZCBkcm9wIChDbHV0dGVyLkFjdG9yIGFjdG9yLCBmbG9hdCBldmVudF94LCBmbG9h dCBldmVudF95KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgc2ln bmFsIHZvaWQgZHJvcF9jYW5jZWwgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIGZsb2F0IGV2ZW50X3gs IGZsb2F0IGV2ZW50X3kpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgb3Zlcl9pbiAo Q2x1dHRlci5BY3RvciBhY3Rvcik7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBvdmVy X291dCAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2VmZmVjdF9nZXRf dHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBhYnN0cmFj dCBjbGFzcyBFZmZlY3QgOiBDbHV0dGVyLkFjdG9yTWV0YSB7CisrCQlbQ0NvZGUgKGhhc19jb25z dHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgRWZmZWN0ICgpOworKwkJW05v V3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIGJvb2wgbW9kaWZ5X3BhaW50X3ZvbHVtZSAoQ2x1 dHRlci5QYWludFZvbHVtZSB2b2x1bWUpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0 dWFsIHZvaWQgcGFpbnQgKENsdXR0ZXIuUGFpbnRDb250ZXh0IHBhaW50X2NvbnRleHQsIENsdXR0 ZXIuRWZmZWN0UGFpbnRGbGFncyBmbGFncyk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZp cnR1YWwgdm9pZCBwaWNrIChDbHV0dGVyLlBpY2tDb250ZXh0IHBpY2tfY29udGV4dCk7CisrCQlb Tm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBwb3N0X3BhaW50IChDbHV0dGVyLlBh aW50Q29udGV4dCBwYWludF9jb250ZXh0KTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmly dHVhbCBib29sIHByZV9wYWludCAoQ2x1dHRlci5QYWludENvbnRleHQgcGFpbnRfY29udGV4dCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBxdWV1ZV9yZXBh aW50ICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNvcHlfZnVuY3Rpb24gPSAiZ19ib3hlZF9jb3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJn X2JveGVkX2ZyZWUiLCB0eXBlX2lkID0gImNsdXR0ZXJfZXZlbnRfZ2V0X3R5cGUgKCkiKV0KKysJ W0NvbXBhY3RdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJcHVibGljIGNsYXNzIEV2 ZW50IHsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50VHlwZSB0eXBlOworKwkJW0NDb2RlIChoYXNf Y29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHVibGljIEV2ZW50IChDbHV0dGVyLkV2 ZW50VHlwZSB0eXBlKTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50IGNvcHkgKCk7CisrCQlwdWJs aWMgdm9pZCBmcmVlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1Ymxp YyBkb3VibGUgZ2V0X2FuZ2xlIChDbHV0dGVyLkV2ZW50IHRhcmdldCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgZG91YmxlIGdldF9heGVzIChvdXQgdWludCBuX2F4 ZXMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVpbnQzMiBnZXRf YnV0dG9uICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVpbnQg Z2V0X2NsaWNrX2NvdW50ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwkJcHVi bGljIHZvaWQgZ2V0X2Nvb3JkcyAob3V0IGZsb2F0IHgsIG91dCBmbG9hdCB5KTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuSW5wdXREZXZp Y2UgZ2V0X2RldmljZSAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0X2RldmljZV9pZCAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjI4IildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLklucHV0 RGV2aWNlVG9vbCBnZXRfZGV2aWNlX3Rvb2wgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgQ2x1dHRlci5JbnB1dERldmljZVR5cGUgZ2V0X2RldmljZV90eXBlICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfZGlz dGFuY2UgKENsdXR0ZXIuRXZlbnQgdGFyZ2V0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEw IildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkV2ZW50U2VxdWVuY2UgZ2V0X2V2ZW50X3Nl cXVlbmNlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIENsdXR0 ZXIuRXZlbnRGbGFncyBnZXRfZmxhZ3MgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yNCIp XQorKwkJcHVibGljIHZvaWQgZ2V0X2dlc3R1cmVfbW90aW9uX2RlbHRhIChvdXQgZG91YmxlIGR4 LCBvdXQgZG91YmxlIGR5KTsKKysJCXB1YmxpYyBDbHV0dGVyLlRvdWNocGFkR2VzdHVyZVBoYXNl IGdldF9nZXN0dXJlX3BoYXNlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjQiKV0KKysJ CXB1YmxpYyBkb3VibGUgZ2V0X2dlc3R1cmVfcGluY2hfYW5nbGVfZGVsdGEgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4yNCIpXQorKwkJcHVibGljIGRvdWJsZSBnZXRfZ2VzdHVyZV9waW5j aF9zY2FsZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1aW50 MTYgZ2V0X2tleV9jb2RlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVi bGljIHVpbnQgZ2V0X2tleV9zeW1ib2wgKCk7CisrCQlwdWJsaWMgdW5pY2hhciBnZXRfa2V5X3Vu aWNvZGUgKCk7CisrCQlwdWJsaWMgdWludCBnZXRfbW9kZV9ncm91cCAoKTsKKysJCXB1YmxpYyBi b29sIGdldF9wYWRfZXZlbnRfZGV0YWlscyAob3V0IHVpbnQgbnVtYmVyLCBvdXQgdWludCBtb2Rl LCBvdXQgZG91YmxlIHZhbHVlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlw dWJsaWMgdm9pZCBnZXRfcG9zaXRpb24gKEdyYXBoZW5lLlBvaW50IHBvc2l0aW9uKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3Ig Z2V0X3JlbGF0ZWQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IHZvaWQgZ2V0X3Njcm9sbF9kZWx0YSAob3V0IGRvdWJsZSBkeCwgb3V0IGRvdWJsZSBkeSk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgQ2x1dHRlci5TY3JvbGxEaXJl Y3Rpb24gZ2V0X3Njcm9sbF9kaXJlY3Rpb24gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4y NiIpXQorKwkJcHVibGljIENsdXR0ZXIuU2Nyb2xsRmluaXNoRmxhZ3MgZ2V0X3Njcm9sbF9maW5p c2hfZmxhZ3MgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yNiIpXQorKwkJcHVibGljIENs dXR0ZXIuU2Nyb2xsU291cmNlIGdldF9zY3JvbGxfc291cmNlICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjAuNiIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfc291cmNl ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1 dHRlci5JbnB1dERldmljZSBnZXRfc291cmNlX2RldmljZSAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuU3RhZ2UgZ2V0X3N0YWdlICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwkJcHVibGljIENsdXR0ZXIuTW9kaWZp ZXJUeXBlIGdldF9zdGF0ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2IildCisrCQlw dWJsaWMgdm9pZCBnZXRfc3RhdGVfZnVsbCAob3V0IENsdXR0ZXIuTW9kaWZpZXJUeXBlIGJ1dHRv bl9zdGF0ZSwgb3V0IENsdXR0ZXIuTW9kaWZpZXJUeXBlIGJhc2Vfc3RhdGUsIG91dCBDbHV0dGVy Lk1vZGlmaWVyVHlwZSBsYXRjaGVkX3N0YXRlLCBvdXQgQ2x1dHRlci5Nb2RpZmllclR5cGUgbG9j a2VkX3N0YXRlLCBvdXQgQ2x1dHRlci5Nb2RpZmllclR5cGUgZWZmZWN0aXZlX3N0YXRlKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJCXB1YmxpYyB1aW50MzIgZ2V0X3RpbWUgKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yNCIpXQorKwkJcHVibGljIHVpbnQgZ2V0X3RvdWNo cGFkX2dlc3R1cmVfZmluZ2VyX2NvdW50ICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVy X2V2ZW50X3R5cGUiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50VHlwZSBnZXRfdHlwZSAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgYm9vbCBoYXNfY29udHJv bF9tb2RpZmllciAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMg Ym9vbCBoYXNfc2hpZnRfbW9kaWZpZXIgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIp XQorKwkJcHVibGljIGJvb2wgaXNfcG9pbnRlcl9lbXVsYXRlZCAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2b2lkIHB1dCAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9idXR0b24gKHVpbnQzMiBidXR0b24pOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2Nvb3JkcyAo ZmxvYXQgeCwgZmxvYXQgeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJs aWMgdm9pZCBzZXRfZGV2aWNlIChDbHV0dGVyLklucHV0RGV2aWNlPyBkZXZpY2UpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9kZXZpY2VfdG9vbCAo Q2x1dHRlci5JbnB1dERldmljZVRvb2w/IHRvb2wpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu OCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2ZsYWdzIChDbHV0dGVyLkV2ZW50RmxhZ3MgZmxhZ3Mp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2tleV9j b2RlICh1aW50MTYga2V5X2NvZGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJ cHVibGljIHZvaWQgc2V0X2tleV9zeW1ib2wgKHVpbnQga2V5X3N5bSk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBzZXRfa2V5X3VuaWNvZGUgKHVuaWNoYXIg a2V5X3VuaWNvZGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZv aWQgc2V0X3JlbGF0ZWQgKENsdXR0ZXIuQWN0b3I/IGFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfc2Nyb2xsX2RlbHRhIChkb3VibGUgZHgs IGRvdWJsZSBkeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9p ZCBzZXRfc2Nyb2xsX2RpcmVjdGlvbiAoQ2x1dHRlci5TY3JvbGxEaXJlY3Rpb24gZGlyZWN0aW9u KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9zb3Vy Y2UgKENsdXR0ZXIuQWN0b3I/IGFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0K KysJCXB1YmxpYyB2b2lkIHNldF9zb3VyY2VfZGV2aWNlIChDbHV0dGVyLklucHV0RGV2aWNlPyBk ZXZpY2UpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0 X3N0YWdlIChDbHV0dGVyLlN0YWdlPyBzdGFnZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44 IildCisrCQlwdWJsaWMgdm9pZCBzZXRfc3RhdGUgKENsdXR0ZXIuTW9kaWZpZXJUeXBlIHN0YXRl KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF90aW1l ICh1aW50MzIgdGltZV8pOworKwkJcHVibGljIENsdXR0ZXIuQW55RXZlbnQgYW55IHtbQ0NvZGUg KGNuYW1lID0gIihDbHV0dGVyQW55RXZlbnQgKikiKV0gIGdldDsgfQorKwkJcHVibGljIENsdXR0 ZXIuQnV0dG9uRXZlbnQgYnV0dG9uIHtbQ0NvZGUgKGNuYW1lID0gIihDbHV0dGVyQnV0dG9uRXZl bnQgKikiKV0gIGdldDsgfQorKwkJcHVibGljIENsdXR0ZXIuQ3Jvc3NpbmdFdmVudCBjcm9zc2lu ZyB7W0NDb2RlIChjbmFtZSA9ICIoQ2x1dHRlckNyb3NzaW5nRXZlbnQgKikiKV0gIGdldDsgfQor KwkJcHVibGljIENsdXR0ZXIuS2V5RXZlbnQga2V5IHtbQ0NvZGUgKGNuYW1lID0gIihDbHV0dGVy S2V5RXZlbnQgKikiKV0gIGdldDsgfQorKwkJcHVibGljIENsdXR0ZXIuTW90aW9uRXZlbnQgbW90 aW9uIHtbQ0NvZGUgKGNuYW1lID0gIihDbHV0dGVyTW90aW9uRXZlbnQgKikiKV0gIGdldDsgfQor KwkJcHVibGljIENsdXR0ZXIuU2Nyb2xsRXZlbnQgc2Nyb2xsIHtbQ0NvZGUgKGNuYW1lID0gIihD bHV0dGVyU2Nyb2xsRXZlbnQgKikiKV0gIGdldDsgfQorKwkJcHVibGljIENsdXR0ZXIuU3RhZ2VT dGF0ZUV2ZW50IHN0YWdlX3N0YXRlIHtbQ0NvZGUgKGNuYW1lID0gIihDbHV0dGVyU3RhZ2VTdGF0 ZUV2ZW50ICopIildICBnZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLlRvdWNoRXZlbnQgdG91Y2gg e1tDQ29kZSAoY25hbWUgPSAiKENsdXR0ZXJUb3VjaEV2ZW50ICopIildICBnZXQ7IH0KKysJCXB1 YmxpYyBDbHV0dGVyLlRvdWNocGFkUGluY2hFdmVudCB0b3VjaHBhZF9waW5jaCB7W0NDb2RlIChj bmFtZSA9ICIoQ2x1dHRlclRvdWNocGFkUGluY2hFdmVudCAqKSIpXSAgZ2V0OyB9CisrCQlwdWJs aWMgQ2x1dHRlci5Ub3VjaHBhZFN3aXBlRXZlbnQgdG91Y2hwYWRfc3dpcGUge1tDQ29kZSAoY25h bWUgPSAiKENsdXR0ZXJUb3VjaHBhZFN3aXBlRXZlbnQgKikiKV0gIGdldDsgfQorKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNvcHlfZnVuY3Rp b24gPSAiZ19ib3hlZF9jb3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0eXBl X2lkID0gImNsdXR0ZXJfZXZlbnRfc2VxdWVuY2VfZ2V0X3R5cGUgKCkiKV0KKysJW0NvbXBhY3Rd CisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCXB1YmxpYyBjbGFzcyBFdmVudFNlcXVl bmNlIHsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfZml4ZWRfbGF5b3V0X2dldF90eXBlICgpIildCisrCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJcHVibGljIGNsYXNzIEZpeGVkTGF5b3V0IDogQ2x1 dHRlci5MYXlvdXRNYW5hZ2VyIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9 IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJMYXlvdXRNYW5hZ2VyKiIpXQorKwkJcHVibGljIEZpeGVk TGF5b3V0ICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9mbG93X2xheW91dF9nZXRfdHlwZSAoKSIpXQor KwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBjbGFzcyBGbG93TGF5b3V0IDog Q2x1dHRlci5MYXlvdXRNYW5hZ2VyIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlv biA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJMYXlvdXRNYW5hZ2VyKiIpXQorKwkJcHVibGljIEZs b3dMYXlvdXQgKENsdXR0ZXIuRmxvd09yaWVudGF0aW9uIG9yaWVudGF0aW9uKTsKKysJCXB1Ymxp YyBmbG9hdCBnZXRfY29sdW1uX3NwYWNpbmcgKCk7CisrCQlwdWJsaWMgdm9pZCBnZXRfY29sdW1u X3dpZHRoIChvdXQgZmxvYXQgbWluX3dpZHRoLCBvdXQgZmxvYXQgbWF4X3dpZHRoKTsKKysJCXB1 YmxpYyBib29sIGdldF9ob21vZ2VuZW91cyAoKTsKKysJCXB1YmxpYyBDbHV0dGVyLkZsb3dPcmll bnRhdGlvbiBnZXRfb3JpZW50YXRpb24gKCk7CisrCQlwdWJsaWMgdm9pZCBnZXRfcm93X2hlaWdo dCAob3V0IGZsb2F0IG1pbl9oZWlnaHQsIG91dCBmbG9hdCBtYXhfaGVpZ2h0KTsKKysJCXB1Ymxp YyBmbG9hdCBnZXRfcm93X3NwYWNpbmcgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNiIp XQorKwkJcHVibGljIGJvb2wgZ2V0X3NuYXBfdG9fZ3JpZCAoKTsKKysJCXB1YmxpYyB2b2lkIHNl dF9jb2x1bW5fc3BhY2luZyAoZmxvYXQgc3BhY2luZyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfY29s dW1uX3dpZHRoIChmbG9hdCBtaW5fd2lkdGgsIGZsb2F0IG1heF93aWR0aCk7CisrCQlwdWJsaWMg dm9pZCBzZXRfaG9tb2dlbmVvdXMgKGJvb2wgaG9tb2dlbmVvdXMpOworKwkJcHVibGljIHZvaWQg c2V0X29yaWVudGF0aW9uIChDbHV0dGVyLkZsb3dPcmllbnRhdGlvbiBvcmllbnRhdGlvbik7Cisr CQlwdWJsaWMgdm9pZCBzZXRfcm93X2hlaWdodCAoZmxvYXQgbWluX2hlaWdodCwgZmxvYXQgbWF4 X2hlaWdodCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfcm93X3NwYWNpbmcgKGZsb2F0IHNwYWNpbmcp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9zbmFw X3RvX2dyaWQgKGJvb2wgc25hcF90b19ncmlkKTsKKysJCXB1YmxpYyBmbG9hdCBjb2x1bW5fc3Bh Y2luZyB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgYm9vbCBob21vZ2VuZW91cyB7IGdldDsgc2V0 OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBmbG9hdCBtYXhfY29sdW1uX3dp ZHRoIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGZsb2F0 IG1heF9yb3dfaGVpZ2h0IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJ cHVibGljIGZsb2F0IG1pbl9jb2x1bW5fd2lkdGggeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNz b3JNZXRob2RdCisrCQlwdWJsaWMgZmxvYXQgbWluX3Jvd19oZWlnaHQgeyBnZXQ7IHNldDsgfQor KwkJcHVibGljIENsdXR0ZXIuRmxvd09yaWVudGF0aW9uIG9yaWVudGF0aW9uIHsgZ2V0OyBzZXQg Y29uc3RydWN0OyB9CisrCQlwdWJsaWMgZmxvYXQgcm93X3NwYWNpbmcgeyBnZXQ7IHNldDsgfQor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTYiKV0KKysJCXB1YmxpYyBib29sIHNuYXBfdG9fZ3Jp ZCB7IGdldDsgc2V0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2dlc3R1cmVfYWN0aW9uX2dldF90eXBl ICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJcHVibGljIGNsYXNzIEdlc3R1 cmVBY3Rpb24gOiBDbHV0dGVyLkFjdGlvbiB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVu Y3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0aW9uKiIpXQorKwkJcHVibGljIEdlc3R1 cmVBY3Rpb24gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZv aWQgY2FuY2VsICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIGJvb2wgZ2Vz dHVyZV9wcmVwYXJlIChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEyIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLklucHV0RGV2aWNlIGdldF9kZXZp Y2UgKHVpbnQgcG9pbnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTQiKV0KKysJCXB1Ymxp YyB1bm93bmVkIENsdXR0ZXIuRXZlbnQgZ2V0X2xhc3RfZXZlbnQgKHVpbnQgcG9pbnQpOworKwkJ cHVibGljIHZvaWQgZ2V0X21vdGlvbl9jb29yZHMgKHVpbnQgcG9pbnQsIG91dCBmbG9hdCBtb3Rp b25feCwgb3V0IGZsb2F0IG1vdGlvbl95KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIild CisrCQlwdWJsaWMgZmxvYXQgZ2V0X21vdGlvbl9kZWx0YSAodWludCBwb2ludCwgb3V0IGZsb2F0 IGRlbHRhX3gsIG91dCBmbG9hdCBkZWx0YV95KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEy IildCisrCQlwdWJsaWMgdWludCBnZXRfbl9jdXJyZW50X3BvaW50cyAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgaW50IGdldF9uX3RvdWNoX3BvaW50cyAoKTsK KysJCXB1YmxpYyB2b2lkIGdldF9wcmVzc19jb29yZHMgKHVpbnQgcG9pbnQsIG91dCBmbG9hdCBw cmVzc194LCBvdXQgZmxvYXQgcHJlc3NfeSk7CisrCQlwdWJsaWMgdm9pZCBnZXRfcmVsZWFzZV9j b29yZHMgKHVpbnQgcG9pbnQsIG91dCBmbG9hdCByZWxlYXNlX3gsIG91dCBmbG9hdCByZWxlYXNl X3kpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB1bm93bmVkIENs dXR0ZXIuRXZlbnRTZXF1ZW5jZSBnZXRfc2VxdWVuY2UgKHVpbnQgcG9pbnQpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTgiKV0KKysJCXB1YmxpYyB2b2lkIGdldF90aHJlc2hvbGRfdHJpZ2dl cl9kaXN0YW5jZSAob3V0IGZsb2F0IHgsIG91dCBmbG9hdCB5KTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjIwIildCisrCQlwdWJsaWMgQ2x1dHRlci5HZXN0dXJlVHJpZ2dlckVkZ2UgZ2V0X3Ro cmVzaG9sZF90cmlnZ2VyX2VkZ2UgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUs IGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4yMCIsIHNpbmNlID0gIjEuMTgiKV0KKysJCXB1YmxpYyBD bHV0dGVyLkdlc3R1cmVUcmlnZ2VyRWRnZSBnZXRfdGhyZXNob2xkX3RyaWdnZXJfZWdkZSAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3ZlbG9j aXR5ICh1aW50IHBvaW50LCBvdXQgZmxvYXQgdmVsb2NpdHlfeCwgb3V0IGZsb2F0IHZlbG9jaXR5 X3kpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9u X3RvdWNoX3BvaW50cyAoaW50IG5iX3BvaW50cyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x OCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3RocmVzaG9sZF90cmlnZ2VyX2Rpc3RhbmNlIChmbG9h dCB4LCBmbG9hdCB5KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE4IildCisrCQlwdWJsaWMg dm9pZCBzZXRfdGhyZXNob2xkX3RyaWdnZXJfZWRnZSAoQ2x1dHRlci5HZXN0dXJlVHJpZ2dlckVk Z2UgZWRnZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNiIpXQorKwkJcHVibGljIGludCBu X3RvdWNoX3BvaW50cyB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjE4IildCisrCQlwdWJsaWMgZmxvYXQgdGhyZXNob2xkX3RyaWdn ZXJfZGlzdGFuY2VfeCB7IGdldDsgY29uc3RydWN0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0K KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE4IildCisrCQlwdWJsaWMgZmxvYXQgdGhyZXNob2xk X3RyaWdnZXJfZGlzdGFuY2VfeSB7IGdldDsgY29uc3RydWN0OyB9CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xOCIpXQorKwkJcHVibGljIENsdXR0ZXIuR2VzdHVyZVRyaWdnZXJFZGdlIHRocmVz aG9sZF90cmlnZ2VyX2VkZ2UgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIHZpcnR1YWwg c2lnbmFsIGJvb2wgZ2VzdHVyZV9iZWdpbiAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCQlwdWJs aWMgdmlydHVhbCBzaWduYWwgdm9pZCBnZXN0dXJlX2NhbmNlbCAoQ2x1dHRlci5BY3RvciBhY3Rv cik7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBnZXN0dXJlX2VuZCAoQ2x1dHRlci5B Y3RvciBhY3Rvcik7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCBnZXN0dXJlX3Byb2dy ZXNzIChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfZ3JpZF9sYXlvdXRf Z2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJcHVibGljIGNs YXNzIEdyaWRMYXlvdXQgOiBDbHV0dGVyLkxheW91dE1hbmFnZXIgeworKwkJW0NDb2RlIChoYXNf Y29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckxheW91dE1hbmFnZXIq IildCisrCQlwdWJsaWMgR3JpZExheW91dCAoKTsKKysJCXB1YmxpYyB2b2lkIGF0dGFjaCAoQ2x1 dHRlci5BY3RvciBjaGlsZCwgaW50IGxlZnQsIGludCB0b3AsIGludCB3aWR0aCwgaW50IGhlaWdo dCk7CisrCQlwdWJsaWMgdm9pZCBhdHRhY2hfbmV4dF90byAoQ2x1dHRlci5BY3RvciBjaGlsZCwg Q2x1dHRlci5BY3Rvcj8gc2libGluZywgQ2x1dHRlci5HcmlkUG9zaXRpb24gc2lkZSwgaW50IHdp ZHRoLCBpbnQgaGVpZ2h0KTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X2No aWxkX2F0IChpbnQgbGVmdCwgaW50IHRvcCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfY29sdW1uX2hv bW9nZW5lb3VzICgpOworKwkJcHVibGljIHVpbnQgZ2V0X2NvbHVtbl9zcGFjaW5nICgpOworKwkJ cHVibGljIENsdXR0ZXIuT3JpZW50YXRpb24gZ2V0X29yaWVudGF0aW9uICgpOworKwkJcHVibGlj IGJvb2wgZ2V0X3Jvd19ob21vZ2VuZW91cyAoKTsKKysJCXB1YmxpYyB1aW50IGdldF9yb3dfc3Bh Y2luZyAoKTsKKysJCXB1YmxpYyB2b2lkIGluc2VydF9jb2x1bW4gKGludCBwb3NpdGlvbik7Cisr CQlwdWJsaWMgdm9pZCBpbnNlcnRfbmV4dF90byAoQ2x1dHRlci5BY3RvciBzaWJsaW5nLCBDbHV0 dGVyLkdyaWRQb3NpdGlvbiBzaWRlKTsKKysJCXB1YmxpYyB2b2lkIGluc2VydF9yb3cgKGludCBw b3NpdGlvbik7CisrCQlwdWJsaWMgdm9pZCBzZXRfY29sdW1uX2hvbW9nZW5lb3VzIChib29sIGhv bW9nZW5lb3VzKTsKKysJCXB1YmxpYyB2b2lkIHNldF9jb2x1bW5fc3BhY2luZyAodWludCBzcGFj aW5nKTsKKysJCXB1YmxpYyB2b2lkIHNldF9vcmllbnRhdGlvbiAoQ2x1dHRlci5PcmllbnRhdGlv biBvcmllbnRhdGlvbik7CisrCQlwdWJsaWMgdm9pZCBzZXRfcm93X2hvbW9nZW5lb3VzIChib29s IGhvbW9nZW5lb3VzKTsKKysJCXB1YmxpYyB2b2lkIHNldF9yb3dfc3BhY2luZyAodWludCBzcGFj aW5nKTsKKysJCXB1YmxpYyBib29sIGNvbHVtbl9ob21vZ2VuZW91cyB7IGdldDsgc2V0OyB9Cisr CQlwdWJsaWMgdWludCBjb2x1bW5fc3BhY2luZyB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgQ2x1 dHRlci5PcmllbnRhdGlvbiBvcmllbnRhdGlvbiB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgYm9v bCByb3dfaG9tb2dlbmVvdXMgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIHVpbnQgcm93X3NwYWNp bmcgeyBnZXQ7IHNldDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9ncm91cF9nZXRfdHlwZSAoKSIpXQor KwlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCXB1YmxpYyBjbGFzcyBHcm91cCA6IENsdXR0 ZXIuQWN0b3IsIEF0ay5JbXBsZW1lbnRvciwgQ2x1dHRlci5BbmltYXRhYmxlLCBDbHV0dGVyLkNv bnRhaW5lciwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9m dW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3RvcioiKV0KKysJCVtWZXJzaW9uIChk ZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMg R3JvdXAgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2lu Y2UgPSAiMS4xMCIsIHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIGludCBnZXRfbl9jaGlsZHJl biAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9 ICIxLjEwIiwgc2luY2UgPSAiMC4yIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9y IGdldF9udGhfY2hpbGQgKGludCBpbmRleF8pOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0 cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHJlbW92ZV9h bGwgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2ltYWdlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBjbGFzcyBJbWFnZSA6IEdMaWIuT2JqZWN0LCBD bHV0dGVyLkNvbnRlbnQgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFs c2UsIHR5cGUgPSAiQ2x1dHRlckNvbnRlbnQqIildCisrCQlwdWJsaWMgSW1hZ2UgKCk7CisrCQlw dWJsaWMgdW5vd25lZCBDb2dsLlRleHR1cmUgZ2V0X3RleHR1cmUgKCk7CisrCQlwdWJsaWMgYm9v bCBzZXRfYXJlYSAoW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIHVpbnQ4W10gZGF0YSwg Q29nbC5QaXhlbEZvcm1hdCBwaXhlbF9mb3JtYXQsIENhaXJvLlJlY3RhbmdsZUludCByZWN0LCB1 aW50IHJvd19zdHJpZGUpIHRocm93cyBHTGliLkVycm9yOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTIiKV0KKysJCXB1YmxpYyBib29sIHNldF9ieXRlcyAoR0xpYi5CeXRlcyBkYXRhLCBDb2ds LlBpeGVsRm9ybWF0IHBpeGVsX2Zvcm1hdCwgdWludCB3aWR0aCwgdWludCBoZWlnaHQsIHVpbnQg cm93X3N0cmlkZSkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlwdWJsaWMgYm9vbCBzZXRfZGF0YSAo W0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIHVpbnQ4W10gZGF0YSwgQ29nbC5QaXhlbEZv cm1hdCBwaXhlbF9mb3JtYXQsIHVpbnQgd2lkdGgsIHVpbnQgaGVpZ2h0LCB1aW50IHJvd19zdHJp ZGUpIHRocm93cyBHTGliLkVycm9yOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9pbnB1dF9kZXZpY2VfZ2V0 X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIElucHV0RGV2aWNlIDogR0xpYi5PYmplY3Qgewor KwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVk IElucHV0RGV2aWNlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGlj IHVub3duZWQgQ2x1dHRlci5JbnB1dERldmljZSBnZXRfYXNzb2NpYXRlZF9kZXZpY2UgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgQ2x1dHRlci5JbnB1dEF4aXMg Z2V0X2F4aXMgKHVpbnQgaW5kZXhfKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJ CXB1YmxpYyBib29sIGdldF9heGlzX3ZhbHVlIChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNl KV0gZG91YmxlW10gYXhlcywgQ2x1dHRlci5JbnB1dEF4aXMgYXhpcywgb3V0IGRvdWJsZSB2YWx1 ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGJvb2wgZ2V0X2Nv b3JkcyAoQ2x1dHRlci5FdmVudFNlcXVlbmNlPyBzZXF1ZW5jZSwgR3JhcGhlbmUuUG9pbnQgcG9p bnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGludCBnZXRfZGV2 aWNlX2lkICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIENsdXR0 ZXIuSW5wdXRNb2RlIGdldF9kZXZpY2VfbW9kZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjIiKV0KKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfZGV2aWNlX25hbWUgKCk7CisrCQlw dWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X2RldmljZV9ub2RlICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMCIpXQorKwkJcHVibGljIENsdXR0ZXIuSW5wdXREZXZpY2VUeXBlIGdldF9kZXZp Y2VfdHlwZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBib29s IGdldF9lbmFibGVkICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1Ymxp YyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X2dyYWJiZWRfYWN0b3IgKCk7CisrCQlwdWJsaWMg dmlydHVhbCBpbnQgZ2V0X2dyb3VwX25fbW9kZXMgKGludCBncm91cCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgYm9vbCBnZXRfaGFzX2N1cnNvciAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBib29sIGdldF9rZXkgKHVpbnQgaW5k ZXhfLCBvdXQgdWludCBrZXl2YWwsIG91dCBDbHV0dGVyLk1vZGlmaWVyVHlwZSBtb2RpZmllcnMp OworKwkJcHVibGljIENsdXR0ZXIuSW5wdXREZXZpY2VNYXBwaW5nIGdldF9tYXBwaW5nX21vZGUg KCk7CisrCQlwdWJsaWMgaW50IGdldF9tb2RlX3N3aXRjaF9idXR0b25fZ3JvdXAgKHVpbnQgYnV0 dG9uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2IildCisrCQlwdWJsaWMgQ2x1dHRlci5N b2RpZmllclR5cGUgZ2V0X21vZGlmaWVyX3N0YXRlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuNiIpXQorKwkJcHVibGljIHVpbnQgZ2V0X25fYXhlcyAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB1aW50IGdldF9uX2tleXMgKCk7CisrCQlwdWJsaWMgaW50 IGdldF9uX21vZGVfZ3JvdXBzICgpOworKwkJcHVibGljIGludCBnZXRfbl9yaW5ncyAoKTsKKysJ CXB1YmxpYyBpbnQgZ2V0X25fc3RyaXBzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIp XQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfcG9pbnRlcl9hY3RvciAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIu U3RhZ2UgZ2V0X3BvaW50ZXJfc3RhZ2UgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yMiIp XQorKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9wcm9kdWN0X2lkICgpOworKwkJcHVibGlj IHVub3duZWQgQ2x1dHRlci5TZWF0IGdldF9zZWF0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuNiIpXQorKwkJcHVibGljIEdMaWIuTGlzdDx3ZWFrIENsdXR0ZXIuSW5wdXREZXZpY2U+IGdl dF9zbGF2ZV9kZXZpY2VzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjIiKV0KKysJCXB1 YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfdmVuZG9yX2lkICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIGdyYWIgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOwor KwkJcHVibGljIHZpcnR1YWwgYm9vbCBpc19ncm91cGVkIChDbHV0dGVyLklucHV0RGV2aWNlIG90 aGVyX2RldmljZSk7CisrCQlwdWJsaWMgdmlydHVhbCBib29sIGlzX21vZGVfc3dpdGNoX2J1dHRv biAodWludCBncm91cCwgdWludCBidXR0b24pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAi KV0KKysJCXB1YmxpYyB2aXJ0dWFsIGJvb2wga2V5Y29kZV90b19ldmRldiAodWludCBoYXJkd2Fy ZV9rZXljb2RlLCB1aW50IGV2ZGV2X2tleWNvZGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTIiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3Igc2VxdWVuY2VfZ2V0X2dyYWJi ZWRfYWN0b3IgKENsdXR0ZXIuRXZlbnRTZXF1ZW5jZSBzZXF1ZW5jZSk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQgc2VxdWVuY2VfZ3JhYiAoQ2x1dHRlci5F dmVudFNlcXVlbmNlIHNlcXVlbmNlLCBDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBzZXF1ZW5jZV91bmdyYWIgKENsdXR0 ZXIuRXZlbnRTZXF1ZW5jZSBzZXF1ZW5jZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42Iild CisrCQlwdWJsaWMgdm9pZCBzZXRfZW5hYmxlZCAoYm9vbCBlbmFibGVkKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9rZXkgKHVpbnQgaW5kZXhfLCB1 aW50IGtleXZhbCwgQ2x1dHRlci5Nb2RpZmllclR5cGUgbW9kaWZpZXJzKTsKKysJCXB1YmxpYyB2 b2lkIHNldF9tYXBwaW5nX21vZGUgKENsdXR0ZXIuSW5wdXREZXZpY2VNYXBwaW5nIG1hcHBpbmcp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHVuZ3JhYiAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHVwZGF0ZV9m cm9tX2V2ZW50IChDbHV0dGVyLkV2ZW50IGV2ZW50LCBib29sIHVwZGF0ZV9zdGFnZSk7CisrCQlb Tm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCB1cGRhdGVfZnJvbV90b29sIChDbHV0 dGVyLklucHV0RGV2aWNlVG9vbCB0b29sKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIENsdXR0ZXIuQmFja2VuZCBiYWNrZW5k IHsgb3duZWQgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBDbHV0dGVyLklucHV0TW9kZSBk ZXZpY2VfbW9kZSB7IGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgc3RyaW5nIGRldmljZV9u b2RlIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJ CXB1YmxpYyBDbHV0dGVyLklucHV0RGV2aWNlVHlwZSBkZXZpY2VfdHlwZSB7IGdldDsgY29uc3Ry dWN0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgYm9vbCBlbmFi bGVkIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1Ymxp YyBib29sIGhhc19jdXJzb3IgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJW05vQWNjZXNzb3JNZXRo b2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgaW50IGlkIHsgZ2V0 OyBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBDbHV0dGVyLklucHV0RGV2aWNlTWFwcGluZyBtYXBw aW5nX21vZGUgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJ cHVibGljIHVpbnQgbl9heGVzIHsgZ2V0OyB9CisrCQlwdWJsaWMgaW50IG5fbW9kZV9ncm91cHMg eyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIGludCBuX3JpbmdzIHsgZ2V0OyBjb25zdHJ1 Y3Q7IH0KKysJCXB1YmxpYyBpbnQgbl9zdHJpcHMgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJW05v QWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMg c3RyaW5nIG5hbWUgeyBvd25lZCBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMjIiKV0KKysJCXB1YmxpYyBzdHJpbmcgcHJvZHVjdF9pZCB7IGdldDsgY29uc3RydWN0 OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5TZWF0IHNlYXQgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMjIiKV0KKysJCXB1YmxpYyBzdHJpbmcgdmVuZG9yX2lkIHsg Z2V0OyBjb25zdHJ1Y3Q7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfaW5wdXRfZGV2aWNlX3Rvb2xfZ2V0 X3R5cGUgKCkiKV0KKysJcHVibGljIGFic3RyYWN0IGNsYXNzIElucHV0RGV2aWNlVG9vbCA6IEdM aWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0K KysJCXByb3RlY3RlZCBJbnB1dERldmljZVRvb2wgKCk7CisrCQlwdWJsaWMgdWludDY0IGdldF9p ZCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjI4IildCisrCQlwdWJsaWMgdWludDY0IGdl dF9zZXJpYWwgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yOCIpXQorKwkJcHVibGljIENs dXR0ZXIuSW5wdXREZXZpY2VUb29sVHlwZSBnZXRfdG9vbF90eXBlICgpOworKwkJcHVibGljIHVp bnQ2NCBpZCB7IGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgdWludDY0IHNlcmlhbCB7IGdl dDsgY29uc3RydWN0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBDbHV0dGVy LklucHV0RGV2aWNlVG9vbFR5cGUgdHlwZSB7IGdldDsgY29uc3RydWN0OyB9CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJj bHV0dGVyX2lucHV0X2ZvY3VzX2dldF90eXBlICgpIildCisrCXB1YmxpYyBhYnN0cmFjdCBjbGFz cyBJbnB1dEZvY3VzIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1 bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIElucHV0Rm9jdXMgKCk7CisrCQlbTm9XcmFw cGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBjb21taXRfdGV4dCAoc3RyaW5nIHRleHQpOwor KwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgZGVsZXRlX3N1cnJvdW5kaW5n ICh1aW50IG9mZnNldCwgdWludCBsZW4pOworKwkJcHVibGljIGJvb2wgZmlsdGVyX2tleV9ldmVu dCAoQ2x1dHRlci5LZXlFdmVudCBrZXkpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0 dWFsIHZvaWQgZm9jdXNfaW4gKENsdXR0ZXIuSW5wdXRNZXRob2QgaW5wdXRfbWV0aG9kKTsKKysJ CVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGZvY3VzX291dCAoKTsKKysJCXB1 YmxpYyBib29sIGlzX2ZvY3VzZWQgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1 YWwgdm9pZCByZXF1ZXN0X3N1cnJvdW5kaW5nICgpOworKwkJcHVibGljIHZvaWQgcmVzZXQgKCk7 CisrCQlwdWJsaWMgdm9pZCBzZXRfY2FuX3Nob3dfcHJlZWRpdCAoYm9vbCBjYW5fc2hvd19wcmVl ZGl0KTsKKysJCXB1YmxpYyB2b2lkIHNldF9jb250ZW50X2hpbnRzIChDbHV0dGVyLklucHV0Q29u dGVudEhpbnRGbGFncyBoaW50KTsKKysJCXB1YmxpYyB2b2lkIHNldF9jb250ZW50X3B1cnBvc2Ug KENsdXR0ZXIuSW5wdXRDb250ZW50UHVycG9zZSBwdXJwb3NlKTsKKysJCXB1YmxpYyB2b2lkIHNl dF9jdXJzb3JfbG9jYXRpb24gKEdyYXBoZW5lLlJlY3QgcmVjdCk7CisrCQlwdWJsaWMgdm9pZCBz ZXRfaW5wdXRfcGFuZWxfc3RhdGUgKENsdXR0ZXIuSW5wdXRQYW5lbFN0YXRlIHN0YXRlKTsKKysJ CVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHNldF9wcmVlZGl0X3RleHQgKHN0 cmluZyBwcmVlZGl0LCB1aW50IGN1cnNvcik7CisrCQlwdWJsaWMgdm9pZCBzZXRfc3Vycm91bmRp bmcgKHN0cmluZyB0ZXh0LCB1aW50IGN1cnNvciwgdWludCBhbmNob3IpOworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1 dHRlcl9pbnB1dF9tZXRob2RfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGFic3RyYWN0IGNsYXNz IElucHV0TWV0aG9kIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1 bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIElucHV0TWV0aG9kICgpOworKwkJW05vV3Jh cHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIGJvb2wgZmlsdGVyX2tleV9ldmVudCAoQ2x1dHRlci5F dmVudCBrZXkpOworKwkJcHVibGljIHZpcnR1YWwgdm9pZCBmb2N1c19pbiAoQ2x1dHRlci5JbnB1 dEZvY3VzIGFjdG9yKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgZm9jdXNfb3V0ICgpOworKwkJ cHVibGljIHZvaWQgZm9yd2FyZF9rZXkgKHVpbnQzMiBrZXl2YWwsIHVpbnQzMiBrZXljb2RlLCB1 aW50MzIgc3RhdGUsIHVpbnQ2NCB0aW1lXywgYm9vbCBwcmVzcyk7CisrCQlwdWJsaWMgdm9pZCBu b3RpZnlfa2V5X2V2ZW50IChDbHV0dGVyLkV2ZW50IGV2ZW50LCBib29sIGZpbHRlcmVkKTsKKysJ CVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHJlc2V0ICgpOworKwkJW05vV3Jh cHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgc2V0X2N1cnNvcl9sb2NhdGlvbiAoR3JhcGhl bmUuUmVjdCByZWN0KTsKKysJCXB1YmxpYyB2b2lkIHNldF9pbnB1dF9wYW5lbF9zdGF0ZSAoQ2x1 dHRlci5JbnB1dFBhbmVsU3RhdGUgc3RhdGUpOworKwkJcHVibGljIHZvaWQgc2V0X3ByZWVkaXRf dGV4dCAoc3RyaW5nPyBwcmVlZGl0LCB1aW50IGN1cnNvcik7CisrCQlbTm9XcmFwcGVyXQorKwkJ cHVibGljIHZpcnR1YWwgdm9pZCBzZXRfc3Vycm91bmRpbmcgKHN0cmluZyB0ZXh0LCB1aW50IGN1 cnNvciwgdWludCBhbmNob3IpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZv aWQgdXBkYXRlX2NvbnRlbnRfaGludHMgKENsdXR0ZXIuSW5wdXRDb250ZW50SGludEZsYWdzIGhp bnQpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgdXBkYXRlX2NvbnRl bnRfcHVycG9zZSAoQ2x1dHRlci5JbnB1dENvbnRlbnRQdXJwb3NlIHB1cnBvc2UpOworKwkJW05v QWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9vbCBjYW5fc2hvd19wcmVlZGl0IHsgZ2V0OyBz ZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIENsdXR0ZXIuSW5wdXRDb250 ZW50SGludEZsYWdzIGNvbnRlbnRfaGludHMgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JN ZXRob2RdCisrCQlwdWJsaWMgQ2x1dHRlci5JbnB1dENvbnRlbnRQdXJwb3NlIGNvbnRlbnRfcHVy cG9zZSB7IGdldDsgc2V0OyB9CisrCQlbSGFzRW1pdHRlcl0KKysJCXB1YmxpYyBzaWduYWwgdm9p ZCBjb21taXQgKHN0cmluZyB0ZXh0KTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBjdXJzb3JfbG9j YXRpb25fY2hhbmdlZCAoR3JhcGhlbmUuUmVjdCBvYmplY3QpOworKwkJW0hhc0VtaXR0ZXJdCisr CQlwdWJsaWMgc2lnbmFsIHZvaWQgZGVsZXRlX3N1cnJvdW5kaW5nICh1aW50IG9mZnNldCwgdWlu dCBsZW4pOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGlucHV0X3BhbmVsX3N0YXRlIChDbHV0dGVy LklucHV0UGFuZWxTdGF0ZSBvYmplY3QpOworKwkJW0hhc0VtaXR0ZXJdCisrCQlwdWJsaWMgc2ln bmFsIHZvaWQgcmVxdWVzdF9zdXJyb3VuZGluZyAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfaW50ZXJ2 YWxfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMg Y2xhc3MgSW50ZXJ2YWwgOiBHTGliLkluaXRpYWxseVVub3duZWQsIENsdXR0ZXIuU2NyaXB0YWJs ZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwdWJs aWMgSW50ZXJ2YWwgKEdMaWIuVHlwZSBndHlwZSwgLi4uKTsKKysJCXB1YmxpYyBDbHV0dGVyLklu dGVydmFsIGNsb25lICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGlj IHVub3duZWQgR0xpYi5WYWx1ZT8gY29tcHV0ZSAoZG91YmxlIGZhY3Rvcik7CisrCQlwdWJsaWMg dmlydHVhbCBib29sIGNvbXB1dGVfdmFsdWUgKGRvdWJsZSBmYWN0b3IsIG91dCBHTGliLlZhbHVl IHZhbHVlKTsKKysJCXB1YmxpYyBHTGliLlZhbHVlIGdldF9maW5hbF92YWx1ZSAoKTsKKysJCXB1 YmxpYyBHTGliLlZhbHVlIGdldF9pbml0aWFsX3ZhbHVlICgpOworKwkJcHVibGljIHZvaWQgZ2V0 X2ludGVydmFsICguLi4pOworKwkJcHVibGljIEdMaWIuVHlwZSBnZXRfdmFsdWVfdHlwZSAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgYm9vbCBpc192YWxpZCAo KTsKKysJCXB1YmxpYyB1bm93bmVkIEdMaWIuVmFsdWU/IHBlZWtfZmluYWxfdmFsdWUgKCk7Cisr CQlwdWJsaWMgdW5vd25lZCBHTGliLlZhbHVlPyBwZWVrX2luaXRpYWxfdmFsdWUgKCk7CisrCQlw dWJsaWMgc3RhdGljIHZvaWQgcmVnaXN0ZXJfcHJvZ3Jlc3NfZnVuYyAoR0xpYi5UeXBlIHZhbHVl X3R5cGUsIENsdXR0ZXIuUHJvZ3Jlc3NGdW5jIGZ1bmMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9maW5hbCAoLi4uKTsKKysJCXB1YmxpYyB2b2lk IHNldF9maW5hbF92YWx1ZSAoR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2luaXRpYWwgKC4uLik7CisrCQlwdWJsaWMg dm9pZCBzZXRfaW5pdGlhbF92YWx1ZSAoR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlwdWJsaWMgdm9p ZCBzZXRfaW50ZXJ2YWwgKC4uLik7CisrCQlwdWJsaWMgdmlydHVhbCBib29sIHZhbGlkYXRlIChH TGliLlBhcmFtU3BlYyBwc3BlYyk7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24g PSBmYWxzZSldCisrCQlwdWJsaWMgSW50ZXJ2YWwud2l0aF92YWx1ZXMgKEdMaWIuVHlwZSBndHlw ZSwgR0xpYi5WYWx1ZT8gaW5pdGlhbCwgR0xpYi5WYWx1ZT8gZmluYWwpOworKwkJW05vQWNjZXNz b3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIEdMaWIu VmFsdWUgZmluYWwgeyBvd25lZCBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIEdMaWIuVmFsdWUgaW5pdGlh bCB7IG93bmVkIGdldDsgc2V0OyB9CisrCQlwdWJsaWMgR0xpYi5UeXBlIHZhbHVlX3R5cGUgeyBn ZXQ7IGNvbnN0cnVjdDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbQ29tcGFjdF0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwlwdWJsaWMgY2xhc3MgS2V5RXZlbnQgOiBDbHV0dGVy LkV2ZW50IHsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuSW5wdXREZXZpY2UgZGV2aWNlOworKwkJ cHVibGljIENsdXR0ZXIuRXZlbnRGbGFncyBmbGFnczsKKysJCXB1YmxpYyB1aW50MTYgaGFyZHdh cmVfa2V5Y29kZTsKKysJCXB1YmxpYyB1aW50IGtleXZhbDsKKysJCXB1YmxpYyBDbHV0dGVyLk1v ZGlmaWVyVHlwZSBtb2RpZmllcl9zdGF0ZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuQWN0b3Ig c291cmNlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5TdGFnZSBzdGFnZTsKKysJCXB1YmxpYyB1 aW50MzIgdGltZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50VHlwZSB0eXBlOworKwkJcHVibGlj IHVuaWNoYXIgdW5pY29kZV92YWx1ZTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfa2V5ZnJhbWVfdHJhbnNp dGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwlwdWJs aWMgY2xhc3MgS2V5ZnJhbWVUcmFuc2l0aW9uIDogQ2x1dHRlci5Qcm9wZXJ0eVRyYW5zaXRpb24s IENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24g PSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyVHJhbnNpdGlvbioiKV0KKysJCXB1YmxpYyBLZXlmcmFt ZVRyYW5zaXRpb24gKHN0cmluZyBwcm9wZXJ0eV9uYW1lKTsKKysJCXB1YmxpYyB2b2lkIGNsZWFy ICgpOworKwkJcHVibGljIHZvaWQgZ2V0X2tleV9mcmFtZSAodWludCBpbmRleF8sIG91dCBkb3Vi bGUga2V5LCBvdXQgQ2x1dHRlci5BbmltYXRpb25Nb2RlIG1vZGUsIG91dCBHTGliLlZhbHVlIHZh bHVlKTsKKysJCXB1YmxpYyB1aW50IGdldF9uX2tleV9mcmFtZXMgKCk7CisrCQlwdWJsaWMgdm9p ZCBzZXRfa2V5X2ZyYW1lICh1aW50IGluZGV4XywgZG91YmxlIGtleSwgQ2x1dHRlci5BbmltYXRp b25Nb2RlIG1vZGUsIEdMaWIuVmFsdWUgdmFsdWUpOworKwkJcHVibGljIHZvaWQgc2V0X2tleV9m cmFtZXMgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoX2NuYW1lID0gIm5fa2V5X2ZyYW1lcyIsIGFycmF5 X2xlbmd0aF9wb3MgPSAwLjUsIGFycmF5X2xlbmd0aF90eXBlID0gImd1aW50IildIGRvdWJsZVtd IGtleV9mcmFtZXMpOworKwkJcHVibGljIHZvaWQgc2V0X21vZGVzIChbQ0NvZGUgKGFycmF5X2xl bmd0aF9jbmFtZSA9ICJuX21vZGVzIiwgYXJyYXlfbGVuZ3RoX3BvcyA9IDAuNSwgYXJyYXlfbGVu Z3RoX3R5cGUgPSAiZ3VpbnQiKV0gQ2x1dHRlci5BbmltYXRpb25Nb2RlW10gbW9kZXMpOworKwkJ cHVibGljIHZvaWQgc2V0X3ZhbHVlcyAoW0NDb2RlIChhcnJheV9sZW5ndGhfY25hbWUgPSAibl92 YWx1ZXMiLCBhcnJheV9sZW5ndGhfcG9zID0gMC41LCBhcnJheV9sZW5ndGhfdHlwZSA9ICJndWlu dCIpXSBHTGliLlZhbHVlW10gdmFsdWVzKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfa2V5bWFwX2dldF90 eXBlICgpIildCisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBLZXltYXAgOiBHTGliLk9iamVjdCB7 CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0 ZWQgS2V5bWFwICgpOworKwkJcHVibGljIHZpcnR1YWwgYm9vbCBnZXRfY2Fwc19sb2NrX3N0YXRl ICgpOworKwkJcHVibGljIHZpcnR1YWwgUGFuZ28uRGlyZWN0aW9uIGdldF9kaXJlY3Rpb24gKCk7 CisrCQlwdWJsaWMgdmlydHVhbCBib29sIGdldF9udW1fbG9ja19zdGF0ZSAoKTsKKysJCXB1Ymxp YyBzaWduYWwgdm9pZCBzdGF0ZV9jaGFuZ2VkICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9sYXllcl9u b2RlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBMYXllck5vZGUgOiBDbHV0dGVyLlBh aW50Tm9kZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlw ZSA9ICJDbHV0dGVyUGFpbnROb2RlKiIpXQorKwkJcHVibGljIExheWVyTm9kZSAoQ29nbC5NYXRy aXggcHJvamVjdGlvbiwgQ2Fpcm8uUmVjdGFuZ2xlIHZpZXdwb3J0LCBmbG9hdCB3aWR0aCwgZmxv YXQgaGVpZ2h0LCB1aW50OCBvcGFjaXR5KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfbGF5b3V0X21hbmFn ZXJfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwlwdWJsaWMg YWJzdHJhY3QgY2xhc3MgTGF5b3V0TWFuYWdlciA6IEdMaWIuSW5pdGlhbGx5VW5vd25lZCB7Cisr CQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQg TGF5b3V0TWFuYWdlciAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgYWxsb2NhdGUgKENsdXR0 ZXIuQ29udGFpbmVyIGNvbnRhaW5lciwgQ2x1dHRlci5BY3RvckJveCBhbGxvY2F0aW9uLCBDbHV0 dGVyLkFsbG9jYXRpb25GbGFncyBmbGFncyk7CisrCQlwdWJsaWMgdm9pZCBjaGlsZF9nZXQgKENs dXR0ZXIuQ29udGFpbmVyIGNvbnRhaW5lciwgQ2x1dHRlci5BY3RvciBhY3RvciwgLi4uKTsKKysJ CXB1YmxpYyB2b2lkIGNoaWxkX2dldF9wcm9wZXJ0eSAoQ2x1dHRlci5Db250YWluZXIgY29udGFp bmVyLCBDbHV0dGVyLkFjdG9yIGFjdG9yLCBzdHJpbmcgcHJvcGVydHlfbmFtZSwgR0xpYi5WYWx1 ZSB2YWx1ZSk7CisrCQlwdWJsaWMgdm9pZCBjaGlsZF9zZXQgKENsdXR0ZXIuQ29udGFpbmVyIGNv bnRhaW5lciwgQ2x1dHRlci5BY3RvciBhY3RvciwgLi4uKTsKKysJCXB1YmxpYyB2b2lkIGNoaWxk X3NldF9wcm9wZXJ0eSAoQ2x1dHRlci5Db250YWluZXIgY29udGFpbmVyLCBDbHV0dGVyLkFjdG9y IGFjdG9yLCBzdHJpbmcgcHJvcGVydHlfbmFtZSwgR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlbTm9X cmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdW5vd25lZCBDbHV0dGVyLkxheW91dE1ldGEgY3Jl YXRlX2NoaWxkX21ldGEgKENsdXR0ZXIuQ29udGFpbmVyIGNvbnRhaW5lciwgQ2x1dHRlci5BY3Rv ciBhY3Rvcik7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBlbmRfYW5p bWF0aW9uICgpOworKwkJcHVibGljIHVub3duZWQgR0xpYi5QYXJhbVNwZWMgZmluZF9jaGlsZF9w cm9wZXJ0eSAoc3RyaW5nIG5hbWUpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFs IGRvdWJsZSBnZXRfYW5pbWF0aW9uX3Byb2dyZXNzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5MYXlvdXRNZXRhIGdldF9jaGlsZF9t ZXRhIChDbHV0dGVyLkNvbnRhaW5lciBjb250YWluZXIsIENsdXR0ZXIuQWN0b3IgYWN0b3IpOwor KwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIEdMaWIuVHlwZSBnZXRfY2hpbGRfbWV0 YV90eXBlICgpOworKwkJcHVibGljIHZpcnR1YWwgdm9pZCBnZXRfcHJlZmVycmVkX2hlaWdodCAo Q2x1dHRlci5Db250YWluZXIgY29udGFpbmVyLCBmbG9hdCBmb3Jfd2lkdGgsIG91dCBmbG9hdCBt aW5faGVpZ2h0X3AsIG91dCBmbG9hdCBuYXRfaGVpZ2h0X3ApOworKwkJcHVibGljIHZpcnR1YWwg dm9pZCBnZXRfcHJlZmVycmVkX3dpZHRoIChDbHV0dGVyLkNvbnRhaW5lciBjb250YWluZXIsIGZs b2F0IGZvcl9oZWlnaHQsIG91dCBmbG9hdCBtaW5fd2lkdGhfcCwgb3V0IGZsb2F0IG5hdF93aWR0 aF9wKTsKKysJCVtDQ29kZSAoYXJyYXlfbGVuZ3RoX3BvcyA9IDAuMSwgYXJyYXlfbGVuZ3RoX3R5 cGUgPSAiZ3VpbnQiKV0KKysJCXB1YmxpYyBHTGliLlBhcmFtU3BlY1tdIGxpc3RfY2hpbGRfcHJv cGVydGllcyAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgc2V0X2NvbnRhaW5lciAoQ2x1dHRl ci5Db250YWluZXI/IGNvbnRhaW5lcik7CisrCQlbSGFzRW1pdHRlcl0KKysJCXB1YmxpYyB2aXJ0 dWFsIHNpZ25hbCB2b2lkIGxheW91dF9jaGFuZ2VkICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9sYXlv dXRfbWV0YV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCXB1 YmxpYyBhYnN0cmFjdCBjbGFzcyBMYXlvdXRNZXRhIDogQ2x1dHRlci5DaGlsZE1ldGEgeworKwkJ W0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIExh eW91dE1ldGEgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkxheW91dE1hbmFnZXIgZ2V0 X21hbmFnZXIgKCk7CisrCQlwdWJsaWMgQ2x1dHRlci5MYXlvdXRNYW5hZ2VyIG1hbmFnZXIgeyBn ZXQ7IGNvbnN0cnVjdDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNvcHlfZnVuY3Rpb24gPSAiZ19ib3hlZF9jb3B5IiwgZnJlZV9mdW5j dGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0eXBlX2lkID0gImNsdXR0ZXJfbWFyZ2luX2dldF90eXBl ICgpIildCisrCVtDb21wYWN0XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJs aWMgY2xhc3MgTWFyZ2luIHsKKysJCXB1YmxpYyBmbG9hdCBib3R0b207CisrCQlwdWJsaWMgZmxv YXQgbGVmdDsKKysJCXB1YmxpYyBmbG9hdCByaWdodDsKKysJCXB1YmxpYyBmbG9hdCB0b3A7Cisr CQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwdWJsaWMgTWFy Z2luICgpOworKwkJcHVibGljIENsdXR0ZXIuTWFyZ2luIGNvcHkgKCk7CisrCQlwdWJsaWMgdm9p ZCBmcmVlICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbQ29tcGFjdF0KKysJW1ZlcnNpb24g KHNpbmNlID0gIjAuMiIpXQorKwlwdWJsaWMgY2xhc3MgTW90aW9uRXZlbnQgOiBDbHV0dGVyLkV2 ZW50IHsKKysJCXB1YmxpYyBkb3VibGUgYXhlczsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuSW5w dXREZXZpY2UgZGV2aWNlOworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRGbGFncyBmbGFnczsKKysJ CXB1YmxpYyBDbHV0dGVyLk1vZGlmaWVyVHlwZSBtb2RpZmllcl9zdGF0ZTsKKysJCXB1YmxpYyB3 ZWFrIENsdXR0ZXIuQWN0b3Igc291cmNlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5TdGFnZSBz dGFnZTsKKysJCXB1YmxpYyB1aW50MzIgdGltZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50VHlw ZSB0eXBlOworKwkJcHVibGljIGZsb2F0IHg7CisrCQlwdWJsaWMgZmxvYXQgeTsKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0g ImNsdXR0ZXJfb2Zmc2NyZWVuX2VmZmVjdF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMS40IildCisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBPZmZzY3JlZW5FZmZlY3QgOiBD bHV0dGVyLkVmZmVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxz ZSldCisrCQlwcm90ZWN0ZWQgT2Zmc2NyZWVuRWZmZWN0ICgpOworKwkJcHVibGljIHZpcnR1YWwg Q29nbC5IYW5kbGUgY3JlYXRlX3RleHR1cmUgKGZsb2F0IHdpZHRoLCBmbG9hdCBoZWlnaHQpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTQiKV0KKysJCXB1YmxpYyBib29sIGdldF90YXJnZXRf cmVjdCAob3V0IHVub3duZWQgR3JhcGhlbmUuUmVjdCByZWN0KTsKKysJCVtWZXJzaW9uIChkZXBy ZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE0Iiwgc2luY2UgPSAiMS44Iild CisrCQlwdWJsaWMgYm9vbCBnZXRfdGFyZ2V0X3NpemUgKG91dCBmbG9hdCB3aWR0aCwgb3V0IGZs b2F0IGhlaWdodCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHVu b3duZWQgQ29nbC5IYW5kbGUgZ2V0X3RleHR1cmUgKCk7CisrCQlwdWJsaWMgdmlydHVhbCB2b2lk IHBhaW50X3RhcmdldCAoQ2x1dHRlci5QYWludENvbnRleHQgcGFpbnRfY29udGV4dCk7CisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9p ZCA9ICJjbHV0dGVyX3BhZ2VfdHVybl9lZmZlY3RfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24g KHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgY2xhc3MgUGFnZVR1cm5FZmZlY3QgOiBDbHV0dGVy LkRlZm9ybUVmZmVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxz ZSwgdHlwZSA9ICJDbHV0dGVyRWZmZWN0KiIpXQorKwkJcHVibGljIFBhZ2VUdXJuRWZmZWN0IChk b3VibGUgcGVyaW9kLCBkb3VibGUgYW5nbGUsIGZsb2F0IHJhZGl1cyk7CisrCQlwdWJsaWMgZG91 YmxlIGdldF9hbmdsZSAoKTsKKysJCXB1YmxpYyBkb3VibGUgZ2V0X3BlcmlvZCAoKTsKKysJCXB1 YmxpYyBmbG9hdCBnZXRfcmFkaXVzICgpOworKwkJcHVibGljIHZvaWQgc2V0X2FuZ2xlIChkb3Vi bGUgYW5nbGUpOworKwkJcHVibGljIHZvaWQgc2V0X3BlcmlvZCAoZG91YmxlIHBlcmlvZCk7Cisr CQlwdWJsaWMgdm9pZCBzZXRfcmFkaXVzIChmbG9hdCByYWRpdXMpOworKwkJcHVibGljIGRvdWJs ZSBhbmdsZSB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgZG91YmxlIHBlcmlvZCB7IGdldDsgc2V0 OyB9CisrCQlwdWJsaWMgZmxvYXQgcmFkaXVzIHsgZ2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCByZWZfZnVuY3Rpb24gPSAi Y2x1dHRlcl9wYWludF9jb250ZXh0X3JlZiIsIHR5cGVfaWQgPSAiY2x1dHRlcl9wYWludF9jb250 ZXh0X2dldF90eXBlICgpIiwgdW5yZWZfZnVuY3Rpb24gPSAiY2x1dHRlcl9wYWludF9jb250ZXh0 X3VucmVmIildCisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3MgUGFpbnRDb250ZXh0IHsKKysJ CXB1YmxpYyB2b2lkIGRlc3Ryb3kgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDb2dsLkZyYW1lYnVm ZmVyIGdldF9mcmFtZWJ1ZmZlciAoKTsKKysJCXB1YmxpYyB2b2lkIHBvcF9mcmFtZWJ1ZmZlciAo KTsKKysJCXB1YmxpYyB2b2lkIHB1c2hfZnJhbWVidWZmZXIgKENvZ2wuRnJhbWVidWZmZXIgZnJh bWVidWZmZXIpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5QYWludENvbnRleHQgQHJlZiAo KTsKKysJCXB1YmxpYyB2b2lkIHVucmVmICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9wYWludF9ub2Rl X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBh YnN0cmFjdCBjbGFzcyBQYWludE5vZGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0 aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFBhaW50Tm9kZSAoKTsKKysJCXB1YmxpYyB2b2lk IGFkZF9jaGlsZCAoQ2x1dHRlci5QYWludE5vZGUgY2hpbGQpOworKwkJcHVibGljIHZvaWQgYWRk X211bHRpdGV4dHVyZV9yZWN0YW5nbGUgKENsdXR0ZXIuQWN0b3JCb3ggcmVjdCwgZmxvYXQgdGV4 dF9jb29yZHMsIHVpbnQgdGV4dF9jb29yZHNfbGVuKTsKKysJCXB1YmxpYyB2b2lkIGFkZF9yZWN0 YW5nbGUgKENsdXR0ZXIuQWN0b3JCb3ggcmVjdCk7CisrCQlwdWJsaWMgdm9pZCBhZGRfdGV4dHVy ZV9yZWN0YW5nbGUgKENsdXR0ZXIuQWN0b3JCb3ggcmVjdCwgZmxvYXQgeF8xLCBmbG9hdCB5XzEs IGZsb2F0IHhfMiwgZmxvYXQgeV8yKTsKKysJCXB1YmxpYyB1bm93bmVkIENvZ2wuRnJhbWVidWZm ZXIgZ2V0X2ZyYW1lYnVmZmVyICgpOworKwkJcHVibGljIHZvaWQgcGFpbnQgKENsdXR0ZXIuUGFp bnRDb250ZXh0IHBhaW50X2NvbnRleHQpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5QYWlu dE5vZGUgQHJlZiAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9uYW1lIChzdHJpbmcgbmFtZSk7Cisr CQlwdWJsaWMgdm9pZCB1bnJlZiAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZy ZWVfZnVuY3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3BhaW50X3Zv bHVtZV9nZXRfdHlwZSAoKSIpXQorKwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEu NCIpXQorKwlwdWJsaWMgY2xhc3MgUGFpbnRWb2x1bWUgeworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuNiIpXQorKwkJcHVibGljIENsdXR0ZXIuUGFpbnRWb2x1bWUgY29weSAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB2b2lkIGZyZWUgKCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X2RlcHRoICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIGZsb2F0IGdldF9oZWlnaHQgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgdm9pZCBnZXRfb3JpZ2luIChv dXQgdW5vd25lZCBHcmFwaGVuZS5Qb2ludDNEIHZlcnRleCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS42IildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3dpZHRoICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuNiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2RlcHRoIChmbG9hdCBkZXB0aCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgYm9vbCBzZXRfZnJvbV9hbGxv Y2F0aW9uIChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYi KV0KKysJCXB1YmxpYyB2b2lkIHNldF9oZWlnaHQgKGZsb2F0IGhlaWdodCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgdm9pZCBzZXRfb3JpZ2luIChHcmFwaGVuZS5Q b2ludDNEIG9yaWdpbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMg dm9pZCBzZXRfd2lkdGggKGZsb2F0IHdpZHRoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYi KV0KKysJCXB1YmxpYyB2b2lkIHVuaW9uIChDbHV0dGVyLlBhaW50Vm9sdW1lIGFub3RoZXJfcHYp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHVuaW9uX2Jv eCAoQ2x1dHRlci5BY3RvckJveCBib3gpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9wYW5fYWN0aW9uX2dl dF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCXB1YmxpYyBjbGFz cyBQYW5BY3Rpb24gOiBDbHV0dGVyLkdlc3R1cmVBY3Rpb24geworKwkJW0NDb2RlIChoYXNfY29u c3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFjdGlvbioiKV0KKysJCXB1 YmxpYyBQYW5BY3Rpb24gKCk7CisrCQlwdWJsaWMgZG91YmxlIGdldF9hY2NlbGVyYXRpb25fZmFj dG9yICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjQiKV0KKysJCXB1YmxpYyBmbG9hdCBn ZXRfY29uc3RyYWluZWRfbW90aW9uX2RlbHRhICh1aW50IHBvaW50LCBvdXQgZmxvYXQgZGVsdGFf eCwgb3V0IGZsb2F0IGRlbHRhX3kpOworKwkJcHVibGljIGRvdWJsZSBnZXRfZGVjZWxlcmF0aW9u ICgpOworKwkJcHVibGljIGJvb2wgZ2V0X2ludGVycG9sYXRlICgpOworKwkJcHVibGljIHZvaWQg Z2V0X2ludGVycG9sYXRlZF9jb29yZHMgKG91dCBmbG9hdCBpbnRlcnBvbGF0ZWRfeCwgb3V0IGZs b2F0IGludGVycG9sYXRlZF95KTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfaW50ZXJwb2xhdGVkX2Rl bHRhIChvdXQgZmxvYXQgZGVsdGFfeCwgb3V0IGZsb2F0IGRlbHRhX3kpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTQiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9tb3Rpb25fY29vcmRzICh1aW50 IHBvaW50LCBvdXQgZmxvYXQgbW90aW9uX3gsIG91dCBmbG9hdCBtb3Rpb25feSk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xNCIpXQorKwkJcHVibGljIGZsb2F0IGdldF9tb3Rpb25fZGVsdGEg KHVpbnQgcG9pbnQsIG91dCBmbG9hdCBkZWx0YV94LCBvdXQgZmxvYXQgZGVsdGFfeSk7CisrCQlw dWJsaWMgQ2x1dHRlci5QYW5BeGlzIGdldF9wYW5fYXhpcyAoKTsKKysJCXB1YmxpYyB2b2lkIHNl dF9hY2NlbGVyYXRpb25fZmFjdG9yIChkb3VibGUgZmFjdG9yKTsKKysJCXB1YmxpYyB2b2lkIHNl dF9kZWNlbGVyYXRpb24gKGRvdWJsZSByYXRlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9pbnRlcnBv bGF0ZSAoYm9vbCBzaG91bGRfaW50ZXJwb2xhdGUpOworKwkJcHVibGljIHZvaWQgc2V0X3Bhbl9h eGlzIChDbHV0dGVyLlBhbkF4aXMgYXhpcyk7CisrCQlwdWJsaWMgZG91YmxlIGFjY2VsZXJhdGlv bl9mYWN0b3IgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIGRvdWJsZSBkZWNlbGVyYXRpb24geyBn ZXQ7IHNldDsgfQorKwkJcHVibGljIGJvb2wgaW50ZXJwb2xhdGUgeyBnZXQ7IHNldDsgfQorKwkJ cHVibGljIENsdXR0ZXIuUGFuQXhpcyBwYW5fYXhpcyB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMg dmlydHVhbCBzaWduYWwgYm9vbCBwYW4gKENsdXR0ZXIuQWN0b3IgYWN0b3IsIGJvb2wgaXNfaW50 ZXJwb2xhdGVkKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIHBhbl9zdG9wcGVkIChD bHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBsb3dlcl9jYXNlX2NzdWZmaXggPSAicGFyYW1fdW5pdHMiLCB0 eXBlX2lkID0gImNsdXR0ZXJfcGFyYW1fdW5pdHNfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNs YXNzIFBhcmFtU3BlY1VuaXQgOiBHTGliLlBhcmFtU3BlYyB7CisrCQlbQ0NvZGUgKGhhc19jb25z dHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgUGFyYW1TcGVjVW5pdCAoKTsK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0 eXBlX2lkID0gImNsdXR0ZXJfcGF0aF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCXB1YmxpYyBjbGFzcyBQYXRoIDogR0xpYi5Jbml0aWFsbHlVbm93bmVkIHsK KysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1YmxpYyBQ YXRoICgpOworKwkJcHVibGljIHZvaWQgYWRkX2NhaXJvX3BhdGggKENhaXJvLlBhdGggY3BhdGgp OworKwkJcHVibGljIHZvaWQgYWRkX2Nsb3NlICgpOworKwkJcHVibGljIHZvaWQgYWRkX2N1cnZl X3RvIChpbnQgeF8xLCBpbnQgeV8xLCBpbnQgeF8yLCBpbnQgeV8yLCBpbnQgeF8zLCBpbnQgeV8z KTsKKysJCXB1YmxpYyB2b2lkIGFkZF9saW5lX3RvIChpbnQgeCwgaW50IHkpOworKwkJcHVibGlj IHZvaWQgYWRkX21vdmVfdG8gKGludCB4LCBpbnQgeSk7CisrCQlwdWJsaWMgdm9pZCBhZGRfbm9k ZSAoQ2x1dHRlci5QYXRoTm9kZSBub2RlKTsKKysJCXB1YmxpYyB2b2lkIGFkZF9yZWxfY3VydmVf dG8gKGludCB4XzEsIGludCB5XzEsIGludCB4XzIsIGludCB5XzIsIGludCB4XzMsIGludCB5XzMp OworKwkJcHVibGljIHZvaWQgYWRkX3JlbF9saW5lX3RvIChpbnQgeCwgaW50IHkpOworKwkJcHVi bGljIHZvaWQgYWRkX3JlbF9tb3ZlX3RvIChpbnQgeCwgaW50IHkpOworKwkJcHVibGljIGJvb2wg YWRkX3N0cmluZyAoc3RyaW5nIHN0cik7CisrCQlwdWJsaWMgdm9pZCBjbGVhciAoKTsKKysJCXB1 YmxpYyB2b2lkIEBmb3JlYWNoIChDbHV0dGVyLlBhdGhDYWxsYmFjayBjYWxsYmFjayk7CisrCQlw dWJsaWMgc3RyaW5nIGdldF9kZXNjcmlwdGlvbiAoKTsKKysJCXB1YmxpYyB1aW50IGdldF9sZW5n dGggKCk7CisrCQlwdWJsaWMgdWludCBnZXRfbl9ub2RlcyAoKTsKKysJCXB1YmxpYyBDbHV0dGVy LlBhdGhOb2RlIGdldF9ub2RlICh1aW50IGluZGV4Xyk7CisrCQlwdWJsaWMgR0xpYi5TTGlzdDx3 ZWFrIENsdXR0ZXIuUGF0aE5vZGU/PiBnZXRfbm9kZXMgKCk7CisrCQlwdWJsaWMgdWludCBnZXRf cG9zaXRpb24gKGRvdWJsZSBwcm9ncmVzcywgb3V0IENsdXR0ZXIuS25vdCBwb3NpdGlvbik7Cisr CQlwdWJsaWMgdm9pZCBpbnNlcnRfbm9kZSAoaW50IGluZGV4XywgQ2x1dHRlci5QYXRoTm9kZSBu b2RlKTsKKysJCXB1YmxpYyB2b2lkIHJlbW92ZV9ub2RlICh1aW50IGluZGV4Xyk7CisrCQlwdWJs aWMgdm9pZCByZXBsYWNlX25vZGUgKHVpbnQgaW5kZXhfLCBDbHV0dGVyLlBhdGhOb2RlIG5vZGUp OworKwkJcHVibGljIGJvb2wgc2V0X2Rlc2NyaXB0aW9uIChzdHJpbmcgc3RyKTsKKysJCXB1Ymxp YyB2b2lkIHRvX2NhaXJvX3BhdGggKENhaXJvLkNvbnRleHQgY3IpOworKwkJW0NDb2RlIChoYXNf Y29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHVibGljIFBhdGgud2l0aF9kZXNjcmlw dGlvbiAoc3RyaW5nIGRlc2MpOworKwkJcHVibGljIHN0cmluZyBkZXNjcmlwdGlvbiB7IG93bmVk IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgdWludCBsZW5ndGggeyBnZXQ7IH0KKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNs dXR0ZXJfcGF0aF9jb25zdHJhaW50X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjYiKV0KKysJcHVibGljIGNsYXNzIFBhdGhDb25zdHJhaW50IDogQ2x1dHRlci5Db25zdHJh aW50IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0g IkNsdXR0ZXJDb25zdHJhaW50KiIpXQorKwkJcHVibGljIFBhdGhDb25zdHJhaW50IChDbHV0dGVy LlBhdGg/IHBhdGgsIGZsb2F0IG9mZnNldCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X29mZnNldCAo KTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuUGF0aCBnZXRfcGF0aCAoKTsKKysJCXB1Ymxp YyB2b2lkIHNldF9vZmZzZXQgKGZsb2F0IG9mZnNldCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfcGF0 aCAoQ2x1dHRlci5QYXRoPyBwYXRoKTsKKysJCXB1YmxpYyBmbG9hdCBvZmZzZXQgeyBnZXQ7IHNl dDsgfQorKwkJcHVibGljIENsdXR0ZXIuUGF0aCBwYXRoIHsgZ2V0OyBzZXQ7IH0KKysJCXB1Ymxp YyBzaWduYWwgdm9pZCBub2RlX3JlYWNoZWQgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIHVpbnQgaW5k ZXgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIHJlZl9mdW5jdGlvbiA9ICJjbHV0dGVyX3BpY2tfY29udGV4dF9yZWYiLCB0eXBlX2lkID0g ImNsdXR0ZXJfcGlja19jb250ZXh0X2dldF90eXBlICgpIiwgdW5yZWZfZnVuY3Rpb24gPSAiY2x1 dHRlcl9waWNrX2NvbnRleHRfdW5yZWYiKV0KKysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFzcyBQ aWNrQ29udGV4dCB7CisrCQlwdWJsaWMgdm9pZCBkZXN0cm95ICgpOworKwkJcHVibGljIHVub3du ZWQgQ2x1dHRlci5QaWNrQ29udGV4dCBAcmVmICgpOworKwkJcHVibGljIHZvaWQgdW5yZWYgKCk7 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg dHlwZV9pZCA9ICJjbHV0dGVyX3BpcGVsaW5lX25vZGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGNsYXNzIFBpcGVsaW5lTm9kZSA6IENsdXR0 ZXIuUGFpbnROb2RlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNl KV0KKysJCXByb3RlY3RlZCBQaXBlbGluZU5vZGUgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3Byb3Bl cnR5X3RyYW5zaXRpb25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAi KV0KKysJcHVibGljIGNsYXNzIFByb3BlcnR5VHJhbnNpdGlvbiA6IENsdXR0ZXIuVHJhbnNpdGlv biwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlv biA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJUcmFuc2l0aW9uKiIpXQorKwkJcHVibGljIFByb3Bl cnR5VHJhbnNpdGlvbiAoc3RyaW5nPyBwcm9wZXJ0eV9uYW1lKTsKKysJCXB1YmxpYyB1bm93bmVk IHN0cmluZyBnZXRfcHJvcGVydHlfbmFtZSAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9wcm9wZXJ0 eV9uYW1lIChzdHJpbmc/IHByb3BlcnR5X25hbWUpOworKwkJcHVibGljIHN0cmluZyBwcm9wZXJ0 eV9uYW1lIHsgZ2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfcmVjdGFuZ2xlX2dldF90eXBl ICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJcHVibGljIGNsYXNzIFJlY3Rh bmdsZSA6IENsdXR0ZXIuQWN0b3IsIEF0ay5JbXBsZW1lbnRvciwgQ2x1dHRlci5BbmltYXRhYmxl LCBDbHV0dGVyLkNvbnRhaW5lciwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFz X2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3RvcioiKV0KKysJ CVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIild CisrCQlwdWJsaWMgUmVjdGFuZ2xlICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVl LCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyBD bHV0dGVyLkNvbG9yIGdldF9ib3JkZXJfY29sb3IgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRl ZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjAuMiIpXQorKwkJ cHVibGljIHVpbnQgZ2V0X2JvcmRlcl93aWR0aCAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVk ID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ2x1dHRlci5D b2xvciBnZXRfY29sb3IgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJl Y2F0ZWRfc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2JvcmRlcl9jb2xvciAo Q2x1dHRlci5Db2xvciBjb2xvcik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRl cHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIHZvaWQg c2V0X2JvcmRlcl93aWR0aCAodWludCB3aWR0aCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9 IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2Nv bG9yIChDbHV0dGVyLkNvbG9yIGNvbG9yKTsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5j dGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3RvcioiKV0KKysJCVtWZXJzaW9uIChkZXBy ZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgUmVj dGFuZ2xlLndpdGhfY29sb3IgKENsdXR0ZXIuQ29sb3IgY29sb3IpOworKwkJcHVibGljIENsdXR0 ZXIuQ29sb3IgYm9yZGVyX2NvbG9yIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyB1aW50IGJvcmRl cl93aWR0aCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBjb2xvciB7IGdl dDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIGhhc19ib3Jk ZXIgeyBnZXQ7IHNldDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9yb290X25vZGVfZ2V0X3R5cGUgKCki KV0KKysJcHVibGljIGNsYXNzIFJvb3ROb2RlIDogQ2x1dHRlci5QYWludE5vZGUgeworKwkJW0ND b2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlclBhaW50 Tm9kZSoiKV0KKysJCXB1YmxpYyBSb290Tm9kZSAoQ29nbC5GcmFtZWJ1ZmZlciBmcmFtZWJ1ZmZl ciwgQ2x1dHRlci5Db2xvciBjbGVhcl9jb2xvciwgQ29nbC5CdWZmZXJCaXQgY2xlYXJfZmxhZ3Mp OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IHR5cGVfaWQgPSAiY2x1dHRlcl9yb3RhdGVfYWN0aW9uX2dldF90eXBlICgpIildCisrCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEyIildCisrCXB1YmxpYyBjbGFzcyBSb3RhdGVBY3Rpb24gOiBDbHV0 dGVyLkdlc3R1cmVBY3Rpb24geworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0g ZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFjdGlvbioiKV0KKysJCXB1YmxpYyBSb3RhdGVBY3Rpb24g KCk7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCByb3RhdGUgKENsdXR0ZXIuQWN0b3Ig YWN0b3IsIGRvdWJsZSBhbmdsZSk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3NjcmlwdF9nZXRfdHlwZSAo KSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCXB1YmxpYyBjbGFzcyBTY3JpcHQg OiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxz ZSldCisrCQlwdWJsaWMgU2NyaXB0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQor KwkJcHVibGljIHZvaWQgYWRkX3NlYXJjaF9wYXRocyAoW0NDb2RlIChhcnJheV9sZW5ndGhfY25h bWUgPSAibl9wYXRocyIsIGFycmF5X2xlbmd0aF9wb3MgPSAxLjEsIGFycmF5X2xlbmd0aF90eXBl ID0gImdzaXplIildIHN0cmluZ1tdIHBhdGhzKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0g dHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS44IildCisrCQlwdWJs aWMgdm9pZCBhZGRfc3RhdGVzIChzdHJpbmc/IG5hbWUsIENsdXR0ZXIuU3RhdGUgc3RhdGUpOwor KwkJcHVibGljIHZvaWQgY29ubmVjdF9zaWduYWxzICh2b2lkKiB1c2VyX2RhdGEpOworKwkJcHVi bGljIHZvaWQgY29ubmVjdF9zaWduYWxzX2Z1bGwgKENsdXR0ZXIuU2NyaXB0Q29ubmVjdEZ1bmMg ZnVuYyk7CisrCQlwdWJsaWMgdm9pZCBlbnN1cmVfb2JqZWN0cyAoKTsKKysJCXB1YmxpYyB1bm93 bmVkIEdMaWIuT2JqZWN0IGdldF9vYmplY3QgKHN0cmluZyBuYW1lKTsKKysJCXB1YmxpYyBpbnQg Z2V0X29iamVjdHMgKC4uLik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJl Y2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHVub3duZWQg Q2x1dHRlci5TdGF0ZSBnZXRfc3RhdGVzIChzdHJpbmc/IG5hbWUpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfdHJhbnNsYXRpb25f ZG9tYWluICgpOworKwkJcHVibGljIHZpcnR1YWwgR0xpYi5UeXBlIGdldF90eXBlX2Zyb21fbmFt ZSAoc3RyaW5nIHR5cGVfbmFtZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlw dWJsaWMgR0xpYi5MaXN0PHdlYWsgR0xpYi5PYmplY3Q+IGxpc3Rfb2JqZWN0cyAoKTsKKysJCXB1 YmxpYyB1aW50IGxvYWRfZnJvbV9kYXRhIChzdHJpbmcgZGF0YSwgc3NpemVfdCBsZW5ndGgpIHRo cm93cyBHTGliLkVycm9yOworKwkJcHVibGljIHVpbnQgbG9hZF9mcm9tX2ZpbGUgKHN0cmluZyBm aWxlbmFtZSkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIp XQorKwkJcHVibGljIHVpbnQgbG9hZF9mcm9tX3Jlc291cmNlIChzdHJpbmcgcmVzb3VyY2VfcGF0 aCkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlw dWJsaWMgc3RyaW5nIGxvb2t1cF9maWxlbmFtZSAoc3RyaW5nIGZpbGVuYW1lKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfdHJhbnNsYXRpb25fZG9t YWluIChzdHJpbmc/IGRvbWFpbik7CisrCQlwdWJsaWMgdm9pZCB1bm1lcmdlX29iamVjdHMgKHVp bnQgbWVyZ2VfaWQpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgc3RyaW5nIGZp bGVuYW1lIHsgb3duZWQgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBi b29sIGZpbGVuYW1lX3NldCB7IGdldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0K KysJCXB1YmxpYyBzdHJpbmcgdHJhbnNsYXRpb25fZG9tYWluIHsgZ2V0OyBzZXQ7IH0KKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lk ID0gImNsdXR0ZXJfc2Nyb2xsX2FjdG9yX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEyIildCisrCXB1YmxpYyBjbGFzcyBTY3JvbGxBY3RvciA6IENsdXR0ZXIuQWN0b3Is IEF0ay5JbXBsZW1lbnRvciwgQ2x1dHRlci5BbmltYXRhYmxlLCBDbHV0dGVyLkNvbnRhaW5lciwg Q2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9 IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3RvcioiKV0KKysJCXB1YmxpYyBTY3JvbGxBY3RvciAo KTsKKysJCXB1YmxpYyBDbHV0dGVyLlNjcm9sbE1vZGUgZ2V0X3Njcm9sbF9tb2RlICgpOworKwkJ cHVibGljIHZvaWQgc2Nyb2xsX3RvX3BvaW50IChHcmFwaGVuZS5Qb2ludCBwb2ludCk7CisrCQlw dWJsaWMgdm9pZCBzY3JvbGxfdG9fcmVjdCAoR3JhcGhlbmUuUmVjdCByZWN0KTsKKysJCXB1Ymxp YyB2b2lkIHNldF9zY3JvbGxfbW9kZSAoQ2x1dHRlci5TY3JvbGxNb2RlIG1vZGUpOworKwkJcHVi bGljIENsdXR0ZXIuU2Nyb2xsTW9kZSBzY3JvbGxfbW9kZSB7IGdldDsgc2V0OyB9CisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVf aWQgPSBmYWxzZSldCisrCVtDb21wYWN0XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisr CXB1YmxpYyBjbGFzcyBTY3JvbGxFdmVudCA6IENsdXR0ZXIuRXZlbnQgeworKwkJcHVibGljIGRv dWJsZSBheGVzOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5JbnB1dERldmljZSBkZXZpY2U7Cisr CQlwdWJsaWMgQ2x1dHRlci5TY3JvbGxEaXJlY3Rpb24gZGlyZWN0aW9uOworKwkJcHVibGljIENs dXR0ZXIuU2Nyb2xsRmluaXNoRmxhZ3MgZmluaXNoX2ZsYWdzOworKwkJcHVibGljIENsdXR0ZXIu RXZlbnRGbGFncyBmbGFnczsKKysJCXB1YmxpYyBDbHV0dGVyLk1vZGlmaWVyVHlwZSBtb2RpZmll cl9zdGF0ZTsKKysJCXB1YmxpYyBDbHV0dGVyLlNjcm9sbFNvdXJjZSBzY3JvbGxfc291cmNlOwor KwkJcHVibGljIHdlYWsgQ2x1dHRlci5BY3RvciBzb3VyY2U7CisrCQlwdWJsaWMgd2VhayBDbHV0 dGVyLlN0YWdlIHN0YWdlOworKwkJcHVibGljIHVpbnQzMiB0aW1lOworKwkJcHVibGljIENsdXR0 ZXIuRXZlbnRUeXBlIHR5cGU7CisrCQlwdWJsaWMgZmxvYXQgeDsKKysJCXB1YmxpYyBmbG9hdCB5 OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IHR5cGVfaWQgPSAiY2x1dHRlcl9zZWF0X2dldF90eXBlICgpIildCisrCXB1YmxpYyBhYnN0cmFj dCBjbGFzcyBTZWF0IDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1 bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFNlYXQgKCk7CisrCQlbTm9XcmFwcGVyXQor KwkJcHVibGljIHZpcnR1YWwgdm9pZCBhcHBseV9rYmRfYTExeV9zZXR0aW5ncyAoQ2x1dHRlci5L YmRBMTF5U2V0dGluZ3Mgc2V0dGluZ3MpOworKwkJcHVibGljIHZpcnR1YWwgdm9pZCBiZWxsX25v dGlmeSAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgY29tcHJlc3NfbW90aW9uIChDbHV0dGVy LkV2ZW50IGV2ZW50LCBDbHV0dGVyLkV2ZW50IHRvX2Rpc2NhcmQpOworKwkJW05vV3JhcHBlcl0K KysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgY29weV9ldmVudF9kYXRhIChDbHV0dGVyLkV2ZW50IHNy YywgQ2x1dHRlci5FdmVudCBkZXN0KTsKKysJCXB1YmxpYyB2aXJ0dWFsIENsdXR0ZXIuVmlydHVh bElucHV0RGV2aWNlIGNyZWF0ZV92aXJ0dWFsX2RldmljZSAoQ2x1dHRlci5JbnB1dERldmljZVR5 cGUgZGV2aWNlX3R5cGUpOworKwkJcHVibGljIHZvaWQgZW5zdXJlX2ExMXlfc3RhdGUgKCk7Cisr CQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBmcmVlX2V2ZW50X2RhdGEgKENs dXR0ZXIuRXZlbnQgZXZlbnQpOworKwkJcHVibGljIHZvaWQgZ2V0X2tiZF9hMTF5X3NldHRpbmdz IChDbHV0dGVyLktiZEExMXlTZXR0aW5ncyBzZXR0aW5ncyk7CisrCQlwdWJsaWMgdmlydHVhbCB1 bm93bmVkIENsdXR0ZXIuSW5wdXREZXZpY2UgZ2V0X2tleWJvYXJkICgpOworKwkJcHVibGljIHZp cnR1YWwgdW5vd25lZCBDbHV0dGVyLktleW1hcCBnZXRfa2V5bWFwICgpOworKwkJcHVibGljIHZp cnR1YWwgdW5vd25lZCBDbHV0dGVyLklucHV0RGV2aWNlIGdldF9wb2ludGVyICgpOworKwkJcHVi bGljIHZvaWQgZ2V0X3BvaW50ZXJfYTExeV9zZXR0aW5ncyAoQ2x1dHRlci5Qb2ludGVyQTExeVNl dHRpbmdzIHNldHRpbmdzKTsKKysJCXB1YmxpYyB2aXJ0dWFsIENsdXR0ZXIuVmlydHVhbERldmlj ZVR5cGUgZ2V0X3N1cHBvcnRlZF92aXJ0dWFsX2RldmljZV90eXBlcyAoKTsKKysJCXB1YmxpYyB2 aXJ0dWFsIEdMaWIuTGlzdDx3ZWFrIENsdXR0ZXIuSW5wdXREZXZpY2U+IGxpc3RfZGV2aWNlcyAo KTsKKysJCXB1YmxpYyB2b2lkIHNldF9rYmRfYTExeV9zZXR0aW5ncyAoQ2x1dHRlci5LYmRBMTF5 U2V0dGluZ3Mgc2V0dGluZ3MpOworKwkJcHVibGljIHZvaWQgc2V0X3BvaW50ZXJfYTExeV9kd2Vs bF9jbGlja190eXBlIChDbHV0dGVyLlBvaW50ZXJBMTF5RHdlbGxDbGlja1R5cGUgY2xpY2tfdHlw ZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfcG9pbnRlcl9hMTF5X3NldHRpbmdzIChDbHV0dGVyLlBv aW50ZXJBMTF5U2V0dGluZ3Mgc2V0dGluZ3MpOworKwkJcHVibGljIHZpcnR1YWwgdm9pZCB3YXJw X3BvaW50ZXIgKGludCB4LCBpbnQgeSk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1Ymxp YyBDbHV0dGVyLkJhY2tlbmQgYmFja2VuZCB7IG93bmVkIGdldDsgY29uc3RydWN0OyB9CisrCQlw dWJsaWMgc2lnbmFsIHZvaWQgZGV2aWNlX2FkZGVkIChDbHV0dGVyLklucHV0RGV2aWNlIG9iamVj dCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgZGV2aWNlX3JlbW92ZWQgKENsdXR0ZXIuSW5wdXRE ZXZpY2Ugb2JqZWN0KTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBrYmRfYTExeV9mbGFnc19jaGFu Z2VkICh1aW50IHNldHRpbmdzX2ZsYWdzLCB1aW50IGNoYW5nZWRfbWFzayk7CisrCQlwdWJsaWMg c2lnbmFsIHZvaWQga2JkX2ExMXlfbW9kc19zdGF0ZV9jaGFuZ2VkICh1aW50IGxhdGNoZWRfbWFz aywgdWludCBsb2NrZWRfbWFzayk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgcHRyX2ExMXlfZHdl bGxfY2xpY2tfdHlwZV9jaGFuZ2VkIChDbHV0dGVyLlBvaW50ZXJBMTF5RHdlbGxDbGlja1R5cGUg Y2xpY2tfdHlwZSk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgcHRyX2ExMXlfdGltZW91dF9zdGFy dGVkIChDbHV0dGVyLklucHV0RGV2aWNlIGRldmljZSwgQ2x1dHRlci5Qb2ludGVyQTExeVRpbWVv dXRUeXBlIHRpbWVvdXRfdHlwZSwgdWludCBkZWxheSk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQg cHRyX2ExMXlfdGltZW91dF9zdG9wcGVkIChDbHV0dGVyLklucHV0RGV2aWNlIGRldmljZSwgQ2x1 dHRlci5Qb2ludGVyQTExeVRpbWVvdXRUeXBlIHRpbWVvdXRfdHlwZSwgYm9vbCBjbGlja2VkKTsK KysJCXB1YmxpYyBzaWduYWwgdm9pZCB0b29sX2NoYW5nZWQgKENsdXR0ZXIuSW5wdXREZXZpY2Ug b2JqZWN0LCBDbHV0dGVyLklucHV0RGV2aWNlVG9vbCBwMCk7CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3Nl dHRpbmdzX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVi bGljIGNsYXNzIFNldHRpbmdzIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3Ry dWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFNldHRpbmdzICgpOworKwkJcHVi bGljIHN0YXRpYyB1bm93bmVkIENsdXR0ZXIuU2V0dGluZ3MgZ2V0X2RlZmF1bHQgKCk7CisrCQlb Tm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVj YXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgQ2x1dHRlci5C YWNrZW5kIGJhY2tlbmQgeyBjb25zdHJ1Y3Q7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIGludCBkbmRfZHJhZ190aHJlc2hv bGQgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgaW50IGRv dWJsZV9jbGlja19kaXN0YW5jZSB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0K KysJCXB1YmxpYyBpbnQgZG91YmxlX2NsaWNrX3RpbWUgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNj ZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgaW50IGZvbnRfYW50aWFsaWFzIHsgZ2V0OyBzZXQ7IH0K KysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGludCBmb250X2RwaSB7IGdldDsgc2V0 OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBzdHJpbmcgZm9udF9oaW50X3N0 eWxlIHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGlj IGludCBmb250X2hpbnRpbmcgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisr CQlwdWJsaWMgc3RyaW5nIGZvbnRfbmFtZSB7IG93bmVkIGdldDsgc2V0OyB9CisrCQlbTm9BY2Nl c3Nvck1ldGhvZF0KKysJCXB1YmxpYyBzdHJpbmcgZm9udF9zdWJwaXhlbF9vcmRlciB7IG93bmVk IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyB1aW50IGZvbnRj b25maWdfdGltZXN0YW1wIHsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBpbnQgbG9uZ19wcmVzc19kdXJhdGlvbiB7 IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyB1aW50IHBhc3N3 b3JkX2hpbnRfdGltZSB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1 YmxpYyBpbnQgdW5zY2FsZWRfZm9udF9kcGkgeyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0K KysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFzcyBTaGFkZXIgeworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9z aGFkZXJfZWZmZWN0X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0K KysJcHVibGljIGNsYXNzIFNoYWRlckVmZmVjdCA6IENsdXR0ZXIuT2Zmc2NyZWVuRWZmZWN0IHsK KysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0 ZXJFZmZlY3QqIildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgU2hh ZGVyRWZmZWN0IChDbHV0dGVyLlNoYWRlclR5cGUgc2hhZGVyX3R5cGUpOworKwkJcHVibGljIHVu b3duZWQgQ29nbC5IYW5kbGUgZ2V0X3Byb2dyYW0gKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDb2ds LkhhbmRsZSBnZXRfc2hhZGVyICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFs IHN0cmluZyBnZXRfc3RhdGljX3NoYWRlcl9zb3VyY2UgKCk7CisrCQlwdWJsaWMgYm9vbCBzZXRf c2hhZGVyX3NvdXJjZSAoc3RyaW5nIHNvdXJjZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfdW5pZm9y bV92YWx1ZSAoc3RyaW5nIG5hbWUsIEdMaWIuVmFsdWUgdmFsdWUpOworKwkJW05vQWNjZXNzb3JN ZXRob2RdCisrCQlwdWJsaWMgQ2x1dHRlci5TaGFkZXJUeXBlIHNoYWRlcl90eXBlIHsgY29uc3Ry dWN0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3NoYWRlcl9mbG9hdF9nZXRfdHlwZSAoKSIpXQorKwlw dWJsaWMgY2xhc3MgU2hhZGVyRmxvYXQgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0 aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFNoYWRlckZsb2F0ICgpOworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1 dHRlcl9zaGFkZXJfaW50X2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBTaGFkZXJJbnQg eworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVj dGVkIFNoYWRlckludCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfc2hhZGVyX21hdHJpeF9nZXRfdHlw ZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgU2hhZGVyTWF0cml4IHsKKysJCVtDQ29kZSAoaGFzX2Nv bnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBTaGFkZXJNYXRyaXggKCk7 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg dHlwZV9pZCA9ICJjbHV0dGVyX3NuYXBfY29uc3RyYWludF9nZXRfdHlwZSAoKSIpXQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMS42IildCisrCXB1YmxpYyBjbGFzcyBTbmFwQ29uc3RyYWludCA6IENs dXR0ZXIuQ29uc3RyYWludCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBm YWxzZSwgdHlwZSA9ICJDbHV0dGVyQ29uc3RyYWludCoiKV0KKysJCXB1YmxpYyBTbmFwQ29uc3Ry YWludCAoQ2x1dHRlci5BY3Rvcj8gc291cmNlLCBDbHV0dGVyLlNuYXBFZGdlIGZyb21fZWRnZSwg Q2x1dHRlci5TbmFwRWRnZSB0b19lZGdlLCBmbG9hdCBvZmZzZXQpOworKwkJcHVibGljIHZvaWQg Z2V0X2VkZ2VzIChvdXQgQ2x1dHRlci5TbmFwRWRnZSBmcm9tX2VkZ2UsIG91dCBDbHV0dGVyLlNu YXBFZGdlIHRvX2VkZ2UpOworKwkJcHVibGljIGZsb2F0IGdldF9vZmZzZXQgKCk7CisrCQlwdWJs aWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF9zb3VyY2UgKCk7CisrCQlwdWJsaWMgdm9pZCBz ZXRfZWRnZXMgKENsdXR0ZXIuU25hcEVkZ2UgZnJvbV9lZGdlLCBDbHV0dGVyLlNuYXBFZGdlIHRv X2VkZ2UpOworKwkJcHVibGljIHZvaWQgc2V0X29mZnNldCAoZmxvYXQgb2Zmc2V0KTsKKysJCXB1 YmxpYyB2b2lkIHNldF9zb3VyY2UgKENsdXR0ZXIuQWN0b3I/IHNvdXJjZSk7CisrCQlbTm9BY2Nl c3Nvck1ldGhvZF0KKysJCXB1YmxpYyBDbHV0dGVyLlNuYXBFZGdlIGZyb21fZWRnZSB7IGdldDsg c2V0IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIGZsb2F0IG9mZnNldCB7IGdldDsgc2V0IGNvbnN0 cnVjdDsgfQorKwkJcHVibGljIENsdXR0ZXIuQWN0b3Igc291cmNlIHsgZ2V0OyBzZXQgY29uc3Ry dWN0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBDbHV0dGVyLlNuYXBFZGdl IHRvX2VkZ2UgeyBnZXQ7IHNldCBjb25zdHJ1Y3Q7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfc3RhZ2Vf Z2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwlwdWJsaWMgY2xh c3MgU3RhZ2UgOiBDbHV0dGVyLkdyb3VwLCBBdGsuSW1wbGVtZW50b3IsIENsdXR0ZXIuQW5pbWF0 YWJsZSwgQ2x1dHRlci5Db250YWluZXIsIENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUg KGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0b3IqIild CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgU3RhZ2UgKCk7CisrCQlw dWJsaWMgYm9vbCBjYXB0dXJlIChib29sIHBhaW50LCBDYWlyby5SZWN0YW5nbGVJbnQgcmVjdCwg Q2x1dHRlci5DYXB0dXJlIGNhcHR1cmVzLCBpbnQgbl9jYXB0dXJlcyk7CisrCQlwdWJsaWMgdm9p ZCBjYXB0dXJlX2ludG8gKGJvb2wgcGFpbnQsIENhaXJvLlJlY3RhbmdsZUludCByZWN0LCB1aW50 OCBkYXRhKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl9zdGFnZV9ldmVudCIpXQorKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwkJcHVibGljIGJvb2wgZW1pdF9ldmVudCAoQ2x1 dHRlci5FdmVudCBldmVudCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIHNpbmNl ID0gIjAuOCIpXQorKwkJcHVibGljIHZvaWQgZW5zdXJlX2N1cnJlbnQgKCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCBlbnN1cmVfcmVkcmF3ICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgZW5zdXJlX3ZpZXdwb3J0 ICgpOworKwkJcHVibGljIHZvaWQgZnJlZXplX3VwZGF0ZXMgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS42IildCisrCQlwdWJsaWMgYm9vbCBnZXRfYWNjZXB0X2ZvY3VzICgpOworKwkJcHVi bGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfYWN0b3JfYXRfcG9zIChDbHV0dGVyLlBpY2tN b2RlIHBpY2tfbW9kZSwgZmxvYXQgeCwgZmxvYXQgeSk7CisrCQlwdWJsaWMgYm9vbCBnZXRfY2Fw dHVyZV9maW5hbF9zaXplIChDYWlyby5SZWN0YW5nbGVJbnQgcmVjdCwgaW50IHdpZHRoLCBpbnQg aGVpZ2h0LCBmbG9hdCBzY2FsZSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRl cHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENsdXR0ZXIuQ29sb3IgZ2V0X2Nv bG9yICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNl ID0gIjEuMTAiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLlN0YWdlIGdldF9k ZWZhdWx0ICgpOworKwkJcHVibGljIGludDY0IGdldF9mcmFtZV9jb3VudGVyICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBn ZXRfa2V5X2ZvY3VzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGlj IHZvaWQgZ2V0X21pbmltdW1fc2l6ZSAob3V0IHVpbnQgd2lkdGgsIG91dCB1aW50IGhlaWdodCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgYm9vbCBnZXRfbW90aW9u X2V2ZW50c19lbmFibGVkICgpOworKwkJcHVibGljIENsdXR0ZXIuUGVyc3BlY3RpdmUgZ2V0X3Bl cnNwZWN0aXZlICgpOworKwkJcHVibGljIENhaXJvLlJlZ2lvbiBnZXRfcmVkcmF3X2NsaXAgKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgYm9vbCBnZXRfdGhyb3R0 bGVfbW90aW9uX2V2ZW50cyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJCXB1 YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfdGl0bGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4yIildCisrCQlwdWJsaWMgYm9vbCBnZXRfdXNlX2FscGhhICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjAuNCIpXQorKwkJcHVibGljIHZvaWQgaGlkZV9jdXJzb3IgKCk7CisrCQlbVmVyc2lv biAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0g IjAuOCIpXQorKwkJcHVibGljIGJvb2wgaXNfZGVmYXVsdCAoKTsKKysJCVtWZXJzaW9uIChkZXBy ZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMC44Iild CisrCQlwdWJsaWMgdm9pZCBxdWV1ZV9yZWRyYXcgKCk7CisrCQlbQ0NvZGUgKGFycmF5X2xlbmd0 aCA9IGZhbHNlKV0KKysJCXB1YmxpYyB1aW50OFtdIHJlYWRfcGl4ZWxzIChpbnQgeCwgaW50IHks IGludCB3aWR0aCA9IC0xLCBpbnQgaGVpZ2h0ID0gLTEpOworKwkJW0NDb2RlIChjbmFtZSA9ICJj bHV0dGVyX3JlZHJhdyIpXQorKwkJcHVibGljIHZvaWQgcmVkcmF3ICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2FjY2VwdF9mb2N1cyAoYm9vbCBh Y2NlcHRfZm9jdXMpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVk X3NpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9jb2xvciAoQ2x1dHRlci5Db2xv ciBjb2xvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdm9pZCBz ZXRfa2V5X2ZvY3VzIChDbHV0dGVyLkFjdG9yPyBhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbWluaW11bV9zaXplICh1aW50IHdpZHRoLCB1 aW50IGhlaWdodCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9p ZCBzZXRfbW90aW9uX2V2ZW50c19lbmFibGVkIChib29sIGVuYWJsZWQpOworKwkJcHVibGljIHZv aWQgc2V0X3BlcnNwZWN0aXZlIChDbHV0dGVyLlBlcnNwZWN0aXZlIHBlcnNwZWN0aXZlKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF90aHJvdHRsZV9t b3Rpb25fZXZlbnRzIChib29sIHRocm90dGxlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQi KV0KKysJCXB1YmxpYyB2b2lkIHNldF90aXRsZSAoc3RyaW5nIHRpdGxlKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF91c2VfYWxwaGEgKGJvb2wgdXNl X2FscGhhKTsKKysJCXB1YmxpYyB2b2lkIHNob3dfY3Vyc29yICgpOworKwkJcHVibGljIHZvaWQg dGhhd191cGRhdGVzICgpOworKwkJcHVibGljIHZvaWQgdXBkYXRlX3Jlc291cmNlX3NjYWxlcyAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBib29sIGFjY2VwdF9m b2N1cyB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJl Y2F0ZWRfc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENsdXR0ZXIuQ29sb3IgY29sb3IgeyBn ZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9vbCBjdXJzb3Jf dmlzaWJsZSB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlw dWJsaWMgQ2x1dHRlci5BY3RvciBrZXlfZm9jdXMgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24g KHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIENsdXR0ZXIuUGVyc3BlY3RpdmUgcGVyc3BlY3Rp dmUgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwkJcHVibGlj IHN0cmluZyB0aXRsZSB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIild CisrCQlwdWJsaWMgYm9vbCB1c2VfYWxwaGEgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNp bmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgYWN0aXZhdGUgKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yMCIpXQorKwkJcHVibGljIHNpZ25hbCB2b2lkIGFm dGVyX3BhaW50ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZp cnR1YWwgc2lnbmFsIHZvaWQgZGVhY3RpdmF0ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjIiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCBib29sIGRlbGV0ZV9ldmVudCAoQ2x1dHRl ci5FdmVudCBldmVudCk7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBwYWludF92aWV3 IChDbHV0dGVyLlN0YWdlVmlldyB2aWV3KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfc3RhZ2VfbWFuYWdl cl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBj bGFzcyBTdGFnZU1hbmFnZXIgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1 Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgU3RhZ2VNYW5hZ2VyICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIENsdXR0 ZXIuU3RhZ2VNYW5hZ2VyIGdldF9kZWZhdWx0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAu OCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5TdGFnZSBnZXRfZGVmYXVsdF9zdGFnZSAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBHTGliLlNMaXN0PHdl YWsgQ2x1dHRlci5TdGFnZT4gbGlzdF9zdGFnZXMgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBHTGli LlNMaXN0PENsdXR0ZXIuU3RhZ2U+IHBlZWtfc3RhZ2VzICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjAuOCIpXQorKwkJcHVibGljIENsdXR0ZXIuU3RhZ2UgZGVmYXVsdF9zdGFnZSB7IGdldDsg fQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFs IHZvaWQgc3RhZ2VfYWRkZWQgKENsdXR0ZXIuU3RhZ2Ugc3RhZ2UpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgc3RhZ2VfcmVtb3Zl ZCAoQ2x1dHRlci5TdGFnZSBzdGFnZSk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtDb21wYWN0 XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCXB1YmxpYyBjbGFzcyBTdGFnZVN0YXRl RXZlbnQgOiBDbHV0dGVyLkV2ZW50IHsKKysJCXB1YmxpYyBDbHV0dGVyLlN0YWdlU3RhdGUgY2hh bmdlZF9tYXNrOworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRGbGFncyBmbGFnczsKKysJCXB1Ymxp YyBDbHV0dGVyLlN0YWdlU3RhdGUgbmV3X3N0YXRlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5B Y3RvciBzb3VyY2U7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLlN0YWdlIHN0YWdlOworKwkJcHVi bGljIHVpbnQzMiB0aW1lOworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRUeXBlIHR5cGU7CisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9p ZCA9ICJjbHV0dGVyX3N0YWdlX3ZpZXdfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFN0 YWdlVmlldyA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlv biA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBTdGFnZVZpZXcgKCk7CisrCQlwdWJsaWMgdW5vd25l ZCBDb2dsLkZyYW1lYnVmZmVyIGdldF9mcmFtZWJ1ZmZlciAoKTsKKysJCXB1YmxpYyB2b2lkIGdl dF9sYXlvdXQgKENhaXJvLlJlY3RhbmdsZUludCByZWN0KTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZv aWQgZ2V0X29mZnNjcmVlbl90cmFuc2Zvcm1hdGlvbl9tYXRyaXggKENvZ2wuTWF0cml4IG1hdHJp eCk7CisrCQlwdWJsaWMgdW5vd25lZCBDb2dsLkZyYW1lYnVmZmVyIGdldF9vbnNjcmVlbiAoKTsK KysJCXB1YmxpYyBmbG9hdCBnZXRfc2NhbGUgKCk7CisrCQlwdWJsaWMgdm9pZCBpbnZhbGlkYXRl X29mZnNjcmVlbl9ibGl0X3BpcGVsaW5lICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2 aXJ0dWFsIHZvaWQgc2V0dXBfb2Zmc2NyZWVuX2JsaXRfcGlwZWxpbmUgKENvZ2wuUGlwZWxpbmUg cGlwZWxpbmUpOworKwkJcHVibGljIHZvaWQgdHJhbnNmb3JtX3RvX29uc2NyZWVuIChmbG9hdCB4 LCBmbG9hdCB5KTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIENhaXJvLlJlY3Rh bmdsZUludCBsYXlvdXQgeyBvd25lZCBnZXQ7IHNldCBjb25zdHJ1Y3Q7IH0KKysJCVtOb0FjY2Vz c29yTWV0aG9kXQorKwkJcHVibGljIGZsb2F0IHNjYWxlIHsgZ2V0OyBzZXQgY29uc3RydWN0OyB9 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg dHlwZV9pZCA9ICJjbHV0dGVyX3N0YXRlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjQiKV0KKysJcHVibGljIGNsYXNzIFN0YXRlIDogR0xpYi5PYmplY3QsIENsdXR0ZXIu U2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSld CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4x MiIsIHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIFN0YXRlICgpOworKwkJW1ZlcnNpb24gKGRl cHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjQi KV0KKysJCXB1YmxpYyB1aW50IGdldF9kdXJhdGlvbiAoc3RyaW5nPyBzb3VyY2Vfc3RhdGVfbmFt ZSwgc3RyaW5nPyB0YXJnZXRfc3RhdGVfbmFtZSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9 IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuNCIpXQorKwkJcHVi bGljIHVub3duZWQgc3RyaW5nIGdldF9zdGF0ZSAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVk ID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS40IildCisrCQlw dWJsaWMgR0xpYi5MaXN0PHdlYWsgc3RyaW5nPiBnZXRfc3RhdGVzICgpOworKwkJW1ZlcnNpb24g KGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIx LjQiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9kdXJhdGlvbiAoc3RyaW5nPyBzb3VyY2Vfc3RhdGVf bmFtZSwgc3RyaW5nPyB0YXJnZXRfc3RhdGVfbmFtZSwgdWludCBkdXJhdGlvbik7CisrCQlbVmVy c2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNl ID0gIjEuNCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5TdGF0ZSBzZXRfa2V5IChzdHJp bmc/IHNvdXJjZV9zdGF0ZV9uYW1lLCBzdHJpbmcgdGFyZ2V0X3N0YXRlX25hbWUsIEdMaWIuT2Jq ZWN0IG9iamVjdCwgc3RyaW5nIHByb3BlcnR5X25hbWUsIHVpbnQgbW9kZSwgR0xpYi5WYWx1ZSB2 YWx1ZSwgZG91YmxlIHByZV9kZWxheSwgZG91YmxlIHBvc3RfZGVsYXkpOworKwkJW1ZlcnNpb24g KGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIx LjQiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuVGltZWxpbmUgc2V0X3N0YXRlIChzdHJp bmcgdGFyZ2V0X3N0YXRlX25hbWUpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBk ZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB1bm93 bmVkIENsdXR0ZXIuVGltZWxpbmUgd2FycF90b19zdGF0ZSAoc3RyaW5nIHRhcmdldF9zdGF0ZV9u YW1lKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0 cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjQiKV0KKysJCXB1Ymxp YyB1aW50IGR1cmF0aW9uIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJ W1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBz aW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBzdHJpbmcgc3RhdGUgeyBvd25lZCBnZXQ7IHNldDsg fQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEu MTIiLCBzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGNvbXBs ZXRlZCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24gPSAi Z19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3N0YXRlX2tleV9nZXRfdHlwZSAoKSIp XQorKwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgY2xh c3MgU3RhdGVLZXkgeworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVk X3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBHTGliLlR5cGUgZ2V0 X3Byb3BlcnR5X3R5cGUgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3N3aXBlX2FjdGlvbl9nZXRfdHlw ZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCXB1YmxpYyBjbGFzcyBTd2lw ZUFjdGlvbiA6IENsdXR0ZXIuR2VzdHVyZUFjdGlvbiB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1 Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0aW9uKiIpXQorKwkJcHVibGlj IFN3aXBlQWN0aW9uICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNh dGVkX3NpbmNlID0gIjEuMTQiLCBzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNp Z25hbCB2b2lkIHN3ZXB0IChDbHV0dGVyLkFjdG9yIGFjdG9yLCBDbHV0dGVyLlN3aXBlRGlyZWN0 aW9uIGRpcmVjdGlvbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNCIpXQorKwkJcHVibGlj IHZpcnR1YWwgc2lnbmFsIGJvb2wgc3dpcGUgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIENsdXR0ZXIu U3dpcGVEaXJlY3Rpb24gZGlyZWN0aW9uKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfdGFwX2FjdGlvbl9n ZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNCIpXQorKwlwdWJsaWMgY2xh c3MgVGFwQWN0aW9uIDogQ2x1dHRlci5HZXN0dXJlQWN0aW9uIHsKKysJCVtDQ29kZSAoaGFzX2Nv bnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3Rpb24qIildCisrCQlw dWJsaWMgVGFwQWN0aW9uICgpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgdGFwIChD bHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfdGV4dF9nZXRfdHlwZSAoKSIp XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBjbGFzcyBUZXh0IDogQ2x1 dHRlci5BY3RvciwgQXRrLkltcGxlbWVudG9yLCBDbHV0dGVyLkFuaW1hdGFibGUsIENsdXR0ZXIu Q29udGFpbmVyLCBDbHV0dGVyLlNjcmlwdGFibGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0 X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFjdG9yKiIpXQorKwkJcHVibGljIFRl eHQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGludCBjb29y ZHNfdG9fcG9zaXRpb24gKGZsb2F0IHgsIGZsb2F0IHkpOworKwkJcHVibGljIHZvaWQgZGVsZXRl X2NoYXJzICh1aW50IG5fY2hhcnMpOworKwkJcHVibGljIGJvb2wgZGVsZXRlX3NlbGVjdGlvbiAo KTsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNs dXR0ZXJBY3RvcioiKV0KKysJCXB1YmxpYyBUZXh0LmZ1bGwgKHN0cmluZyBmb250X25hbWUsIHN0 cmluZyB0ZXh0LCBDbHV0dGVyLkNvbG9yIGNvbG9yKTsKKysJCXB1YmxpYyBib29sIGdldF9hY3Rp dmF0YWJsZSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIFBhbmdvLkF0dHJMaXN0IGdldF9hdHRyaWJ1 dGVzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1bm93bmVk IENsdXR0ZXIuVGV4dEJ1ZmZlciBnZXRfYnVmZmVyICgpOworKwkJcHVibGljIHN0cmluZyBnZXRf Y2hhcnMgKHNzaXplX3Qgc3RhcnRfcG9zLCBzc2l6ZV90IGVuZF9wb3MpOworKwkJcHVibGljIENs dXR0ZXIuQ29sb3IgZ2V0X2NvbG9yICgpOworKwkJcHVibGljIENsdXR0ZXIuQ29sb3IgZ2V0X2N1 cnNvcl9jb2xvciAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0X2N1cnNvcl9wb3NpdGlvbiAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2IildCisrCQlwdWJsaWMgdm9pZCBnZXRfY3Vyc29yX3Jl Y3QgKG91dCB1bm93bmVkIEdyYXBoZW5lLlJlY3QgcmVjdCk7CisrCQlwdWJsaWMgdWludCBnZXRf Y3Vyc29yX3NpemUgKCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfY3Vyc29yX3Zpc2libGUgKCk7Cisr CQlwdWJsaWMgYm9vbCBnZXRfZWRpdGFibGUgKCk7CisrCQlwdWJsaWMgUGFuZ28uRWxsaXBzaXpl TW9kZSBnZXRfZWxsaXBzaXplICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJ cHVibGljIFBhbmdvLkZvbnREZXNjcmlwdGlvbiBnZXRfZm9udF9kZXNjcmlwdGlvbiAoKTsKKysJ CXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfZm9udF9uYW1lICgpOworKwkJcHVibGljIENsdXR0 ZXIuSW5wdXRDb250ZW50SGludEZsYWdzIGdldF9pbnB1dF9oaW50cyAoKTsKKysJCXB1YmxpYyBD bHV0dGVyLklucHV0Q29udGVudFB1cnBvc2UgZ2V0X2lucHV0X3B1cnBvc2UgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgYm9vbCBnZXRfanVzdGlmeSAoKTsKKysJ CXB1YmxpYyB1bm93bmVkIFBhbmdvLkxheW91dCBnZXRfbGF5b3V0ICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgZ2V0X2xheW91dF9vZmZzZXRzIChvdXQg aW50IHgsIG91dCBpbnQgeSk7CisrCQlwdWJsaWMgUGFuZ28uQWxpZ25tZW50IGdldF9saW5lX2Fs aWdubWVudCAoKTsKKysJCXB1YmxpYyBib29sIGdldF9saW5lX3dyYXAgKCk7CisrCQlwdWJsaWMg UGFuZ28uV3JhcE1vZGUgZ2V0X2xpbmVfd3JhcF9tb2RlICgpOworKwkJcHVibGljIGludCBnZXRf bWF4X2xlbmd0aCAoKTsKKysJCXB1YmxpYyB1bmljaGFyIGdldF9wYXNzd29yZF9jaGFyICgpOwor KwkJcHVibGljIGJvb2wgZ2V0X3NlbGVjdGFibGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS44IildCisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBnZXRfc2VsZWN0ZWRfdGV4dF9jb2xvciAo KTsKKysJCXB1YmxpYyBzdHJpbmcgZ2V0X3NlbGVjdGlvbiAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0 X3NlbGVjdGlvbl9ib3VuZCAoKTsKKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIGdldF9zZWxlY3Rp b25fY29sb3IgKCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfc2luZ2xlX2xpbmVfbW9kZSAoKTsKKysJ CXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfdGV4dCAoKTsKKysJCXB1YmxpYyBib29sIGdldF91 c2VfbWFya3VwICgpOworKwkJcHVibGljIGJvb2wgaGFzX3ByZWVkaXQgKCk7CisrCQlwdWJsaWMg dm9pZCBpbnNlcnRfdGV4dCAoc3RyaW5nIHRleHQsIHNzaXplX3QgcG9zaXRpb24pOworKwkJcHVi bGljIHZvaWQgaW5zZXJ0X3VuaWNoYXIgKHVuaWNoYXIgd2MpOworKwkJcHVibGljIGJvb2wgcG9z aXRpb25fdG9fY29vcmRzIChpbnQgcG9zaXRpb24sIG91dCBmbG9hdCB4LCBvdXQgZmxvYXQgeSwg b3V0IGZsb2F0IGxpbmVfaGVpZ2h0ID0gbnVsbCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfYWN0aXZh dGFibGUgKGJvb2wgYWN0aXZhdGFibGUpOworKwkJcHVibGljIHZvaWQgc2V0X2F0dHJpYnV0ZXMg KFBhbmdvLkF0dHJMaXN0PyBhdHRycyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQor KwkJcHVibGljIHZvaWQgc2V0X2J1ZmZlciAoQ2x1dHRlci5UZXh0QnVmZmVyIGJ1ZmZlcik7Cisr CQlwdWJsaWMgdm9pZCBzZXRfY29sb3IgKENsdXR0ZXIuQ29sb3IgY29sb3IpOworKwkJcHVibGlj IHZvaWQgc2V0X2N1cnNvcl9jb2xvciAoQ2x1dHRlci5Db2xvcj8gY29sb3IpOworKwkJcHVibGlj IHZvaWQgc2V0X2N1cnNvcl9wb3NpdGlvbiAoaW50IHBvc2l0aW9uKTsKKysJCXB1YmxpYyB2b2lk IHNldF9jdXJzb3Jfc2l6ZSAoaW50IHNpemUpOworKwkJcHVibGljIHZvaWQgc2V0X2N1cnNvcl92 aXNpYmxlIChib29sIGN1cnNvcl92aXNpYmxlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9lZGl0YWJs ZSAoYm9vbCBlZGl0YWJsZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfZWxsaXBzaXplIChQYW5nby5F bGxpcHNpemVNb2RlIG1vZGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVi bGljIHZvaWQgc2V0X2ZvbnRfZGVzY3JpcHRpb24gKFBhbmdvLkZvbnREZXNjcmlwdGlvbiBmb250 X2Rlc2MpOworKwkJcHVibGljIHZvaWQgc2V0X2ZvbnRfbmFtZSAoc3RyaW5nPyBmb250X25hbWUp OworKwkJcHVibGljIHZvaWQgc2V0X2lucHV0X2hpbnRzIChDbHV0dGVyLklucHV0Q29udGVudEhp bnRGbGFncyBoaW50cyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfaW5wdXRfcHVycG9zZSAoQ2x1dHRl ci5JbnB1dENvbnRlbnRQdXJwb3NlIHB1cnBvc2UpOworKwkJcHVibGljIHZvaWQgc2V0X2p1c3Rp ZnkgKGJvb2wganVzdGlmeSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfbGluZV9hbGlnbm1lbnQgKFBh bmdvLkFsaWdubWVudCBhbGlnbm1lbnQpOworKwkJcHVibGljIHZvaWQgc2V0X2xpbmVfd3JhcCAo Ym9vbCBsaW5lX3dyYXApOworKwkJcHVibGljIHZvaWQgc2V0X2xpbmVfd3JhcF9tb2RlIChQYW5n by5XcmFwTW9kZSB3cmFwX21vZGUpOworKwkJcHVibGljIHZvaWQgc2V0X21hcmt1cCAoc3RyaW5n PyBtYXJrdXApOworKwkJcHVibGljIHZvaWQgc2V0X21heF9sZW5ndGggKGludCBtYXgpOworKwkJ cHVibGljIHZvaWQgc2V0X3Bhc3N3b3JkX2NoYXIgKHVuaWNoYXIgd2MpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3ByZWVkaXRfc3RyaW5nIChzdHJp bmc/IHByZWVkaXRfc3RyLCBQYW5nby5BdHRyTGlzdD8gcHJlZWRpdF9hdHRycywgdWludCBjdXJz b3JfcG9zKTsKKysJCXB1YmxpYyB2b2lkIHNldF9zZWxlY3RhYmxlIChib29sIHNlbGVjdGFibGUp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3NlbGVj dGVkX3RleHRfY29sb3IgKENsdXR0ZXIuQ29sb3I/IGNvbG9yKTsKKysJCXB1YmxpYyB2b2lkIHNl dF9zZWxlY3Rpb24gKHNzaXplX3Qgc3RhcnRfcG9zLCBzc2l6ZV90IGVuZF9wb3MpOworKwkJcHVi bGljIHZvaWQgc2V0X3NlbGVjdGlvbl9ib3VuZCAoaW50IHNlbGVjdGlvbl9ib3VuZCk7CisrCQlw dWJsaWMgdm9pZCBzZXRfc2VsZWN0aW9uX2NvbG9yIChDbHV0dGVyLkNvbG9yPyBjb2xvcik7Cisr CQlwdWJsaWMgdm9pZCBzZXRfc2luZ2xlX2xpbmVfbW9kZSAoYm9vbCBzaW5nbGVfbGluZSk7Cisr CQlwdWJsaWMgdm9pZCBzZXRfdGV4dCAoc3RyaW5nPyB0ZXh0KTsKKysJCXB1YmxpYyB2b2lkIHNl dF91c2VfbWFya3VwIChib29sIHNldHRpbmcpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVy X3RleHRfYWN0aXZhdGUiKV0KKysJCXB1YmxpYyBib29sIHRyeV9hY3RpdmF0ZSAoKTsKKysJCVtD Q29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3Rv cioiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgVGV4dC53aXRo X2J1ZmZlciAoQ2x1dHRlci5UZXh0QnVmZmVyIGJ1ZmZlcik7CisrCQlbQ0NvZGUgKGhhc19jb25z dHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0b3IqIildCisrCQlwdWJs aWMgVGV4dC53aXRoX3RleHQgKHN0cmluZz8gZm9udF9uYW1lLCBzdHJpbmcgdGV4dCk7CisrCQlw dWJsaWMgYm9vbCBhY3RpdmF0YWJsZSB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgUGFuZ28uQXR0 ckxpc3QgYXR0cmlidXRlcyB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44 IildCisrCQlwdWJsaWMgQ2x1dHRlci5UZXh0QnVmZmVyIGJ1ZmZlciB7IGdldDsgc2V0OyB9Cisr CQlwdWJsaWMgQ2x1dHRlci5Db2xvciBjb2xvciB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgQ2x1 dHRlci5Db2xvciBjdXJzb3JfY29sb3IgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRo b2RdCisrCQlwdWJsaWMgYm9vbCBjdXJzb3JfY29sb3Jfc2V0IHsgZ2V0OyB9CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGludCBjdXJzb3JfcG9zaXRpb24geyBnZXQ7 IHNldDsgfQorKwkJcHVibGljIGludCBjdXJzb3Jfc2l6ZSB7IGdldDsgc2V0OyB9CisrCQlwdWJs aWMgYm9vbCBjdXJzb3JfdmlzaWJsZSB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgYm9vbCBlZGl0 YWJsZSB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgUGFuZ28uRWxsaXBzaXplTW9kZSBlbGxpcHNp emUgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGlj IFBhbmdvLkZvbnREZXNjcmlwdGlvbiBmb250X2Rlc2NyaXB0aW9uIHsgb3duZWQgZ2V0OyBzZXQ7 IH0KKysJCXB1YmxpYyBzdHJpbmcgZm9udF9uYW1lIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBD bHV0dGVyLklucHV0Q29udGVudEhpbnRGbGFncyBpbnB1dF9oaW50cyB7IGdldDsgc2V0OyB9Cisr CQlwdWJsaWMgQ2x1dHRlci5JbnB1dENvbnRlbnRQdXJwb3NlIGlucHV0X3B1cnBvc2UgeyBnZXQ7 IHNldDsgfQorKwkJcHVibGljIGJvb2wganVzdGlmeSB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMg UGFuZ28uQWxpZ25tZW50IGxpbmVfYWxpZ25tZW50IHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBi b29sIGxpbmVfd3JhcCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgUGFuZ28uV3JhcE1vZGUgbGlu ZV93cmFwX21vZGUgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIGludCBtYXhfbGVuZ3RoIHsgZ2V0 OyBzZXQ7IH0KKysJCXB1YmxpYyB1aW50IHBhc3N3b3JkX2NoYXIgeyBnZXQ7IHNldDsgfQorKwkJ W05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJl Y2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGludCBwb3Np dGlvbiB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgYm9vbCBzZWxlY3RhYmxlIHsgZ2V0OyBzZXQ7 IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9y IHNlbGVjdGVkX3RleHRfY29sb3IgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2Rd CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgYm9vbCBzZWxlY3RlZF90 ZXh0X2NvbG9yX3NldCB7IGdldDsgfQorKwkJcHVibGljIGludCBzZWxlY3Rpb25fYm91bmQgeyBn ZXQ7IHNldDsgfQorKwkJcHVibGljIENsdXR0ZXIuQ29sb3Igc2VsZWN0aW9uX2NvbG9yIHsgZ2V0 OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wgc2VsZWN0aW9u X2NvbG9yX3NldCB7IGdldDsgfQorKwkJcHVibGljIGJvb2wgc2luZ2xlX2xpbmVfbW9kZSB7IGdl dDsgc2V0OyB9CisrCQlwdWJsaWMgc3RyaW5nIHRleHQgeyBnZXQ7IHNldDsgfQorKwkJcHVibGlj IGJvb2wgdXNlX21hcmt1cCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwg dm9pZCBhY3RpdmF0ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2IildCisrCQlwdWJs aWMgdmlydHVhbCBzaWduYWwgdm9pZCBjdXJzb3JfY2hhbmdlZCAoKTsKKysJCVtWZXJzaW9uIChk ZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBjdXJzb3JfZXZlbnQgKEdyYXBoZW5l LlJlY3QgcmVjdCk7CisrCQlbSGFzRW1pdHRlcl0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIi KV0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCBkZWxldGVfdGV4dCAoaW50IHN0YXJ0X3BvcywgaW50 IGVuZF9wb3MpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgdGV4dF9jaGFuZ2VkICgp OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IHR5cGVfaWQgPSAiY2x1dHRlcl90ZXh0X2J1ZmZlcl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgY2xhc3MgVGV4dEJ1ZmZlciA6IEdMaWIuT2Jq ZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1 YmxpYyBUZXh0QnVmZmVyICgpOworKwkJcHVibGljIHZpcnR1YWwgdWludCBkZWxldGVfdGV4dCAo dWludCBwb3NpdGlvbiwgdWludCBuX2NoYXJzKTsKKysJCXB1YmxpYyB2b2lkIGVtaXRfZGVsZXRl ZF90ZXh0ICh1aW50IHBvc2l0aW9uLCB1aW50IG5fY2hhcnMpOworKwkJcHVibGljIHZvaWQgZW1p dF9pbnNlcnRlZF90ZXh0ICh1aW50IHBvc2l0aW9uLCBzdHJpbmcgY2hhcnMsIHVpbnQgbl9jaGFy cyk7CisrCQlwdWJsaWMgc2l6ZV90IGdldF9ieXRlcyAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHVp bnQgZ2V0X2xlbmd0aCAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0X21heF9sZW5ndGggKCk7CisrCQlw dWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X3RleHQgKCk7CisrCQlbQ0NvZGUgKHZmdW5jX25hbWUg PSAiZ2V0X3RleHQiKV0KKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB1bm93bmVk IHN0cmluZyBnZXRfdGV4dF93aXRoX2xlbmd0aCAoc2l6ZV90IG5fYnl0ZXMpOworKwkJcHVibGlj IHZpcnR1YWwgdWludCBpbnNlcnRfdGV4dCAodWludCBwb3NpdGlvbiwgc3RyaW5nIGNoYXJzLCB1 aW50IG5fY2hhcnMpOworKwkJcHVibGljIHZvaWQgc2V0X21heF9sZW5ndGggKGludCBtYXhfbGVu Z3RoKTsKKysJCXB1YmxpYyB2b2lkIHNldF90ZXh0IChzdHJpbmcgY2hhcnMsIGludCBuX2NoYXJz KTsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1Ymxp YyBUZXh0QnVmZmVyLndpdGhfdGV4dCAoc3RyaW5nPyB0ZXh0LCBzc2l6ZV90IHRleHRfbGVuKTsK KysJCXB1YmxpYyB1aW50IGxlbmd0aCB7IGdldDsgfQorKwkJcHVibGljIGludCBtYXhfbGVuZ3Ro IHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBzdHJpbmcgdGV4dCB7IGdldDsgfQorKwkJcHVibGlj IHZpcnR1YWwgc2lnbmFsIHZvaWQgZGVsZXRlZF90ZXh0ICh1aW50IHBvc2l0aW9uLCB1aW50IG5f Y2hhcnMpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgaW5zZXJ0ZWRfdGV4dCAodWlu dCBwb3NpdGlvbiwgc3RyaW5nIGNoYXJzLCB1aW50IG5fY2hhcnMpOworKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRl cl90ZXh0X25vZGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0K KysJcHVibGljIGNsYXNzIFRleHROb2RlIDogQ2x1dHRlci5QYWludE5vZGUgeworKwkJW0NDb2Rl IChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlclBhaW50Tm9k ZSoiKV0KKysJCXB1YmxpYyBUZXh0Tm9kZSAoUGFuZ28uTGF5b3V0PyBsYXlvdXQsIENsdXR0ZXIu Q29sb3I/IGNvbG9yKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfdGV4dHVyZV9nZXRfdHlwZSAoKSIpXQor KwlwdWJsaWMgY2xhc3MgVGV4dHVyZSA6IENsdXR0ZXIuQWN0b3IgeworKwkJcHVibGljIENvZ2wu TWF0ZXJpYWwgY29nbF9tYXRlcmlhbCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgQ29nbC5UZXh0 dXJlIGNvZ2xfdGV4dHVyZSB7IGdldDsgc2V0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3RleHR1cmVf bm9kZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJs aWMgY2xhc3MgVGV4dHVyZU5vZGUgOiBDbHV0dGVyLlBpcGVsaW5lTm9kZSB7CisrCQlbQ0NvZGUg KGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyUGFpbnROb2Rl KiIpXQorKwkJcHVibGljIFRleHR1cmVOb2RlIChDb2dsLlRleHR1cmUgdGV4dHVyZSwgQ2x1dHRl ci5Db2xvcj8gY29sb3IsIENsdXR0ZXIuU2NhbGluZ0ZpbHRlciBtaW5fZmlsdGVyLCBDbHV0dGVy LlNjYWxpbmdGaWx0ZXIgbWFnX2ZpbHRlcik7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3RpbWVsaW5lX2dl dF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJcHVibGljIGNsYXNz IFRpbWVsaW5lIDogR0xpYi5PYmplY3QsIENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUg KGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MC42IildCisrCQlwdWJsaWMgVGltZWxpbmUgKHVpbnQgbXNlY3MpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTQiKV0KKysJCXB1YmxpYyB2b2lkIGFkZF9tYXJrZXIgKHN0cmluZyBtYXJrZXJf bmFtZSwgZG91YmxlIHByb2dyZXNzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJ CXB1YmxpYyB2b2lkIGFkZF9tYXJrZXJfYXRfdGltZSAoc3RyaW5nIG1hcmtlcl9uYW1lLCB1aW50 IG1zZWNzKTsKKysJCXB1YmxpYyB2b2lkIGFkdmFuY2UgKHVpbnQgbXNlY3MpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZvaWQgYWR2YW5jZV90b19tYXJrZXIgKHN0 cmluZyBtYXJrZXJfbmFtZSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJl Y2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjAuNCIpXQorKwkJcHVibGljIENsdXR0ZXIu VGltZWxpbmUgY2xvbmUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJs aWMgYm9vbCBnZXRfYXV0b19yZXZlcnNlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIi KV0KKysJCXB1YmxpYyBib29sIGdldF9jdWJpY19iZXppZXJfcHJvZ3Jlc3MgKEdyYXBoZW5lLlBv aW50IGNfMSwgR3JhcGhlbmUuUG9pbnQgY18yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEw IildCisrCQlwdWJsaWMgaW50IGdldF9jdXJyZW50X3JlcGVhdCAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIwLjQiKV0KKysJCXB1YmxpYyB1aW50IGdldF9kZWxheSAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB1aW50IGdldF9kZWx0YSAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBDbHV0dGVyLlRpbWVsaW5lRGlyZWN0aW9u IGdldF9kaXJlY3Rpb24gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJs aWMgdWludCBnZXRfZHVyYXRpb24gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQor KwkJcHVibGljIGludDY0IGdldF9kdXJhdGlvbl9oaW50ICgpOworKwkJcHVibGljIHVpbnQgZ2V0 X2VsYXBzZWRfdGltZSAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVj YXRlZF9zaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgYm9vbCBnZXRfbG9vcCAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBkb3VibGUgZ2V0X3Byb2dyZXNzICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFuaW1h dGlvbk1vZGUgZ2V0X3Byb2dyZXNzX21vZGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MCIpXQorKwkJcHVibGljIGludCBnZXRfcmVwZWF0X2NvdW50ICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBib29sIGdldF9zdGVwX3Byb2dyZXNzIChvdXQgaW50 IG5fc3RlcHMsIG91dCBDbHV0dGVyLlN0ZXBNb2RlIHN0ZXBfbW9kZSk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgYm9vbCBoYXNfbWFya2VyIChzdHJpbmcgbWFya2Vy X25hbWUpOworKwkJcHVibGljIGJvb2wgaXNfcGxheWluZyAoKTsKKysJCVtDQ29kZSAoYXJyYXlf bGVuZ3RoID0gdHJ1ZSwgYXJyYXlfbGVuZ3RoX3BvcyA9IDEuMSwgYXJyYXlfbGVuZ3RoX3R5cGUg PSAiZ3NpemUiLCBhcnJheV9udWxsX3Rlcm1pbmF0ZWQgPSB0cnVlKV0KKysJCVtWZXJzaW9uIChz aW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBzdHJpbmdbXSBsaXN0X21hcmtlcnMgKGludCBtc2Vj cyk7CisrCQlwdWJsaWMgdm9pZCBwYXVzZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgi KV0KKysJCXB1YmxpYyB2b2lkIHJlbW92ZV9tYXJrZXIgKHN0cmluZyBtYXJrZXJfbmFtZSk7Cisr CQlwdWJsaWMgdm9pZCByZXdpbmQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisr CQlwdWJsaWMgdm9pZCBzZXRfYXV0b19yZXZlcnNlIChib29sIHJldmVyc2UpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9jdWJpY19iZXppZXJfcHJv Z3Jlc3MgKEdyYXBoZW5lLlBvaW50IGNfMSwgR3JhcGhlbmUuUG9pbnQgY18yKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIwLjQiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9kZWxheSAodWludCBtc2Vj cyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdm9pZCBzZXRfZGly ZWN0aW9uIChDbHV0dGVyLlRpbWVsaW5lRGlyZWN0aW9uIGRpcmVjdGlvbik7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdm9pZCBzZXRfZHVyYXRpb24gKHVpbnQgbXNl Y3MpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9sb29wIChib29sIGxvb3ApOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9wcm9ncmVzc19mdW5jIChv d25lZCBDbHV0dGVyLlRpbWVsaW5lUHJvZ3Jlc3NGdW5jPyBmdW5jKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfcHJvZ3Jlc3NfbW9kZSAoQ2x1dHRl ci5BbmltYXRpb25Nb2RlIG1vZGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyB2b2lkIHNldF9yZXBlYXRfY291bnQgKGludCBjb3VudCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3N0ZXBfcHJvZ3Jlc3MgKGludCBu X3N0ZXBzLCBDbHV0dGVyLlN0ZXBNb2RlIHN0ZXBfbW9kZSk7CisrCQlwdWJsaWMgdm9pZCBza2lw ICh1aW50IG1zZWNzKTsKKysJCXB1YmxpYyB2b2lkIHN0YXJ0ICgpOworKwkJcHVibGljIHZvaWQg c3RvcCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBib29sIGF1 dG9fcmV2ZXJzZSB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisr CQlwdWJsaWMgdWludCBkZWxheSB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MC42IildCisrCQlwdWJsaWMgQ2x1dHRlci5UaW1lbGluZURpcmVjdGlvbiBkaXJlY3Rpb24geyBn ZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHVpbnQg ZHVyYXRpb24geyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBk ZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBib29sIGxvb3AgeyBnZXQ7IHNl dDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFu aW1hdGlvbk1vZGUgcHJvZ3Jlc3NfbW9kZSB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGludCByZXBlYXRfY291bnQgeyBnZXQ7IHNldDsgfQor KwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgY29tcGxldGVkICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgbWFya2VyX3Jl YWNoZWQgKHN0cmluZyBtYXJrZXJfbmFtZSwgaW50IG1zZWNzKTsKKysJCXB1YmxpYyB2aXJ0dWFs IHNpZ25hbCB2b2lkIG5ld19mcmFtZSAoaW50IG1zZWNzKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNp Z25hbCB2b2lkIHBhdXNlZCAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIHN0YXJ0 ZWQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZpcnR1YWwg c2lnbmFsIHZvaWQgc3RvcHBlZCAoYm9vbCBpc19maW5pc2hlZCk7CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtDb21wYWN0XQorKwlw dWJsaWMgY2xhc3MgVGltZW91dFBvb2wgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0 aW9uID0gZmFsc2UpXQorKwkJcHVibGljIFRpbWVvdXRQb29sIChpbnQgcHJpb3JpdHkpOworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGhhc190 eXBlX2lkID0gZmFsc2UpXQorKwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAi KV0KKysJcHVibGljIGNsYXNzIFRvdWNoRXZlbnQgOiBDbHV0dGVyLkV2ZW50IHsKKysJCXB1Ymxp YyBkb3VibGUgYXhlczsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuSW5wdXREZXZpY2UgZGV2aWNl OworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRGbGFncyBmbGFnczsKKysJCXB1YmxpYyBDbHV0dGVy Lk1vZGlmaWVyVHlwZSBtb2RpZmllcl9zdGF0ZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuRXZl bnRTZXF1ZW5jZSBzZXF1ZW5jZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuQWN0b3Igc291cmNl OworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5TdGFnZSBzdGFnZTsKKysJCXB1YmxpYyB1aW50MzIg dGltZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50VHlwZSB0eXBlOworKwkJcHVibGljIGZsb2F0 IHg7CisrCQlwdWJsaWMgZmxvYXQgeTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0NvbXBhY3Rd CisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjI0IildCisrCXB1YmxpYyBjbGFzcyBUb3VjaHBhZFBp bmNoRXZlbnQgOiBDbHV0dGVyLkV2ZW50IHsKKysJCXB1YmxpYyBmbG9hdCBhbmdsZV9kZWx0YTsK KysJCXB1YmxpYyBmbG9hdCBkeDsKKysJCXB1YmxpYyBmbG9hdCBkeTsKKysJCXB1YmxpYyBDbHV0 dGVyLkV2ZW50RmxhZ3MgZmxhZ3M7CisrCQlwdWJsaWMgdWludCBuX2ZpbmdlcnM7CisrCQlwdWJs aWMgQ2x1dHRlci5Ub3VjaHBhZEdlc3R1cmVQaGFzZSBwaGFzZTsKKysJCXB1YmxpYyBmbG9hdCBz Y2FsZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuQWN0b3Igc291cmNlOworKwkJcHVibGljIHdl YWsgQ2x1dHRlci5TdGFnZSBzdGFnZTsKKysJCXB1YmxpYyB1aW50MzIgdGltZTsKKysJCXB1Ymxp YyBDbHV0dGVyLkV2ZW50VHlwZSB0eXBlOworKwkJcHVibGljIGZsb2F0IHg7CisrCQlwdWJsaWMg ZmxvYXQgeTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0NvbXBhY3RdCisrCVtWZXJzaW9uIChz aW5jZSA9ICIxLjI0IildCisrCXB1YmxpYyBjbGFzcyBUb3VjaHBhZFN3aXBlRXZlbnQgOiBDbHV0 dGVyLkV2ZW50IHsKKysJCXB1YmxpYyBmbG9hdCBkeDsKKysJCXB1YmxpYyBmbG9hdCBkeTsKKysJ CXB1YmxpYyBDbHV0dGVyLkV2ZW50RmxhZ3MgZmxhZ3M7CisrCQlwdWJsaWMgdWludCBuX2Zpbmdl cnM7CisrCQlwdWJsaWMgQ2x1dHRlci5Ub3VjaHBhZEdlc3R1cmVQaGFzZSBwaGFzZTsKKysJCXB1 YmxpYyB3ZWFrIENsdXR0ZXIuQWN0b3Igc291cmNlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5T dGFnZSBzdGFnZTsKKysJCXB1YmxpYyB1aW50MzIgdGltZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2 ZW50VHlwZSB0eXBlOworKwkJcHVibGljIGZsb2F0IHg7CisrCQlwdWJsaWMgZmxvYXQgeTsKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBl X2lkID0gImNsdXR0ZXJfdHJhbnNmb3JtX25vZGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNs YXNzIFRyYW5zZm9ybU5vZGUgOiBDbHV0dGVyLlBhaW50Tm9kZSB7CisrCQlbQ0NvZGUgKGhhc19j b25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyUGFpbnROb2RlKiIpXQor KwkJcHVibGljIFRyYW5zZm9ybU5vZGUgKENvZ2wuTWF0cml4IHByb2plY3Rpb24pOworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQg PSAiY2x1dHRlcl90cmFuc2l0aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEwIildCisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBUcmFuc2l0aW9uIDogQ2x1dHRlci5U aW1lbGluZSwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9m dW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBUcmFuc2l0aW9uICgpOworKwkJW05vV3Jh cHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgYXR0YWNoZWQgKENsdXR0ZXIuQW5pbWF0YWJs ZSBhbmltYXRhYmxlKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGNv bXB1dGVfdmFsdWUgKENsdXR0ZXIuQW5pbWF0YWJsZSBhbmltYXRhYmxlLCBDbHV0dGVyLkludGVy dmFsIGludGVydmFsLCBkb3VibGUgcHJvZ3Jlc3MpOworKwkJW05vV3JhcHBlcl0KKysJCXB1Ymxp YyB2aXJ0dWFsIHZvaWQgZGV0YWNoZWQgKENsdXR0ZXIuQW5pbWF0YWJsZSBhbmltYXRhYmxlKTsK KysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQW5pbWF0YWJsZSBnZXRfYW5pbWF0YWJsZSAoKTsK KysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuSW50ZXJ2YWwgZ2V0X2ludGVydmFsICgpOworKwkJ cHVibGljIGJvb2wgZ2V0X3JlbW92ZV9vbl9jb21wbGV0ZSAoKTsKKysJCXB1YmxpYyB2b2lkIHNl dF9hbmltYXRhYmxlIChDbHV0dGVyLkFuaW1hdGFibGU/IGFuaW1hdGFibGUpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9mcm9tX3ZhbHVlIChHTGli LlZhbHVlIHZhbHVlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9pbnRlcnZhbCAoQ2x1dHRlci5JbnRl cnZhbD8gaW50ZXJ2YWwpOworKwkJcHVibGljIHZvaWQgc2V0X3JlbW92ZV9vbl9jb21wbGV0ZSAo Ym9vbCByZW1vdmVfY29tcGxldGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJ CXB1YmxpYyB2b2lkIHNldF90b192YWx1ZSAoR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlwdWJsaWMg Q2x1dHRlci5BbmltYXRhYmxlIGFuaW1hdGFibGUgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIENs dXR0ZXIuSW50ZXJ2YWwgaW50ZXJ2YWwgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIGJvb2wgcmVt b3ZlX29uX2NvbXBsZXRlIHsgZ2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfdHJhbnNpdGlv bl9ncm91cF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwlw dWJsaWMgY2xhc3MgVHJhbnNpdGlvbkdyb3VwIDogQ2x1dHRlci5UcmFuc2l0aW9uLCBDbHV0dGVy LlNjcmlwdGFibGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2Us IHR5cGUgPSAiQ2x1dHRlclRyYW5zaXRpb24qIildCisrCQlwdWJsaWMgVHJhbnNpdGlvbkdyb3Vw ICgpOworKwkJcHVibGljIHZvaWQgYWRkX3RyYW5zaXRpb24gKENsdXR0ZXIuVHJhbnNpdGlvbiB0 cmFuc2l0aW9uKTsKKysJCXB1YmxpYyB2b2lkIHJlbW92ZV9hbGwgKCk7CisrCQlwdWJsaWMgdm9p ZCByZW1vdmVfdHJhbnNpdGlvbiAoQ2x1dHRlci5UcmFuc2l0aW9uIHRyYW5zaXRpb24pOworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVf aWQgPSAiY2x1dHRlcl92aXJ0dWFsX2lucHV0X2RldmljZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJs aWMgY2xhc3MgVmlydHVhbElucHV0RGV2aWNlIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlICho YXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFZpcnR1YWxJbnB1 dERldmljZSAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0X2RldmljZV90eXBlICgpOworKwkJcHVibGlj IHZpcnR1YWwgdm9pZCBub3RpZnlfYWJzb2x1dGVfbW90aW9uICh1aW50NjQgdGltZV91cywgZG91 YmxlIHgsIGRvdWJsZSB5KTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgbm90aWZ5X2J1dHRvbiAo dWludDY0IHRpbWVfdXMsIHVpbnQzMiBidXR0b24sIENsdXR0ZXIuQnV0dG9uU3RhdGUgYnV0dG9u X3N0YXRlKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgbm90aWZ5X2Rpc2NyZXRlX3Njcm9sbCAo dWludDY0IHRpbWVfdXMsIENsdXR0ZXIuU2Nyb2xsRGlyZWN0aW9uIGRpcmVjdGlvbiwgQ2x1dHRl ci5TY3JvbGxTb3VyY2Ugc2Nyb2xsX3NvdXJjZSk7CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIG5v dGlmeV9rZXkgKHVpbnQ2NCB0aW1lX3VzLCB1aW50MzIga2V5LCBDbHV0dGVyLktleVN0YXRlIGtl eV9zdGF0ZSk7CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIG5vdGlmeV9rZXl2YWwgKHVpbnQ2NCB0 aW1lX3VzLCB1aW50MzIga2V5dmFsLCBDbHV0dGVyLktleVN0YXRlIGtleV9zdGF0ZSk7CisrCQlw dWJsaWMgdmlydHVhbCB2b2lkIG5vdGlmeV9yZWxhdGl2ZV9tb3Rpb24gKHVpbnQ2NCB0aW1lX3Vz LCBkb3VibGUgZHgsIGRvdWJsZSBkeSk7CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIG5vdGlmeV9z Y3JvbGxfY29udGludW91cyAodWludDY0IHRpbWVfdXMsIGRvdWJsZSBkeCwgZG91YmxlIGR5LCBD bHV0dGVyLlNjcm9sbFNvdXJjZSBzY3JvbGxfc291cmNlLCBDbHV0dGVyLlNjcm9sbEZpbmlzaEZs YWdzIGZpbmlzaF9mbGFncyk7CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIG5vdGlmeV90b3VjaF9k b3duICh1aW50NjQgdGltZV91cywgaW50IHNsb3QsIGRvdWJsZSB4LCBkb3VibGUgeSk7CisrCQlw dWJsaWMgdmlydHVhbCB2b2lkIG5vdGlmeV90b3VjaF9tb3Rpb24gKHVpbnQ2NCB0aW1lX3VzLCBp bnQgc2xvdCwgZG91YmxlIHgsIGRvdWJsZSB5KTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgbm90 aWZ5X3RvdWNoX3VwICh1aW50NjQgdGltZV91cywgaW50IHNsb3QpOworKwkJcHVibGljIENsdXR0 ZXIuSW5wdXREZXZpY2VUeXBlIGRldmljZV90eXBlIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtO b0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIENsdXR0ZXIuU2VhdCBzZWF0IHsgb3duZWQgZ2V0 OyBjb25zdHJ1Y3Q7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfem9vbV9hY3Rpb25fZ2V0X3R5cGUgKCki KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJcHVibGljIGNsYXNzIFpvb21BY3Rp b24gOiBDbHV0dGVyLkdlc3R1cmVBY3Rpb24geworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1 bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFjdGlvbioiKV0KKysJCXB1YmxpYyBab29t QWN0aW9uICgpOworKwkJcHVibGljIHZvaWQgZ2V0X2ZvY2FsX3BvaW50IChHcmFwaGVuZS5Qb2lu dCBwb2ludCk7CisrCQlwdWJsaWMgdm9pZCBnZXRfdHJhbnNmb3JtZWRfZm9jYWxfcG9pbnQgKEdy YXBoZW5lLlBvaW50IHBvaW50KTsKKysJCXB1YmxpYyBDbHV0dGVyLlpvb21BeGlzIGdldF96b29t X2F4aXMgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfem9vbV9heGlzIChDbHV0dGVyLlpvb21BeGlz IGF4aXMpOworKwkJcHVibGljIENsdXR0ZXIuWm9vbUF4aXMgem9vbV9heGlzIHsgZ2V0OyBzZXQ7 IH0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCBib29sIHpvb20gKENsdXR0ZXIuQWN0b3IgYWN0 b3IsIEdyYXBoZW5lLlBvaW50IGZvY2FsX3BvaW50LCBkb3VibGUgZmFjdG9yKTsKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2NuYW1l ID0gIkNsdXR0ZXJBbmltYXRhYmxlSW50ZXJmYWNlIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2FuaW1h dGFibGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGludGVyZmFjZSBBbmltYXRhYmxlIDogR0xp Yi5PYmplY3QgeworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyBhYnN0cmFjdCBib29sIGFuaW1h dGVfcHJvcGVydHkgKENsdXR0ZXIuQW5pbWF0aW9uIGFuaW1hdGlvbiwgc3RyaW5nIHByb3BlcnR5 X25hbWUsIEdMaWIuVmFsdWUgaW5pdGlhbF92YWx1ZSwgR0xpYi5WYWx1ZSBmaW5hbF92YWx1ZSwg ZG91YmxlIHByb2dyZXNzLCBHTGliLlZhbHVlIHZhbHVlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjQiKV0KKysJCXB1YmxpYyBhYnN0cmFjdCB1bm93bmVkIEdMaWIuUGFyYW1TcGVjIGZpbmRf cHJvcGVydHkgKHN0cmluZyBwcm9wZXJ0eV9uYW1lKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjQiKV0KKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lkIGdldF9pbml0aWFsX3N0YXRlIChzdHJpbmcg cHJvcGVydHlfbmFtZSwgR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS44IildCisrCQlwdWJsaWMgYWJzdHJhY3QgYm9vbCBpbnRlcnBvbGF0ZV92YWx1ZSAoc3RyaW5n IHByb3BlcnR5X25hbWUsIENsdXR0ZXIuSW50ZXJ2YWwgaW50ZXJ2YWwsIGRvdWJsZSBwcm9ncmVz cywgb3V0IEdMaWIuVmFsdWUgdmFsdWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQor KwkJcHVibGljIGFic3RyYWN0IHZvaWQgc2V0X2ZpbmFsX3N0YXRlIChzdHJpbmcgcHJvcGVydHlf bmFtZSwgR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2NvbnRhaW5lcl9nZXRf dHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCXB1YmxpYyBpbnRlcmZh Y2UgQ29udGFpbmVyIDogR0xpYi5PYmplY3QgeworKwkJcHVibGljIHZvaWQgYWRkIChwYXJhbXMg Q2x1dHRlci5BY3RvcltdIGFjdG9ycyk7CisrCQlbQ0NvZGUgKHZmdW5jX25hbWUgPSAiYWRkIild CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4x MCIsIHNpbmNlID0gIjAuNCIpXQorKwkJcHVibGljIGFic3RyYWN0IHZvaWQgYWRkX2FjdG9yIChD bHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1 YmxpYyB2b2lkIGNoaWxkX2dldCAoQ2x1dHRlci5BY3RvciBhY3RvciwgLi4uKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2b2lkIGNoaWxkX2dldF9wcm9wZXJ0eSAo Q2x1dHRlci5BY3RvciBjaGlsZCwgc3RyaW5nIHByb3BlcnR5LCBHTGliLlZhbHVlIHZhbHVlKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2b2lkIGNoaWxkX3NldCAo Q2x1dHRlci5BY3RvciBhY3RvciwgLi4uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0K KysJCXB1YmxpYyB2b2lkIGNoaWxkX3NldF9wcm9wZXJ0eSAoQ2x1dHRlci5BY3RvciBjaGlsZCwg c3RyaW5nIHByb3BlcnR5LCBHTGliLlZhbHVlIHZhbHVlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIwLjgiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHTGliLlBhcmFtU3BlYyBjbGFzc19m aW5kX2NoaWxkX3Byb3BlcnR5IChHTGliLk9iamVjdENsYXNzIGtsYXNzLCBzdHJpbmcgcHJvcGVy dHlfbmFtZSk7CisrCQlbQ0NvZGUgKGFycmF5X2xlbmd0aF9wb3MgPSAxLjEsIGFycmF5X2xlbmd0 aF90eXBlID0gImd1aW50IildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJs aWMgc3RhdGljIEdMaWIuUGFyYW1TcGVjW10gY2xhc3NfbGlzdF9jaGlsZF9wcm9wZXJ0aWVzIChH TGliLk9iamVjdENsYXNzIGtsYXNzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJ CXB1YmxpYyB2aXJ0dWFsIHZvaWQgY3JlYXRlX2NoaWxkX21ldGEgKENsdXR0ZXIuQWN0b3IgYWN0 b3IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZpcnR1YWwgdm9p ZCBkZXN0cm95X2NoaWxkX21ldGEgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBmaW5kX2No aWxkX2J5X25hbWUgKHN0cmluZyBjaGlsZF9uYW1lKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY2x1 dHRlcl9jb250YWluZXJfY2xhc3NfZmluZF9jaGlsZF9wcm9wZXJ0eSIpXQorKwkJcHVibGljIGNs YXNzIHVub3duZWQgR0xpYi5QYXJhbVNwZWMgZmluZF9jaGlsZF9wcm9wZXJ0eSAoc3RyaW5nIHBy b3BlcnR5X25hbWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZp cnR1YWwgdW5vd25lZCBDbHV0dGVyLkNoaWxkTWV0YSBnZXRfY2hpbGRfbWV0YSAoQ2x1dHRlci5B Y3RvciBhY3Rvcik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRf c2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjAuNCIpXQorKwkJcHVibGljIEdMaWIuTGlzdDx3ZWFr IENsdXR0ZXIuQWN0b3I+IGdldF9jaGlsZHJlbiAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY2x1 dHRlcl9jb250YWluZXJfY2xhc3NfbGlzdF9jaGlsZF9wcm9wZXJ0aWVzIildCisrCQlwdWJsaWMg Y2xhc3MgdW5vd25lZCBHTGliLlBhcmFtU3BlY1tdIGxpc3RfY2hpbGRfcHJvcGVydGllcyAoKTsK KysJCVtDQ29kZSAodmZ1bmNfbmFtZSA9ICJsb3dlciIpXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0 ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIwLjYiKV0KKysJ CXB1YmxpYyB2aXJ0dWFsIHZvaWQgbG93ZXJfY2hpbGQgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIENs dXR0ZXIuQWN0b3I/IHNpYmxpbmcgPSBudWxsKTsKKysJCVtDQ29kZSAodmZ1bmNfbmFtZSA9ICJy YWlzZSIpXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNl ID0gIjEuMTAiLCBzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgcmFpc2Vf Y2hpbGQgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIENsdXR0ZXIuQWN0b3I/IHNpYmxpbmcgPSBudWxs KTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIx LjEwIiwgc2luY2UgPSAiMC40IildCisrCQlwdWJsaWMgdm9pZCByZW1vdmUgKC4uLik7CisrCQlb Q0NvZGUgKHZmdW5jX25hbWUgPSAicmVtb3ZlIildCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9 IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjAuNCIpXQorKwkJcHVi bGljIGFic3RyYWN0IHZvaWQgcmVtb3ZlX2FjdG9yIChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJ CVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwg c2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBzb3J0X2RlcHRoX29yZGVy ICgpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgYWN0b3JfYWRkZWQgKENsdXR0ZXIu QWN0b3IgYWN0b3IpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgYWN0b3JfcmVtb3Zl ZCAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCQlbSGFzRW1pdHRlcl0KKysJCVtWZXJzaW9uIChz aW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGNoaWxkX25vdGlm eSAoQ2x1dHRlci5BY3RvciBjaGlsZCwgR0xpYi5QYXJhbVNwZWMgcHNwZWMpOworKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfY25hbWUg PSAiQ2x1dHRlckNvbnRlbnRJbnRlcmZhY2UiLCB0eXBlX2lkID0gImNsdXR0ZXJfY29udGVudF9n ZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgaW50ZXJmYWNlIENvbnRlbnQgOiBHTGliLk9iamVjdCB7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGFic3RyYWN0IGJvb2wg Z2V0X3ByZWZlcnJlZF9zaXplIChvdXQgZmxvYXQgd2lkdGgsIG91dCBmbG9hdCBoZWlnaHQpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lkIGlu dmFsaWRhdGUgKCk7CisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBpbnZhbGlkYXRlX3NpemUgKCk7 CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIGFic3RyYWN0IHZvaWQgcGFpbnRfY29udGVudCAo Q2x1dHRlci5BY3RvciBhY3RvciwgQ2x1dHRlci5QYWludE5vZGUgbm9kZSwgQ2x1dHRlci5QYWlu dENvbnRleHQgcGFpbnRfY29udGV4dCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQor KwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgYXR0YWNoZWQgKENsdXR0ZXIuQWN0b3IgYWN0 b3IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNp Z25hbCB2b2lkIGRldGFjaGVkIChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0 ZXJfc2NyaXB0YWJsZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC42Iild CisrCXB1YmxpYyBpbnRlcmZhY2UgU2NyaXB0YWJsZSA6IEdMaWIuT2JqZWN0IHsKKysJCXB1Ymxp YyBhYnN0cmFjdCB1bm93bmVkIHN0cmluZyBnZXRfaWQgKCk7CisrCQlwdWJsaWMgYWJzdHJhY3Qg Ym9vbCBwYXJzZV9jdXN0b21fbm9kZSAoQ2x1dHRlci5TY3JpcHQgc2NyaXB0LCBHTGliLlZhbHVl IHZhbHVlLCBzdHJpbmcgbmFtZSwgSnNvbi5Ob2RlIG5vZGUpOworKwkJcHVibGljIGFic3RyYWN0 IHZvaWQgc2V0X2N1c3RvbV9wcm9wZXJ0eSAoQ2x1dHRlci5TY3JpcHQgc2NyaXB0LCBzdHJpbmcg bmFtZSwgR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBzZXRfaWQg KHN0cmluZyBpZF8pOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIpXQorKwlwdWJsaWMgaW50ZXJmYWNlIFN0YWdlV2luZG93IDogR0xpYi5PYmpl Y3QgeworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyBhYnN0cmFjdCBpbnQgZ2V0X3BlbmRpbmdf c3dhcHMgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIGFic3RyYWN0IHVub3duZWQgQ2x1 dHRlci5BY3RvciBnZXRfd3JhcHBlciAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgYWJz dHJhY3QgYm9vbCBoYXNfcmVkcmF3X2NsaXBzICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1Ymxp YyBhYnN0cmFjdCB2b2lkIGhpZGUgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIGFic3Ry YWN0IGJvb2wgaWdub3JpbmdfcmVkcmF3X2NsaXBzICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1 YmxpYyBhYnN0cmFjdCBib29sIHJlYWxpemUgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGlj IGFic3RyYWN0IHZvaWQgcmVzaXplIChpbnQgd2lkdGgsIGludCBoZWlnaHQpOworKwkJW05vV3Jh cHBlcl0KKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lkIHNldF9jdXJzb3JfdmlzaWJsZSAoYm9vbCBj dXJzb3JfdmlzaWJsZSk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIGFic3RyYWN0IHZvaWQg c2V0X2Z1bGxzY3JlZW4gKGJvb2wgaXNfZnVsbHNjcmVlbik7CisrCQlbTm9XcmFwcGVyXQorKwkJ cHVibGljIGFic3RyYWN0IHZvaWQgc2V0X3RpdGxlIChzdHJpbmcgdGl0bGUpOworKwkJW05vV3Jh cHBlcl0KKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lkIHNldF91c2VyX3Jlc2l6YWJsZSAoYm9vbCBp c19yZXNpemFibGUpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lkIHNo b3cgKGJvb2wgZG9fcmFpc2UpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyBhYnN0cmFjdCB2 b2lkIHVucmVhbGl6ZSAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVu Y3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2FjdG9yX2JveF9nZXRf dHlwZSAoKSIpXQorKwlwdWJsaWMgc3RydWN0IEFjdG9yQm94IHsKKysJCXB1YmxpYyBmbG9hdCB4 MTsKKysJCXB1YmxpYyBmbG9hdCB5MTsKKysJCXB1YmxpYyBmbG9hdCB4MjsKKysJCXB1YmxpYyBm bG9hdCB5MjsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgc3RhdGlj IENsdXR0ZXIuQWN0b3JCb3g/IGFsbG9jICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIp XQorKwkJcHVibGljIHN0YXRpYyB2b2lkIGNsYW1wX3RvX3BpeGVsIChyZWYgQ2x1dHRlci5BY3Rv ckJveCBib3gpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGJvb2wg Y29udGFpbnMgKGZsb2F0IHgsIGZsb2F0IHkpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIp XQorKwkJcHVibGljIENsdXR0ZXIuQWN0b3JCb3g/IGNvcHkgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCQlwdWJsaWMgYm9vbCBlcXVhbCAoQ2x1dHRlci5BY3RvckJveCBib3hf Yik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCBmcmVlICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF9hcmVh ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF9o ZWlnaHQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCBn ZXRfb3JpZ2luIChvdXQgZmxvYXQgeCwgb3V0IGZsb2F0IHkpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgZ2V0X3NpemUgKG91dCBmbG9hdCB3aWR0aCwgb3V0 IGZsb2F0IGhlaWdodCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg ZmxvYXQgZ2V0X3dpZHRoICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVi bGljIGZsb2F0IGdldF94ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVi bGljIGZsb2F0IGdldF95ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1 YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3JCb3g/IGluaXQgKGZsb2F0IHhfMSwgZmxvYXQgeV8x LCBmbG9hdCB4XzIsIGZsb2F0IHlfMik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQor KwkJcHVibGljIHZvaWQgaW5pdF9yZWN0IChmbG9hdCB4LCBmbG9hdCB5LCBmbG9hdCB3aWR0aCwg ZmxvYXQgaGVpZ2h0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBD bHV0dGVyLkFjdG9yQm94IGludGVycG9sYXRlIChDbHV0dGVyLkFjdG9yQm94IGZpbmFsLCBkb3Vi bGUgcHJvZ3Jlc3MpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIHZv aWQgc2NhbGUgKGZsb2F0IHNjYWxlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJ CXB1YmxpYyB2b2lkIHNldF9vcmlnaW4gKGZsb2F0IHgsIGZsb2F0IHkpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3NpemUgKGZsb2F0IHdpZHRoLCBm bG9hdCBoZWlnaHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIENs dXR0ZXIuQWN0b3JCb3ggdW5pb24gKENsdXR0ZXIuQWN0b3JCb3ggYik7CisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBm YWxzZSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBzdHJ1Y3QgQWN0 b3JJdGVyIHsKKysJCXB1YmxpYyB2b2lkIGRlc3Ryb3kgKCk7CisrCQlwdWJsaWMgdm9pZCBpbml0 IChDbHV0dGVyLkFjdG9yIHJvb3QpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJ CXB1YmxpYyBib29sIGlzX3ZhbGlkICgpOworKwkJcHVibGljIGJvb2wgbmV4dCAob3V0IHVub3du ZWQgQ2x1dHRlci5BY3RvciBjaGlsZCk7CisrCQlwdWJsaWMgYm9vbCBwcmV2IChvdXQgdW5vd25l ZCBDbHV0dGVyLkFjdG9yIGNoaWxkKTsKKysJCXB1YmxpYyB2b2lkIHJlbW92ZSAoKTsKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBoYXNfdHlw ZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBDYXB0dXJlIHsKKysJCXB1YmxpYyB3ZWFr IENhaXJvLlN1cmZhY2UgaW1hZ2U7CisrCQlwdWJsaWMgQ2Fpcm8uUmVjdGFuZ2xlSW50IHJlY3Q7 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y29weV9mdW5jdGlvbiA9ICJnX2JveGVkX2NvcHkiLCBmcmVlX2Z1bmN0aW9uID0gImdfYm94ZWRf ZnJlZSIsIHR5cGVfaWQgPSAiQ0xVVFRFUl9UWVBFX0NPTE9SIildCisrCXB1YmxpYyBzdHJ1Y3Qg Q29sb3IgeworKwkJcHVibGljIHVpbnQ4IHJlZDsKKysJCXB1YmxpYyB1aW50OCBncmVlbjsKKysJ CXB1YmxpYyB1aW50OCBibHVlOworKwkJcHVibGljIHVpbnQ4IGFscGhhOworKwkJcHVibGljIENs dXR0ZXIuQ29sb3IgYWRkIChDbHV0dGVyLkNvbG9yIGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTIiKV0KKysJCXB1YmxpYyBzdGF0aWMgQ2x1dHRlci5Db2xvcj8gYWxsb2MgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvcj8gY29weSAo KTsKKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIGRhcmtlbiAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIwLjIiKV0KKysJCXB1YmxpYyBib29sIGVxdWFsIChDbHV0dGVyLkNvbG9yIHYyKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyB2b2lkIGZyZWUgKCk7CisrCQlb Q0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfY29sb3JfZnJvbV9obHMiKV0KKysJCXB1YmxpYyBDb2xv ci5mcm9tX2hscyAoZmxvYXQgaHVlLCBmbG9hdCBsdW1pbmFuY2UsIGZsb2F0IHNhdHVyYXRpb24p OworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX2NvbG9yX2Zyb21fcGl4ZWwiKV0KKysJCXB1 YmxpYyBDb2xvci5mcm9tX3BpeGVsICh1aW50MzIgcGl4ZWwpOworKwkJW0NDb2RlIChjbmFtZSA9 ICJjbHV0dGVyX2NvbG9yX2Zyb21fc3RyaW5nIildCisrCQlwdWJsaWMgQ29sb3IuZnJvbV9zdHJp bmcgKHN0cmluZyBzdHIpOworKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIENsdXR0ZXIuQ29sb3I/ IGdldF9zdGF0aWMgKENsdXR0ZXIuU3RhdGljQ29sb3IgY29sb3IpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVpbnQgaGFzaCAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkNvbG9yPyBpbml0ICh1aW50 OCByZWQsIHVpbnQ4IGdyZWVuLCB1aW50OCBibHVlLCB1aW50OCBhbHBoYSk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBpbnRlcnBvbGF0ZSAo Q2x1dHRlci5Db2xvciBmaW5hbCwgZG91YmxlIHByb2dyZXNzKTsKKysJCXB1YmxpYyBDbHV0dGVy LkNvbG9yIGxpZ2h0ZW4gKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfY29sb3JfZnJv bV9zdHJpbmciKV0KKysJCXB1YmxpYyBib29sIHBhcnNlX3N0cmluZyAoc3RyaW5nIHN0cik7Cisr CQlwdWJsaWMgQ2x1dHRlci5Db2xvciBzaGFkZSAoZG91YmxlIGZhY3Rvcik7CisrCQlwdWJsaWMg Q2x1dHRlci5Db2xvciBzdWJ0cmFjdCAoQ2x1dHRlci5Db2xvciBiKTsKKysJCXB1YmxpYyB2b2lk IHRvX2hscyAob3V0IGZsb2F0IGh1ZSwgb3V0IGZsb2F0IGx1bWluYW5jZSwgb3V0IGZsb2F0IHNh dHVyYXRpb24pOworKwkJcHVibGljIHVpbnQzMiB0b19waXhlbCAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyBzdHJpbmcgdG9fc3RyaW5nICgpOworKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGhhc190eXBlX2lk ID0gZmFsc2UpXQorKwlwdWJsaWMgc3RydWN0IEtiZEExMXlTZXR0aW5ncyB7CisrCQlwdWJsaWMg Q2x1dHRlci5LZXlib2FyZEExMXlGbGFncyBjb250cm9sczsKKysJCXB1YmxpYyBpbnQgc2xvd2tl eXNfZGVsYXk7CisrCQlwdWJsaWMgaW50IGRlYm91bmNlX2RlbGF5OworKwkJcHVibGljIGludCB0 aW1lb3V0X2RlbGF5OworKwkJcHVibGljIGludCBtb3VzZWtleXNfaW5pdF9kZWxheTsKKysJCXB1 YmxpYyBpbnQgbW91c2VrZXlzX21heF9zcGVlZDsKKysJCXB1YmxpYyBpbnQgbW91c2VrZXlzX2Fj Y2VsX3RpbWU7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY29weV9mdW5jdGlvbiA9ICJnX2JveGVkX2NvcHkiLCBmcmVlX2Z1bmN0aW9uID0g ImdfYm94ZWRfZnJlZSIsIHR5cGVfaWQgPSAiY2x1dHRlcl9rbm90X2dldF90eXBlICgpIildCisr CVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJcHVibGljIHN0cnVjdCBLbm90IHsKKysJCXB1 YmxpYyBpbnQgeDsKKysJCXB1YmxpYyBpbnQgeTsKKysJCXB1YmxpYyBDbHV0dGVyLktub3Q/IGNv cHkgKCk7CisrCQlwdWJsaWMgYm9vbCBlcXVhbCAoQ2x1dHRlci5Lbm90IGtub3RfYik7CisrCQlw dWJsaWMgdm9pZCBmcmVlICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlwdWJsaWMgc3RydWN0IE1hdHJpeCA6IENvZ2wuTWF0cml4 IHsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBQYWRCdXR0b25FdmVudCB7 CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudFR5cGUgdHlwZTsKKysJCXB1YmxpYyB1aW50MzIgdGlt ZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50RmxhZ3MgZmxhZ3M7CisrCQlwdWJsaWMgd2VhayBD bHV0dGVyLlN0YWdlIHN0YWdlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5BY3RvciBzb3VyY2U7 CisrCQlwdWJsaWMgdWludDMyIGJ1dHRvbjsKKysJCXB1YmxpYyB1aW50MzIgZ3JvdXA7CisrCQlw dWJsaWMgd2VhayBDbHV0dGVyLklucHV0RGV2aWNlIGRldmljZTsKKysJCXB1YmxpYyB1aW50MzIg bW9kZTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBQYWRSaW5nRXZlbnQg eworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRUeXBlIHR5cGU7CisrCQlwdWJsaWMgdWludDMyIHRp bWU7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudEZsYWdzIGZsYWdzOworKwkJcHVibGljIHdlYWsg Q2x1dHRlci5TdGFnZSBzdGFnZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuQWN0b3Igc291cmNl OworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5JbnB1dERldmljZSBkZXZpY2U7CisrCQlwdWJsaWMg Q2x1dHRlci5JbnB1dERldmljZVBhZFNvdXJjZSByaW5nX3NvdXJjZTsKKysJCXB1YmxpYyB1aW50 MzIgcmluZ19udW1iZXI7CisrCQlwdWJsaWMgdWludDMyIGdyb3VwOworKwkJcHVibGljIGRvdWJs ZSBhbmdsZTsKKysJCXB1YmxpYyB1aW50MzIgbW9kZTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJ cHVibGljIHN0cnVjdCBQYWRTdHJpcEV2ZW50IHsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50VHlw ZSB0eXBlOworKwkJcHVibGljIHVpbnQzMiB0aW1lOworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRG bGFncyBmbGFnczsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuU3RhZ2Ugc3RhZ2U7CisrCQlwdWJs aWMgd2VhayBDbHV0dGVyLkFjdG9yIHNvdXJjZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuSW5w dXREZXZpY2UgZGV2aWNlOworKwkJcHVibGljIENsdXR0ZXIuSW5wdXREZXZpY2VQYWRTb3VyY2Ug c3RyaXBfc291cmNlOworKwkJcHVibGljIHVpbnQzMiBzdHJpcF9udW1iZXI7CisrCQlwdWJsaWMg dWludDMyIGdyb3VwOworKwkJcHVibGljIGRvdWJsZSB2YWx1ZTsKKysJCXB1YmxpYyB1aW50MzIg bW9kZTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24gPSAiZ19i b3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3BhdGhfbm9kZV9nZXRfdHlwZSAoKSIpXQor KwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBzdHJ1Y3QgUGF0aE5vZGUgewor KwkJcHVibGljIENsdXR0ZXIuUGF0aE5vZGVUeXBlIHR5cGU7CisrCQlbQ0NvZGUgKGFycmF5X2xl bmd0aCA9IGZhbHNlKV0KKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuS25vdCBwb2ludHNbM107Cisr CQlwdWJsaWMgQ2x1dHRlci5QYXRoTm9kZT8gY29weSAoKTsKKysJCXB1YmxpYyBib29sIGVxdWFs IChDbHV0dGVyLlBhdGhOb2RlIG5vZGVfYik7CisrCQlwdWJsaWMgdm9pZCBmcmVlICgpOworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNvcHlf ZnVuY3Rpb24gPSAiZ19ib3hlZF9jb3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUi LCB0eXBlX2lkID0gImNsdXR0ZXJfcGVyc3BlY3RpdmVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjAuNCIpXQorKwlwdWJsaWMgc3RydWN0IFBlcnNwZWN0aXZlIHsKKysJCXB1 YmxpYyBmbG9hdCBmb3Z5OworKwkJcHVibGljIGZsb2F0IGFzcGVjdDsKKysJCXB1YmxpYyBmbG9h dCB6X25lYXI7CisrCQlwdWJsaWMgZmxvYXQgel9mYXI7CisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisr CXB1YmxpYyBzdHJ1Y3QgUG9pbnRlckExMXlTZXR0aW5ncyB7CisrCQlwdWJsaWMgQ2x1dHRlci5Q b2ludGVyQTExeUZsYWdzIGNvbnRyb2xzOworKwkJcHVibGljIENsdXR0ZXIuUG9pbnRlckExMXlE d2VsbENsaWNrVHlwZSBkd2VsbF9jbGlja190eXBlOworKwkJcHVibGljIENsdXR0ZXIuUG9pbnRl ckExMXlEd2VsbE1vZGUgZHdlbGxfbW9kZTsKKysJCXB1YmxpYyBDbHV0dGVyLlBvaW50ZXJBMTF5 RHdlbGxEaXJlY3Rpb24gZHdlbGxfZ2VzdHVyZV9zaW5nbGU7CisrCQlwdWJsaWMgQ2x1dHRlci5Q b2ludGVyQTExeUR3ZWxsRGlyZWN0aW9uIGR3ZWxsX2dlc3R1cmVfZG91YmxlOworKwkJcHVibGlj IENsdXR0ZXIuUG9pbnRlckExMXlEd2VsbERpcmVjdGlvbiBkd2VsbF9nZXN0dXJlX2RyYWc7Cisr CQlwdWJsaWMgQ2x1dHRlci5Qb2ludGVyQTExeUR3ZWxsRGlyZWN0aW9uIGR3ZWxsX2dlc3R1cmVf c2Vjb25kYXJ5OworKwkJcHVibGljIGludCBzZWNvbmRhcnlfY2xpY2tfZGVsYXk7CisrCQlwdWJs aWMgaW50IGR3ZWxsX2RlbGF5OworKwkJcHVibGljIGludCBkd2VsbF90aHJlc2hvbGQ7CisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5 cGVfaWQgPSBmYWxzZSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjI4IildCisrCXB1YmxpYyBz dHJ1Y3QgUHJveGltaXR5RXZlbnQgeworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRUeXBlIHR5cGU7 CisrCQlwdWJsaWMgdWludDMyIHRpbWU7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudEZsYWdzIGZs YWdzOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5TdGFnZSBzdGFnZTsKKysJCXB1YmxpYyB3ZWFr IENsdXR0ZXIuQWN0b3Igc291cmNlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5JbnB1dERldmlj ZSBkZXZpY2U7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY29weV9mdW5jdGlvbiA9ICJnX2JveGVkX2NvcHkiLCBmcmVlX2Z1bmN0aW9uID0g ImdfYm94ZWRfZnJlZSIsIHR5cGVfaWQgPSAiQ0xVVFRFUl9UWVBFX1VOSVRTIildCisrCVtWZXJz aW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIHN0cnVjdCBVbml0cyB7CisrCQlwdWJsaWMg Q2x1dHRlci5Vbml0cz8gY29weSAoKTsKKysJCXB1YmxpYyB2b2lkIGZyZWUgKCk7CisrCQlbQ0Nv ZGUgKGNuYW1lID0gImNsdXR0ZXJfdW5pdHNfZnJvbV9jbSIpXQorKwkJcHVibGljIFVuaXRzLmZy b21fY20gKGZsb2F0IGNtKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl91bml0c19mcm9t X2VtIildCisrCQlwdWJsaWMgVW5pdHMuZnJvbV9lbSAoZmxvYXQgZW0pOworKwkJW0NDb2RlIChj bmFtZSA9ICJjbHV0dGVyX3VuaXRzX2Zyb21fZW1fZm9yX2ZvbnQiKV0KKysJCXB1YmxpYyBVbml0 cy5mcm9tX2VtX2Zvcl9mb250IChzdHJpbmcgZm9udF9uYW1lLCBmbG9hdCBlbSk7CisrCQlbQ0Nv ZGUgKGNuYW1lID0gImNsdXR0ZXJfdW5pdHNfZnJvbV9tbSIpXQorKwkJcHVibGljIFVuaXRzLmZy b21fbW0gKGZsb2F0IG1tKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl91bml0c19mcm9t X3BpeGVscyIpXQorKwkJcHVibGljIFVuaXRzLmZyb21fcGl4ZWxzIChpbnQgcHgpOworKwkJW0ND b2RlIChjbmFtZSA9ICJjbHV0dGVyX3VuaXRzX2Zyb21fcHQiKV0KKysJCXB1YmxpYyBVbml0cy5m cm9tX3B0IChmbG9hdCBwdCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfdW5pdHNfZnJv bV9zdHJpbmciKV0KKysJCXB1YmxpYyBVbml0cy5mcm9tX3N0cmluZyAoc3RyaW5nIHN0cik7Cisr CQlwdWJsaWMgQ2x1dHRlci5Vbml0VHlwZSBnZXRfdW5pdF90eXBlICgpOworKwkJcHVibGljIGZs b2F0IGdldF91bml0X3ZhbHVlICgpOworKwkJcHVibGljIGZsb2F0IHRvX3BpeGVscyAoKTsKKysJ CXB1YmxpYyBzdHJpbmcgdG9fc3RyaW5nICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9BQ1RPUl9BTElH Tl8iLCB0eXBlX2lkID0gImNsdXR0ZXJfYWN0b3JfYWxpZ25fZ2V0X3R5cGUgKCkiKV0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGVudW0gQWN0b3JBbGlnbiB7CisrCQlG SUxMLAorKwkJU1RBUlQsCisrCQlDRU5URVIsCisrCQlFTkQKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfQUNU T1JfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2FjdG9yX2ZsYWdzX2dldF90eXBlICgpIildCisrCVtG bGFnc10KKysJcHVibGljIGVudW0gQWN0b3JGbGFncyB7CisrCQlNQVBQRUQsCisrCQlSRUFMSVpF RCwKKysJCVJFQUNUSVZFLAorKwkJVklTSUJMRSwKKysJCU5PX0xBWU9VVAorKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xV VFRFUl9BTElHTl8iLCB0eXBlX2lkID0gImNsdXR0ZXJfYWxpZ25fYXhpc19nZXRfdHlwZSAoKSIp XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBlbnVtIEFsaWduQXhpcyB7 CisrCQlYX0FYSVMsCisrCQlZX0FYSVMsCisrCQlCT1RICisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSXyIsIHR5 cGVfaWQgPSAiY2x1dHRlcl9hbGxvY2F0aW9uX2ZsYWdzX2dldF90eXBlICgpIildCisrCVtGbGFn c10KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgZW51bSBBbGxvY2F0aW9u RmxhZ3MgeworKwkJQUxMT0NBVElPTl9OT05FLAorKwkJQUJTT0xVVEVfT1JJR0lOX0NIQU5HRUQs CisrCQlERUxFR0FURV9MQVlPVVQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfIiwgdHlwZV9pZCA9ICJjbHV0 dGVyX2FuaW1hdGlvbl9tb2RlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIx LjAiKV0KKysJcHVibGljIGVudW0gQW5pbWF0aW9uTW9kZSB7CisrCQlDVVNUT01fTU9ERSwKKysJ CUxJTkVBUiwKKysJCUVBU0VfSU5fUVVBRCwKKysJCUVBU0VfT1VUX1FVQUQsCisrCQlFQVNFX0lO X09VVF9RVUFELAorKwkJRUFTRV9JTl9DVUJJQywKKysJCUVBU0VfT1VUX0NVQklDLAorKwkJRUFT RV9JTl9PVVRfQ1VCSUMsCisrCQlFQVNFX0lOX1FVQVJULAorKwkJRUFTRV9PVVRfUVVBUlQsCisr CQlFQVNFX0lOX09VVF9RVUFSVCwKKysJCUVBU0VfSU5fUVVJTlQsCisrCQlFQVNFX09VVF9RVUlO VCwKKysJCUVBU0VfSU5fT1VUX1FVSU5ULAorKwkJRUFTRV9JTl9TSU5FLAorKwkJRUFTRV9PVVRf U0lORSwKKysJCUVBU0VfSU5fT1VUX1NJTkUsCisrCQlFQVNFX0lOX0VYUE8sCisrCQlFQVNFX09V VF9FWFBPLAorKwkJRUFTRV9JTl9PVVRfRVhQTywKKysJCUVBU0VfSU5fQ0lSQywKKysJCUVBU0Vf T1VUX0NJUkMsCisrCQlFQVNFX0lOX09VVF9DSVJDLAorKwkJRUFTRV9JTl9FTEFTVElDLAorKwkJ RUFTRV9PVVRfRUxBU1RJQywKKysJCUVBU0VfSU5fT1VUX0VMQVNUSUMsCisrCQlFQVNFX0lOX0JB Q0ssCisrCQlFQVNFX09VVF9CQUNLLAorKwkJRUFTRV9JTl9PVVRfQkFDSywKKysJCUVBU0VfSU5f Qk9VTkNFLAorKwkJRUFTRV9PVVRfQk9VTkNFLAorKwkJRUFTRV9JTl9PVVRfQk9VTkNFLAorKwkJ U1RFUFMsCisrCQlTVEVQX1NUQVJULAorKwkJU1RFUF9FTkQsCisrCQlDVUJJQ19CRVpJRVIsCisr CQlFQVNFLAorKwkJRUFTRV9JTiwKKysJCUVBU0VfT1VULAorKwkJRUFTRV9JTl9PVVQsCisrCQlB TklNQVRJT05fTEFTVAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9CSU5fQUxJR05NRU5UXyIsIHR5cGVfaWQg PSAiY2x1dHRlcl9iaW5fYWxpZ25tZW50X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjIiKV0KKysJcHVibGljIGVudW0gQmluQWxpZ25tZW50IHsKKysJCVtWZXJzaW9uIChk ZXByZWNhdGVkID0gdHJ1ZSldCisrCQlGSVhFRCwKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0g dHJ1ZSldCisrCQlGSUxMLAorKwkJU1RBUlQsCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRy dWUpXQorKwkJRU5ELAorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlKV0KKysJCUNFTlRF UgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNwcmVmaXggPSAiQ0xVVFRFUl9CSU5EXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9iaW5kX2Nvb3Jk aW5hdGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJs aWMgZW51bSBCaW5kQ29vcmRpbmF0ZSB7CisrCQlYLAorKwkJWSwKKysJCVdJRFRILAorKwkJSEVJ R0hULAorKwkJUE9TSVRJT04sCisrCQlTSVpFLAorKwkJQUxMCisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0JP WF9BTElHTk1FTlRfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2JveF9hbGlnbm1lbnRfZ2V0X3R5cGUg KCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwlwdWJsaWMgZW51bSBCb3hBbGln bm1lbnQgeworKwkJU1RBUlQsCisrCQlFTkQsCisrCQlDRU5URVIKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJf QlVUVE9OX1NUQVRFXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9idXR0b25fc3RhdGVfZ2V0X3R5cGUg KCkiKV0KKysJcHVibGljIGVudW0gQnV0dG9uU3RhdGUgeworKwkJUkVMRUFTRUQsCisrCQlQUkVT U0VECisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY3ByZWZpeCA9ICJDTFVUVEVSX0NPTlRFTlRfR1JBVklUWV8iLCB0eXBlX2lkID0gImNsdXR0 ZXJfY29udGVudF9ncmF2aXR5X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEwIildCisrCXB1YmxpYyBlbnVtIENvbnRlbnRHcmF2aXR5IHsKKysJCVRPUF9MRUZULAorKwkJ VE9QLAorKwkJVE9QX1JJR0hULAorKwkJTEVGVCwKKysJCUNFTlRFUiwKKysJCVJJR0hULAorKwkJ Qk9UVE9NX0xFRlQsCisrCQlCT1RUT00sCisrCQlCT1RUT01fUklHSFQsCisrCQlSRVNJWkVfRklM TCwKKysJCVJFU0laRV9BU1BFQ1QKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfUkVQRUFUXyIsIHR5cGVfaWQg PSAiY2x1dHRlcl9jb250ZW50X3JlcGVhdF9nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCXB1YmxpYyBlbnVtIENvbnRlbnRSZXBlYXQgewor KwkJTk9ORSwKKysJCVhfQVhJUywKKysJCVlfQVhJUywKKysJCUJPVEgKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRU RVJfREVCVUdfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2RlYnVnX2ZsYWdfZ2V0X3R5cGUgKCkiKV0K KysJW0ZsYWdzXQorKwlwdWJsaWMgZW51bSBEZWJ1Z0ZsYWcgeworKwkJTUlTQywKKysJCUFDVE9S LAorKwkJVEVYVFVSRSwKKysJCUVWRU5ULAorKwkJUEFJTlQsCisrCQlQQU5HTywKKysJCUJBQ0tF TkQsCisrCQlTQ0hFRFVMRVIsCisrCQlTQ1JJUFQsCisrCQlTSEFERVIsCisrCQlNVUxUSVNUQUdF LAorKwkJQU5JTUFUSU9OLAorKwkJTEFZT1VULAorKwkJUElDSywKKysJCUVWRU5UTE9PUCwKKysJ CUNMSVBQSU5HLAorKwkJT09CX1RSQU5TRk9STVMKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfRFJBR18iLCB0 eXBlX2lkID0gImNsdXR0ZXJfZHJhZ19heGlzX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChz aW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGVudW0gRHJhZ0F4aXMgeworKwkJQVhJU19OT05FLAor KwkJWF9BWElTLAorKwkJWV9BWElTCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0RFQlVHXyIsIHR5cGVfaWQg PSAiY2x1dHRlcl9kcmF3X2RlYnVnX2ZsYWdfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlw dWJsaWMgZW51bSBEcmF3RGVidWdGbGFnIHsKKysJCURJU0FCTEVfU1dBUF9FVkVOVFMsCisrCQlE SVNBQkxFX0NMSVBQRURfUkVEUkFXUywKKysJCVJFRFJBV1MsCisrCQlQQUlOVF9WT0xVTUVTLAor KwkJRElTQUJMRV9DVUxMSU5HLAorKwkJRElTQUJMRV9PRkZTQ1JFRU5fUkVESVJFQ1QsCisrCQlD T05USU5VT1VTX1JFRFJBVywKKysJCVBBSU5UX0RFRk9STV9USUxFUywKKysJCVBBSU5UX0RBTUFH RV9SRUdJT04KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfRUZGRUNUX1BBSU5UX0FDVE9SXyIsIHR5cGVfaWQg PSAiY2x1dHRlcl9lZmZlY3RfcGFpbnRfZmxhZ3NfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQor KwlwdWJsaWMgZW51bSBFZmZlY3RQYWludEZsYWdzIHsKKysJCVtDQ29kZSAoY25hbWUgPSAiQ0xV VFRFUl9FRkZFQ1RfUEFJTlRfQUNUT1JfRElSVFkiKV0KKysJCUFDVE9SX0RJUlRZCisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9 ICJDTFVUVEVSX0VWRU5UXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9ldmVudF9mbGFnc19nZXRfdHlw ZSAoKSIpXQorKwlbRmxhZ3NdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJcHVibGlj IGVudW0gRXZlbnRGbGFncyB7CisrCQlOT05FLAorKwkJRkxBR19TWU5USEVUSUMsCisrCQlGTEFH X0lOUFVUX01FVEhPRCwKKysJCUZMQUdfUkVQRUFURUQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfIiwgdHlw ZV9pZCA9ICJjbHV0dGVyX2V2ZW50X3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNp bmNlID0gIjAuNCIpXQorKwlwdWJsaWMgZW51bSBFdmVudFR5cGUgeworKwkJTk9USElORywKKysJ CUtFWV9QUkVTUywKKysJCUtFWV9SRUxFQVNFLAorKwkJTU9USU9OLAorKwkJRU5URVIsCisrCQlM RUFWRSwKKysJCUJVVFRPTl9QUkVTUywKKysJCUJVVFRPTl9SRUxFQVNFLAorKwkJU0NST0xMLAor KwkJU1RBR0VfU1RBVEUsCisrCQlERVNUUk9ZX05PVElGWSwKKysJCUNMSUVOVF9NRVNTQUdFLAor KwkJREVMRVRFLAorKwkJVE9VQ0hfQkVHSU4sCisrCQlUT1VDSF9VUERBVEUsCisrCQlUT1VDSF9F TkQsCisrCQlUT1VDSF9DQU5DRUwsCisrCQlUT1VDSFBBRF9QSU5DSCwKKysJCVRPVUNIUEFEX1NX SVBFLAorKwkJUFJPWElNSVRZX0lOLAorKwkJUFJPWElNSVRZX09VVCwKKysJCVBBRF9CVVRUT05f UFJFU1MsCisrCQlQQURfQlVUVE9OX1JFTEVBU0UsCisrCQlQQURfU1RSSVAsCisrCQlQQURfUklO RywKKysJCUVWRU5UX0xBU1QKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfRkVBVFVSRV8iLCB0eXBlX2lkID0g ImNsdXR0ZXJfZmVhdHVyZV9mbGFnc19nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCVtWZXJz aW9uIChzaW5jZSA9ICIwLjQiKV0KKysJcHVibGljIGVudW0gRmVhdHVyZUZsYWdzIHsKKysJCVRF WFRVUkVfTlBPVCwKKysJCVNXQVBfVEhST1RUTEUsCisrCQlTVEFHRV9TVEFUSUMsCisrCQlTVEFH RV9DVVJTT1IsCisrCQlTSEFERVJTX0dMU0wsCisrCQlPRkZTQ1JFRU4sCisrCQlTVEFHRV9NVUxU SVBMRSwKKysJCVNXQVBfRVZFTlRTOworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX2ZlYXR1 cmVfYXZhaWxhYmxlIildCisrCQlwdWJsaWMgYm9vbCBpc19hdmFpbGFibGUgKCk7CisrCQlbQ0Nv ZGUgKGNuYW1lID0gImNsdXR0ZXJfZmVhdHVyZV9nZXRfYWxsIildCisrCQlwdWJsaWMgc3RhdGlj IENsdXR0ZXIuRmVhdHVyZUZsYWdzIEBnZXQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0ZMT1dfIiwg dHlwZV9pZCA9ICJjbHV0dGVyX2Zsb3dfb3JpZW50YXRpb25fZ2V0X3R5cGUgKCkiKV0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwlwdWJsaWMgZW51bSBGbG93T3JpZW50YXRpb24gewor KwkJSE9SSVpPTlRBTCwKKysJCVZFUlRJQ0FMCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0dFU1RVUkVfVFJJ R0dFUl9FREdFXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9nZXN0dXJlX3RyaWdnZXJfZWRnZV9nZXRf dHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xOCIpXQorKwlwdWJsaWMgZW51bSBH ZXN0dXJlVHJpZ2dlckVkZ2UgeworKwkJTk9ORSwKKysJCUFGVEVSLAorKwkJQkVGT1JFCisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZp eCA9ICJDTFVUVEVSX0dSQVZJVFlfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2dyYXZpdHlfZ2V0X3R5 cGUgKCkiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNl ID0gIjEuMjIiLCBzaW5jZSA9ICIwLjIiKV0KKysJcHVibGljIGVudW0gR3Jhdml0eSB7CisrCQlO T05FLAorKwkJTk9SVEgsCisrCQlOT1JUSF9FQVNULAorKwkJRUFTVCwKKysJCVNPVVRIX0VBU1Qs CisrCQlTT1VUSCwKKysJCVNPVVRIX1dFU1QsCisrCQlXRVNULAorKwkJTk9SVEhfV0VTVCwKKysJ CUNFTlRFUgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9HUklEX1BPU0lUSU9OXyIsIHR5cGVfaWQgPSAiY2x1 dHRlcl9ncmlkX3Bvc2l0aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEyIildCisrCXB1YmxpYyBlbnVtIEdyaWRQb3NpdGlvbiB7CisrCQlMRUZULAorKwkJUklHSFQs CisrCQlUT1AsCisrCQlCT1RUT00KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfSU5JVF8iLCB0eXBlX2lkID0g ImNsdXR0ZXJfaW5pdF9lcnJvcl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAi MC4yIildCisrCXB1YmxpYyBlbnVtIEluaXRFcnJvciB7CisrCQlTVUNDRVNTLAorKwkJRVJST1Jf VU5LTk9XTiwKKysJCUVSUk9SX1RIUkVBRFMsCisrCQlFUlJPUl9CQUNLRU5ELAorKwkJRVJST1Jf SU5URVJOQUw7CisrCQlwdWJsaWMgc3RhdGljIEdMaWIuUXVhcmsgcXVhcmsgKCk7CisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9 ICJDTFVUVEVSX0lOUFVUX0FYSVNfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2lucHV0X2F4aXNfZ2V0 X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwlwdWJsaWMgZW51bSBJ bnB1dEF4aXMgeworKwkJSUdOT1JFLAorKwkJWCwKKysJCVksCisrCQlQUkVTU1VSRSwKKysJCVhU SUxULAorKwkJWVRJTFQsCisrCQlXSEVFTCwKKysJCURJU1RBTkNFLAorKwkJUk9UQVRJT04sCisr CQlTTElERVIsCisrCQlMQVNUCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0lOUFVUX0NPTlRFTlRfSElOVF8i LCB0eXBlX2lkID0gImNsdXR0ZXJfaW5wdXRfY29udGVudF9oaW50X2ZsYWdzX2dldF90eXBlICgp IildCisrCVtGbGFnc10KKysJcHVibGljIGVudW0gSW5wdXRDb250ZW50SGludEZsYWdzIHsKKysJ CUNPTVBMRVRJT04sCisrCQlTUEVMTENIRUNLLAorKwkJQVVUT19DQVBJVEFMSVpBVElPTiwKKysJ CUxPV0VSQ0FTRSwKKysJCVVQUEVSQ0FTRSwKKysJCVRJVExFQ0FTRSwKKysJCUhJRERFTl9URVhU LAorKwkJU0VOU0lUSVZFX0RBVEEsCisrCQlMQVRJTiwKKysJCU1VTFRJTElORQorKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAi Q0xVVFRFUl9JTlBVVF9DT05URU5UX1BVUlBPU0VfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2lucHV0 X2NvbnRlbnRfcHVycG9zZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBJbnB1dENvbnRl bnRQdXJwb3NlIHsKKysJCU5PUk1BTCwKKysJCUFMUEhBLAorKwkJRElHSVRTLAorKwkJTlVNQkVS LAorKwkJUEhPTkUsCisrCQlVUkwsCisrCQlFTUFJTCwKKysJCU5BTUUsCisrCQlQQVNTV09SRCwK KysJCURBVEUsCisrCQlUSU1FLAorKwkJREFURVRJTUUsCisrCQlURVJNSU5BTAorKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAi Q0xVVFRFUl9JTlBVVF9ERVZJQ0VfTUFQUElOR18iLCB0eXBlX2lkID0gImNsdXR0ZXJfaW5wdXRf ZGV2aWNlX21hcHBpbmdfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gSW5wdXREZXZpY2VN YXBwaW5nIHsKKysJCUFCU09MVVRFLAorKwkJUkVMQVRJVkUKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfSU5Q VVRfREVWSUNFX1BBRF9TT1VSQ0VfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2lucHV0X2RldmljZV9w YWRfc291cmNlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIElucHV0RGV2aWNlUGFkU291 cmNlIHsKKysJCVVOS05PV04sCisrCQlGSU5HRVIKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfSU5QVVRfREVW SUNFX1RPT0xfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2lucHV0X2RldmljZV90b29sX3R5cGVfZ2V0 X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjgiKV0KKysJcHVibGljIGVudW0g SW5wdXREZXZpY2VUb29sVHlwZSB7CisrCQlOT05FLAorKwkJUEVOLAorKwkJRVJBU0VSLAorKwkJ QlJVU0gsCisrCQlQRU5DSUwsCisrCQlBSVJCUlVTSCwKKysJCU1PVVNFLAorKwkJTEVOUworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVm aXggPSAiQ0xVVFRFUl8iLCB0eXBlX2lkID0gImNsdXR0ZXJfaW5wdXRfZGV2aWNlX3R5cGVfZ2V0 X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgZW51bSBJ bnB1dERldmljZVR5cGUgeworKwkJUE9JTlRFUl9ERVZJQ0UsCisrCQlLRVlCT0FSRF9ERVZJQ0Us CisrCQlFWFRFTlNJT05fREVWSUNFLAorKwkJSk9ZU1RJQ0tfREVWSUNFLAorKwkJVEFCTEVUX0RF VklDRSwKKysJCVRPVUNIUEFEX0RFVklDRSwKKysJCVRPVUNIU0NSRUVOX0RFVklDRSwKKysJCVBF Tl9ERVZJQ0UsCisrCQlFUkFTRVJfREVWSUNFLAorKwkJQ1VSU09SX0RFVklDRSwKKysJCVBBRF9E RVZJQ0UsCisrCQlOX0RFVklDRV9UWVBFUworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9JTlBVVF9NT0RFXyIs IHR5cGVfaWQgPSAiY2x1dHRlcl9pbnB1dF9tb2RlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9u IChzaW5jZSA9ICIxLjYiKV0KKysJcHVibGljIGVudW0gSW5wdXRNb2RlIHsKKysJCU1BU1RFUiwK KysJCVNMQVZFLAorKwkJRkxPQVRJTkcKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfSU5QVVRfUEFORUxfU1RB VEVfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2lucHV0X3BhbmVsX3N0YXRlX2dldF90eXBlICgpIild CisrCXB1YmxpYyBlbnVtIElucHV0UGFuZWxTdGF0ZSB7CisrCQlPRkYsCisrCQlPTiwKKysJCVRP R0dMRQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9JTlRFUlBPTEFUSU9OXyIsIHR5cGVfaWQgPSAiY2x1dHRl cl9pbnRlcnBvbGF0aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0g dHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjIyIiwgc2luY2UgPSAiMS4yIildCisrCXB1Ymxp YyBlbnVtIEludGVycG9sYXRpb24geworKwkJTElORUFSLAorKwkJQ1VCSUMKKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNM VVRURVJfS0VZX1NUQVRFXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9rZXlfc3RhdGVfZ2V0X3R5cGUg KCkiKV0KKysJcHVibGljIGVudW0gS2V5U3RhdGUgeworKwkJUkVMRUFTRUQsCisrCQlQUkVTU0VE CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y3ByZWZpeCA9ICJDTFVUVEVSX0ExMVlfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2tleWJvYXJkX2Ex MXlfZmxhZ3NfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlwdWJsaWMgZW51bSBLZXlib2Fy ZEExMXlGbGFncyB7CisrCQlLRVlCT0FSRF9FTkFCTEVELAorKwkJVElNRU9VVF9FTkFCTEVELAor KwkJTU9VU0VfS0VZU19FTkFCTEVELAorKwkJU0xPV19LRVlTX0VOQUJMRUQsCisrCQlTTE9XX0tF WVNfQkVFUF9QUkVTUywKKysJCVNMT1dfS0VZU19CRUVQX0FDQ0VQVCwKKysJCVNMT1dfS0VZU19C RUVQX1JFSkVDVCwKKysJCUJPVU5DRV9LRVlTX0VOQUJMRUQsCisrCQlCT1VOQ0VfS0VZU19CRUVQ X1JFSkVDVCwKKysJCVRPR0dMRV9LRVlTX0VOQUJMRUQsCisrCQlTVElDS1lfS0VZU19FTkFCTEVE LAorKwkJU1RJQ0tZX0tFWVNfVFdPX0tFWV9PRkYsCisrCQlTVElDS1lfS0VZU19CRUVQLAorKwkJ RkVBVFVSRV9TVEFURV9DSEFOR0VfQkVFUAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9MT05HX1BSRVNTXyIs IHR5cGVfaWQgPSAiY2x1dHRlcl9sb25nX3ByZXNzX3N0YXRlX2dldF90eXBlICgpIildCisrCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJcHVibGljIGVudW0gTG9uZ1ByZXNzU3RhdGUgewor KwkJUVVFUlksCisrCQlBQ1RJVkFURSwKKysJCUNBTkNFTAorKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl8iLCB0 eXBlX2lkID0gImNsdXR0ZXJfbW9kaWZpZXJfdHlwZV9nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3Nd CisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJcHVibGljIGVudW0gTW9kaWZpZXJUeXBl IHsKKysJCVNISUZUX01BU0ssCisrCQlMT0NLX01BU0ssCisrCQlDT05UUk9MX01BU0ssCisrCQlN T0QxX01BU0ssCisrCQlNT0QyX01BU0ssCisrCQlNT0QzX01BU0ssCisrCQlNT0Q0X01BU0ssCisr CQlNT0Q1X01BU0ssCisrCQlCVVRUT04xX01BU0ssCisrCQlCVVRUT04yX01BU0ssCisrCQlCVVRU T04zX01BU0ssCisrCQlCVVRUT040X01BU0ssCisrCQlCVVRUT041X01BU0ssCisrCQlNT0RJRklF Ul9SRVNFUlZFRF8xM19NQVNLLAorKwkJTU9ESUZJRVJfUkVTRVJWRURfMTRfTUFTSywKKysJCU1P RElGSUVSX1JFU0VSVkVEXzE1X01BU0ssCisrCQlNT0RJRklFUl9SRVNFUlZFRF8xNl9NQVNLLAor KwkJTU9ESUZJRVJfUkVTRVJWRURfMTdfTUFTSywKKysJCU1PRElGSUVSX1JFU0VSVkVEXzE4X01B U0ssCisrCQlNT0RJRklFUl9SRVNFUlZFRF8xOV9NQVNLLAorKwkJTU9ESUZJRVJfUkVTRVJWRURf MjBfTUFTSywKKysJCU1PRElGSUVSX1JFU0VSVkVEXzIxX01BU0ssCisrCQlNT0RJRklFUl9SRVNF UlZFRF8yMl9NQVNLLAorKwkJTU9ESUZJRVJfUkVTRVJWRURfMjNfTUFTSywKKysJCU1PRElGSUVS X1JFU0VSVkVEXzI0X01BU0ssCisrCQlNT0RJRklFUl9SRVNFUlZFRF8yNV9NQVNLLAorKwkJU1VQ RVJfTUFTSywKKysJCUhZUEVSX01BU0ssCisrCQlNRVRBX01BU0ssCisrCQlNT0RJRklFUl9SRVNF UlZFRF8yOV9NQVNLLAorKwkJUkVMRUFTRV9NQVNLLAorKwkJTU9ESUZJRVJfTUFTSworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXgg PSAiQ0xVVFRFUl9PRkZTQ1JFRU5fUkVESVJFQ1RfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX29mZnNj cmVlbl9yZWRpcmVjdF9nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjgiKV0KKysJcHVibGljIGVudW0gT2Zmc2NyZWVuUmVkaXJlY3QgeworKwkJQVVUT01B VElDX0ZPUl9PUEFDSVRZLAorKwkJQUxXQVlTCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX09SSUVOVEFUSU9O XyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9vcmllbnRhdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwlwdWJsaWMgZW51bSBPcmllbnRhdGlvbiB7CisrCQlI T1JJWk9OVEFMLAorKwkJVkVSVElDQUwKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfUEFOXyIsIHR5cGVfaWQg PSAiY2x1dHRlcl9wYW5fYXhpc19nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMiIpXQorKwlwdWJsaWMgZW51bSBQYW5BeGlzIHsKKysJCUFYSVNfTk9ORSwKKysJCVhfQVhJ UywKKysJCVlfQVhJUywKKysJCUFYSVNfQVVUTworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9QQVRIXyIsIHR5 cGVfaWQgPSAiY2x1dHRlcl9wYXRoX25vZGVfdHlwZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBlbnVtIFBhdGhOb2RlVHlwZSB7CisrCQlNT1ZF X1RPLAorKwkJTElORV9UTywKKysJCUNVUlZFX1RPLAorKwkJQ0xPU0UsCisrCQlSRUxfTU9WRV9U TywKKysJCVJFTF9MSU5FX1RPLAorKwkJUkVMX0NVUlZFX1RPCisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0RF QlVHX05PUF8iLCB0eXBlX2lkID0gImNsdXR0ZXJfcGlja19kZWJ1Z19mbGFnX2dldF90eXBlICgp IildCisrCVtGbGFnc10KKysJcHVibGljIGVudW0gUGlja0RlYnVnRmxhZyB7CisrCQlQSUNLSU5H CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y3ByZWZpeCA9ICJDTFVUVEVSX1BJQ0tfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3BpY2tfbW9kZV9n ZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBlbnVt IFBpY2tNb2RlIHsKKysJCU5PTkUsCisrCQlSRUFDVElWRSwKKysJCUFMTAorKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xV VFRFUl9BMTFZX0RXRUxMX0NMSUNLX1RZUEVfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3BvaW50ZXJf YTExeV9kd2VsbF9jbGlja190eXBlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIFBvaW50 ZXJBMTF5RHdlbGxDbGlja1R5cGUgeworKwkJTk9ORSwKKysJCVBSSU1BUlksCisrCQlTRUNPTkRB UlksCisrCQlNSURETEUsCisrCQlET1VCTEUsCisrCQlEUkFHCisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0Ex MVlfRFdFTExfRElSRUNUSU9OXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9wb2ludGVyX2ExMXlfZHdl bGxfZGlyZWN0aW9uX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIFBvaW50ZXJBMTF5RHdl bGxEaXJlY3Rpb24geworKwkJTk9ORSwKKysJCUxFRlQsCisrCQlSSUdIVCwKKysJCVVQLAorKwkJ RE9XTgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9BMTFZX0RXRUxMX01PREVfIiwgdHlwZV9pZCA9ICJjbHV0 dGVyX3BvaW50ZXJfYTExeV9kd2VsbF9tb2RlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVt IFBvaW50ZXJBMTF5RHdlbGxNb2RlIHsKKysJCVdJTkRPVywKKysJCUdFU1RVUkUKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0g IkNMVVRURVJfQTExWV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfcG9pbnRlcl9hMTF5X2ZsYWdzX2dl dF90eXBlICgpIildCisrCVtGbGFnc10KKysJcHVibGljIGVudW0gUG9pbnRlckExMXlGbGFncyB7 CisrCQlTRUNPTkRBUllfQ0xJQ0tfRU5BQkxFRCwKKysJCURXRUxMX0VOQUJMRUQKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0g IkNMVVRURVJfQTExWV9USU1FT1VUX1RZUEVfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3BvaW50ZXJf YTExeV90aW1lb3V0X3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gUG9pbnRlckEx MXlUaW1lb3V0VHlwZSB7CisrCQlTRUNPTkRBUllfQ0xJQ0ssCisrCQlEV0VMTCwKKysJCUdFU1RV UkUKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjcHJlZml4ID0gIkNMVVRURVJfUkVQQUlOVF9GTEFHU18iLCB0eXBlX2lkID0gImNsdXR0ZXJf cmVwYWludF9mbGFnc19nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEwIildCisrCXB1YmxpYyBlbnVtIFJlcGFpbnRGbGFncyB7CisrCQlQUkVfUEFJTlQs CisrCQlQT1NUX1BBSU5ULAorKwkJUVVFVUVfUkVEUkFXX09OX0FERAorKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRF Ul9SRVFVRVNUXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9yZXF1ZXN0X21vZGVfZ2V0X3R5cGUgKCki KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwlwdWJsaWMgZW51bSBSZXF1ZXN0TW9k ZSB7CisrCQlIRUlHSFRfRk9SX1dJRFRILAorKwkJV0lEVEhfRk9SX0hFSUdIVCwKKysJCUNPTlRF TlRfU0laRQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl8iLCB0eXBlX2lkID0gImNsdXR0ZXJfcm90YXRlX2F4 aXNfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwlwdWJsaWMg ZW51bSBSb3RhdGVBeGlzIHsKKysJCVhfQVhJUywKKysJCVlfQVhJUywKKysJCVpfQVhJUworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVm aXggPSAiQ0xVVFRFUl9ST1RBVEVfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3JvdGF0ZV9kaXJlY3Rp b25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNh dGVkX3NpbmNlID0gIjEuMjIiLCBzaW5jZSA9ICIwLjQiKV0KKysJcHVibGljIGVudW0gUm90YXRl RGlyZWN0aW9uIHsKKysJCUNXLAorKwkJQ0NXCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1NDQUxJTkdfRklM VEVSXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zY2FsaW5nX2ZpbHRlcl9nZXRfdHlwZSAoKSIpXQor KwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgZW51bSBTY2FsaW5nRmlsdGVy IHsKKysJCUxJTkVBUiwKKysJCU5FQVJFU1QsCisrCQlUUklMSU5FQVIKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRU RVJfU0NST0xMXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zY3JvbGxfZGlyZWN0aW9uX2dldF90eXBl ICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJcHVibGljIGVudW0gU2Nyb2xs RGlyZWN0aW9uIHsKKysJCVVQLAorKwkJRE9XTiwKKysJCUxFRlQsCisrCQlSSUdIVCwKKysJCVNN T09USAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9TQ1JPTExfRklOSVNIRURfIiwgdHlwZV9pZCA9ICJjbHV0 dGVyX3Njcm9sbF9maW5pc2hfZmxhZ3NfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMS4yNiIpXQorKwlwdWJsaWMgZW51bSBTY3JvbGxGaW5pc2hGbGFncyB7 CisrCQlOT05FLAorKwkJSE9SSVpPTlRBTCwKKysJCVZFUlRJQ0FMCisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVS X1NDUk9MTF8iLCB0eXBlX2lkID0gImNsdXR0ZXJfc2Nyb2xsX21vZGVfZ2V0X3R5cGUgKCkiKV0K KysJW0ZsYWdzXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwlwdWJsaWMgZW51bSBT Y3JvbGxNb2RlIHsKKysJCU5PTkUsCisrCQlIT1JJWk9OVEFMTFksCisrCQlWRVJUSUNBTExZLAor KwkJQk9USAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9TQ1JPTExfU09VUkNFXyIsIHR5cGVfaWQgPSAiY2x1 dHRlcl9zY3JvbGxfc291cmNlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIx LjI2IildCisrCXB1YmxpYyBlbnVtIFNjcm9sbFNvdXJjZSB7CisrCQlVTktOT1dOLAorKwkJV0hF RUwsCisrCQlGSU5HRVIsCisrCQlDT05USU5VT1VTCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSXyIsIHR5cGVf aWQgPSAiY2x1dHRlcl9zaGFkZXJfdHlwZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMS40IildCisrCXB1YmxpYyBlbnVtIFNoYWRlclR5cGUgeworKwkJVkVSVEVYX1NIQURF UiwKKysJCUZSQUdNRU5UX1NIQURFUgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9TTkFQX0VER0VfIiwgdHlw ZV9pZCA9ICJjbHV0dGVyX3NuYXBfZWRnZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMS42IildCisrCXB1YmxpYyBlbnVtIFNuYXBFZGdlIHsKKysJCVRPUCwKKysJCVJJR0hU LAorKwkJQk9UVE9NLAorKwkJTEVGVAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9TVEFHRV9TVEFURV8iLCB0 eXBlX2lkID0gImNsdXR0ZXJfc3RhZ2Vfc3RhdGVfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQor KwlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCXB1YmxpYyBlbnVtIFN0YWdlU3RhdGUgewor KwkJQUNUSVZBVEVECisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0NPTE9SXyIsIHR5cGVfaWQgPSAiY2x1dHRl cl9zdGF0aWNfY29sb3JfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIp XQorKwlwdWJsaWMgZW51bSBTdGF0aWNDb2xvciB7CisrCQlXSElURSwKKysJCUJMQUNLLAorKwkJ UkVELAorKwkJREFSS19SRUQsCisrCQlHUkVFTiwKKysJCURBUktfR1JFRU4sCisrCQlCTFVFLAor KwkJREFSS19CTFVFLAorKwkJQ1lBTiwKKysJCURBUktfQ1lBTiwKKysJCU1BR0VOVEEsCisrCQlE QVJLX01BR0VOVEEsCisrCQlZRUxMT1csCisrCQlEQVJLX1lFTExPVywKKysJCUdSQVksCisrCQlE QVJLX0dSQVksCisrCQlMSUdIVF9HUkFZLAorKwkJQlVUVEVSLAorKwkJQlVUVEVSX0xJR0hULAor KwkJQlVUVEVSX0RBUkssCisrCQlPUkFOR0UsCisrCQlPUkFOR0VfTElHSFQsCisrCQlPUkFOR0Vf REFSSywKKysJCUNIT0NPTEFURSwKKysJCUNIT0NPTEFURV9MSUdIVCwKKysJCUNIT0NPTEFURV9E QVJLLAorKwkJQ0hBTUVMRU9OLAorKwkJQ0hBTUVMRU9OX0xJR0hULAorKwkJQ0hBTUVMRU9OX0RB UkssCisrCQlTS1lfQkxVRSwKKysJCVNLWV9CTFVFX0xJR0hULAorKwkJU0tZX0JMVUVfREFSSywK KysJCVBMVU0sCisrCQlQTFVNX0xJR0hULAorKwkJUExVTV9EQVJLLAorKwkJU0NBUkxFVF9SRUQs CisrCQlTQ0FSTEVUX1JFRF9MSUdIVCwKKysJCVNDQVJMRVRfUkVEX0RBUkssCisrCQlBTFVNSU5J VU1fMSwKKysJCUFMVU1JTklVTV8yLAorKwkJQUxVTUlOSVVNXzMsCisrCQlBTFVNSU5JVU1fNCwK KysJCUFMVU1JTklVTV81LAorKwkJQUxVTUlOSVVNXzYsCisrCQlUUkFOU1BBUkVOVAorKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXgg PSAiQ0xVVFRFUl9TVEVQX01PREVfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3N0ZXBfbW9kZV9nZXRf dHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwlwdWJsaWMgZW51bSBT dGVwTW9kZSB7CisrCQlTVEFSVCwKKysJCUVORAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9TV0lQRV9ESVJF Q1RJT05fIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3N3aXBlX2RpcmVjdGlvbl9nZXRfdHlwZSAoKSIp XQorKwlbRmxhZ3NdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJcHVibGljIGVudW0g U3dpcGVEaXJlY3Rpb24geworKwkJVVAsCisrCQlET1dOLAorKwkJTEVGVCwKKysJCVJJR0hUCisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3By ZWZpeCA9ICJDTFVUVEVSX1RFWFRfRElSRUNUSU9OXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl90ZXh0 X2RpcmVjdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisr CXB1YmxpYyBlbnVtIFRleHREaXJlY3Rpb24geworKwkJREVGQVVMVCwKKysJCUxUUiwKKysJCVJU TAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNwcmVmaXggPSAiQ0xVVFRFUl9URVhUVVJFXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl90ZXh0dXJl X2ZsYWdzX2dldF90eXBlICgpIildCisrCVtGbGFnc10KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQg PSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMjIiLCBzaW5jZSA9ICIwLjQiKV0KKysJcHVi bGljIGVudW0gVGV4dHVyZUZsYWdzIHsKKysJCU5PTkUsCisrCQlSR0JfRkxBR19CR1IsCisrCQlS R0JfRkxBR19QUkVNVUxULAorKwkJWVVWX0ZMQUdfWVVWMgorKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9URVhU VVJFX1FVQUxJVFlfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3RleHR1cmVfcXVhbGl0eV9nZXRfdHlw ZSAoKSIpXQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2Ug PSAiMS4yMiIsIHNpbmNlID0gIjAuOCIpXQorKwlwdWJsaWMgZW51bSBUZXh0dXJlUXVhbGl0eSB7 CisrCQlMT1csCisrCQlNRURJVU0sCisrCQlISUdICisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1RJTUVMSU5F XyIsIHR5cGVfaWQgPSAiY2x1dHRlcl90aW1lbGluZV9kaXJlY3Rpb25fZ2V0X3R5cGUgKCkiKV0K KysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwlwdWJsaWMgZW51bSBUaW1lbGluZURpcmVj dGlvbiB7CisrCQlGT1JXQVJELAorKwkJQkFDS1dBUkQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfVE9VQ0hQ QURfR0VTVFVSRV9QSEFTRV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfdG91Y2hwYWRfZ2VzdHVyZV9w aGFzZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yNCIpXQorKwlwdWJs aWMgZW51bSBUb3VjaHBhZEdlc3R1cmVQaGFzZSB7CisrCQlCRUdJTiwKKysJCVVQREFURSwKKysJ CUVORCwKKysJCUNBTkNFTAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9VTklUXyIsIHR5cGVfaWQgPSAiY2x1 dHRlcl91bml0X3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIp XQorKwlwdWJsaWMgZW51bSBVbml0VHlwZSB7CisrCQlQSVhFTCwKKysJCUVNLAorKwkJTU0sCisr CQlQT0lOVCwKKysJCUNNCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1ZJUlRVQUxfREVWSUNFX1RZUEVfIiwg dHlwZV9pZCA9ICJjbHV0dGVyX3ZpcnR1YWxfZGV2aWNlX3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJ W0ZsYWdzXQorKwlwdWJsaWMgZW51bSBWaXJ0dWFsRGV2aWNlVHlwZSB7CisrCQlOT05FLAorKwkJ S0VZQk9BUkQsCisrCQlQT0lOVEVSLAorKwkJVE9VQ0hTQ1JFRU4KKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJf Wk9PTV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfem9vbV9heGlzX2dldF90eXBlICgpIildCisrCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCXB1YmxpYyBlbnVtIFpvb21BeGlzIHsKKysJCVhf QVhJUywKKysJCVlfQVhJUywKKysJCUJPVEgKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfSU1BR0VfRVJST1Jf SU5WQUxJRF8iKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGVycm9y ZG9tYWluIEltYWdlRXJyb3IgeworKwkJREFUQTsKKysJCXB1YmxpYyBzdGF0aWMgR0xpYi5RdWFy ayBxdWFyayAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfU0NSSVBUX0VSUk9SX0lOVkFMSURfIildCisr CVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJcHVibGljIGVycm9yZG9tYWluIFNjcmlwdEVy cm9yIHsKKysJCVRZUEVfRlVOQ1RJT04sCisrCQlQUk9QRVJUWSwKKysJCVZBTFVFOworKwkJcHVi bGljIHN0YXRpYyBHTGliLlF1YXJrIHF1YXJrICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGluc3RhbmNlX3BvcyA9IDEuOSldCisrCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjI0IildCisrCXB1YmxpYyBkZWxlZ2F0ZSBDbHV0dGVyLkFjdG9y IEFjdG9yQ3JlYXRlQ2hpbGRGdW5jIChHTGliLk9iamVjdCBpdGVtKTsKKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaW5zdGFuY2VfcG9zID0gMS45KV0K KysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIi LCBzaW5jZSA9ICIwLjIiKV0KKysJcHVibGljIGRlbGVnYXRlIGRvdWJsZSBBbHBoYUZ1bmMgKENs dXR0ZXIuQWxwaGEgYWxwaGEpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBpbnN0YW5jZV9wb3MgPSA0LjkpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAi MS4wIildCisrCXB1YmxpYyBkZWxlZ2F0ZSBib29sIEJpbmRpbmdBY3Rpb25GdW5jIChHTGliLk9i amVjdCBnb2JqZWN0LCBzdHJpbmcgYWN0aW9uX25hbWUsIHVpbnQga2V5X3ZhbCwgQ2x1dHRlci5N b2RpZmllclR5cGUgbW9kaWZpZXJzKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgaW5zdGFuY2VfcG9zID0gMS45KV0KKysJcHVibGljIGRlbGVnYXRl IHZvaWQgQ2FsbGJhY2sgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBoYXNfdGFyZ2V0ID0gZmFsc2UpXQorKwlw dWJsaWMgZGVsZWdhdGUgdm9pZCBFbWl0SW5wdXREZXZpY2VFdmVudCAoQ2x1dHRlci5FdmVudCBl dmVudCwgQ2x1dHRlci5JbnB1dERldmljZSBkZXZpY2UpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBpbnN0YW5jZV9wb3MgPSAxLjkpXQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMS4xOCIpXQorKwlwdWJsaWMgZGVsZWdhdGUgYm9vbCBFdmVudEZpbHRl ckZ1bmMgKENsdXR0ZXIuRXZlbnQgZXZlbnQpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBpbnN0YW5jZV9wb3MgPSAxLjkpXQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBkZWxlZ2F0ZSB2b2lkIFBhdGhDYWxsYmFjayAoQ2x1 dHRlci5QYXRoTm9kZSBub2RlKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgaGFzX3RhcmdldCA9IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNpbmNlID0g IjEuMCIpXQorKwlwdWJsaWMgZGVsZWdhdGUgYm9vbCBQcm9ncmVzc0Z1bmMgKEdMaWIuVmFsdWUg YSwgR0xpYi5WYWx1ZSBiLCBkb3VibGUgcHJvZ3Jlc3MsIEdMaWIuVmFsdWUgcmV0dmFsKTsKKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaW5zdGFuY2Vf cG9zID0gNi45KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwlwdWJsaWMgZGVsZWdh dGUgdm9pZCBTY3JpcHRDb25uZWN0RnVuYyAoQ2x1dHRlci5TY3JpcHQgc2NyaXB0LCBHTGliLk9i amVjdCBvYmplY3QsIHN0cmluZyBzaWduYWxfbmFtZSwgc3RyaW5nIGhhbmRsZXJfbmFtZSwgR0xp Yi5PYmplY3QgY29ubmVjdF9vYmplY3QsIEdMaWIuQ29ubmVjdEZsYWdzIGZsYWdzKTsKKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaW5zdGFuY2VfcG9z ID0gMy45KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGRlbGVnYXRl IGRvdWJsZSBUaW1lbGluZVByb2dyZXNzRnVuYyAoQ2x1dHRlci5UaW1lbGluZSB0aW1lbGluZSwg ZG91YmxlIGVsYXBzZWQsIGRvdWJsZSB0b3RhbCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfQ09HTCIpXQorKwlbVmVy c2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNl ID0gIjAuNCIpXQorKwlwdWJsaWMgY29uc3Qgc3RyaW5nIENPR0w7CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfQ1VSUkVO VF9USU1FIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJcHVibGljIGNvbnN0IGlu dCBDVVJSRU5UX1RJTUU7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfRkxBVk9VUiIpXQorKwlbVmVyc2lvbiAoZGVwcmVj YXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjAuNCIpXQor KwlwdWJsaWMgY29uc3Qgc3RyaW5nIEZMQVZPVVI7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfUEFUSF9SRUxBVElWRSIp XQorKwlwdWJsaWMgY29uc3QgaW50IFBBVEhfUkVMQVRJVkU7CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfUFJJT1JJVFlf UkVEUkFXIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJcHVibGljIGNvbnN0IGlu dCBQUklPUklUWV9SRURSQVc7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgYmFzZV9pbml0ICgpOworKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTIiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIGNhaXJvX2NsZWFyIChDYWly by5Db250ZXh0IGNyKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIHN0YXRpYyB2 b2lkIGNhaXJvX3NldF9zb3VyY2VfY29sb3IgKENhaXJvLkNvbnRleHQgY3IsIENsdXR0ZXIuQ29s b3IgY29sb3IpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIHN0YXRpYyBib29s IGNoZWNrX3dpbmRvd2luZ19iYWNrZW5kIChzdHJpbmcgYmFja2VuZF90eXBlKTsKKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCXB1YmxpYyBzdGF0 aWMgdm9pZCBjb2xvcl9mcm9tX2hscyAob3V0IENsdXR0ZXIuQ29sb3IgY29sb3IsIGZsb2F0IGh1 ZSwgZmxvYXQgbHVtaW5hbmNlLCBmbG9hdCBzYXR1cmF0aW9uKTsKKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBj b2xvcl9mcm9tX3BpeGVsIChvdXQgQ2x1dHRlci5Db2xvciBjb2xvciwgdWludDMyIHBpeGVsKTsK KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGNvbG9yX2Zyb21f c3RyaW5nIChvdXQgQ2x1dHRlci5Db2xvciBjb2xvciwgc3RyaW5nIHN0cik7CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMS42IildCisrCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLkNvbG9yPyBjb2xv cl9nZXRfc3RhdGljIChDbHV0dGVyLlN0YXRpY0NvbG9yIGNvbG9yKTsKKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjE0IildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBkaXNhYmxlX2FjY2Vzc2liaWxpdHkgKCk7 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlb VmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBkb19ldmVudCAo Q2x1dHRlci5FdmVudCBldmVudCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xOCIpXQorKwlwdWJsaWMg c3RhdGljIHVpbnQgZXZlbnRfYWRkX2ZpbHRlciAoQ2x1dHRlci5TdGFnZT8gc3RhZ2UsIFtDQ29k ZSAoZGVsZWdhdGVfdGFyZ2V0X3BvcyA9IDIuMiwgZGVzdHJveV9ub3RpZnlfcG9zID0gMi4xKV0g b3duZWQgQ2x1dHRlci5FdmVudEZpbHRlckZ1bmMgZnVuYyk7CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC40 IildCisrCXB1YmxpYyBzdGF0aWMgQ2x1dHRlci5FdmVudCBldmVudF9nZXQgKCk7CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMC40IildCisrCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLkV2ZW50IGV2 ZW50X3BlZWsgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xOCIpXQorKwlwdWJsaWMgc3RhdGljIHZv aWQgZXZlbnRfcmVtb3ZlX2ZpbHRlciAodWludCBpZCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC40Iild CisrCXB1YmxpYyBzdGF0aWMgYm9vbCBldmVudHNfcGVuZGluZyAoKTsKKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjQiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGdldF9hY2Nlc3NpYmlsaXR5X2VuYWJsZWQg KCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQor KwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0 dGVyLkV2ZW50IGdldF9jdXJyZW50X2V2ZW50ICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwlwdWJsaWMgc3RhdGljIHVpbnQzMiBnZXRfY3VycmVudF9ldmVudF90aW1lICgpOworKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24g KHNpbmNlID0gIjAuNCIpXQorKwlwdWJsaWMgc3RhdGljIHVub3duZWQgQ2x1dHRlci5CYWNrZW5k IGdldF9kZWZhdWx0X2JhY2tlbmQgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCXB1Ymxp YyBzdGF0aWMgdWludCBnZXRfZGVmYXVsdF9mcmFtZV9yYXRlICgpOworKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0g IjEuMiIpXQorKwlwdWJsaWMgc3RhdGljIENsdXR0ZXIuVGV4dERpcmVjdGlvbiBnZXRfZGVmYXVs dF90ZXh0X2RpcmVjdGlvbiAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIHN0 YXRpYyB1bm93bmVkIFBhbmdvLkZvbnRNYXAgZ2V0X2ZvbnRfbWFwICgpOworKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNl ID0gIjAuMiIpXQorKwlwdWJsaWMgc3RhdGljIEdMaWIuT3B0aW9uR3JvdXAgZ2V0X29wdGlvbl9n cm91cCAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJcHVibGljIHN0YXRpYyBHTGliLk9w dGlvbkdyb3VwIGdldF9vcHRpb25fZ3JvdXBfd2l0aG91dF9pbml0ICgpOworKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNl ID0gIjAuNiIpXQorKwlwdWJsaWMgc3RhdGljIHVub3duZWQgc3RyaW5nIGdldF9zY3JpcHRfaWQg KEdMaWIuT2JqZWN0IGdvYmplY3QpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiKV0KKysJcHVibGljIHN0YXRpYyBDbHV0dGVyLkluaXRFcnJvciBpbml0 IChbQ0NvZGUgKGFycmF5X2xlbmd0aF9jbmFtZSA9ICJhcmdjIiwgYXJyYXlfbGVuZ3RoX3BvcyA9 IDAuNSldIHJlZiB1bm93bmVkIHN0cmluZ1tdPyBhcmd2KTsKKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIi KV0KKysJcHVibGljIHN0YXRpYyBDbHV0dGVyLkluaXRFcnJvciBpbml0X3dpdGhfYXJncyAoW0ND b2RlIChhcnJheV9sZW5ndGhfY25hbWUgPSAiYXJnYyIsIGFycmF5X2xlbmd0aF9wb3MgPSAwLjUp XSByZWYgdW5vd25lZCBzdHJpbmdbXT8gYXJndiwgc3RyaW5nPyBwYXJhbWV0ZXJfc3RyaW5nLCBb Q0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gR0xpYi5PcHRpb25FbnRyeVtdPyBlbnRyaWVz LCBzdHJpbmc/IHRyYW5zbGF0aW9uX2RvbWFpbikgdGhyb3dzIEdMaWIuRXJyb3I7CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlwdWJsaWMgc3Rh dGljIHVpbnQzMiBrZXlzeW1fdG9fdW5pY29kZSAodWludCBrZXl2YWwpOworKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJcHVibGljIHN0YXRpYyB2 b2lkIG1haW4gKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIpXQorKwlwdWJsaWMgc3RhdGljIGludCBtYWluX2xldmVsICgpOworKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJcHVibGljIHN0YXRpYyB2 b2lkIG1haW5fcXVpdCAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBzZXRfY3VzdG9tX2JhY2tlbmRfZnVu YyAodm9pZCogZnVuYyk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgc3RhdGlj IHVpbnQgdW5pY29kZV90b19rZXlzeW0gKHVpbnQzMiB3Yyk7CisrfQorZGlmZiAtLWdpdCBhL3Zh cGkvbXV0dGVyLWNvZ2wtNi1jdXN0b20udmFsYSBiL3ZhcGkvbXV0dGVyLWNvZ2wtNi1jdXN0b20u dmFsYQorbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAwLi5hMmMxMDY0NQorLS0t IC9kZXYvbnVsbAorKysrIGIvdmFwaS9tdXR0ZXItY29nbC02LWN1c3RvbS52YWxhCitAQCAtMCww ICsxLDEyNSBAQAorK25hbWVzcGFjZSBDb2dsIHsKKysJW0NvbXBhY3RdCisrCVtDQ29kZSAoY25h bWUgPSAiQ29nbEhhbmRsZSIpXQorKwlwdWJsaWMgY2xhc3MgQml0bWFwOiBIYW5kbGUgeworKwkJ cHVibGljIHN0YXRpYyBCaXRtYXAgbmV3X2Zyb21fZmlsZSAoc3RyaW5nIGZpbGVuYW1lKSB0aHJv d3MgR0xpYi5FcnJvcjsKKysJfQorKworKwlbQ29tcGFjdF0KKysJW0NDb2RlIChjbmFtZSA9ICJD b2dsSGFuZGxlIildCisrCXB1YmxpYyBjbGFzcyBCdWZmZXI6IEhhbmRsZSB7CisrCQlwdWJsaWMg dWludCBnZXRfc2l6ZSAoKTsKKysJCXB1YmxpYyBib29sIHNldF9kYXRhIChzaXplX3Qgb2Zmc2V0 LCBbQ0NvZGUgKGFycmF5X2xlbmd0aF90eXBlID0gInNpemVfdCIpXSB1aW50OFtdIGRhdGEpOwor KwkJcHVibGljIHZvaWQgdW5tYXAgKCk7CisrCX0KKysKKysJW0NDb2RlIChoYXNfdHlwZV9pZCA9 IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBDb2xvciB7CisrCQlwdWJsaWMgQ29sb3IuZnJvbV80 ZiAoZmxvYXQgcmVkLCBmbG9hdCBncmVlbiwgZmxvYXQgYmx1ZSwgZmxvYXQgYWxwaGEpOworKwkJ cHVibGljIENvbG9yLmZyb21fNHViICh1aW50OCByZWQsIHVpbnQ4IGdyZWVuLCB1aW50OCBibHVl LCB1aW50OCBhbHBoYSk7CisrCX0KKysKKysJW0NvbXBhY3RdCisrCVtDQ29kZSAocmVmX2Z1bmN0 aW9uID0gImNvZ2xfaGFuZGxlX3JlZiIsIHVucmVmX2Z1bmN0aW9uID0gImNvZ2xfaGFuZGxlX3Vu cmVmIildCisrCXB1YmxpYyBjbGFzcyBIYW5kbGUgeworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2ds X2lzX2JpdG1hcCIpXQorKwkJcHVibGljIGJvb2wgaXNfYml0bWFwICgpOworKwkJW0NDb2RlIChj bmFtZSA9ICJjb2dsX2lzX2J1ZmZlciIpXQorKwkJcHVibGljIGJvb2wgaXNfYnVmZmVyICgpOwor KwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2lzX21hdGVyaWFsIildCisrCQlwdWJsaWMgYm9vbCBp c19tYXRlcmlhbCAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9pc19vZmZzY3JlZW4iKV0K KysJCXB1YmxpYyBib29sIGlzX29mZnNjcmVlbiAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29n bF9pc19waXhlbF9idWZmZXIiKV0KKysJCXB1YmxpYyBib29sIGlzX3BpeGVsX2J1ZmZlciAoKTsK KysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9pc19wcm9ncmFtIildCisrCQlwdWJsaWMgYm9vbCBp c19wcm9ncmFtICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2lzX3NoYWRlciIpXQorKwkJ cHVibGljIGJvb2wgaXNfc2hhZGVyICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2lzX3Rl eHR1cmUiKV0KKysJCXB1YmxpYyBib29sIGlzX3RleHR1cmUgKCk7CisrCQlbQ0NvZGUgKGNuYW1l ID0gImNvZ2xfaXNfdmVydGV4X2J1ZmZlciIpXQorKwkJcHVibGljIGJvb2wgaXNfdmVydGV4X2J1 ZmZlciAoKTsKKysJfQorKworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2ds LmgiLCBjb3B5X2Z1bmN0aW9uID0gImNvZ2xfcGF0aF9jb3B5IildCisrCVtDb21wYWN0XQorKwlw dWJsaWMgY2xhc3MgUGF0aCB7CisrCQlwdWJsaWMgc3RhdGljIHZvaWQgQG5ldyAoKTsKKysJfQor KworKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIFBpeGVsQnVmZmVyOiBIYW5kbGUgeworKwkJ cHVibGljIFBpeGVsQnVmZmVyICh1aW50IHNpemUpOworKwkJcHVibGljIFBpeGVsQnVmZmVyLmZv cl9zaXplICh1aW50IHdpZHRoLCB1aW50IGhlaWdodCwgQ29nbC5QaXhlbEZvcm1hdCBmb3JtYXQs IHVpbnQgc3RyaWRlKTsKKysJfQorKworKwlbQ29tcGFjdF0KKysJW0NDb2RlIChjbmFtZSA9ICJD b2dsSGFuZGxlIiwgcmVmX2Z1bmN0aW9uID0gImNvZ2xfcHJvZ3JhbV9yZWYiLCB1bnJlZl9mdW5j dGlvbiA9ICJjb2dsX3Byb2dyYW1fdW5yZWYiKV0KKysJcHVibGljIGNsYXNzIFByb2dyYW06IEhh bmRsZSB7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfY3JlYXRlX3Byb2dyYW0iLCB0eXBlID0g IkNvZ2xIYW5kbGUqIiwgaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1Ymxp YyBQcm9ncmFtICgpOworKwkJcHVibGljIHZvaWQgYXR0YWNoX3NoYWRlciAoQ29nbC5TaGFkZXIg c2hhZGVyX2hhbmRsZSk7CisrCQlwdWJsaWMgaW50IGdldF91bmlmb3JtX2xvY2F0aW9uIChzdHJp bmcgdW5pZm9ybV9uYW1lKTsKKysJCXB1YmxpYyB2b2lkIGxpbmsgKCk7CisrCQlwdWJsaWMgc3Rh dGljIHZvaWQgdW5pZm9ybV8xZiAoaW50IHVuaWZvcm1fbm8sIGZsb2F0IHZhbHVlKTsKKysJCXB1 YmxpYyBzdGF0aWMgdm9pZCB1bmlmb3JtXzFpIChpbnQgdW5pZm9ybV9ubywgaW50IHZhbHVlKTsK KysJCXB1YmxpYyBzdGF0aWMgdm9pZCB1bmlmb3JtX2Zsb2F0IChpbnQgdW5pZm9ybV9ubywgaW50 IHNpemUsIFtDQ29kZSAoYXJyYXlfbGVuZ3RoX3BvcyA9IDIuOSldIGZsb2F0W10gdmFsdWUpOwor KwkJcHVibGljIHN0YXRpYyB2b2lkIHVuaWZvcm1faW50IChpbnQgdW5pZm9ybV9ubywgaW50IHNp emUsIFtDQ29kZSAoYXJyYXlfbGVuZ3RoX3BvcyA9IDIuOSldIGludFtdIHZhbHVlKTsKKysJCXB1 YmxpYyBzdGF0aWMgdm9pZCB1bmlmb3JtX21hdHJpeCAoaW50IHVuaWZvcm1fbm8sIGludCBzaXpl LCBib29sIHRyYW5zcG9zZSwgW0NDb2RlIChhcnJheV9sZW5ndGhfcG9zID0gMi45KV0gZmxvYXRb XSB2YWx1ZSk7CisrCQlwdWJsaWMgdm9pZCB1c2UgKCk7CisrCX0KKysKKysJW0NvbXBhY3RdCisr CVtDQ29kZSAoY25hbWUgPSAiQ29nbEhhbmRsZSIsIHJlZl9mdW5jdGlvbiA9ICJjb2dsX3NoYWRl cl9yZWYiLCB1bnJlZl9mdW5jdGlvbiA9ICJjb2dsX3NoYWRlcl91bnJlZiIpXQorKwlwdWJsaWMg Y2xhc3MgU2hhZGVyOiBIYW5kbGUgeworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2NyZWF0ZV9z aGFkZXIiLCB0eXBlID0gIkNvZ2xIYW5kbGUqIiwgaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZh bHNlKV0KKysJCXB1YmxpYyBTaGFkZXIgKENvZ2wuU2hhZGVyVHlwZSBzaGFkZXJfdHlwZSk7Cisr CQlwdWJsaWMgdm9pZCBjb21waWxlICgpOworKwkJcHVibGljIHN0cmluZyBnZXRfaW5mb19sb2cg KCk7CisrCQlwdWJsaWMgQ29nbC5TaGFkZXJUeXBlIGdldF90eXBlICgpOworKwkJcHVibGljIGJv b2wgaXNfY29tcGlsZWQgKCk7CisrCQlwdWJsaWMgdm9pZCBzb3VyY2UgKHN0cmluZyBzb3VyY2Up OworKwl9CisrCisrCVtDb21wYWN0XQorKwlbQ0NvZGUgKGNuYW1lID0gIkNvZ2xIYW5kbGUiLCBy ZWZfZnVuY3Rpb24gPSAiY29nbF92ZXJ0ZXhfYnVmZmVyX3JlZiIsIHVucmVmX2Z1bmN0aW9uID0g ImNvZ2xfdmVydGV4X2J1ZmZlcl91bnJlZiIpXQorKwlwdWJsaWMgY2xhc3MgVmVydGV4QnVmZmVy OiBIYW5kbGUgeworKwkJW0NDb2RlICh0eXBlID0gIkNvZ2xIYW5kbGUqIiwgaGFzX2NvbnN0cnVj dF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1YmxpYyBWZXJ0ZXhCdWZmZXIgKHVpbnQgbl92ZXJ0 aWNlcyk7CisrCQlwdWJsaWMgdm9pZCBhZGQgKHN0cmluZyBhdHRyaWJ1dGVfbmFtZSwgdWNoYXIg bl9jb21wb25lbnRzLCBDb2dsLkF0dHJpYnV0ZVR5cGUgdHlwZSwgYm9vbCBub3JtYWxpemVkLCB1 aW50MTYgc3RyaWRlLCB2b2lkKiBwb2ludGVyKTsKKysJCXB1YmxpYyB2b2lkIGRlbGV0ZSAoc3Ry aW5nIGF0dHJpYnV0ZV9uYW1lKTsKKysJCXB1YmxpYyB2b2lkIGRpc2FibGUgKHN0cmluZyBhdHRy aWJ1dGVfbmFtZSk7CisrCQlwdWJsaWMgdm9pZCBkcmF3IChDb2dsLlZlcnRpY2VzTW9kZSBtb2Rl LCBpbnQgZmlyc3QsIGludCBjb3VudCk7CisrCQlwdWJsaWMgdm9pZCBkcmF3X2VsZW1lbnRzIChD b2dsLlZlcnRpY2VzTW9kZSBtb2RlLCBWZXJ0ZXhCdWZmZXJJbmRpY2VzIGluZGljZXMsIGludCBt aW5faW5kZXgsIGludCBtYXhfaW5kZXgsIGludCBpbmRpY2VzX29mZnNldCwgaW50IGNvdW50KTsK KysJCXB1YmxpYyB2b2lkIGVuYWJsZSAoc3RyaW5nIGF0dHJpYnV0ZV9uYW1lKTsKKysJCXB1Ymxp YyB1aW50IGdldF9uX3ZlcnRpY2VzICgpOworKwkJcHVibGljIHZvaWQgc3VibWl0ICgpOworKwl9 CisrCisrCVtDb21wYWN0XQorKwlbQ0NvZGUgKGNuYW1lID0gIkNvZ2xIYW5kbGUiKV0KKysJcHVi bGljIGNsYXNzIFZlcnRleEJ1ZmZlckluZGljZXM6IEhhbmRsZSB7CisrCQlwdWJsaWMgVmVydGV4 QnVmZmVySW5kaWNlcyAoQ29nbC5JbmRpY2VzVHlwZSBpbmRpY2VzX3R5cGUsIHZvaWQqIGluZGlj ZXNfYXJyYXksIGludCBpbmRpY2VzX2xlbik7CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgQ29n bC5WZXJ0ZXhCdWZmZXJJbmRpY2VzIGdldF9mb3JfcXVhZHMgKHVpbnQgbl9pbmRpY2VzKTsKKysJ CXB1YmxpYyBDb2dsLkluZGljZXNUeXBlIGdldF90eXBlICgpOworKwl9CisrCisrCVtDQ29kZSAo dHlwZV9pZCA9ICJDT0dMX1RZUEVfTUFUUklYIiwgY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2Nv Z2wuaCIpXQorKwlwdWJsaWMgc3RydWN0IE1hdHJpeCB7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNv Z2xfbWF0cml4X2luaXRfZnJvbV9hcnJheSIsIGFycmF5X2xlbmd0aCA9IGZhbHNlLCBhcnJheV9u dWxsX3Rlcm1pbmF0ZWQgPSBmYWxzZSldCisrCQlwdWJsaWMgTWF0cml4LmZyb21fYXJyYXkgKFtD Q29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSBmbG9hdFtdIGFycmF5KTsKKysJCVtDQ29kZSAo Y25hbWUgPSAiY29nbF9tYXRyaXhfaW5pdF9pZGVudGl0eSIpXQorKwkJcHVibGljIE1hdHJpeC5p ZGVudGl0eSAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9tYXRyaXhfbXVsdGlwbHkiKV0K KysJCXB1YmxpYyBNYXRyaXgubXVsdGlwbHkgKENvZ2wuTWF0cml4IGEsIENvZ2wuTWF0cml4IGIp OworKwl9CisrCisrCVtTaW1wbGVUeXBlXQorKwlbR0lSIChuYW1lID0gIkJvb2wiKV0KKysJW0Jv b2xlYW5UeXBlXQorKwlwdWJsaWMgc3RydWN0IEJvb2wgOiBib29sIHsKKysJfQorKworKwlwdWJs aWMgc3RhdGljIEdMaWIuQ2FsbGJhY2sgZ2V0X3Byb2NfYWRkcmVzcyhzdHJpbmcgcyk7CisrfQor ZGlmZiAtLWdpdCBhL3ZhcGkvbXV0dGVyLWNvZ2wtNi5kZXBzIGIvdmFwaS9tdXR0ZXItY29nbC02 LmRlcHMKK25ldyBmaWxlIG1vZGUgMTAwNjQ0CitpbmRleCAwMDAwMDAwMC4uOThjY2FjNWIKKy0t LSAvZGV2L251bGwKKysrKyBiL3ZhcGkvbXV0dGVyLWNvZ2wtNi5kZXBzCitAQCAtMCwwICsxIEBA CisrcGFuZ28KK2RpZmYgLS1naXQgYS92YXBpL211dHRlci1jb2dsLTYudmFwaSBiL3ZhcGkvbXV0 dGVyLWNvZ2wtNi52YXBpCituZXcgZmlsZSBtb2RlIDEwMDY0NAoraW5kZXggMDAwMDAwMDAuLmM5 YWI1ZDU3CistLS0gL2Rldi9udWxsCisrKysgYi92YXBpL211dHRlci1jb2dsLTYudmFwaQorQEAg LTAsMCArMSwxMDc3IEBACisrLyogbXV0dGVyLWNvZ2wtNi52YXBpIGdlbmVyYXRlZCBieSB2YXBp Z2VuLCBkbyBub3QgbW9kaWZ5LiAqLworKworK1tDQ29kZSAoY3ByZWZpeCA9ICJDb2dsIiwgZ2ly X25hbWVzcGFjZSA9ICJDb2dsIiwgZ2lyX3ZlcnNpb24gPSAiNiIsIGxvd2VyX2Nhc2VfY3ByZWZp eCA9ICJjb2dsXyIpXQorK25hbWVzcGFjZSBDb2dsIHsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNvZ2wvY29nbC5oIiwgY25hbWUgPSAiQ29nbEhhbmRsZSIsIHR5cGVfaWQgPSAiY29n bF9iaXRtYXBfZ2V0X2d0eXBlICgpIildCisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3MgQml0 bWFwIDogQ29nbC5IYW5kbGUgeworKwkJcHVibGljIHN0YXRpYyB1aW50MzIgZXJyb3JfcXVhcmsg KCk7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJD b2dsQml0bWFwKiIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEJp dG1hcC5mcm9tX2ZpbGUgKHN0cmluZyBmaWxlbmFtZSkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENvZ2wuUGl4ZWxGb3JtYXQgZ2V0 X2Zvcm1hdCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgaW50 IGdldF9oZWlnaHQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IGludCBnZXRfcm93c3RyaWRlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJ cHVibGljIHN0YXRpYyBib29sIGdldF9zaXplX2Zyb21fZmlsZSAoc3RyaW5nIGZpbGVuYW1lLCBv dXQgaW50IHdpZHRoLCBvdXQgaW50IGhlaWdodCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MCIpXQorKwkJcHVibGljIGludCBnZXRfd2lkdGggKCk7CisrCQlwdWJsaWMgc3RhdGljIENvZ2wu Qml0bWFwIG5ld19mcm9tX2ZpbGUgKHN0cmluZyBmaWxlbmFtZSkgdGhyb3dzIEdMaWIuRXJyb3I7 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY25hbWUg PSAiQ29nbEhhbmRsZSIpXQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIEJ1ZmZlciA6IENv Z2wuSGFuZGxlIHsKKysJCXB1YmxpYyB1aW50IGdldF9zaXplICgpOworKwkJcHVibGljIGJvb2wg c2V0X2RhdGEgKHNpemVfdCBvZmZzZXQsIFtDQ29kZSAoYXJyYXlfbGVuZ3RoX3R5cGUgPSAic2l6 ZV90IildIHVpbnQ4W10gZGF0YSk7CisrCQlwdWJsaWMgdm9pZCB1bm1hcCAoKTsKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCB0eXBlX2lkID0gImNvZ2xf Y29udGV4dF9nZXRfZ3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIENvbnRleHQgOiBDb2dsLk9i amVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlw cm90ZWN0ZWQgQ29udGV4dCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y29nbC9jb2dsLmgiLCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVuY3Rp b24gPSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJjb2dsX2ZyYW1lX2Nsb3N1cmVfZ2V0X2d0 eXBlICgpIildCisrCVtDb21wYWN0XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNCIpXQorKwlw dWJsaWMgY2xhc3MgRnJhbWVDbG9zdXJlIHsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY29nbC9jb2dsLmgiLCByZWZfZnVuY3Rpb24gPSAiY29nbF9oYW5kbGVfcmVmIiwgdW5y ZWZfZnVuY3Rpb24gPSAiY29nbF9oYW5kbGVfdW5yZWYiKV0KKysJW0NvbXBhY3RdCisrCXB1Ymxp YyBjbGFzcyBIYW5kbGUgeworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2lzX2JpdG1hcCIpXQor KwkJcHVibGljIGJvb2wgaXNfYml0bWFwICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2lz X2J1ZmZlciIpXQorKwkJcHVibGljIGJvb2wgaXNfYnVmZmVyICgpOworKwkJW0NDb2RlIChjbmFt ZSA9ICJjb2dsX2lzX21hdGVyaWFsIildCisrCQlwdWJsaWMgYm9vbCBpc19tYXRlcmlhbCAoKTsK KysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9pc19vZmZzY3JlZW4iKV0KKysJCXB1YmxpYyBib29s IGlzX29mZnNjcmVlbiAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9pc19waXhlbF9idWZm ZXIiKV0KKysJCXB1YmxpYyBib29sIGlzX3BpeGVsX2J1ZmZlciAoKTsKKysJCVtDQ29kZSAoY25h bWUgPSAiY29nbF9pc19wcm9ncmFtIildCisrCQlwdWJsaWMgYm9vbCBpc19wcm9ncmFtICgpOwor KwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2lzX3NoYWRlciIpXQorKwkJcHVibGljIGJvb2wgaXNf c2hhZGVyICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2lzX3RleHR1cmUiKV0KKysJCXB1 YmxpYyBib29sIGlzX3RleHR1cmUgKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfaXNfdmVy dGV4X2J1ZmZlciIpXQorKwkJcHVibGljIGJvb2wgaXNfdmVydGV4X2J1ZmZlciAoKTsKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjb3B5X2Z1bmN0aW9u ID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9p ZCA9ICJjb2dsX21hdGVyaWFsX2dldF90eXBlICgpIildCisrCVtDb21wYWN0XQorKwlwdWJsaWMg Y2xhc3MgTWF0ZXJpYWwgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFs c2UpXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0g IjEuMTYiKV0KKysJCXB1YmxpYyBNYXRlcmlhbCAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVk ID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2UgPSAiMS4wIildCisrCQlw dWJsaWMgdm9pZCBzZXRfYWxwaGFfdGVzdF9mdW5jdGlvbiAoQ29nbC5NYXRlcmlhbEFscGhhRnVu YyBhbHBoYV9mdW5jLCBmbG9hdCBhbHBoYV9yZWZlcmVuY2UpOworKwkJW1ZlcnNpb24gKGRlcHJl Y2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiLCBzaW5jZSA9ICIxLjAiKV0K KysJCXB1YmxpYyBib29sIHNldF9ibGVuZCAoc3RyaW5nIGJsZW5kX3N0cmluZykgdGhyb3dzIEdM aWIuRXJyb3I7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2lu Y2UgPSAiMS4xNiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2JsZW5kX2Nv bnN0YW50IChDb2dsLkNvbG9yIGNvbnN0YW50X2NvbG9yKTsKKysJCVtWZXJzaW9uIChkZXByZWNh dGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2UgPSAiMS4wIildCisr CQlwdWJsaWMgdm9pZCBzZXRfY29sb3IgKENvZ2wuQ29sb3IgY29sb3IpOworKwkJW1ZlcnNpb24g KGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiLCBzaW5jZSA9ICIx LjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9jb2xvcjR1YiAodWludDggcmVkLCB1aW50OCBncmVl biwgdWludDggYmx1ZSwgdWludDggYWxwaGEpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0 cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1Ymxp YyB2b2lkIHNldF9sYXllciAoaW50IGxheWVyX2luZGV4LCBDb2dsLkhhbmRsZSB0ZXh0dXJlKTsK KysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2 Iiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgYm9vbCBzZXRfbGF5ZXJfY29tYmluZSAoaW50 IGxheWVyX2luZGV4LCBzdHJpbmcgYmxlbmRfc3RyaW5nKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJ CVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2Iiwg c2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbGF5ZXJfY29tYmluZV9jb25zdGFu dCAoaW50IGxheWVyX2luZGV4LCBDb2dsLkNvbG9yIGNvbnN0YW50KTsKKysJCVtWZXJzaW9uIChk ZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2IildCisrCQlwdWJsaWMg dm9pZCBzZXRfbGF5ZXJfZmlsdGVycyAoaW50IGxheWVyX2luZGV4LCBDb2dsLk1hdGVyaWFsRmls dGVyIG1pbl9maWx0ZXIsIENvZ2wuTWF0ZXJpYWxGaWx0ZXIgbWFnX2ZpbHRlcik7CisrCQlbVmVy c2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIpXQorKwkJ cHVibGljIHZvaWQgc2V0X2xheWVyX21hdHJpeCAoaW50IGxheWVyX2luZGV4LCBDb2dsLk1hdHJp eCBtYXRyaXgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3Np bmNlID0gIjEuMTYiLCBzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBib29sIHNldF9sYXllcl9w b2ludF9zcHJpdGVfY29vcmRzX2VuYWJsZWQgKGludCBsYXllcl9pbmRleCwgYm9vbCBlbmFibGUp IHRocm93cyBHTGliLkVycm9yOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXBy ZWNhdGVkX3NpbmNlID0gIjEuMTYiLCBzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHNl dF9wb2ludF9zaXplIChmbG9hdCBwb2ludF9zaXplKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVk ID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2UgPSAiMS40IildCisrCQlw dWJsaWMgdm9pZCBzZXRfdXNlcl9wcm9ncmFtIChDb2dsLkhhbmRsZSBwcm9ncmFtKTsKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBoYXNfdHlwZV9pZCA9 IGZhbHNlKV0KKysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFzcyBNYXRlcmlhbExheWVyIHsKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCB0eXBlX2lkID0g ImNvZ2xfb2JqZWN0X2dldF9ndHlwZSAoKSIpXQorKwlwdWJsaWMgYWJzdHJhY3QgY2xhc3MgT2Jq ZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXBy b3RlY3RlZCBPYmplY3QgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNv Z2wvY29nbC5oIiwgdHlwZV9pZCA9ICJjb2dsX29mZnNjcmVlbl9nZXRfZ3R5cGUgKCkiKV0KKysJ cHVibGljIGNsYXNzIE9mZnNjcmVlbiA6IENvZ2wuT2JqZWN0LCBDb2dsLkZyYW1lYnVmZmVyIHsK KysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3Rl ZCBPZmZzY3JlZW4gKCk7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxz ZSldCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAi MS4xNiIpXQorKwkJcHVibGljIE9mZnNjcmVlbi50b190ZXh0dXJlIChDb2dsLlRleHR1cmUgdGV4 dHVyZSk7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlw dWJsaWMgT2Zmc2NyZWVuLndpdGhfdGV4dHVyZSAoQ29nbC5UZXh0dXJlIHRleHR1cmUpOworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIHR5cGVfaWQgPSAi Y29nbF9vbnNjcmVlbl9nZXRfZ3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIE9uc2NyZWVuIDog Q29nbC5PYmplY3QsIENvZ2wuRnJhbWVidWZmZXIgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0 X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIE9uc2NyZWVuICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTYiKV0KKysJCXB1YmxpYyBDb2dsLk9uc2NyZWVuRGlydHlDbG9zdXJl IGFkZF9kaXJ0eV9jYWxsYmFjayAoW0NDb2RlIChkZWxlZ2F0ZV90YXJnZXRfcG9zID0gMS41KV0g Q29nbC5PbnNjcmVlbkRpcnR5Q2FsbGJhY2sgY2FsbGJhY2ssIENvZ2wuVXNlckRhdGFEZXN0cm95 Q2FsbGJhY2s/IGRlc3Ryb3kpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVi bGljIENvZ2wuT25zY3JlZW5SZXNpemVDbG9zdXJlIGFkZF9yZXNpemVfY2FsbGJhY2sgKFtDQ29k ZSAoZGVsZWdhdGVfdGFyZ2V0X3BvcyA9IDEuNSldIENvZ2wuT25zY3JlZW5SZXNpemVDYWxsYmFj ayBjYWxsYmFjaywgQ29nbC5Vc2VyRGF0YURlc3Ryb3lDYWxsYmFjaz8gZGVzdHJveSk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xNCIpXQorKwkJcHVibGljIGludCBnZXRfYnVmZmVyX2FnZSAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE0IildCisrCQlwdWJsaWMgaW50NjQgZ2V0X2Zy YW1lX2NvdW50ZXIgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMg Ym9vbCBnZXRfcmVzaXphYmxlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJ cHVibGljIHZvaWQgaGlkZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2IildCisrCQlw dWJsaWMgdm9pZCByZW1vdmVfZGlydHlfY2FsbGJhY2sgKENvZ2wuT25zY3JlZW5EaXJ0eUNsb3N1 cmUgY2xvc3VyZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNCIpXQorKwkJcHVibGljIHZv aWQgcmVtb3ZlX2ZyYW1lX2NhbGxiYWNrIChDb2dsLkZyYW1lQ2xvc3VyZSBjbG9zdXJlKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIHJlbW92ZV9yZXNpemVf Y2FsbGJhY2sgKENvZ2wuT25zY3JlZW5SZXNpemVDbG9zdXJlIGNsb3N1cmUpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3Jlc2l6YWJsZSAoYm9vbCBy ZXNpemFibGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQg c2hvdyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBz d2FwX2J1ZmZlcnMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNiIpXQorKwkJcHVibGlj IHZvaWQgc3dhcF9idWZmZXJzX3dpdGhfZGFtYWdlIChpbnQgcmVjdGFuZ2xlcywgaW50IG5fcmVj dGFuZ2xlcyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQg c3dhcF9yZWdpb24gKGludCByZWN0YW5nbGVzLCBpbnQgbl9yZWN0YW5nbGVzKTsKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjb3B5X2Z1bmN0aW9uID0g ImdfYm94ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9 ICJjb2dsX29uc2NyZWVuX2RpcnR5X2Nsb3N1cmVfZ2V0X2d0eXBlICgpIildCisrCVtDb21wYWN0 XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNiIpXQorKwlwdWJsaWMgY2xhc3MgT25zY3JlZW5E aXJ0eUNsb3N1cmUgeworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2Nv Z2wuaCIsIGNvcHlfZnVuY3Rpb24gPSAiZ19ib3hlZF9jb3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJn X2JveGVkX2ZyZWUiLCB0eXBlX2lkID0gImNvZ2xfb25zY3JlZW5fcmVzaXplX2Nsb3N1cmVfZ2V0 X2d0eXBlICgpIildCisrCVtDb21wYWN0XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisr CXB1YmxpYyBjbGFzcyBPbnNjcmVlblJlc2l6ZUNsb3N1cmUgeworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNvcHlfZnVuY3Rpb24gPSAiY29nbF9wYXRo X2NvcHkiKV0KKysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFzcyBQYXRoIHsKKysJCXB1YmxpYyBz dGF0aWMgdm9pZCBAbmV3ICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj b2dsL2NvZ2wuaCIsIHR5cGVfaWQgPSAiY29nbF9waXBlbGluZV9nZXRfZ3R5cGUgKCkiKV0KKysJ cHVibGljIGNsYXNzIFBpcGVsaW5lIDogQ29nbC5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29u c3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQor KwkJcHVibGljIFBpcGVsaW5lIChDb2dsLkNvbnRleHQgY29udGV4dCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgQ29nbC5QaXBlbGluZSBjb3B5ICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgZm9yZWFjaF9sYXllciAoQ29n bC5QaXBlbGluZUxheWVyQ2FsbGJhY2sgY2FsbGJhY2spOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjIuMCIpXQorKwkJcHVibGljIENvZ2wuUGlwZWxpbmVBbHBoYUZ1bmMgZ2V0X2FscGhhX3Rlc3Rf ZnVuY3Rpb24gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgZmxv YXQgZ2V0X2FscGhhX3Rlc3RfcmVmZXJlbmNlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIu MCIpXQorKwkJcHVibGljIENvZ2wuQ29sb3IgZ2V0X2NvbG9yICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjIuMCIpXQorKwkJcHVibGljIENvZ2wuUGlwZWxpbmVDdWxsRmFjZU1vZGUgZ2V0X2N1 bGxfZmFjZV9tb2RlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGlj IENvZ2wuV2luZGluZyBnZXRfZnJvbnRfZmFjZV93aW5kaW5nICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDb2dsLlBpcGVsaW5lRmlsdGVyIGdldF9sYXllcl9t YWdfZmlsdGVyIChpbnQgbGF5ZXJfaW5kZXgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAi KV0KKysJCXB1YmxpYyBDb2dsLlBpcGVsaW5lRmlsdGVyIGdldF9sYXllcl9taW5fZmlsdGVyIChp bnQgbGF5ZXJfaW5kZXgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGlj IGJvb2wgZ2V0X2xheWVyX3BvaW50X3Nwcml0ZV9jb29yZHNfZW5hYmxlZCAoaW50IGxheWVyX2lu ZGV4KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdW5vd25lZCBD b2dsLlRleHR1cmUgZ2V0X2xheWVyX3RleHR1cmUgKGludCBsYXllcl9pbmRleCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgQ29nbC5QaXBlbGluZVdyYXBNb2RlIGdl dF9sYXllcl93cmFwX21vZGVfcyAoaW50IGxheWVyX2luZGV4KTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBDb2dsLlBpcGVsaW5lV3JhcE1vZGUgZ2V0X2xheWVyX3dy YXBfbW9kZV90IChpbnQgbGF5ZXJfaW5kZXgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIp XQorKwkJcHVibGljIGludCBnZXRfbl9sYXllcnMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi Mi4wIildCisrCQlwdWJsaWMgYm9vbCBnZXRfcGVyX3ZlcnRleF9wb2ludF9zaXplICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF9wb2ludF9zaXpl ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIGludCBnZXRfdW5p Zm9ybV9sb2NhdGlvbiAoc3RyaW5nIHVuaWZvcm1fbmFtZSk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMi4wIildCisrCQlwdWJsaWMgdW5vd25lZCBDb2dsLkhhbmRsZSBnZXRfdXNlcl9wcm9ncmFt ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHJlbW92 ZV9sYXllciAoaW50IGxheWVyX2luZGV4KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0K KysJCXB1YmxpYyB2b2lkIHNldF9hbHBoYV90ZXN0X2Z1bmN0aW9uIChDb2dsLlBpcGVsaW5lQWxw aGFGdW5jIGFscGhhX2Z1bmMsIGZsb2F0IGFscGhhX3JlZmVyZW5jZSk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgYm9vbCBzZXRfYmxlbmQgKHN0cmluZyBibGVuZF9z dHJpbmcpIHRocm93cyBHTGliLkVycm9yOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQor KwkJcHVibGljIHZvaWQgc2V0X2JsZW5kX2NvbnN0YW50IChDb2dsLkNvbG9yIGNvbnN0YW50X2Nv bG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9j b2xvciAoQ29nbC5Db2xvciBjb2xvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisr CQlwdWJsaWMgdm9pZCBzZXRfY29sb3I0ZiAoZmxvYXQgcmVkLCBmbG9hdCBncmVlbiwgZmxvYXQg Ymx1ZSwgZmxvYXQgYWxwaGEpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVi bGljIHZvaWQgc2V0X2NvbG9yNHViICh1aW50OCByZWQsIHVpbnQ4IGdyZWVuLCB1aW50OCBibHVl LCB1aW50OCBhbHBoYSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMg dm9pZCBzZXRfY3VsbF9mYWNlX21vZGUgKENvZ2wuUGlwZWxpbmVDdWxsRmFjZU1vZGUgY3VsbF9m YWNlX21vZGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQg c2V0X2Zyb250X2ZhY2Vfd2luZGluZyAoQ29nbC5XaW5kaW5nIGZyb250X3dpbmRpbmcpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIGJvb2wgc2V0X2xheWVyX2NvbWJp bmUgKGludCBsYXllcl9pbmRleCwgc3RyaW5nIGJsZW5kX3N0cmluZykgdGhyb3dzIEdMaWIuRXJy b3I7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbGF5 ZXJfY29tYmluZV9jb25zdGFudCAoaW50IGxheWVyX2luZGV4LCBDb2dsLkNvbG9yIGNvbnN0YW50 KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbGF5 ZXJfZmlsdGVycyAoaW50IGxheWVyX2luZGV4LCBDb2dsLlBpcGVsaW5lRmlsdGVyIG1pbl9maWx0 ZXIsIENvZ2wuUGlwZWxpbmVGaWx0ZXIgbWFnX2ZpbHRlcik7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2xheWVyX21hdHJpeCAoaW50IGxheWVyX2lu ZGV4LCBDb2dsLk1hdHJpeCBtYXRyaXgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0K KysJCXB1YmxpYyB2b2lkIHNldF9sYXllcl9udWxsX3RleHR1cmUgKGludCBsYXllcl9pbmRleCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgYm9vbCBzZXRfbGF5ZXJf cG9pbnRfc3ByaXRlX2Nvb3Jkc19lbmFibGVkIChpbnQgbGF5ZXJfaW5kZXgsIGJvb2wgZW5hYmxl KSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJCXB1YmxpYyB2b2lkIHNldF9sYXllcl90ZXh0dXJlIChp bnQgbGF5ZXJfaW5kZXgsIENvZ2wuVGV4dHVyZSB0ZXh0dXJlKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9sYXllcl93cmFwX21vZGUgKGludCBsYXll cl9pbmRleCwgQ29nbC5QaXBlbGluZVdyYXBNb2RlIG1vZGUpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2xheWVyX3dyYXBfbW9kZV9zIChpbnQgbGF5 ZXJfaW5kZXgsIENvZ2wuUGlwZWxpbmVXcmFwTW9kZSBtb2RlKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9sYXllcl93cmFwX21vZGVfdCAoaW50IGxh eWVyX2luZGV4LCBDb2dsLlBpcGVsaW5lV3JhcE1vZGUgbW9kZSk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMi4wIildCisrCQlwdWJsaWMgYm9vbCBzZXRfcGVyX3ZlcnRleF9wb2ludF9zaXplIChi b29sIGVuYWJsZSkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4w IildCisrCQlwdWJsaWMgdm9pZCBzZXRfcG9pbnRfc2l6ZSAoZmxvYXQgcG9pbnRfc2l6ZSk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfdW5pZm9ybV8x ZiAoaW50IHVuaWZvcm1fbG9jYXRpb24sIGZsb2F0IHZhbHVlKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF91bmlmb3JtXzFpIChpbnQgdW5pZm9ybV9s b2NhdGlvbiwgaW50IHZhbHVlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1 YmxpYyB2b2lkIHNldF91bmlmb3JtX2Zsb2F0IChpbnQgdW5pZm9ybV9sb2NhdGlvbiwgaW50IG5f Y29tcG9uZW50cywgaW50IGNvdW50LCBmbG9hdCB2YWx1ZSk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfdW5pZm9ybV9pbnQgKGludCB1bmlmb3JtX2xv Y2F0aW9uLCBpbnQgbl9jb21wb25lbnRzLCBpbnQgY291bnQsIGludCB2YWx1ZSk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfdW5pZm9ybV9tYXRyaXgg KGludCB1bmlmb3JtX2xvY2F0aW9uLCBpbnQgZGltZW5zaW9ucywgaW50IGNvdW50LCBib29sIHRy YW5zcG9zZSwgZmxvYXQgdmFsdWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJ cHVibGljIHZvaWQgc2V0X3VzZXJfcHJvZ3JhbSAoQ29nbC5IYW5kbGUgcHJvZ3JhbSk7CisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtDb21wYWN0 XQorKwlwdWJsaWMgY2xhc3MgUGl4ZWxCdWZmZXIgOiBDb2dsLkhhbmRsZSB7CisrCQlwdWJsaWMg UGl4ZWxCdWZmZXIgKHVpbnQgc2l6ZSk7CisrCQlwdWJsaWMgUGl4ZWxCdWZmZXIuZm9yX3NpemUg KHVpbnQgd2lkdGgsIHVpbnQgaGVpZ2h0LCBDb2dsLlBpeGVsRm9ybWF0IGZvcm1hdCwgdWludCBz dHJpZGUpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIs IGNuYW1lID0gIkNvZ2xIYW5kbGUiLCByZWZfZnVuY3Rpb24gPSAiY29nbF9wcm9ncmFtX3JlZiIs IHVucmVmX2Z1bmN0aW9uID0gImNvZ2xfcHJvZ3JhbV91bnJlZiIpXQorKwlbQ29tcGFjdF0KKysJ cHVibGljIGNsYXNzIFByb2dyYW0gOiBDb2dsLkhhbmRsZSB7CisrCQlbQ0NvZGUgKGNuYW1lID0g ImNvZ2xfY3JlYXRlX3Byb2dyYW0iLCBoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5 cGUgPSAiQ29nbEhhbmRsZSoiKV0KKysJCXB1YmxpYyBQcm9ncmFtICgpOworKwkJcHVibGljIHZv aWQgYXR0YWNoX3NoYWRlciAoQ29nbC5TaGFkZXIgc2hhZGVyX2hhbmRsZSk7CisrCQlwdWJsaWMg aW50IGdldF91bmlmb3JtX2xvY2F0aW9uIChzdHJpbmcgdW5pZm9ybV9uYW1lKTsKKysJCXB1Ymxp YyB2b2lkIGxpbmsgKCk7CisrCQlwdWJsaWMgc3RhdGljIHZvaWQgdW5pZm9ybV8xZiAoaW50IHVu aWZvcm1fbm8sIGZsb2F0IHZhbHVlKTsKKysJCXB1YmxpYyBzdGF0aWMgdm9pZCB1bmlmb3JtXzFp IChpbnQgdW5pZm9ybV9ubywgaW50IHZhbHVlKTsKKysJCXB1YmxpYyBzdGF0aWMgdm9pZCB1bmlm b3JtX2Zsb2F0IChpbnQgdW5pZm9ybV9ubywgaW50IHNpemUsIFtDQ29kZSAoYXJyYXlfbGVuZ3Ro X3BvcyA9IDIuOSldIGZsb2F0W10gdmFsdWUpOworKwkJcHVibGljIHN0YXRpYyB2b2lkIHVuaWZv cm1faW50IChpbnQgdW5pZm9ybV9ubywgaW50IHNpemUsIFtDQ29kZSAoYXJyYXlfbGVuZ3RoX3Bv cyA9IDIuOSldIGludFtdIHZhbHVlKTsKKysJCXB1YmxpYyBzdGF0aWMgdm9pZCB1bmlmb3JtX21h dHJpeCAoaW50IHVuaWZvcm1fbm8sIGludCBzaXplLCBib29sIHRyYW5zcG9zZSwgW0NDb2RlIChh cnJheV9sZW5ndGhfcG9zID0gMi45KV0gZmxvYXRbXSB2YWx1ZSk7CisrCQlwdWJsaWMgdm9pZCB1 c2UgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwg Y25hbWUgPSAiQ29nbEhhbmRsZSIsIHJlZl9mdW5jdGlvbiA9ICJjb2dsX3NoYWRlcl9yZWYiLCB1 bnJlZl9mdW5jdGlvbiA9ICJjb2dsX3NoYWRlcl91bnJlZiIpXQorKwlbQ29tcGFjdF0KKysJcHVi bGljIGNsYXNzIFNoYWRlciA6IENvZ2wuSGFuZGxlIHsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29n bF9jcmVhdGVfc2hhZGVyIiwgaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0g IkNvZ2xIYW5kbGUqIildCisrCQlwdWJsaWMgU2hhZGVyIChDb2dsLlNoYWRlclR5cGUgc2hhZGVy X3R5cGUpOworKwkJcHVibGljIHZvaWQgY29tcGlsZSAoKTsKKysJCXB1YmxpYyBzdHJpbmcgZ2V0 X2luZm9fbG9nICgpOworKwkJcHVibGljIENvZ2wuU2hhZGVyVHlwZSBnZXRfdHlwZSAoKTsKKysJ CXB1YmxpYyBib29sIGlzX2NvbXBpbGVkICgpOworKwkJcHVibGljIHZvaWQgc291cmNlIChzdHJp bmcgc291cmNlKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2ds LmgiLCBsb3dlcl9jYXNlX2NzdWZmaXggPSAidGV4dHVyZV8yZCIsIHR5cGVfaWQgPSAiY29nbF90 ZXh0dXJlXzJkX2dldF9ndHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgVGV4dHVyZTJEIDogQ29n bC5PYmplY3QsIENvZ2wuVGV4dHVyZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rp b24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgVGV4dHVyZTJEICgpOworKwkJcHVibGljIHZvaWQg ZWdsX2ltYWdlX2V4dGVybmFsX2FsbG9jX2ZpbmlzaCAodm9pZCogdXNlcl9kYXRhLCBHTGliLkRl c3Ryb3lOb3RpZnkgZGVzdHJveSk7CisrCQlwdWJsaWMgdm9pZCBlZ2xfaW1hZ2VfZXh0ZXJuYWxf YmluZCAoKTsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyBUZXh0dXJlMkQuZnJvbV9iaXRt YXAgKENvZ2wuQml0bWFwIGJpdG1hcCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNvZ2wvY29nbC5oIiwgbG93ZXJfY2FzZV9jc3VmZml4ID0gInRleHR1cmVfMmRfc2xpY2Vk IiwgdHlwZV9pZCA9ICJjb2dsX3RleHR1cmVfMmRfc2xpY2VkX2dldF9ndHlwZSAoKSIpXQorKwlw dWJsaWMgY2xhc3MgVGV4dHVyZTJEU2xpY2VkIDogQ29nbC5PYmplY3QsIENvZ2wuVGV4dHVyZSB7 CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0 ZWQgVGV4dHVyZTJEU2xpY2VkICgpOworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9u ID0gZmFsc2UpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTYiKV0KKysJCXB1YmxpYyBUZXh0 dXJlMkRTbGljZWQuZnJvbV9iaXRtYXAgKENvZ2wuQml0bWFwIGJtcCwgaW50IG1heF93YXN0ZSk7 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY25hbWUg PSAiQ29nbEhhbmRsZSIsIHJlZl9mdW5jdGlvbiA9ICJjb2dsX3ZlcnRleF9idWZmZXJfcmVmIiwg dW5yZWZfZnVuY3Rpb24gPSAiY29nbF92ZXJ0ZXhfYnVmZmVyX3VucmVmIildCisrCVtDb21wYWN0 XQorKwlwdWJsaWMgY2xhc3MgVmVydGV4QnVmZmVyIDogQ29nbC5IYW5kbGUgeworKwkJW0NDb2Rl IChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ29nbEhhbmRsZSoiKV0K KysJCXB1YmxpYyBWZXJ0ZXhCdWZmZXIgKHVpbnQgbl92ZXJ0aWNlcyk7CisrCQlwdWJsaWMgdm9p ZCBhZGQgKHN0cmluZyBhdHRyaWJ1dGVfbmFtZSwgdWNoYXIgbl9jb21wb25lbnRzLCBDb2dsLkF0 dHJpYnV0ZVR5cGUgdHlwZSwgYm9vbCBub3JtYWxpemVkLCB1aW50MTYgc3RyaWRlLCB2b2lkKiBw b2ludGVyKTsKKysJCXB1YmxpYyB2b2lkIEBkZWxldGUgKHN0cmluZyBhdHRyaWJ1dGVfbmFtZSk7 CisrCQlwdWJsaWMgdm9pZCBkaXNhYmxlIChzdHJpbmcgYXR0cmlidXRlX25hbWUpOworKwkJcHVi bGljIHZvaWQgZHJhdyAoQ29nbC5WZXJ0aWNlc01vZGUgbW9kZSwgaW50IGZpcnN0LCBpbnQgY291 bnQpOworKwkJcHVibGljIHZvaWQgZHJhd19lbGVtZW50cyAoQ29nbC5WZXJ0aWNlc01vZGUgbW9k ZSwgQ29nbC5WZXJ0ZXhCdWZmZXJJbmRpY2VzIGluZGljZXMsIGludCBtaW5faW5kZXgsIGludCBt YXhfaW5kZXgsIGludCBpbmRpY2VzX29mZnNldCwgaW50IGNvdW50KTsKKysJCXB1YmxpYyB2b2lk IGVuYWJsZSAoc3RyaW5nIGF0dHJpYnV0ZV9uYW1lKTsKKysJCXB1YmxpYyB1aW50IGdldF9uX3Zl cnRpY2VzICgpOworKwkJcHVibGljIHZvaWQgc3VibWl0ICgpOworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNuYW1lID0gIkNvZ2xIYW5kbGUiKV0KKysJ W0NvbXBhY3RdCisrCXB1YmxpYyBjbGFzcyBWZXJ0ZXhCdWZmZXJJbmRpY2VzIDogQ29nbC5IYW5k bGUgeworKwkJcHVibGljIFZlcnRleEJ1ZmZlckluZGljZXMgKENvZ2wuSW5kaWNlc1R5cGUgaW5k aWNlc190eXBlLCB2b2lkKiBpbmRpY2VzX2FycmF5LCBpbnQgaW5kaWNlc19sZW4pOworKwkJcHVi bGljIHN0YXRpYyB1bm93bmVkIENvZ2wuVmVydGV4QnVmZmVySW5kaWNlcyBnZXRfZm9yX3F1YWRz ICh1aW50IG5faW5kaWNlcyk7CisrCQlwdWJsaWMgQ29nbC5JbmRpY2VzVHlwZSBnZXRfdHlwZSAo KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCB0eXBl X2lkID0gImNvZ2xfZnJhbWVidWZmZXJfZ2V0X2d0eXBlICgpIildCisrCXB1YmxpYyBpbnRlcmZh Y2UgRnJhbWVidWZmZXIgOiBDb2dsLk9iamVjdCB7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44 IildCisrCQlwdWJsaWMgYm9vbCBhbGxvY2F0ZSAoKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIGNsZWFyICh1bG9uZyBidWZm ZXJzLCBDb2dsLkNvbG9yIGNvbG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJ CXB1YmxpYyB2b2lkIGNsZWFyNGYgKHVsb25nIGJ1ZmZlcnMsIGZsb2F0IHJlZCwgZmxvYXQgZ3Jl ZW4sIGZsb2F0IGJsdWUsIGZsb2F0IGFscGhhKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgi KV0KKysJCXB1YmxpYyB2b2lkIGRpc2NhcmRfYnVmZmVycyAodWxvbmcgYnVmZmVycyk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgZHJhd19tdWx0aXRleHR1 cmVkX3JlY3RhbmdsZSAoQ29nbC5QaXBlbGluZSBwaXBlbGluZSwgZmxvYXQgeF8xLCBmbG9hdCB5 XzEsIGZsb2F0IHhfMiwgZmxvYXQgeV8yLCBbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0g ZmxvYXRbXSB0ZXhfY29vcmRzLCBpbnQgdGV4X2Nvb3Jkc19sZW4pOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIGRyYXdfcmVjdGFuZ2xlIChDb2dsLlBpcGVs aW5lIHBpcGVsaW5lLCBmbG9hdCB4XzEsIGZsb2F0IHlfMSwgZmxvYXQgeF8yLCBmbG9hdCB5XzIp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIGRyYXdfcmVj dGFuZ2xlcyAoQ29nbC5QaXBlbGluZSBwaXBlbGluZSwgW0NDb2RlIChhcnJheV9sZW5ndGggPSBm YWxzZSldIGZsb2F0W10gY29vcmRpbmF0ZXMsIHVpbnQgbl9yZWN0YW5nbGVzKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBkcmF3X3RleHR1cmVkX3JlY3Rh bmdsZSAoQ29nbC5QaXBlbGluZSBwaXBlbGluZSwgZmxvYXQgeF8xLCBmbG9hdCB5XzEsIGZsb2F0 IHhfMiwgZmxvYXQgeV8yLCBmbG9hdCBzXzEsIGZsb2F0IHRfMSwgZmxvYXQgc18yLCBmbG9hdCB0 XzIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIGRyYXdf dGV4dHVyZWRfcmVjdGFuZ2xlcyAoQ29nbC5QaXBlbGluZSBwaXBlbGluZSwgW0NDb2RlIChhcnJh eV9sZW5ndGggPSBmYWxzZSldIGZsb2F0W10gY29vcmRpbmF0ZXMsIHVpbnQgbl9yZWN0YW5nbGVz KTsKKysJCXB1YmxpYyBzdGF0aWMgdWludDMyIGVycm9yX3F1YXJrICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIGZpbmlzaCAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBmcnVzdHVtIChmbG9hdCBsZWZ0LCBm bG9hdCByaWdodCwgZmxvYXQgYm90dG9tLCBmbG9hdCB0b3AsIGZsb2F0IHpfbmVhciwgZmxvYXQg el9mYXIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIGludCBnZXRf YWxwaGFfYml0cyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBp bnQgZ2V0X2JsdWVfYml0cyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1 YmxpYyB1bm93bmVkIENvZ2wuQ29udGV4dCBnZXRfY29udGV4dCAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X2RlcHRoX2JpdHMgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xOCIpXQorKwkJcHVibGljIGJvb2wgZ2V0X2RlcHRoX3dyaXRlX2Vu YWJsZWQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgYm9vbCBn ZXRfZGl0aGVyX2VuYWJsZWQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlw dWJsaWMgaW50IGdldF9ncmVlbl9iaXRzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIp XQorKwkJcHVibGljIGludCBnZXRfaGVpZ2h0ICgpOworKwkJcHVibGljIGJvb2wgZ2V0X2lzX3N0 ZXJlbyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ29nbC5N YXRyaXggZ2V0X21vZGVsdmlld19tYXRyaXggKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MCIpXQorKwkJcHVibGljIENvZ2wuTWF0cml4IGdldF9wcm9qZWN0aW9uX21hdHJpeCAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X3JlZF9iaXRzICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X3NhbXBs ZXNfcGVyX3BpeGVsICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjAiKV0KKysJCXB1Ymxp YyBDb2dsLlN0ZXJlb01vZGUgZ2V0X3N0ZXJlb19tb2RlICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgZ2V0X3ZpZXdwb3J0NGZ2IChbQ0NvZGUgKGFycmF5 X2xlbmd0aCA9IGZhbHNlKV0gb3V0IHVub3duZWQgZmxvYXQgdmlld3BvcnRbNF0pOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIGZsb2F0IGdldF92aWV3cG9ydF9oZWln aHQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgZmxvYXQgZ2V0 X3ZpZXdwb3J0X3dpZHRoICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVi bGljIGZsb2F0IGdldF92aWV3cG9ydF94ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIp XQorKwkJcHVibGljIGZsb2F0IGdldF92aWV3cG9ydF95ICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuOCIpXQorKwkJcHVibGljIGludCBnZXRfd2lkdGggKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgaWRlbnRpdHlfbWF0cml4ICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIG9ydGhvZ3JhcGhpYyAoZmxv YXQgeF8xLCBmbG9hdCB5XzEsIGZsb2F0IHhfMiwgZmxvYXQgeV8yLCBmbG9hdCBuZWFyLCBmbG9h dCBmYXIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHBl cnNwZWN0aXZlIChmbG9hdCBmb3ZfeSwgZmxvYXQgYXNwZWN0LCBmbG9hdCB6X25lYXIsIGZsb2F0 IHpfZmFyKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBw b3BfY2xpcCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9p ZCBwb3BfbWF0cml4ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1Ymxp YyB2b2lkIHB1c2hfbWF0cml4ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyB2b2lkIHB1c2hfcmVjdGFuZ2xlX2NsaXAgKGZsb2F0IHhfMSwgZmxvYXQgeV8xLCBm bG9hdCB4XzIsIGZsb2F0IHlfMik7CisrCQlwdWJsaWMgdm9pZCBwdXNoX3JlZ2lvbl9jbGlwIChD YWlyby5SZWdpb24gcmVnaW9uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlw dWJsaWMgdm9pZCBwdXNoX3NjaXNzb3JfY2xpcCAoaW50IHgsIGludCB5LCBpbnQgd2lkdGgsIGlu dCBoZWlnaHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBib29s IHJlYWRfcGl4ZWxzIChpbnQgeCwgaW50IHksIGludCB3aWR0aCwgaW50IGhlaWdodCwgQ29nbC5Q aXhlbEZvcm1hdCBmb3JtYXQsIHVpbnQ4IHBpeGVscyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMCIpXQorKwkJcHVibGljIGJvb2wgcmVhZF9waXhlbHNfaW50b19iaXRtYXAgKGludCB4LCBp bnQgeSwgQ29nbC5SZWFkUGl4ZWxzRmxhZ3Mgc291cmNlLCBDb2dsLkJpdG1hcCBiaXRtYXApOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgcmVzb2x2ZV9zYW1w bGVzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgcmVz b2x2ZV9zYW1wbGVzX3JlZ2lvbiAoaW50IHgsIGludCB5LCBpbnQgd2lkdGgsIGludCBoZWlnaHQp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHJvdGF0ZSAo ZmxvYXQgYW5nbGUsIGZsb2F0IHgsIGZsb2F0IHksIGZsb2F0IHopOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgcm90YXRlX2V1bGVyIChHcmFwaGVuZS5FdWxl ciBldWxlcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQg c2NhbGUgKGZsb2F0IHgsIGZsb2F0IHksIGZsb2F0IHopOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9kZXB0aF93cml0ZV9lbmFibGVkIChib29sIGRl cHRoX3dyaXRlX2VuYWJsZWQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVi bGljIHZvaWQgc2V0X2RpdGhlcl9lbmFibGVkIChib29sIGRpdGhlcl9lbmFibGVkKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbW9kZWx2aWV3X21h dHJpeCAoQ29nbC5NYXRyaXggbWF0cml4KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIild CisrCQlwdWJsaWMgdm9pZCBzZXRfcHJvamVjdGlvbl9tYXRyaXggKENvZ2wuTWF0cml4IG1hdHJp eCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBzZXRfc2Ft cGxlc19wZXJfcGl4ZWwgKGludCBzYW1wbGVzX3Blcl9waXhlbCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4yMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3N0ZXJlb19tb2RlIChDb2dsLlN0ZXJl b01vZGUgc3RlcmVvX21vZGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVi bGljIHZvaWQgc2V0X3ZpZXdwb3J0IChmbG9hdCB4LCBmbG9hdCB5LCBmbG9hdCB3aWR0aCwgZmxv YXQgaGVpZ2h0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9p ZCB0cmFuc2Zvcm0gKENvZ2wuTWF0cml4IG1hdHJpeCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMCIpXQorKwkJcHVibGljIHZvaWQgdHJhbnNsYXRlIChmbG9hdCB4LCBmbG9hdCB5LCBmbG9h dCB6KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCB0 eXBlX2lkID0gImNvZ2xfdGV4dHVyZV9nZXRfZ3R5cGUgKCkiKV0KKysJcHVibGljIGludGVyZmFj ZSBUZXh0dXJlIDogQ29nbC5PYmplY3QgeworKwkJcHVibGljIGJvb2wgYWxsb2NhdGUgKCkgdGhy b3dzIEdMaWIuRXJyb3I7CisrCQlwdWJsaWMgc3RhdGljIHVpbnQzMiBlcnJvcl9xdWFyayAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE4IildCisrCQlwdWJsaWMgQ29nbC5UZXh0dXJlQ29t cG9uZW50cyBnZXRfY29tcG9uZW50cyAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0X2RhdGEgKENvZ2wu UGl4ZWxGb3JtYXQgZm9ybWF0LCB1aW50IHJvd3N0cmlkZSwgdWludDggZGF0YSk7CisrCQlwdWJs aWMgYm9vbCBnZXRfZ2xfdGV4dHVyZSAob3V0IHVpbnQgb3V0X2dsX2hhbmRsZSwgb3V0IHVpbnQg b3V0X2dsX3RhcmdldCk7CisrCQlwdWJsaWMgdWludCBnZXRfaGVpZ2h0ICgpOworKwkJcHVibGlj IGludCBnZXRfbWF4X3dhc3RlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTgiKV0KKysJ CXB1YmxpYyBib29sIGdldF9wcmVtdWx0aXBsaWVkICgpOworKwkJcHVibGljIHVpbnQgZ2V0X3dp ZHRoICgpOworKwkJcHVibGljIGJvb2wgaXNfc2xpY2VkICgpOworKwkJW1ZlcnNpb24gKGRlcHJl Y2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTgiLCBzaW5jZSA9ICIxLjAiKV0K KysJCXB1YmxpYyBzdGF0aWMgQ29nbC5UZXh0dXJlIG5ld19mcm9tX2JpdG1hcCAoQ29nbC5CaXRt YXAgYml0bWFwLCBDb2dsLlRleHR1cmVGbGFncyBmbGFncywgQ29nbC5QaXhlbEZvcm1hdCBpbnRl cm5hbF9mb3JtYXQpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVk X3NpbmNlID0gIjEuMTgiLCBzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBzdGF0aWMgQ29nbC5U ZXh0dXJlIG5ld19mcm9tX2RhdGEgKGludCB3aWR0aCwgaW50IGhlaWdodCwgQ29nbC5UZXh0dXJl RmxhZ3MgZmxhZ3MsIENvZ2wuUGl4ZWxGb3JtYXQgZm9ybWF0LCBDb2dsLlBpeGVsRm9ybWF0IGlu dGVybmFsX2Zvcm1hdCwgaW50IHJvd3N0cmlkZSwgdWludDggZGF0YSk7CisrCQlbVmVyc2lvbiAo ZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xOCIsIHNpbmNlID0gIjAu OCIpXQorKwkJcHVibGljIHN0YXRpYyBDb2dsLlRleHR1cmUgbmV3X2Zyb21fZmlsZSAoc3RyaW5n IGZpbGVuYW1lLCBDb2dsLlRleHR1cmVGbGFncyBmbGFncywgQ29nbC5QaXhlbEZvcm1hdCBpbnRl cm5hbF9mb3JtYXQpIHRocm93cyBHTGliLkVycm9yOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQg PSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTgiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1 YmxpYyBDb2dsLlRleHR1cmUgbmV3X2Zyb21fc3ViX3RleHR1cmUgKGludCBzdWJfeCwgaW50IHN1 Yl95LCBpbnQgc3ViX3dpZHRoLCBpbnQgc3ViX2hlaWdodCk7CisrCQlbVmVyc2lvbiAoZGVwcmVj YXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xOCIsIHNpbmNlID0gIjAuOCIpXQor KwkJcHVibGljIHN0YXRpYyBDb2dsLlRleHR1cmUgbmV3X3dpdGhfc2l6ZSAodWludCB3aWR0aCwg dWludCBoZWlnaHQsIENvZ2wuVGV4dHVyZUZsYWdzIGZsYWdzLCBDb2dsLlBpeGVsRm9ybWF0IGlu dGVybmFsX2Zvcm1hdCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xOCIpXQorKwkJcHVibGlj IHZvaWQgc2V0X2NvbXBvbmVudHMgKENvZ2wuVGV4dHVyZUNvbXBvbmVudHMgY29tcG9uZW50cyk7 CisrCQlwdWJsaWMgYm9vbCBzZXRfZGF0YSAoQ29nbC5QaXhlbEZvcm1hdCBmb3JtYXQsIGludCBy b3dzdHJpZGUsIHVpbnQ4IGRhdGEsIGludCBsZXZlbCkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3ByZW11bHRpcGxp ZWQgKGJvb2wgcHJlbXVsdGlwbGllZCk7CisrCQlwdWJsaWMgYm9vbCBzZXRfcmVnaW9uIChpbnQg c3JjX3gsIGludCBzcmNfeSwgaW50IGRzdF94LCBpbnQgZHN0X3ksIHVpbnQgZHN0X3dpZHRoLCB1 aW50IGRzdF9oZWlnaHQsIGludCB3aWR0aCwgaW50IGhlaWdodCwgQ29nbC5QaXhlbEZvcm1hdCBm b3JtYXQsIHVpbnQgcm93c3RyaWRlLCB1aW50OCBkYXRhKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjgiKV0KKysJCXB1YmxpYyBib29sIHNldF9yZWdpb25fZnJvbV9iaXRtYXAgKGludCBzcmNf eCwgaW50IHNyY195LCBpbnQgZHN0X3gsIGludCBkc3RfeSwgdWludCBkc3Rfd2lkdGgsIHVpbnQg ZHN0X2hlaWdodCwgQ29nbC5CaXRtYXAgYml0bWFwKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1NpbXBsZVR5cGVdCisrCXB1YmxpYyBzdHJ1 Y3QgQW5nbGUgOiBpbnQzMiB7CisrCX0KKysJW0Jvb2xlYW5UeXBlXQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW0dJUiAobmFtZSA9ICJCb29sIildCisr CVtTaW1wbGVUeXBlXQorKwlwdWJsaWMgc3RydWN0IEJvb2wgOiBib29sIHsKKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNl KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgc3RydWN0IENvbG9yIHsK KysJCXB1YmxpYyBDb2dsLkNvbG9yPyBjb3B5ICgpOworKwkJcHVibGljIENvbG9yLmZyb21fNGYg KGZsb2F0IHJlZCwgZmxvYXQgZ3JlZW4sIGZsb2F0IGJsdWUsIGZsb2F0IGFscGhhKTsKKysJCXB1 YmxpYyBDb2xvci5mcm9tXzR1YiAodWludDggcmVkLCB1aW50OCBncmVlbiwgdWludDggYmx1ZSwg dWludDggYWxwaGEpOworKwkJcHVibGljIGZsb2F0IGdldF9hbHBoYSAoKTsKKysJCXB1YmxpYyB1 aW50OCBnZXRfYWxwaGFfYnl0ZSAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfYWxwaGFfZmxvYXQg KCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X2JsdWUgKCk7CisrCQlwdWJsaWMgdWludDggZ2V0X2Js dWVfYnl0ZSAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfYmx1ZV9mbG9hdCAoKTsKKysJCXB1Ymxp YyBmbG9hdCBnZXRfZ3JlZW4gKCk7CisrCQlwdWJsaWMgdWludDggZ2V0X2dyZWVuX2J5dGUgKCk7 CisrCQlwdWJsaWMgZmxvYXQgZ2V0X2dyZWVuX2Zsb2F0ICgpOworKwkJcHVibGljIGZsb2F0IGdl dF9yZWQgKCk7CisrCQlwdWJsaWMgdWludDggZ2V0X3JlZF9ieXRlICgpOworKwkJcHVibGljIGZs b2F0IGdldF9yZWRfZmxvYXQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlw dWJsaWMgdm9pZCBpbml0X2Zyb21fNGYgKGZsb2F0IHJlZCwgZmxvYXQgZ3JlZW4sIGZsb2F0IGJs dWUsIGZsb2F0IGFscGhhKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1Ymxp YyB2b2lkIGluaXRfZnJvbV80ZnYgKGZsb2F0IGNvbG9yX2FycmF5KTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIGluaXRfZnJvbV80dWIgKHVpbnQ4IHJlZCwg dWludDggZ3JlZW4sIHVpbnQ4IGJsdWUsIHVpbnQ4IGFscGhhKTsKKysJCXB1YmxpYyB2b2lkIHBy ZW11bHRpcGx5ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZv aWQgc2V0X2FscGhhIChmbG9hdCBhbHBoYSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40Iild CisrCQlwdWJsaWMgdm9pZCBzZXRfYWxwaGFfYnl0ZSAodWludDggYWxwaGEpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2FscGhhX2Zsb2F0IChmbG9h dCBhbHBoYSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBz ZXRfYmx1ZSAoZmxvYXQgYmx1ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlw dWJsaWMgdm9pZCBzZXRfYmx1ZV9ieXRlICh1aW50OCBibHVlKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9ibHVlX2Zsb2F0IChmbG9hdCBibHVlKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9ncmVlbiAo ZmxvYXQgZ3JlZW4pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZv aWQgc2V0X2dyZWVuX2J5dGUgKHVpbnQ4IGdyZWVuKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjQiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9ncmVlbl9mbG9hdCAoZmxvYXQgZ3JlZW4pOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3JlZCAoZmxvYXQg cmVkKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9y ZWRfYnl0ZSAodWludDggcmVkKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1 YmxpYyB2b2lkIHNldF9yZWRfZmxvYXQgKGZsb2F0IHJlZCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xNiIpXQorKwkJcHVibGljIHZvaWQgdG9faHNsIChvdXQgZmxvYXQgaHVlLCBvdXQgZmxv YXQgc2F0dXJhdGlvbiwgb3V0IGZsb2F0IGx1bWluYW5jZSk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS40IildCisrCQlwdWJsaWMgdm9pZCB1bnByZW11bHRpcGx5ICgpOworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGhhc190eXBlX2lkID0gZmFsc2Up XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCXB1YmxpYyBzdHJ1Y3QgRGVidWdPYmpl Y3RUeXBlSW5mbyB7CisrCQlwdWJsaWMgd2VhayBzdHJpbmcgbmFtZTsKKysJCXB1YmxpYyB1bG9u ZyBpbnN0YW5jZV9jb3VudDsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29n bC9jb2dsLmgiLCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24g PSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJDT0dMX1RZUEVfTUFUUklYIildCisrCXB1Ymxp YyBzdHJ1Y3QgTWF0cml4IHsKKysJCXB1YmxpYyBmbG9hdCB4eDsKKysJCXB1YmxpYyBmbG9hdCB5 eDsKKysJCXB1YmxpYyBmbG9hdCB6eDsKKysJCXB1YmxpYyBmbG9hdCB3eDsKKysJCXB1YmxpYyBm bG9hdCB4eTsKKysJCXB1YmxpYyBmbG9hdCB5eTsKKysJCXB1YmxpYyBmbG9hdCB6eTsKKysJCXB1 YmxpYyBmbG9hdCB3eTsKKysJCXB1YmxpYyBmbG9hdCB4ejsKKysJCXB1YmxpYyBmbG9hdCB5ejsK KysJCXB1YmxpYyBmbG9hdCB6ejsKKysJCXB1YmxpYyBmbG9hdCB3ejsKKysJCXB1YmxpYyBmbG9h dCB4dzsKKysJCXB1YmxpYyBmbG9hdCB5dzsKKysJCXB1YmxpYyBmbG9hdCB6dzsKKysJCXB1Ymxp YyBmbG9hdCB3dzsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBDb2ds Lk1hdHJpeD8gY29weSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1Ymxp YyB2b2lkIGZyZWUgKCk7CisrCQlbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlLCBhcnJheV9u dWxsX3Rlcm1pbmF0ZWQgPSBmYWxzZSwgY25hbWUgPSAiY29nbF9tYXRyaXhfaW5pdF9mcm9tX2Fy cmF5IildCisrCQlwdWJsaWMgTWF0cml4LmZyb21fYXJyYXkgKFtDQ29kZSAoYXJyYXlfbGVuZ3Ro ID0gZmFsc2UpXSBmbG9hdFtdIGFycmF5KTsKKysJCXB1YmxpYyB2b2lkIGZydXN0dW0gKGZsb2F0 IGxlZnQsIGZsb2F0IHJpZ2h0LCBmbG9hdCBib3R0b20sIGZsb2F0IHRvcCwgZmxvYXQgel9uZWFy LCBmbG9hdCB6X2Zhcik7CisrCQlwdWJsaWMgdW5vd25lZCBmbG9hdFtdIGdldF9hcnJheSAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBib29sIGdldF9pbnZlcnNl IChvdXQgQ29nbC5NYXRyaXggaW52ZXJzZSk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfbWF0 cml4X2luaXRfaWRlbnRpdHkiKV0KKysJCXB1YmxpYyBNYXRyaXguaWRlbnRpdHkgKCk7CisrCQlw dWJsaWMgdm9pZCBpbml0X2Zyb21fZXVsZXIgKEdyYXBoZW5lLkV1bGVyIGV1bGVyKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIGluaXRfdHJhbnNsYXRpb24g KGZsb2F0IHR4LCBmbG9hdCB0eSwgZmxvYXQgdHopOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu OCIpXQorKwkJcHVibGljIGJvb2wgaXNfaWRlbnRpdHkgKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBsb29rX2F0IChmbG9hdCBleWVfcG9zaXRpb25feCwg ZmxvYXQgZXllX3Bvc2l0aW9uX3ksIGZsb2F0IGV5ZV9wb3NpdGlvbl96LCBmbG9hdCBvYmplY3Rf eCwgZmxvYXQgb2JqZWN0X3ksIGZsb2F0IG9iamVjdF96LCBmbG9hdCB3b3JsZF91cF94LCBmbG9h dCB3b3JsZF91cF95LCBmbG9hdCB3b3JsZF91cF96KTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29n bF9tYXRyaXhfbXVsdGlwbHkiKV0KKysJCXB1YmxpYyBNYXRyaXgubXVsdGlwbHkgKENvZ2wuTWF0 cml4IGEsIENvZ2wuTWF0cml4IGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyB2b2lkIG9ydGhvZ3JhcGhpYyAoZmxvYXQgeF8xLCBmbG9hdCB5XzEsIGZsb2F0IHhf MiwgZmxvYXQgeV8yLCBmbG9hdCBuZWFyLCBmbG9hdCBmYXIpOworKwkJcHVibGljIHZvaWQgcGVy c3BlY3RpdmUgKGZsb2F0IGZvdl95LCBmbG9hdCBhc3BlY3QsIGZsb2F0IHpfbmVhciwgZmxvYXQg el9mYXIpOworKwkJcHVibGljIHZvaWQgcHJvamVjdF9wb2ludHMgKGludCBuX2NvbXBvbmVudHMs IHNpemVfdCBzdHJpZGVfaW4sIHZvaWQqIHBvaW50c19pbiwgc2l6ZV90IHN0cmlkZV9vdXQsIHZv aWQqIHBvaW50c19vdXQsIGludCBuX3BvaW50cyk7CisrCQlwdWJsaWMgdm9pZCByb3RhdGUgKGZs b2F0IGFuZ2xlLCBmbG9hdCB4LCBmbG9hdCB5LCBmbG9hdCB6KTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIHJvdGF0ZV9ldWxlciAoR3JhcGhlbmUuRXVsZXIg ZXVsZXIpOworKwkJcHVibGljIHZvaWQgc2NhbGUgKGZsb2F0IHN4LCBmbG9hdCBzeSwgZmxvYXQg c3opOworKwkJcHVibGljIHN0YXRpYyB2b2lkIHRyYW5zZm9ybV9wb2ludCAocmVmIENvZ2wuTWF0 cml4IG1hdHJpeCwgcmVmIGZsb2F0IHgsIHJlZiBmbG9hdCB5LCByZWYgZmxvYXQgeiwgcmVmIGZs b2F0IHcpOworKwkJcHVibGljIHZvaWQgdHJhbnNmb3JtX3BvaW50cyAoaW50IG5fY29tcG9uZW50 cywgc2l6ZV90IHN0cmlkZV9pbiwgdm9pZCogcG9pbnRzX2luLCBzaXplX3Qgc3RyaWRlX291dCwg dm9pZCogcG9pbnRzX291dCwgaW50IG5fcG9pbnRzKTsKKysJCXB1YmxpYyB2b2lkIHRyYW5zbGF0 ZSAoZmxvYXQgeCwgZmxvYXQgeSwgZmxvYXQgeik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MCIpXQorKwkJcHVibGljIHZvaWQgdHJhbnNwb3NlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuOCIpXQorKwkJcHVibGljIHZvaWQgdmlld18yZF9pbl9mcnVzdHVtIChmbG9hdCBsZWZ0LCBm bG9hdCByaWdodCwgZmxvYXQgYm90dG9tLCBmbG9hdCB0b3AsIGZsb2F0IHpfbmVhciwgZmxvYXQg el8yZCwgZmxvYXQgd2lkdGhfMmQsIGZsb2F0IGhlaWdodF8yZCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCB2aWV3XzJkX2luX3BlcnNwZWN0aXZlIChmbG9h dCBmb3ZfeSwgZmxvYXQgYXNwZWN0LCBmbG9hdCB6X25lYXIsIGZsb2F0IHpfMmQsIGZsb2F0IHdp ZHRoXzJkLCBmbG9hdCBoZWlnaHRfMmQpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjb2dsL2NvZ2wuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xNiIpXQorKwlwdWJsaWMgc3RydWN0IE9uc2NyZWVuRGlydHlJbmZvIHsKKysJCXB1 YmxpYyBpbnQgeDsKKysJCXB1YmxpYyBpbnQgeTsKKysJCXB1YmxpYyBpbnQgd2lkdGg7CisrCQlw dWJsaWMgaW50IGhlaWdodDsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29n bC9jb2dsLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBUZXh0dXJl VmVydGV4IHsKKysJCXB1YmxpYyBmbG9hdCB4OworKwkJcHVibGljIGZsb2F0IHk7CisrCQlwdWJs aWMgZmxvYXQgejsKKysJCXB1YmxpYyBmbG9hdCB0eDsKKysJCXB1YmxpYyBmbG9hdCB0eTsKKysJ CXB1YmxpYyBDb2dsLkNvbG9yIGNvbG9yOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjb2dsL2NvZ2wuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMS40IildCisrCXB1YmxpYyBzdHJ1Y3QgVXNlckRhdGFLZXkgeworKwkJcHVibGljIGlu dCB1bnVzZWQ7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5o IiwgY25hbWUgPSAiX0NvZ2xDb2xvclNpemVDaGVjayIsIGhhc190eXBlX2lkID0gZmFsc2UpXQor KwlwdWJsaWMgc3RydWN0IF9Db2xvclNpemVDaGVjayB7CisrCQlbQ0NvZGUgKGFycmF5X2xlbmd0 aCA9IGZhbHNlKV0KKysJCXB1YmxpYyB3ZWFrIGNoYXJbXSBjb21waWxlX3RpbWVfYXNzZXJ0X0Nv Z2xDb2xvcl9zaXplOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2Nv Z2wuaCIsIGNuYW1lID0gIl9Db2dsTWF0cml4U2l6ZUNoZWNrIiwgaGFzX3R5cGVfaWQgPSBmYWxz ZSldCisrCXB1YmxpYyBzdHJ1Y3QgX01hdHJpeFNpemVDaGVjayB7CisrCQlbQ0NvZGUgKGFycmF5 X2xlbmd0aCA9IGZhbHNlKV0KKysJCXB1YmxpYyB3ZWFrIGNoYXJbXSBjb21waWxlX3RpbWVfYXNz ZXJ0X0NvZ2xNYXRyaXhfc2l6ZTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y29nbC9jb2dsLmgiLCBjbmFtZSA9ICJfQ29nbFRleHR1cmVWZXJ0ZXhTaXplQ2hlY2siLCBoYXNf dHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBfVGV4dHVyZVZlcnRleFNpemVDaGVj ayB7CisrCQlbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0KKysJCXB1YmxpYyB3ZWFrIGNo YXJbXSBjb21waWxlX3RpbWVfYXNzZXJ0X0NvZ2xUZXh0dXJlVmVydGV4X3NpemU7CisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dM X0FUVFJJQlVURV9UWVBFXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCXB1YmxpYyBlbnVtIEF0dHJpYnV0ZVR5cGUgeworKwkJQllURSwKKysJ CVVOU0lHTkVEX0JZVEUsCisrCQlTSE9SVCwKKysJCVVOU0lHTkVEX1NIT1JULAorKwkJRkxPQVQK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4 ID0gIkNPR0xfQklUTUFQX0VSUk9SXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBlbnVtIEJpdG1hcEVycm9yIHsKKysJCUZBSUxF RCwKKysJCVVOS05PV05fVFlQRSwKKysJCUNPUlJVUFRfSU1BR0UKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfQkxFTkRfU1RS SU5HX0VSUk9SXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAi MS4wIildCisrCXB1YmxpYyBlbnVtIEJsZW5kU3RyaW5nRXJyb3IgeworKwkJUEFSU0VfRVJST1Is CisrCQlBUkdVTUVOVF9QQVJTRV9FUlJPUiwKKysJCUlOVkFMSURfRVJST1IsCisrCQlHUFVfVU5T VVBQT1JURURfRVJST1I7CisrCQlwdWJsaWMgc3RhdGljIHVpbnQzMiBxdWFyayAoKTsKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNP R0xfQlVGRkVSX0JJVF8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0ZsYWdzXQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBlbnVtIEJ1ZmZlckJpdCB7CisrCQlDT0xP UiwKKysJCURFUFRILAorKwkJU1RFTkNJTAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF8iLCBoYXNfdHlwZV9pZCA9IGZhbHNl KV0KKysJW0ZsYWdzXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCXB1YmxpYyBlbnVt IEJ1ZmZlclRhcmdldCB7CisrCQlXSU5ET1dfQlVGRkVSLAorKwkJT0ZGU0NSRUVOX0JVRkZFUgor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXgg PSAiQ09HTF9ERVBUSF9URVNUX0ZVTkNUSU9OXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlw dWJsaWMgZW51bSBEZXB0aFRlc3RGdW5jdGlvbiB7CisrCQlORVZFUiwKKysJCUxFU1MsCisrCQlF UVVBTCwKKysJCUxFUVVBTCwKKysJCUdSRUFURVIsCisrCQlOT1RFUVVBTCwKKysJCUdFUVVBTCwK KysJCUFMV0FZUworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wu aCIsIGNwcmVmaXggPSAiQ09HTF9FR0xfSU1BR0VfRkxBR18iLCBoYXNfdHlwZV9pZCA9IGZhbHNl KV0KKysJW0ZsYWdzXQorKwlwdWJsaWMgZW51bSBFZ2xJbWFnZUZsYWdzIHsKKysJCU5PTkUsCisr CQlOT19HRVRfREFUQQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2Nv Z2wuaCIsIGNwcmVmaXggPSAiQ09HTF9GRUFUVVJFX0lEXyIsIGhhc190eXBlX2lkID0gZmFsc2Up XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgZW51bSBGZWF0dXJlSUQg eworKwkJW0NDb2RlIChjbmFtZSA9ICJDT0dMX0ZFQVRVUkVfSURfVU5TSUdORURfSU5UX0lORElD RVMiKV0KKysJCU9HTF9GRUFUVVJFX0lEX1VOU0lHTkVEX0lOVF9JTkRJQ0VTLAorKwkJW0NDb2Rl IChjbmFtZSA9ICJDT0dMX0ZFQVRVUkVfSURfTUFQX0JVRkZFUl9GT1JfUkVBRCIpXQorKwkJT0dM X0ZFQVRVUkVfSURfTUFQX0JVRkZFUl9GT1JfUkVBRCwKKysJCVtDQ29kZSAoY25hbWUgPSAiQ09H TF9GRUFUVVJFX0lEX01BUF9CVUZGRVJfRk9SX1dSSVRFIildCisrCQlPR0xfRkVBVFVSRV9JRF9N QVBfQlVGRkVSX0ZPUl9XUklURSwKKysJCVtDQ29kZSAoY25hbWUgPSAiQ09HTF9GRUFUVVJFX0lE X1NXQVBfQlVGRkVSU19FVkVOVCIpXQorKwkJT0dMX0ZFQVRVUkVfSURfU1dBUF9CVUZGRVJTX0VW RU5ULAorKwkJW0NDb2RlIChjbmFtZSA9ICJDT0dMX0ZFQVRVUkVfSURfUFJFU0VOVEFUSU9OX1RJ TUUiKV0KKysJCU9HTF9GRUFUVVJFX0lEX1BSRVNFTlRBVElPTl9USU1FLAorKwkJW0NDb2RlIChj bmFtZSA9ICJDT0dMX0ZFQVRVUkVfSURfRkVOQ0UiKV0KKysJCU9HTF9GRUFUVVJFX0lEX0ZFTkNF LAorKwkJW0NDb2RlIChjbmFtZSA9ICJDT0dMX0ZFQVRVUkVfSURfVEVYVFVSRV9SRyIpXQorKwkJ T0dMX0ZFQVRVUkVfSURfVEVYVFVSRV9SRywKKysJCVtDQ29kZSAoY25hbWUgPSAiQ09HTF9GRUFU VVJFX0lEX0JVRkZFUl9BR0UiKV0KKysJCU9HTF9GRUFUVVJFX0lEX0JVRkZFUl9BR0UsCisrCQlb Q0NvZGUgKGNuYW1lID0gIkNPR0xfRkVBVFVSRV9JRF9URVhUVVJFX0VHTF9JTUFHRV9FWFRFUk5B TCIpXQorKwkJT0dMX0ZFQVRVUkVfSURfVEVYVFVSRV9FR0xfSU1BR0VfRVhURVJOQUwKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNP R0xfRklMVEVSXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgZW51bSBGaWx0ZXJS ZXR1cm4geworKwkJQ09OVElOVUUsCisrCQlSRU1PVkUKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfRlJBTUVfRVZFTlRfIiwg aGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE0IildCisrCXB1 YmxpYyBlbnVtIEZyYW1lRXZlbnQgeworKwkJU1lOQywKKysJCUNPTVBMRVRFCisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX0ZS QU1FQlVGRkVSX0VSUk9SXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgZW51bSBG cmFtZWJ1ZmZlckVycm9yIHsKKysJCVtDQ29kZSAoY25hbWUgPSAiQ09HTF9GUkFNRUJVRkZFUl9F UlJPUl9BTExPQ0FURSIpXQorKwkJRlJBTUVCVUZGRVJfRVJST1JfQUxMT0NBVEU7CisrCQlwdWJs aWMgc3RhdGljIHVpbnQzMiBxdWFyayAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfR1JBUEhJQ1NfUkVTRVRfU1RBVFVT XyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgZW51bSBHcmFwaGljc1Jlc2V0U3Rh dHVzIHsKKysJCU5PX0VSUk9SLAorKwkJR1VJTFRZX0NPTlRFWFRfUkVTRVQsCisrCQlJTk5PQ0VO VF9DT05URVhUX1JFU0VULAorKwkJVU5LTk9XTl9DT05URVhUX1JFU0VULAorKwkJUFVSR0VEX0NP TlRFWFRfUkVTRVQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2ds LmgiLCBjcHJlZml4ID0gIkNPR0xfSU5ESUNFU19UWVBFX1VOU0lHTkVEXyIsIGhhc190eXBlX2lk ID0gZmFsc2UpXQorKwlwdWJsaWMgZW51bSBJbmRpY2VzVHlwZSB7CisrCQlCWVRFLAorKwkJU0hP UlQsCisrCQlJTlQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2ds LmgiLCBjcHJlZml4ID0gIkNPR0xfTUFURVJJQUxfQUxQSEFfRlVOQ18iLCBoYXNfdHlwZV9pZCA9 IGZhbHNlKV0KKysJcHVibGljIGVudW0gTWF0ZXJpYWxBbHBoYUZ1bmMgeworKwkJTkVWRVIsCisr CQlMRVNTLAorKwkJRVFVQUwsCisrCQlMRVFVQUwsCisrCQlHUkVBVEVSLAorKwkJTk9URVFVQUws CisrCQlHRVFVQUwsCisrCQlBTFdBWVMKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfTUFURVJJQUxfRklMVEVSXyIsIGhhc190 eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgZW51bSBNYXRlcmlhbEZpbHRlciB7CisrCQlORUFS RVNULAorKwkJTElORUFSLAorKwkJTkVBUkVTVF9NSVBNQVBfTkVBUkVTVCwKKysJCUxJTkVBUl9N SVBNQVBfTkVBUkVTVCwKKysJCU5FQVJFU1RfTUlQTUFQX0xJTkVBUiwKKysJCUxJTkVBUl9NSVBN QVBfTElORUFSCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5o IiwgY3ByZWZpeCA9ICJDT0dMX01BVEVSSUFMX1dSQVBfTU9ERV8iLCBoYXNfdHlwZV9pZCA9IGZh bHNlKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgZW51bSBNYXRlcmlh bFdyYXBNb2RlIHsKKysJCVJFUEVBVCwKKysJCUNMQU1QX1RPX0VER0UsCisrCQlBVVRPTUFUSUMK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4 ID0gIkNPR0xfUElQRUxJTkVfQUxQSEFfRlVOQ18iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJ cHVibGljIGVudW0gUGlwZWxpbmVBbHBoYUZ1bmMgeworKwkJTkVWRVIsCisrCQlMRVNTLAorKwkJ RVFVQUwsCisrCQlMRVFVQUwsCisrCQlHUkVBVEVSLAorKwkJTk9URVFVQUwsCisrCQlHRVFVQUws CisrCQlBTFdBWVMKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2ds LmgiLCBjcHJlZml4ID0gIkNPR0xfUElQRUxJTkVfQ1VMTF9GQUNFX01PREVfIiwgaGFzX3R5cGVf aWQgPSBmYWxzZSldCisrCXB1YmxpYyBlbnVtIFBpcGVsaW5lQ3VsbEZhY2VNb2RlIHsKKysJCU5P TkUsCisrCQlGUk9OVCwKKysJCUJBQ0ssCisrCQlCT1RICisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX1BJUEVMSU5FX0ZJTFRF Ul8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIGVudW0gUGlwZWxpbmVGaWx0ZXIg eworKwkJTkVBUkVTVCwKKysJCUxJTkVBUiwKKysJCU5FQVJFU1RfTUlQTUFQX05FQVJFU1QsCisr CQlMSU5FQVJfTUlQTUFQX05FQVJFU1QsCisrCQlORUFSRVNUX01JUE1BUF9MSU5FQVIsCisrCQlM SU5FQVJfTUlQTUFQX0xJTkVBUgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj b2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9QSVBFTElORV9XUkFQX01PREVfIiwgaGFzX3R5 cGVfaWQgPSBmYWxzZSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJcHVibGljIGVu dW0gUGlwZWxpbmVXcmFwTW9kZSB7CisrCQlSRVBFQVQsCisrCQlNSVJST1JFRF9SRVBFQVQsCisr CQlDTEFNUF9UT19FREdFLAorKwkJQVVUT01BVElDCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX1BJWEVMX0ZPUk1BVF8iLCBo YXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0ZsYWdzXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC44 IildCisrCXB1YmxpYyBlbnVtIFBpeGVsRm9ybWF0IHsKKysJCUFOWSwKKysJCUFfOCwKKysJCVJH Ql81NjUsCisrCQlSR0JBXzQ0NDQsCisrCQlSR0JBXzU1NTEsCisrCQlZVVYsCisrCQlHXzgsCisr CQlSR184OCwKKysJCVJHQl84ODgsCisrCQlCR1JfODg4LAorKwkJUkdCQV84ODg4LAorKwkJQkdS QV84ODg4LAorKwkJQVJHQl84ODg4LAorKwkJQUJHUl84ODg4LAorKwkJUkdCQV8xMDEwMTAyLAor KwkJQkdSQV8xMDEwMTAyLAorKwkJQVJHQl8yMTAxMDEwLAorKwkJQUJHUl8yMTAxMDEwLAorKwkJ UkdCQV84ODg4X1BSRSwKKysJCUJHUkFfODg4OF9QUkUsCisrCQlBUkdCXzg4ODhfUFJFLAorKwkJ QUJHUl84ODg4X1BSRSwKKysJCVJHQkFfNDQ0NF9QUkUsCisrCQlSR0JBXzU1NTFfUFJFLAorKwkJ UkdCQV8xMDEwMTAyX1BSRSwKKysJCUJHUkFfMTAxMDEwMl9QUkUsCisrCQlBUkdCXzIxMDEwMTBf UFJFLAorKwkJQUJHUl8yMTAxMDEwX1BSRSwKKysJCURFUFRIXzE2LAorKwkJREVQVEhfMzIsCisr CQlERVBUSF8yNF9TVEVOQ0lMXzg7CisrCQlwdWJsaWMgaW50IGdldF9ieXRlc19wZXJfcGl4ZWwg KGludCBwbGFuZSk7CisrCQlwdWJsaWMgaW50IGdldF9uX3BsYW5lcyAoKTsKKysJCXB1YmxpYyB1 bm93bmVkIHN0cmluZyB0b19zdHJpbmcgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX1JFQURfUElYRUxTX0NPTE9SXyIs IGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbRmxhZ3NdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIx LjAiKV0KKysJcHVibGljIGVudW0gUmVhZFBpeGVsc0ZsYWdzIHsKKysJCVtDQ29kZSAoY25hbWUg PSAiQ09HTF9SRUFEX1BJWEVMU19DT0xPUl9CVUZGRVIiKV0KKysJCVJFQURfUElYRUxTX0NPTE9S X0JVRkZFUgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIs IGNwcmVmaXggPSAiQ09HTF9SRU5ERVJFUl9FUlJPUl8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0K KysJcHVibGljIGVudW0gUmVuZGVyZXJFcnJvciB7CisrCQlYTElCX0RJU1BMQVlfT1BFTiwKKysJ CUJBRF9DT05TVFJBSU5UCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wv Y29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX1NIQURFUl9UWVBFXyIsIGhhc190eXBlX2lkID0gZmFs c2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBlbnVtIFNoYWRlclR5 cGUgeworKwkJVkVSVEVYLAorKwkJRlJBR01FTlQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfU1RFUkVPXyIsIGhhc190eXBl X2lkID0gZmFsc2UpXQorKwlwdWJsaWMgZW51bSBTdGVyZW9Nb2RlIHsKKysJCUJPVEgsCisrCQlM RUZULAorKwkJUklHSFQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9j b2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfU1lTVEVNX0VSUk9SXyIsIGhhc190eXBlX2lkID0gZmFs c2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBlbnVtIFN5c3RlbUVy cm9yIHsKKysJCVVOU1VQUE9SVEVELAorKwkJTk9fTUVNT1JZCisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX1RFWFRVUkVfQ09N UE9ORU5UU18iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTgiKV0KKysJcHVibGljIGVudW0gVGV4dHVyZUNvbXBvbmVudHMgeworKwkJQSwKKysJCVJHLAor KwkJUkdCLAorKwkJUkdCQSwKKysJCURFUFRICisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX1RFWFRVUkVfRVJST1JfIiwgaGFz X3R5cGVfaWQgPSBmYWxzZSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJcHVibGlj IGVudW0gVGV4dHVyZUVycm9yIHsKKysJCVNJWkUsCisrCQlGT1JNQVQsCisrCQlCQURfUEFSQU1F VEVSLAorKwkJVFlQRTsKKysJCXB1YmxpYyBzdGF0aWMgdWludDMyIHF1YXJrICgpOworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09H TF9URVhUVVJFXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbRmxhZ3NdCisrCVtWZXJzaW9u IChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGVudW0gVGV4dHVyZUZsYWdzIHsKKysJCU5PTkUs CisrCQlOT19BVVRPX01JUE1BUCwKKysJCU5PX1NMSUNJTkcsCisrCQlOT19BVExBUworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09H TF9WRVJUSUNFU19NT0RFXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCXB1YmxpYyBlbnVtIFZlcnRpY2VzTW9kZSB7CisrCQlQT0lOVFMsCisr CQlMSU5FUywKKysJCUxJTkVfTE9PUCwKKysJCUxJTkVfU1RSSVAsCisrCQlUUklBTkdMRVMsCisr CQlUUklBTkdMRV9TVFJJUCwKKysJCVRSSUFOR0xFX0ZBTgorKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9XSU5ESU5HXyIsIGhh c190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgZW51bSBXaW5kaW5nIHsKKysJCUNMT0NLV0lT RSwKKysJCUNPVU5URVJfQ0xPQ0tXSVNFCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX1dJTlNZU19GRUFUVVJFXyIsIGhhc190 eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgZW51bSBXaW5zeXNGZWF0dXJlIHsKKysJCU1VTFRJ UExFX09OU0NSRUVOLAorKwkJU1dBUF9USFJPVFRMRSwKKysJCVZCTEFOS19DT1VOVEVSLAorKwkJ VkJMQU5LX1dBSVQsCisrCQlURVhUVVJFX0ZST01fUElYTUFQLAorKwkJU1dBUF9CVUZGRVJTX0VW RU5ULAorKwkJU1dBUF9SRUdJT04sCisrCQlTV0FQX1JFR0lPTl9USFJPVFRMRSwKKysJCVNXQVBf UkVHSU9OX1NZTkNIUk9OSVpFRCwKKysJCUJVRkZFUl9BR0UsCisrCQlTWU5DX0FORF9DT01QTEVU RV9FVkVOVCwKKysJCU5fRkVBVFVSRVMKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY29nbC9jb2dsLmgiLCBpbnN0YW5jZV9wb3MgPSAxLjkpXQorKwlbVmVyc2lvbiAoc2luY2Ug PSAiMS44IildCisrCXB1YmxpYyBkZWxlZ2F0ZSB2b2lkIERlYnVnT2JqZWN0Rm9yZWFjaFR5cGVD YWxsYmFjayAoQ29nbC5EZWJ1Z09iamVjdFR5cGVJbmZvIGluZm8pOworKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBpbnN0YW5jZV9wb3MgPSAxLjkpXQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMC4xMCIpXQorKwlwdWJsaWMgZGVsZWdhdGUgdm9pZCBGZWF0dXJlQ2Fs bGJhY2sgKENvZ2wuRmVhdHVyZUlEIGZlYXR1cmUpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY29nbC9jb2dsLmgiLCBpbnN0YW5jZV9wb3MgPSAyLjkpXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xNiIpXQorKwlwdWJsaWMgZGVsZWdhdGUgdm9pZCBPbnNjcmVlbkRpcnR5Q2FsbGJh Y2sgKENvZ2wuT25zY3JlZW4gb25zY3JlZW4sIENvZ2wuT25zY3JlZW5EaXJ0eUluZm8gaW5mbyk7 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGluc3RhbmNlX3Bv cyA9IDMuOSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJcHVibGljIGRlbGVnYXRl IHZvaWQgT25zY3JlZW5SZXNpemVDYWxsYmFjayAoQ29nbC5PbnNjcmVlbiBvbnNjcmVlbiwgaW50 IHdpZHRoLCBpbnQgaGVpZ2h0KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wv Y29nbC5oIiwgaW5zdGFuY2VfcG9zID0gMi45KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIp XQorKwlwdWJsaWMgZGVsZWdhdGUgYm9vbCBQaXBlbGluZUxheWVyQ2FsbGJhY2sgKENvZ2wuUGlw ZWxpbmUgcGlwZWxpbmUsIGludCBsYXllcl9pbmRleCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGluc3RhbmNlX3BvcyA9IDEuOSldCisrCXB1YmxpYyBkZWxl Z2F0ZSBib29sIFRleHR1cmUyREVHTEltYWdlRXh0ZXJuYWxBbGxvYyAoQ29nbC5UZXh0dXJlMkQg dGV4XzJkKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNvZ2wvY29nbC5oIiwgaGFzX3RhcmdldCA9IGZhbHNlKV0KKysJcHVibGljIGRlbGVnYXRlIHZv aWQgVXNlckRhdGFEZXN0cm95Q2FsbGJhY2sgKHZvaWQqIGRhdGEpOworKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjbmFtZSA9ICJDT0dMX0FGSVJTVF9CSVQiKV0K KysJcHVibGljIGNvbnN0IGludCBBRklSU1RfQklUOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY29nbC9jb2dsLmgiLCBjbmFtZSA9ICJDT0dMX0FfQklUIildCisrCXB1YmxpYyBjb25z dCBpbnQgQV9CSVQ7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIs IGNuYW1lID0gIkNPR0xfQkdSX0JJVCIpXQorKwlwdWJsaWMgY29uc3QgaW50IEJHUl9CSVQ7Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNuYW1lID0gIkNPR0xf REVQVEhfQklUIildCisrCXB1YmxpYyBjb25zdCBpbnQgREVQVEhfQklUOworKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjbmFtZSA9ICJDT0dMX1BJWEVMX0ZPUk1B VF9NQVhfUExBTkVTIildCisrCXB1YmxpYyBjb25zdCBpbnQgUElYRUxfRk9STUFUX01BWF9QTEFO RVM7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNuYW1lID0g IkNPR0xfUFJFTVVMVF9CSVQiKV0KKysJcHVibGljIGNvbnN0IGludCBQUkVNVUxUX0JJVDsKKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY25hbWUgPSAiQ09HTF9T VEVOQ0lMX0JJVCIpXQorKwlwdWJsaWMgY29uc3QgaW50IFNURU5DSUxfQklUOworKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjbmFtZSA9ICJDT0dMX1RFWFRVUkVf TUFYX1dBU1RFIildCisrCXB1YmxpYyBjb25zdCBpbnQgVEVYVFVSRV9NQVhfV0FTVEU7CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlwdWJsaWMgc3RhdGlj IGJvb2wgYmxpdF9mcmFtZWJ1ZmZlciAoQ29nbC5GcmFtZWJ1ZmZlciBzcmMsIENvZ2wuRnJhbWVi dWZmZXIgZGVzdCwgaW50IHNyY194LCBpbnQgc3JjX3ksIGludCBkc3RfeCwgaW50IGRzdF95LCBp bnQgd2lkdGgsIGludCBoZWlnaHQpIHRocm93cyBHTGliLkVycm9yOworKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGNsdXR0 ZXJfd2luc3lzX2hhc19mZWF0dXJlX0NMVVRURVIgKENvZ2wuV2luc3lzRmVhdHVyZSBmZWF0dXJl KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJz aW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGNvbG9yX2VxdWFsICh2 b2lkKiB2MSwgdm9pZCogdjIpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9j b2dsLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTYiKV0KKysJcHVibGljIHN0YXRpYyB2 b2lkIGNvbG9yX2luaXRfZnJvbV9oc2wgKG91dCBDb2dsLkNvbG9yIGNvbG9yLCBmbG9hdCBodWUs IGZsb2F0IHNhdHVyYXRpb24sIGZsb2F0IGx1bWluYW5jZSk7CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisr CXB1YmxpYyBzdGF0aWMgdm9pZCBkZWJ1Z19tYXRyaXhfcHJpbnQgKENvZ2wuTWF0cml4IG1hdHJp eCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMS44IildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBkZWJ1Z19vYmplY3Rf Zm9yZWFjaF90eXBlIChDb2dsLkRlYnVnT2JqZWN0Rm9yZWFjaFR5cGVDYWxsYmFjayBmdW5jKTsK KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9u IChzaW5jZSA9ICIxLjgiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIGRlYnVnX29iamVjdF9wcmlu dF9pbnN0YW5jZXMgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wu aCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBm bHVzaCAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisr CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBmb3JlYWNo X2ZlYXR1cmUgKENvZ2wuQ29udGV4dCBjb250ZXh0LCBDb2dsLkZlYXR1cmVDYWxsYmFjayBjYWxs YmFjayk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlb VmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIpXQor KwlwdWJsaWMgc3RhdGljIGJvb2wgZ2V0X2JhY2tmYWNlX2N1bGxpbmdfZW5hYmxlZCAoKTsKKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChz aW5jZSA9ICIxLjE0IildCisrCXB1YmxpYyBzdGF0aWMgaW50NjQgZ2V0X2Nsb2NrX3RpbWUgKENv Z2wuQ29udGV4dCBjb250ZXh0KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wv Y29nbC5oIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5j ZSA9ICIxLjE2IildCisrCXB1YmxpYyBzdGF0aWMgYm9vbCBnZXRfZGVwdGhfdGVzdF9lbmFibGVk ICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJcHVi bGljIHN0YXRpYyBDb2dsLkdyYXBoaWNzUmVzZXRTdGF0dXMgZ2V0X2dyYXBoaWNzX3Jlc2V0X3N0 YXR1cyAoQ29nbC5Db250ZXh0IGNvbnRleHQpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNh dGVkX3NpbmNlID0gIjEuMTYiLCBzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIHN0YXRpYyBHTGli Lk9wdGlvbkdyb3VwIGdldF9vcHRpb25fZ3JvdXAgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlwdWJsaWMgc3RhdGljIEdMaWIuQ2FsbGJhY2sgZ2V0 X3Byb2NfYWRkcmVzcyAoc3RyaW5nIHMpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVk X3NpbmNlID0gIjEuMTgiKV0KKysJcHVibGljIHN0YXRpYyBHTGliLlR5cGUgZ3R5cGVfbWF0cml4 X2dldF90eXBlICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgi KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGhh c19mZWF0dXJlIChDb2dsLkNvbnRleHQgY29udGV4dCwgQ29nbC5GZWF0dXJlSUQgZmVhdHVyZSk7 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgc3RhdGljIGJvb2wgaXNfY29udGV4dCAodm9p ZCogb2JqZWN0KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIild CisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBzdGF0aWMgYm9vbCBpc19m cmFtZWJ1ZmZlciAodm9pZCogb2JqZWN0KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBz dGF0aWMgYm9vbCBpc19vbnNjcmVlbiAodm9pZCogb2JqZWN0KTsKKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0K KysJcHVibGljIHN0YXRpYyBib29sIGlzX3BpcGVsaW5lICh2b2lkKiBvYmplY3QpOworKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJcHVibGljIHN0YXRpYyBi b29sIGlzX3RleHR1cmVfMmQgKHZvaWQqIG9iamVjdCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlw dWJsaWMgc3RhdGljIGJvb2wgaXNfdGV4dHVyZV8yZF9zbGljZWQgKHZvaWQqIG9iamVjdCk7Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMS40IildCisrCXB1YmxpYyBzdGF0aWMgYm9vbCBtYXRyaXhfZXF1YWwgKHZvaWQq IHYxLCB2b2lkKiB2Mik7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wu aCIpXQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAi MS4xNiIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgc2V0X2JhY2tmYWNlX2N1bGxpbmdfZW5hYmxl ZCAoYm9vbCBzZXR0aW5nKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29n bC5oIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9 ICIxLjE2IildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBzZXRfZGVwdGhfdGVzdF9lbmFibGVkIChi b29sIHNldHRpbmcpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgi KV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEu MTYiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIHNoYWRlcl9jb21waWxlIChDb2dsLkhhbmRsZSBo YW5kbGUpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJ W1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiKV0K KysJcHVibGljIHN0YXRpYyBzdHJpbmcgc2hhZGVyX2dldF9pbmZvX2xvZyAoQ29nbC5IYW5kbGUg aGFuZGxlKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisr CVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2Iild CisrCXB1YmxpYyBzdGF0aWMgQ29nbC5TaGFkZXJUeXBlIHNoYWRlcl9nZXRfdHlwZSAoQ29nbC5I YW5kbGUgaGFuZGxlKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5o IildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIx LjE2IildCisrCXB1YmxpYyBzdGF0aWMgYm9vbCBzaGFkZXJfaXNfY29tcGlsZWQgKENvZ2wuSGFu ZGxlIGhhbmRsZSk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIp XQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4x NiIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgc2hhZGVyX3NvdXJjZSAoQ29nbC5IYW5kbGUgc2hh ZGVyLCBzdHJpbmcgc291cmNlKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wv Y29nbC5oIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5j ZSA9ICIxLjE4Iiwgc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBzdGF0aWMgQ29nbC5UZXh0dXJl IHRleHR1cmVfbmV3X2Zyb21fYml0bWFwIChDb2dsLkJpdG1hcCBiaXRtYXAsIENvZ2wuVGV4dHVy ZUZsYWdzIGZsYWdzLCBDb2dsLlBpeGVsRm9ybWF0IGludGVybmFsX2Zvcm1hdCk7CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoZGVwcmVj YXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xOCIsIHNpbmNlID0gIjAuOCIpXQor KwlwdWJsaWMgc3RhdGljIENvZ2wuVGV4dHVyZSB0ZXh0dXJlX25ld19mcm9tX2RhdGEgKGludCB3 aWR0aCwgaW50IGhlaWdodCwgQ29nbC5UZXh0dXJlRmxhZ3MgZmxhZ3MsIENvZ2wuUGl4ZWxGb3Jt YXQgZm9ybWF0LCBDb2dsLlBpeGVsRm9ybWF0IGludGVybmFsX2Zvcm1hdCwgaW50IHJvd3N0cmlk ZSwgdWludDggZGF0YSk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wu aCIpXQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAi MS4xOCIsIHNpbmNlID0gIjAuOCIpXQorKwlwdWJsaWMgc3RhdGljIENvZ2wuVGV4dHVyZSB0ZXh0 dXJlX25ld19mcm9tX2ZpbGUgKHN0cmluZyBmaWxlbmFtZSwgQ29nbC5UZXh0dXJlRmxhZ3MgZmxh Z3MsIENvZ2wuUGl4ZWxGb3JtYXQgaW50ZXJuYWxfZm9ybWF0KSB0aHJvd3MgR0xpYi5FcnJvcjsK KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9u IChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE4Iiwgc2luY2UgPSAi MC44IildCisrCXB1YmxpYyBzdGF0aWMgQ29nbC5UZXh0dXJlIHRleHR1cmVfbmV3X3dpdGhfc2l6 ZSAodWludCB3aWR0aCwgdWludCBoZWlnaHQsIENvZ2wuVGV4dHVyZUZsYWdzIGZsYWdzLCBDb2ds LlBpeGVsRm9ybWF0IGludGVybmFsX2Zvcm1hdCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJs aWMgc3RhdGljIHVpbnQzMiB4MTFfb25zY3JlZW5fZ2V0X3dpbmRvd194aWQgKENvZ2wuT25zY3Jl ZW4gb25zY3JlZW4pOworK30KKy0tIAorMi4yNS4wCisKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvYnVk Z2llLWRlc2t0b3AvdGVtcGxhdGUgYi9zcmNwa2dzL2J1ZGdpZS1kZXNrdG9wL3RlbXBsYXRlCmlu ZGV4IGIzMmU3NzM0ZDNiLi4xODBjZGMwMmYxZiAxMDA2NDQKLS0tIGEvc3JjcGtncy9idWRnaWUt ZGVza3RvcC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2J1ZGdpZS1kZXNrdG9wL3RlbXBsYXRlCkBA IC0xLDIxICsxLDIyIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdidWRnaWUtZGVza3RvcCcKIHBr Z25hbWU9YnVkZ2llLWRlc2t0b3AKIHZlcnNpb249MTAuNS4xCi1yZXZpc2lvbj0zCityZXZpc2lv bj00CiBidWlsZF9zdHlsZT1tZXNvbgogYnVpbGRfaGVscGVyPWdpcgogY29uZmlndXJlX2FyZ3M9 Ii1Ed2l0aC1ndGstZG9jPWZhbHNlIC1Ed2l0aC1kZXNrdG9wLWljb25zPW5vbmUiCiBob3N0bWFr ZWRlcGVuZHM9InBrZy1jb25maWcgaW50bHRvb2wgdmFsYSBnbGliLWRldmVsIGdvYmplY3QtaW50 cm9zcGVjdGlvbiBzYXNzYyIKIG1ha2VkZXBlbmRzPSJhbHNhLWxpYi1kZXZlbCBsaWJub3RpZnkt ZGV2ZWwgYWNjb3VudHNzZXJ2aWNlLWRldmVsIGxpYnBlYXMtZGV2ZWwgbGlid25jay1kZXZlbAot bXV0dGVyLWRldmVsIGlidXMtZGV2ZWwgZ25vbWUtZGVza3RvcC1kZXZlbCBwdWxzZWF1ZGlvLWRl dmVsIHVwb3dlci1kZXZlbCBndGsrMy1kZXZlbCBwb2xraXQtZGV2ZWwKLWdub21lLWJsdWV0b290 aC1kZXZlbCBnbm9tZS1tZW51cy1kZXZlbCBnbm9tZS1zZXR0aW5ncy1kYWVtb24tZGV2ZWwgdmFs YSBsaWJ1dWlkLWRldmVsIGxpYnVwb3dlci1nbGliMyIKLWRlcGVuZHM9Imdub21lLXNlc3Npb24g Z25vbWUtc2V0dGluZ3MtZGFlbW9uIGdub21lLWNvbnRyb2wtY2VudGVyIGVsb2dpbmQiCisgbXV0 dGVyLWRldmVsIGlidXMtZGV2ZWwgZ25vbWUtZGVza3RvcC1kZXZlbCBwdWxzZWF1ZGlvLWRldmVs IHVwb3dlci1kZXZlbCBndGsrMy1kZXZlbCBwb2xraXQtZGV2ZWwKKyBnbm9tZS1ibHVldG9vdGgt ZGV2ZWwgZ25vbWUtbWVudXMtZGV2ZWwgZ25vbWUtc2V0dGluZ3MtZGFlbW9uLWRldmVsIHZhbGEg bGlidXVpZC1kZXZlbCBsaWJ1cG93ZXItZ2xpYjMiCitkZXBlbmRzPSJnbm9tZS1zZXNzaW9uIGdu b21lLXNldHRpbmdzLWRhZW1vbiBnbm9tZS1jb250cm9sLWNlbnRlciBnbm9tZS10aGVtZXMtZXh0 cmEgZWxvZ2luZCIKIHNob3J0X2Rlc2M9Ik1vZGVybiBkZXNrdG9wIGVudmlyb25tZW50IGZyb20g dGhlIFNvbHVzIFByb2plY3QiCiBtYWludGFpbmVyPSJMb3JlbSA8bm90bG9yZW1pcHN1bUBwcm90 b25tYWlsLmNvbT4iCiBsaWNlbnNlPSJHUEwtMi4wLW9ubHksIExHUEwtMi4xLW9ubHkiCiBob21l cGFnZT0iaHR0cHM6Ly9naXRodWIuY29tL3NvbHVzLXByb2plY3QvYnVkZ2llLWRlc2t0b3AiCiBk aXN0ZmlsZXM9Imh0dHBzOi8vZ2l0aHViLmNvbS9zb2x1cy1wcm9qZWN0L2J1ZGdpZS1kZXNrdG9w L3JlbGVhc2VzL2Rvd25sb2FkL3Yke3ZlcnNpb259L2J1ZGdpZS1kZXNrdG9wLSR7dmVyc2lvbn0u dGFyLnh6IgogY2hlY2tzdW09ZDAzNWVjNzY0ZTAwOTM3MjJhODMyNDExYWViNmFiYTI5NmMwOTk1 ZDkyN2VhMDY5YjIwNWIxOWM4NWFhZTU2NQorcGF0Y2hfYXJncz0iLU5wMSIKIAogcHJlX2NvbmZp Z3VyZSgpIHsKIAl2c2VkIC1pICdzL2V4ZWMgZ25vbWUtc2Vzc2lvbi9leGVjIGdub21lLXNlc3Np b24gLS1idWlsdGluLycgc3JjL3Nlc3Npb24vYnVkZ2llLWRlc2t0b3AuaW4KCkZyb20gYzU1ZjI4 OTk4NmM4YjVjODcxNDJjNjkyMzNjYTgyOWM0NjJlNGMwMCBNb24gU2VwIDE3IDAwOjAwOjAwIDIw MDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCAxNiBKdW4g MjAyMCAxOTo0OTowNyArMDYwMApTdWJqZWN0OiBbUEFUQ0ggNDIvNjFdIHhkZy1kZXNrdG9wLXBv cnRhbC1ndGs6IHJlYnVpbGQgYWdhaW5zdAogbGliZ25vbWUtZGVza3RvcC0zLnNvLjE5CgotLS0K IHNyY3BrZ3MveGRnLWRlc2t0b3AtcG9ydGFsLWd0ay90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBj aGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3Br Z3MveGRnLWRlc2t0b3AtcG9ydGFsLWd0ay90ZW1wbGF0ZSBiL3NyY3BrZ3MveGRnLWRlc2t0b3At cG9ydGFsLWd0ay90ZW1wbGF0ZQppbmRleCBkZWUwZTQ2MzM4Ni4uNTU4Yzc1ZjUzOWQgMTAwNjQ0 Ci0tLSBhL3NyY3BrZ3MveGRnLWRlc2t0b3AtcG9ydGFsLWd0ay90ZW1wbGF0ZQorKysgYi9zcmNw a2dzL3hkZy1kZXNrdG9wLXBvcnRhbC1ndGsvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRl bXBsYXRlIGZpbGUgZm9yICd4ZGctZGVza3RvcC1wb3J0YWwtZ3RrJwogcGtnbmFtZT14ZGctZGVz a3RvcC1wb3J0YWwtZ3RrCiB2ZXJzaW9uPTEuNi4wCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBi dWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcgbGli eHNsdCBnbGliLWRldmVsIHhkZy1kZXNrdG9wLXBvcnRhbCBnZXR0ZXh0IgogbWFrZWRlcGVuZHM9 ImZsYXRwYWstZGV2ZWwgZ3RrKzMtZGV2ZWwgbGlieHNsdC1kZXZlbCBsaWJnbGliLWRldmVsCgpG cm9tIDIzODA0OTNlNmY4YjQ5YWUzZTg3YzQxYTUzNWJmNWRhMzcxYjk5ZGYgTW9uIFNlcCAxNyAw MDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFR1 ZSwgMTYgSnVuIDIwMjAgMTk6NDk6MTQgKzA2MDAKU3ViamVjdDogW1BBVENIIDQzLzYxXSBjaGVl c2U6IHJlYnVpbGQgYWdhaW5zdCBsaWJnbm9tZS1kZXNrdG9wLTMuc28uMTkKCi0tLQogc3JjcGtn cy9jaGVlc2UvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyks IDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2NoZWVzZS90ZW1wbGF0ZSBiL3Ny Y3BrZ3MvY2hlZXNlL3RlbXBsYXRlCmluZGV4IDdhNTZiYTAzOWZiLi4wMzdjZGE0OWM5OCAxMDA2 NDQKLS0tIGEvc3JjcGtncy9jaGVlc2UvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9jaGVlc2UvdGVt cGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdjaGVlc2UnCiBwa2du YW1lPWNoZWVzZQogdmVyc2lvbj0zLjM0LjAKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxk X3N0eWxlPW1lc29uCiBidWlsZF9oZWxwZXI9ImdpciIKIGNvbmZpZ3VyZV9hcmdzPSItRGd0a19k b2M9JCh2b3B0X2lmIGd0a19kb2MgJ3RydWUnICdmYWxzZScpCgpGcm9tIDIyMDRkOWRiYTYzOGNl ZjFhNTc4Y2QzMzFiZDVkMzAyNTg2MTllNjQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206 IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFR1ZSwgMTYgSnVuIDIwMjAgMTk6 NDk6MjEgKzA2MDAKU3ViamVjdDogW1BBVENIIDQ0LzYxXSBnbm9tZS1ib29rczogcmVidWlsZCBh Z2FpbnN0IGxpYmdub21lLWRlc2t0b3AtMy5zby4xOQoKLS0tCiBzcmNwa2dzL2dub21lLWJvb2tz L3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0 aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1ib29rcy90ZW1wbGF0ZSBiL3NyY3Br Z3MvZ25vbWUtYm9va3MvdGVtcGxhdGUKaW5kZXggMTE0YjllMDM0YzIuLjFkNDk3NGZlMTgzIDEw MDY0NAotLS0gYS9zcmNwa2dzL2dub21lLWJvb2tzL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25v bWUtYm9va3MvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdn bm9tZS1ib29rcycKIHBrZ25hbWU9Z25vbWUtYm9va3MKIHZlcnNpb249My4zNC4wCi1yZXZpc2lv bj0xCityZXZpc2lvbj0yCiBidWlsZF9oZWxwZXI9ImdpciIKIGJ1aWxkX3N0eWxlPW1lc29uCiBo b3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcgdmFsYSBnbGliLWRldmVsIGxpYnJzdmcgZG9jYm9v ay14c2wgbGlieHNsdAoKRnJvbSBkMjkwODRiMWM4ZWYxMDFjYjQ3OWI4MDliM2I2MGE2MDNkYTEw Y2ZhIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxv b2suY29tPgpEYXRlOiBUdWUsIDE2IEp1biAyMDIwIDE5OjQ5OjI4ICswNjAwClN1YmplY3Q6IFtQ QVRDSCA0NS82MV0gZ25vbWUtY2hhcmFjdGVyczogcmVidWlsZCBhZ2FpbnN0CiBsaWJnbm9tZS1k ZXNrdG9wLTMuc28uMTkKCi0tLQogc3JjcGtncy9nbm9tZS1jaGFyYWN0ZXJzL3RlbXBsYXRlIHwg MiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZm IC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1jaGFyYWN0ZXJzL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9t ZS1jaGFyYWN0ZXJzL3RlbXBsYXRlCmluZGV4IDg5ODY4ZjRiYzA0Li5hYzI2NGU1MWE2YSAxMDA2 NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1jaGFyYWN0ZXJzL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mv Z25vbWUtY2hhcmFjdGVycy90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmls ZSBmb3IgJ2dub21lLWNoYXJhY3RlcnMnCiBwa2duYW1lPWdub21lLWNoYXJhY3RlcnMKIHZlcnNp b249My4zNC4wCi1yZXZpc2lvbj0yCityZXZpc2lvbj0zCiBidWlsZF9zdHlsZT1tZXNvbgogYnVp bGRfaGVscGVyPSJnaXIiCiBob3N0bWFrZWRlcGVuZHM9ImdldHRleHQgZ2pzIGdsaWItZGV2ZWwg aXRzdG9vbCBwa2ctY29uZmlnIgoKRnJvbSA0Y2M3Y2QwYzczMmIyZDhjNjIxZTZjY2M5ZDIzZDM0 NTQ0Y2U5NDY4IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1 QG91dGxvb2suY29tPgpEYXRlOiBUdWUsIDE2IEp1biAyMDIwIDE5OjQ5OjM2ICswNjAwClN1Ympl Y3Q6IFtQQVRDSCA0Ni82MV0gZ25vbWUtZG9jdW1lbnRzOiByZWJ1aWxkIGFnYWluc3QKIGxpYmdu b21lLWRlc2t0b3AtMy5zby4xOQoKLS0tCiBzcmNwa2dzL2dub21lLWRvY3VtZW50cy90ZW1wbGF0 ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoK ZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtZG9jdW1lbnRzL3RlbXBsYXRlIGIvc3JjcGtncy9n bm9tZS1kb2N1bWVudHMvdGVtcGxhdGUKaW5kZXggOTdiNTNkNjM1ZDcuLjdlNDViODI1ZTcxIDEw MDY0NAotLS0gYS9zcmNwa2dzL2dub21lLWRvY3VtZW50cy90ZW1wbGF0ZQorKysgYi9zcmNwa2dz L2dub21lLWRvY3VtZW50cy90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmls ZSBmb3IgJ2dub21lLWRvY3VtZW50cycKIHBrZ25hbWU9Z25vbWUtZG9jdW1lbnRzCiB2ZXJzaW9u PTMuMzQuMAotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfaGVscGVyPSJnaXIiCiBidWls ZF9zdHlsZT1tZXNvbgogaG9zdG1ha2VkZXBlbmRzPSJkb2Nib29rLXhzbCBnZXR0ZXh0IGl0c3Rv b2wgcGtnLWNvbmZpZyBnbGliLWRldmVsIGxpYnhzbHQgZ2RrLXBpeGJ1ZgoKRnJvbSBmNzk1ZDdi ODFmMzQ5MTA5M2IwOTExZTBmM2MzMjdmYmVhOGZmN2EyIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAw MQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUdWUsIDE2IEp1biAy MDIwIDE5OjQ5OjQ2ICswNjAwClN1YmplY3Q6IFtQQVRDSCA0Ny82MV0gZ25vbWUtZm9udC12aWV3 ZXI6IHJlYnVpbGQgYWdhaW5zdAogbGliZ25vbWUtZGVza3RvcC0zLnNvLjE5CgotLS0KIHNyY3Br Z3MvZ25vbWUtZm9udC12aWV3ZXIvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBp bnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLWZv bnQtdmlld2VyL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1mb250LXZpZXdlci90ZW1wbGF0ZQpp bmRleCA2ZDAzNTM2NmQ0NC4uZjc0ZmNiY2IwMDAgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUt Zm9udC12aWV3ZXIvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS1mb250LXZpZXdlci90ZW1w bGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLWZvbnQtdmll d2VyJwogcGtnbmFtZT1nbm9tZS1mb250LXZpZXdlcgogdmVyc2lvbj0zLjM0LjAKLXJldmlzaW9u PTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxlPW1lc29uCiBob3N0bWFrZWRlcGVuZHM9InBrZy1j b25maWcgZ2xpYi1kZXZlbCIKIG1ha2VkZXBlbmRzPSJmb250Y29uZmlnLWRldmVsIGZyZWV0eXBl LWRldmVsIGdsaWItZGV2ZWwgZ3RrKzMtZGV2ZWwKCkZyb20gMjlhZTRmZTE5YzZiMjFhMzk4YmFk NDc2OTAwY2JkOWFlYTI0MjYzZCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMg PG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCAxNiBKdW4gMjAyMCAxOTo0OTo1NCAr MDYwMApTdWJqZWN0OiBbUEFUQ0ggNDgvNjFdIGdub21lLXNjcmVlbnNhdmVyOiByZWJ1aWxkIGFn YWluc3QKIGxpYmdub21lLWRlc2t0b3AtMy5zby4xOQoKLS0tCiAuLi4vcGF0Y2hlcy9nbm9tZS1k ZXNrdG9wLTMuMzYucGF0Y2ggICAgICAgICAgICAgICAgfCAxMyArKysrKysrKysrKysrCiBzcmNw a2dzL2dub21lLXNjcmVlbnNhdmVyL3RlbXBsYXRlICAgICAgICAgICAgICAgICAgfCAgNSArKyst LQogMiBmaWxlcyBjaGFuZ2VkLCAxNiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQogY3Jl YXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvZ25vbWUtc2NyZWVuc2F2ZXIvcGF0Y2hlcy9nbm9tZS1k ZXNrdG9wLTMuMzYucGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLXNjcmVlbnNhdmVy L3BhdGNoZXMvZ25vbWUtZGVza3RvcC0zLjM2LnBhdGNoIGIvc3JjcGtncy9nbm9tZS1zY3JlZW5z YXZlci9wYXRjaGVzL2dub21lLWRlc2t0b3AtMy4zNi5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0 NAppbmRleCAwMDAwMDAwMDAwMC4uNThkOTJlNDYzYTMKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNw a2dzL2dub21lLXNjcmVlbnNhdmVyL3BhdGNoZXMvZ25vbWUtZGVza3RvcC0zLjM2LnBhdGNoCkBA IC0wLDAgKzEsMTMgQEAKK2RpZmYgLU5hdXIgZ25vbWUtc2NyZWVuc2F2ZXItMy42LjEub3JpZy9z cmMvZ3MtbWFuYWdlci5jIGdub21lLXNjcmVlbnNhdmVyLTMuNi4xL3NyYy9ncy1tYW5hZ2VyLmMK Ky0tLSBnbm9tZS1zY3JlZW5zYXZlci0zLjYuMS5vcmlnL3NyYy9ncy1tYW5hZ2VyLmMJMjAyMC0w My0wOCAwODo1Mzo0Ni40MDg0MzE1NzggKzAwMDAKKysrKyBnbm9tZS1zY3JlZW5zYXZlci0zLjYu MS9zcmMvZ3MtbWFuYWdlci5jCTIwMjAtMDMtMDggMDg6NTQ6MzEuODc1NzM4NzMyICswMDAwCitA QCAtNzg4LDggKzc4OCw3IEBACisgICAgICAgICBzdXJmYWNlID0gZ25vbWVfYmdfY3JlYXRlX3N1 cmZhY2UgKG1hbmFnZXItPnByaXYtPmJnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBnZGtfd2luZG93LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICB3aWR0aCwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgaGVpZ2h0LAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBGQUxTRSk7CisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IGhlaWdodCk7CisgICAgICAgICBnc193aW5kb3dfc2V0X2JhY2tncm91bmRfc3VyZmFjZSAod2lu ZG93LCBzdXJmYWNlKTsKKyAgICAgICAgIGNhaXJvX3N1cmZhY2VfZGVzdHJveSAoc3VyZmFjZSk7 CisgfQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1zY3JlZW5zYXZlci90ZW1wbGF0ZSBiL3Ny Y3BrZ3MvZ25vbWUtc2NyZWVuc2F2ZXIvdGVtcGxhdGUKaW5kZXggMzYzZmNmMTJlMTAuLjU0YTlh MzVlY2NiIDEwMDY0NAotLS0gYS9zcmNwa2dzL2dub21lLXNjcmVlbnNhdmVyL3RlbXBsYXRlCisr KyBiL3NyY3BrZ3MvZ25vbWUtc2NyZWVuc2F2ZXIvdGVtcGxhdGUKQEAgLTEsMTUgKzEsMTYgQEAK ICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLXNjcmVlbnNhdmVyJwogcGtnbmFtZT1nbm9tZS1z Y3JlZW5zYXZlcgogdmVyc2lvbj0zLjYuMQotcmV2aXNpb249MgorcmV2aXNpb249MwogYnVpbGRf c3R5bGU9Z251LWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9Ii0tZW5hYmxlLWNvbXBpbGUtd2Fy bmluZ3M9bWluaW11bSIKIGhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyBhdXRvbWFrZSBpbnRs dG9vbCBnbGliLWRldmVsIgogbWFrZWRlcGVuZHM9Imdub21lLWRlc2t0b3AtZGV2ZWwgZGJ1cy1n bGliLWRldmVsIHBhbS1kZXZlbCIKIGRlcGVuZHM9Imdub21lLWRlc2t0b3AgbGliZ25vbWVrYmQg ZGJ1cyIKLXNob3J0X2Rlc2M9IkEgbmV3IHNjcmVlbnNhdmVyIHRoYXQgY2FuIHJlcGxhY2UgeHNj cmVlbnNhdmVyIgorc2hvcnRfZGVzYz0iTmV3IHNjcmVlbnNhdmVyIHRoYXQgY2FuIHJlcGxhY2Ug eHNjcmVlbnNhdmVyIgogbWFpbnRhaW5lcj0ic2hpem9uaWMgPHJlYWx0aWF6QGdtYWlsLmNvbT4i CiBsaWNlbnNlPSJHUEwtMy4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9t ZS5vcmcvUHJvamVjdHMvR25vbWVTY3JlZW5zYXZlciIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRF fS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIK IGNoZWNrc3VtPWYzOWI3OGQ0ZjdmZWQ3NDhjN2YwYTMxZDY5NDExMmZiOTA3YzZkM2M0ZTYzZGIy MmViODU4ZGYwN2U5NjJjZDAKK3BhdGNoX2FyZ3M9Ii1OcDEiCgpGcm9tIDBlN2NiN2JmMjlmZGY4 YmM5NDcwNmZhZGI1NjZiNmY5NzQzYzA0MTEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206 IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFR1ZSwgMTYgSnVuIDIwMjAgMTk6 NTA6MDEgKzA2MDAKU3ViamVjdDogW1BBVENIIDQ5LzYxXSBnbm9tZS13ZWF0aGVyOiByZWJ1aWxk IGFnYWluc3QgbGliZ25vbWUtZGVza3RvcC0zLnNvLjE5CgotLS0KIHNyY3BrZ3MvZ25vbWUtd2Vh dGhlci90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBk ZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtd2VhdGhlci90ZW1wbGF0ZSBi L3NyY3BrZ3MvZ25vbWUtd2VhdGhlci90ZW1wbGF0ZQppbmRleCBkMzBiZTliZjE5Mi4uYzAyOGU0 NmJhNjUgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtd2VhdGhlci90ZW1wbGF0ZQorKysgYi9z cmNwa2dzL2dub21lLXdlYXRoZXIvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRl IGZpbGUgZm9yICdnbm9tZS13ZWF0aGVyJwogcGtnbmFtZT1nbm9tZS13ZWF0aGVyCiB2ZXJzaW9u PTMuMzYuMQotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfaGVscGVyPSJnaXIiCiBidWls ZF9zdHlsZT1tZXNvbgogaG9zdG1ha2VkZXBlbmRzPSJnZXR0ZXh0IHBrZy1jb25maWcgaXRzdG9v bCBnbGliLWRldmVsIGdqcyIKCkZyb20gOTBmNmNmZjFiM2EzMTdiYzI2ZGM2MjI2YzI4YzIyZDcy ZWQ3NzQwZSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBv dXRsb29rLmNvbT4KRGF0ZTogVHVlLCAxNiBKdW4gMjAyMCAxOTo1MDowOSArMDYwMApTdWJqZWN0 OiBbUEFUQ0ggNTAvNjFdIHRvdGVtOiByZWJ1aWxkIGFnYWluc3QgbGliZ25vbWUtZGVza3RvcC0z LnNvLjE5CgotLS0KIHNyY3BrZ3MvdG90ZW0vdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdl ZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3Rv dGVtL3RlbXBsYXRlIGIvc3JjcGtncy90b3RlbS90ZW1wbGF0ZQppbmRleCA4MTUyMmIzMTQ4OC4u ZTQxODY2MzIxNTMgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvdG90ZW0vdGVtcGxhdGUKKysrIGIvc3Jj cGtncy90b3RlbS90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3Ig J3RvdGVtJwogcGtnbmFtZT10b3RlbQogdmVyc2lvbj0zLjM0LjEKLXJldmlzaW9uPTEKK3Jldmlz aW9uPTIKIGJ1aWxkX3N0eWxlPW1lc29uCiBidWlsZF9oZWxwZXI9ImdpciIKIGNvbmZpZ3VyZV9h cmdzPSItRGVuYWJsZS1weXRob249bm8gLURlbmFibGUtbmF1dGlsdXM9eWVzCgpGcm9tIGY2Yzdk YzNkNWM4MzJlYmMzNDZjOWI5Y2EwYTI5ZGE5OTg0M2M1OTUgTW9uIFNlcCAxNyAwMDowMDowMCAy MDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFR1ZSwgNyBKdWwg MjAyMCAwMzoxOTozNSArMDYwMApTdWJqZWN0OiBbUEFUQ0ggNTEvNjFdIGV2aW5jZTogcmVidWls ZCBhZ2FpbnN0IGxpYmdub21lLWRlc2t0b3AtMy5zby4xOQoKLS0tCiBzcmNwa2dzL2V2aW5jZS90 ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlv bigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZXZpbmNlL3RlbXBsYXRlIGIvc3JjcGtncy9ldmlu Y2UvdGVtcGxhdGUKaW5kZXggNDAzNWYxNWM2OTAuLmUyMzM2NjMxY2Q0IDEwMDY0NAotLS0gYS9z cmNwa2dzL2V2aW5jZS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2V2aW5jZS90ZW1wbGF0ZQpAQCAt MSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2V2aW5jZScKIHBrZ25hbWU9ZXZpbmNl CiB2ZXJzaW9uPTMuMzYuNwotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfaGVscGVyPSJn aXIiCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBjb25maWd1cmVfYXJncz0iJCh2b3B0X2Vu YWJsZSBnaXIgaW50cm9zcGVjdGlvbikgLS1kaXNhYmxlLXNjaGVtYXMtY29tcGlsZQoKRnJvbSBl YWQyZGE1ZmNmZTJiODg5YmQzNGVlMWQ0NmM0Yzg0ZDJjZTczZmNiIE1vbiBTZXAgMTcgMDA6MDA6 MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/PUM0PTkwbz1DMz1BMG49MjBUcj1FMT1CQT1BN249MjBD PUMzPUI0bmc9MjBEYW5oPz0KIDxjb25nZGFuaHF4QGdtYWlsLmNvbT4KRGF0ZTogVHVlLCAxNiBK dW4gMjAyMCAyMjo1Njo1MyArMDcwMApTdWJqZWN0OiBbUEFUQ0ggNTIvNjFdIGdub21lLWRlc2t0 b3A6IGFkZCBkb19jaGVjawoKLS0tCiBzcmNwa2dzL2dub21lLWRlc2t0b3AvdGVtcGxhdGUgfCAx NyArKysrKysrKysrKysrKysrKwogMSBmaWxlIGNoYW5nZWQsIDE3IGluc2VydGlvbnMoKykKCmRp ZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLWRlc2t0b3AvdGVtcGxhdGUgYi9zcmNwa2dzL2dub21l LWRlc2t0b3AvdGVtcGxhdGUKaW5kZXggYzFhNzQwOGMyMDcuLmNjZDdjNTY1NjlhIDEwMDY0NAot LS0gYS9zcmNwa2dzL2dub21lLWRlc2t0b3AvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS1k ZXNrdG9wL3RlbXBsYXRlCkBAIC0xMSw2ICsxMSw3IEBAIG1ha2VkZXBlbmRzPSJldWRldi1saWJ1 ZGV2LWRldmVsIGdzZXR0aW5ncy1kZXNrdG9wLXNjaGVtYXMtZGV2ZWwgZ3RrKzMtZGV2ZWwKICBp c28tY29kZXMgbGliZ2xpYi1kZXZlbCBsaWJzZWNjb21wLWRldmVsIGxpYlgxMS1kZXZlbCBsaWJY ZXh0LWRldmVsCiAgbGlieGtiZmlsZS1kZXZlbCBsaWJYcmFuZHItZGV2ZWwgZ2RrLXBpeGJ1Zi1k ZXZlbCIKIGRlcGVuZHM9ImJ1YmJsZXdyYXAgZ3NldHRpbmdzLWRlc2t0b3Atc2NoZW1hcyBpc28t Y29kZXMgeGtleWJvYXJkLWNvbmZpZyIKK2NoZWNrZGVwZW5kcz0iJGRlcGVuZHMgeG9yZy1zZXJ2 ZXIteHZmYiIKIHNob3J0X2Rlc2M9IkdOT01FIGRlc2t0b3AgbWFuYWdlbWVudCB1dGlsaXRpZXMi CiBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5z ZT0iR1BMLTIuMC1vci1sYXRlciwgTEdQTC0yLjEtb3ItbGF0ZXIiCkBAIC0yMSw2ICsyMiwyMiBA QCBjaGVja3N1bT0zOGY5OTRkY2IxZTFhZTA5M2QxYzkyOWM3YWNjNGY4OGUzOTExMWU0M2I1ZmRj MTMxMjViMGY2ZTIzMTFjNzg5CiBidWlsZF9vcHRpb25zPSJnaXIiCiBidWlsZF9vcHRpb25zX2Rl ZmF1bHQ9ImdpciIKIAorZG9fY2hlY2soKSB7CisJIyB0aGVyZSBpcyBzdGlsbCAxIHRlc3QgZmFp bCBmb3IgaGVfSUwgbG9jYWxlIGluIG11c2wKKwlpZiB0ZXN0ICIkWEJQU19UQVJHRVRfTElCQyIg IT0gbXVzbDsgdGhlbgorCQlsb2NhbCBfcGlkCisJCVh2ZmIgOjEgLXNjcmVlbiAwIDEzNjZ4NzY4 eDI0ICYKKwkJX3BpZD0kIQorCQl0cmFwICJraWxsICRfcGlkIiBFWElUCisJCXRyYXAgJ2V4aXQg MScgSU5UIEhVUCBURVJNCisJCWV4cG9ydCBESVNQTEFZPToxCisJCW5pbmphIC1DIGJ1aWxkIHRl c3QKKwkJdHJhcCAtIEVYSVQgSU5UIEhVUCBURVJNCisJCWtpbGwgJF9waWQKKwlmaQorfQorCisK IGdub21lLWRlc2t0b3AtZGV2ZWxfcGFja2FnZSgpIHsKIAlkZXBlbmRzPSJndGsrMy1kZXZlbCBn c2V0dGluZ3MtZGVza3RvcC1zY2hlbWFzLWRldmVsPj0zLjEyCiAJIGdkay1waXhidWYtZGV2ZWwg aXNvLWNvZGVzIGxpYlgxMS1kZXZlbCBsaWJnbGliLWRldmVsIGxpYnNlY2NvbXAtZGV2ZWwKCkZy b20gMWJmNDU4ZmRlYTNlMmI3OTE1MDNiMWRhOTVkMzAzNGMyMmZkYmNjNCBNb24gU2VwIDE3IDAw OjAwOjAwIDIwMDEKRnJvbTogPT9VVEYtOD9xPz1DND05MG89QzM9QTBuPTIwVHI9RTE9QkE9QTdu PTIwQz1DMz1CNG5nPTIwRGFuaD89CiA8Y29uZ2RhbmhxeEBnbWFpbC5jb20+CkRhdGU6IFNhdCwg MjAgSnVuIDIwMjAgMDY6MjU6NTUgKzA3MDAKU3ViamVjdDogW1BBVENIIDUzLzYxXSBnbm9tZS1z ZXR0aW5ncy1kYWVtb246IGZpeCBjaGVja2RlcGVuZHMKCi0tLQogc3JjcGtncy9nbm9tZS1zZXR0 aW5ncy1kYWVtb24vdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24o KyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLXNldHRpbmdzLWRh ZW1vbi90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25vbWUtc2V0dGluZ3MtZGFlbW9uL3RlbXBsYXRlCmlu ZGV4IDljZWIxZDEzZGU5Li5mNDUzOWE3MmQ0MyAxMDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1z ZXR0aW5ncy1kYWVtb24vdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS1zZXR0aW5ncy1kYWVt b24vdGVtcGxhdGUKQEAgLTEyLDcgKzEyLDcgQEAgbWFrZWRlcGVuZHM9Ik5ldHdvcmtNYW5hZ2Vy LWRldmVsIGFsc2EtbGliLWRldmVsIGNvbG9yZC1kZXZlbCBjdXBzLWRldmVsIGdjci1kZXYKICB4 Zjg2LWlucHV0LXdhY29tLWRldmVsIgogZGVwZW5kcz0iaGljb2xvci1pY29uLXRoZW1lIHB1bHNl YXVkaW8iCiBjaGVja2RlcGVuZHM9ImVsb2dpbmQgbGlibm90aWZ5IHB5dGhvbjMtZGJ1c21vY2sg cHl0aG9uMy1nb2JqZWN0Ci0gcHl0aG9uMy1weWNvZGVzdHlsZSIKKyBweXRob24zLXB5Y29kZXN0 eWxlIHdoaWNoIGh3aWRzIGV1ZGV2Igogc2hvcnRfZGVzYz0iR05PTUUgc2V0dGluZ3MgZGFlbW9u IgogbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vu c2U9IkdQTC0zLjAtb3ItbGF0ZXIiCgpGcm9tIGNlMDVmZGE4ODgzNWIyNTcyZjFiM2MyYjM3NTgx MGVkZjNiYjdiZDMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206ID0/VVRGLTg/cT89QzQ9 OTBvPUMzPUEwbj0yMFRyPUUxPUJBPUE3bj0yMEM9QzM9QjRuZz0yMERhbmg/PQogPGNvbmdkYW5o cXhAZ21haWwuY29tPgpEYXRlOiBTYXQsIDIwIEp1biAyMDIwIDA3OjQ0OjEyICswNzAwClN1Ympl Y3Q6IFtQQVRDSCA1NC82MV0gbXV0dGVyOiBza2lwIGRvX2NoZWNrCgotLS0KIHNyY3BrZ3MvbXV0 dGVyL3RlbXBsYXRlIHwgNCArKysrCiAxIGZpbGUgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspCgpk aWZmIC0tZ2l0IGEvc3JjcGtncy9tdXR0ZXIvdGVtcGxhdGUgYi9zcmNwa2dzL211dHRlci90ZW1w bGF0ZQppbmRleCAxMzJjZDlkZDY0NS4uMTE3YjU5YTI5YTkgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mv bXV0dGVyL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvbXV0dGVyL3RlbXBsYXRlCkBAIC0yMiw2ICsy MiwxMCBAQCBjaGVja3N1bT02YWNlNzQyZThkODg5MDgzZDNjMzJkNzk1NDNkOTAyMjQ4M2YwYjAw YjYzMGVjZWFiNWUzODA0YWFkM2FlZWQyCiBzaGxpYl9wcm92aWRlcz0ibGlibXV0dGVyLWNsdXR0 ZXItNi5zbyBsaWJtdXR0ZXItY29nbC02LnNvCiAgbGlibXV0dGVyLWNvZ2wtcGFuZ28tNi5zbyBs aWJtdXR0ZXItY29nbC1wYXRoLTYuc28iCiAKK2RvX2NoZWNrKCkgeworCW1zZ193YXJuICJ4dmZi IGRvZXMgbm90IHdvcmtcbiIKK30KKwogbXV0dGVyLWRldmVsX3BhY2thZ2UoKSB7CiAJZGVwZW5k cz0iZ3NldHRpbmdzLWRlc2t0b3Atc2NoZW1hcyBncmFwaGVuZS1kZXZlbCBndGsrMy1kZXZlbCBj bHV0dGVyLWRldmVsCiAJIGxpYlgxMS1kZXZlbCBsaWJYdHN0LWRldmVsIG11dHRlci0ke3ZlcnNp b259XyR7cmV2aXNpb259IgoKRnJvbSA4NDc3ZWFiOTM2MzNkMzgyZjhhZDc0NzFjMzMxYWI5Y2U5 ZjYzYzBkIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/PUM0PTkwbz1D Mz1BMG49MjBUcj1FMT1CQT1BN249MjBDPUMzPUI0bmc9MjBEYW5oPz0KIDxjb25nZGFuaHF4QGdt YWlsLmNvbT4KRGF0ZTogU3VuLCAyMSBKdW4gMjAyMCAyMjo1MzowMyArMDcwMApTdWJqZWN0OiBb UEFUQ0ggNTUvNjFdIGV2b2x1dGlvbi1kYXRhLXNlcnZlcjogc3BsaXQgdmFsYSBidWlsZCBvcHRp b24gZnJvbSBnaXIKCi0tLQogc3JjcGtncy9ldm9sdXRpb24tZGF0YS1zZXJ2ZXIvdGVtcGxhdGUg fCA1NCArKysrKysrKysrKystLS0tLS0tLS0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDI1IGluc2Vy dGlvbnMoKyksIDI5IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZXZvbHV0aW9u LWRhdGEtc2VydmVyL3RlbXBsYXRlIGIvc3JjcGtncy9ldm9sdXRpb24tZGF0YS1zZXJ2ZXIvdGVt cGxhdGUKaW5kZXggZWJmODE0NWY4OGMuLjgyMmQ1OWU2OTIyIDEwMDY0NAotLS0gYS9zcmNwa2dz L2V2b2x1dGlvbi1kYXRhLXNlcnZlci90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2V2b2x1dGlvbi1k YXRhLXNlcnZlci90ZW1wbGF0ZQpAQCAtMiw0NSArMiwzOCBAQAogcGtnbmFtZT1ldm9sdXRpb24t ZGF0YS1zZXJ2ZXIKIHZlcnNpb249My4zNi4zCiByZXZpc2lvbj0xCitfYmFzZXZlcj0ke3ZlcnNp b24lLip9CiBidWlsZF9zdHlsZT1jbWFrZQotYnVpbGRfaGVscGVyPWdpcgorYnVpbGRfaGVscGVy PSJnaXIgcWVtdSIKIGNvbmZpZ3VyZV9hcmdzPSItREVOQUJMRV9VT0E9T0ZGCi0gJCh2b3B0X2lm IGdpciAnLURFTkFCTEVfSU5UUk9TUEVDVElPTj1PTiAtREVOQUJMRV9WQUxBX0JJTkRJTkdTPU9O JyAnLURFTkFCTEVfV0VBVEhFUj1PRkYnKSIKKyAkKHZvcHRfaWYgZ2lyIC1ERU5BQkxFX0lOVFJP U1BFQ1RJT049T04pCisgJCh2b3B0X2lmIHZhbGEgLURFTkFCTEVfVkFMQV9CSU5ESU5HUz1PTiki CiBob3N0bWFrZWRlcGVuZHM9ImZsZXggZ2xpYi1kZXZlbCBncGVyZiBpbnRsdG9vbCBwa2ctY29u ZmlnIGxpYmdsaWItZGV2ZWwKLSAkKHZvcHRfaWYgZ2lyICdnb2JqZWN0LWludHJvc3BlY3Rpb24n KSIKLW1ha2VkZXBlbmRzPSJib29zdC1kZXZlbCBsaWJjYW5iZXJyYS1kZXZlbCBsaWJnZGF0YS1k ZXZlbCAkKHZvcHRfaWYgZ2lyIGxpYmd3ZWF0aGVyLWRldmVsKQotIGxpYmljYWwtZGV2ZWwgbGli c2VjcmV0LWRldmVsIG1pdC1rcmI1LWRldmVsICQodm9wdF9pZiBnaXIgJ3ZhbGEtZGV2ZWwnKSB3 ZWJraXQyZ3RrLWRldmVsIgotZGVwZW5kcz0iJCh2b3B0X2lmIGdpciBsaWJnd2VhdGhlcikgbGli c291cC1nbm9tZSIKKyAkKHZvcHRfaWYgdmFsYSB2YWxhKSIKK21ha2VkZXBlbmRzPSJib29zdC1k ZXZlbCBsaWJjYW5iZXJyYS1kZXZlbCBsaWJnZGF0YS1kZXZlbCBsaWJpY2FsLWRldmVsCisgbGli c2VjcmV0LWRldmVsIG1pdC1rcmI1LWRldmVsIHdlYmtpdDJndGstZGV2ZWwgbGliZ3dlYXRoZXIt ZGV2ZWwKKyAkKHZvcHRfaWYgdmFsYSB2YWxhLWRldmVsKSIKK2RlcGVuZHM9ImxpYmd3ZWF0aGVy IGxpYnNvdXAtZ25vbWUgZGJ1cyB0emRhdGEiCitjaGVja2RlcGVuZHM9IiRkZXBlbmRzIgogc2hv cnRfZGVzYz0iQ2VudHJhbGl6ZWQgYWNjZXNzIHRvIGFwcG9pbnRtZW50cyBhbmQgY29udGFjdHMi CiBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5z ZT0iTEdQTC0yLjEtb25seSIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL0FwcHMv RXZvbHV0aW9uIgotY2hhbmdlbG9nPSJodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20v R05PTUUvZXZvbHV0aW9uLWRhdGEtc2VydmVyL2dub21lLTMtMzYvTkVXUyIKLWRpc3RmaWxlcz0i JHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNp b259LnRhci54eiIKK2NoYW5nZWxvZz0iaHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNvbnRlbnQuY29t L0dOT01FLyRwa2duYW1lL2dub21lLSR7X2Jhc2V2ZXIvLi8tfS9ORVdTIgorZGlzdGZpbGVzPSIk e0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHtfYmFzZXZlcn0vJHtwa2duYW1lfS0ke3ZlcnNpb259 LnRhci54eiIKIGNoZWNrc3VtPTFmNWY0ODE3M2QwZjI4ODIxOWQ3M2Q0ZjE5M2NiOTIxYWU2MzE5 MzJiYTg0MDMwZjA1NzUxYzQyYmIwMDNkYjIKIAotYnVpbGRfb3B0aW9ucz0iZ2lyIgotaWYgWyAt eiAiJENST1NTX0JVSUxEIiBdOyB0aGVuCi0JYnVpbGRfb3B0aW9uc19kZWZhdWx0PSJnaXIiCi1m aQorYnVpbGRfb3B0aW9ucz0iZ2lyIHZhbGEiCitidWlsZF9vcHRpb25zX2RlZmF1bHQ9ImdpciB2 YWxhIgogCi0jIGNtYWtlIHBlcmZvbXJtcyAyIGNoZWNrcyB1c2luZyBiaW5hcnkgcnVudGltZSwg YWJvdXQgaWNvbnYgYW5kIHNmcnRpbWUuCi0jIG11c2wgKDEuMS4xNikgZG9lcyBub3Qgc3VwcG9y dCAiSVNPLTIwMjItSlAiIGVuY29kaW5nIChzZWUgaXRzIHJvYWRtYXApLAotIyBhbHRob3VnaCBl dm9sdXRpb24tZGF0YS1zZXJ2ZXIgaXMgZmluZSB3aXRoIG11c2wuCi0jIElmIGNyb3NzYnVpbGQs IGNtYWtlIGxldCBkaXNhYmxpbmcgcnVudGltZSBjaGVja3MgdmlhIHNwZWNpZmljIGRpcmVjdGl2 ZXMuCi0jIHRlc3QgaWNvbnYtZGV0ZWN0LmMgYWxzbyBnZW5lcmF0ZXMgaWNvbnYtZGV0ZWN0Lmgg dGhhdCBpcyByZXF1aXJlZCBmb3IgYnVpbGQuCi0jIFNvIGNvbXBsZXRseSBkaXNhYmxlIHRlc3Qg ZnJvbSBpY29udi1kZXRlY3QuYyAoY21ha2UucGF0Y2ggZmlsZSkgYW5kCi0jIHVzZSBhIGNtYWtl IGNhY2hlIGZpbGUgb24gY3Jvc3NidWlsZCB0byBkaXNhYmxlIHNmcnRpbWUgcnVubmluZyB0ZXN0 LgotaWYgWyAiJENST1NTX0JVSUxEIiBdOyB0aGVuCi0JY29uZmlndXJlX2FyZ3MrPSIgLUMgZGlz YWJsZVJ1bnRpbWVUZXN0cy5jbWFrZSIKLWZpCi0KLXByZV9jb25maWd1cmUoKSB7Ci0JbWtkaXIg LXAgYnVpbGQKLQljcCAke0ZJTEVTRElSfS9pY29udi1kZXRlY3QuaCAke3dya3NyY30vYnVpbGQv LgotCWlmIFsgIiRDUk9TU19CVUlMRCIgXTsgdGhlbgotCQljcCAke0ZJTEVTRElSfS9kaXNhYmxl UnVudGltZVRlc3RzLmNtYWtlICR7d3Jrc3JjfS9idWlsZC8uCi0JZmkKK2RvX2NoZWNrKCkgewor CWNkIGJ1aWxkCisJIyBUT0RPIFRoaXMgdGVzdCBpcyBwcm9ibGVtYXRpYywgZmlyc3QgcnVuIHVz dWFsbHkgZmFpbAorCSMgU2lnbmlmeSBzb21ldGhpbmcgd3Jvbmcgd2l0aCBldm9sdXRpb24tZGF0 YS1zZXJ2ZXIgb24gZmlyc3QgcnVuCisJY3Rlc3QgLVIgdGVzdC1ib29rLWNsaWVudC1jdXN0b20t c3VtbWFyeSB8fCB0cnVlCisJIyBtYWtlIHRlc3QgcnVuIGN0ZXN0IC0tZm9yY2UtbmV3LWN0ZXN0 LXByb2Nlc3Mgd2hpY2ggaXMgcHJvYmxlbWF0aWMKKwkjIG5vb25lIHNob3VsZCBydW4gbXVsdGlw bGUgaW5zdGFuY2Ugb2YgZXZvbHV0aW9uLWRhdGEtc2VydmVyIGlybC4KKwljdGVzdAogfQogCiBw b3N0X2luc3RhbGwoKSB7CkBAIC00OSw2ICs0Miw3IEBAIHBvc3RfaW5zdGFsbCgpIHsKIAogZXZv bHV0aW9uLWRhdGEtc2VydmVyLWRldmVsX3BhY2thZ2UoKSB7CiAJZGVwZW5kcz0ic3FsaXRlLWRl dmVsIG1pdC1rcmI1LWRldmVsIG5zcy1kZXZlbCBuc3ByLWRldmVsIGxpYmljYWwtZGV2ZWwKKwog CQlsaWJsZGFwLWRldmVsIGxpYmdkYXRhLWRldmVsPj0wLjE1IGxpYnNlY3JldC1kZXZlbCBsaWJn bGliLWRldmVsCiAJCWxpYnNvdXAtZGV2ZWwgZ3RrKzMtZGV2ZWwgbGlieG1sMi1kZXZlbCBnbm9t ZS1kZXNrdG9wLWRldmVsCiAJCSR7c291cmNlcGtnfT49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIK QEAgLTU5LDYgKzUzLDggQEAgZXZvbHV0aW9uLWRhdGEtc2VydmVyLWRldmVsX3BhY2thZ2UoKSB7 CiAJCXZtb3ZlICJ1c3IvbGliLyouc28iCiAJCWlmIFsgIiRidWlsZF9vcHRpb25fZ2lyIiBdOyB0 aGVuCiAJCQl2bW92ZSB1c3Ivc2hhcmUvZ2lyLTEuMAorCQlmaQorCQlpZiBbICIkYnVpbGRfb3B0 aW9uX3ZhbGEiIF07IHRoZW4KIAkJCXZtb3ZlIHVzci9zaGFyZS92YWxhCiAJCWZpCiAJfQoKRnJv bSA4NzFiMDNjNzlmYjRlYzY2ZWJiN2M3MDBiMDQ2MjNjMmZiZDhjMWM1IE1vbiBTZXAgMTcgMDA6 MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/PUM0PTkwbz1DMz1BMG49MjBUcj1FMT1CQT1BN249 MjBDPUMzPUI0bmc9MjBEYW5oPz0KIDxjb25nZGFuaHF4QGdtYWlsLmNvbT4KRGF0ZTogVHVlLCAy MyBKdW4gMjAyMCAyMjo1MTozMSArMDcwMApTdWJqZWN0OiBbUEFUQ0ggNTYvNjFdIGZvbGtzOiBh ZGQgYnVpbGQgb3B0aW9uIGdpciBhbmQgdmFsYQoKRGlzYWJsZSBnaXIgYW5kIHZhbGEgaW4gZXZv bHV0aW9uLWRhdGEtc2VydmVyIHdpbGwgbWFrZSBmb2xrcyBmYWlsZWQgdG8KYmUgYnVpbHQuCgpF aXRoZXIgZW5hYmxlIGJvdGggb2YgdGhlbSwgb3IgZGlzYWJsZSBib3RoIG9mIHRoZW0uCi0tLQog c3JjcGtncy9mb2xrcy90ZW1wbGF0ZSB8IDE4ICsrKysrKysrKysrKystLS0tLQogMSBmaWxlIGNo YW5nZWQsIDEzIGluc2VydGlvbnMoKyksIDUgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3Jj cGtncy9mb2xrcy90ZW1wbGF0ZSBiL3NyY3BrZ3MvZm9sa3MvdGVtcGxhdGUKaW5kZXggZTIxY2E5 YzEwNzcuLjZkYWJlYWRhZmFmIDEwMDY0NAotLS0gYS9zcmNwa2dzL2ZvbGtzL3RlbXBsYXRlCisr KyBiL3NyY3BrZ3MvZm9sa3MvdGVtcGxhdGUKQEAgLTUsMTAgKzUsMTEgQEAgcmV2aXNpb249MQog YnVpbGRfc3R5bGU9bWVzb24KIGJ1aWxkX2hlbHBlcj1naXIKIGNvbmZpZ3VyZV9hcmdzPSItRGJf bHRvPWZhbHNlIgotaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIGludGx0b29sIGdsaWItZGV2 ZWwgdmFsYSBweXRob24zIHB5dGhvbjMtZGJ1c21vY2sKLSBnb2JqZWN0LWludHJvc3BlY3Rpb24g ZXZvbHV0aW9uLWRhdGEtc2VydmVyLWRldmVsIgoraG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmln IGludGx0b29sIGdsaWItZGV2ZWwgcHl0aG9uMyBweXRob24zLWRidXNtb2NrCisgZXZvbHV0aW9u LWRhdGEtc2VydmVyLWRldmVsICQodm9wdF9pZiB2YWxhIHZhbGEpIgogbWFrZWRlcGVuZHM9InJl YWRsaW5lLWRldmVsIHRlbGVwYXRoeS1nbGliLWRldmVsIHplaXRnZWlzdC1kZXZlbAotIGxpYmdl ZTA4LWRldmVsIGV2b2x1dGlvbi1kYXRhLXNlcnZlci1kZXZlbCB0cmFja2VyLWRldmVsIgorIGxp YmdlZTA4LWRldmVsIGV2b2x1dGlvbi1kYXRhLXNlcnZlci1kZXZlbCB0cmFja2VyLWRldmVsCisg JCh2b3B0X2lmIHZhbGEgdmFsYS1kZXZlbCkiCiBkZXBlbmRzPSJ6ZWl0Z2Vpc3QiCiBzaG9ydF9k ZXNjPSJHT2JqZWN0IExpYnJhcnkgdG8gYWdncmVnYXRlIHBlb3BsZSBpbnRvIG1ldGFjb250YWN0 cyIKIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCkBAIC0x Nyw2ICsxOCw5IEBAIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL1Byb2plY3RzL0Zv bGtzIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8k e3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgogY2hlY2tzdW09ZDZlNzc4ZGE2MzdkM2IzM2Zk OWE2YjQ1MTE1ZTgxNTdkODg2ODIxMWRjMDhiOTQzZDEwNzViNWViNzI4MmJiOQogCitidWlsZF9v cHRpb25zPSJnaXIgdmFsYSIKK2J1aWxkX29wdGlvbnNfZGVmYXVsdD0iZ2lyIHZhbGEiCisKIGZv bGtzLWRldmVsX3BhY2thZ2UoKSB7CiAJZGVwZW5kcz0iJHttYWtlZGVwZW5kc30gJHtzb3VyY2Vw a2d9Pj0ke3ZlcnNpb259XyR7cmV2aXNpb259IgogCXNob3J0X2Rlc2MrPSIgLSBkZXZlbG9wbWVu dCBmaWxlcyIKQEAgLTI0LDcgKzI4LDExIEBAIGZvbGtzLWRldmVsX3BhY2thZ2UoKSB7CiAJCXZt b3ZlIHVzci9pbmNsdWRlCiAJCXZtb3ZlIHVzci9saWIvcGtnY29uZmlnCiAJCXZtb3ZlICJ1c3Iv bGliLyouc28iCi0JCXZtb3ZlIHVzci9zaGFyZS92YWxhCi0JCXZtb3ZlIHVzci9zaGFyZS9naXIt MS4wCisJCWlmIFsgIiRidWlsZF9vcHRpb25fZ2lyIiBdOyB0aGVuCisJCQl2bW92ZSB1c3Ivc2hh cmUvZ2lyLTEuMAorCQlmaQorCQlpZiBbICIkYnVpbGRfb3B0aW9uX3ZhbGEiIF07IHRoZW4KKwkJ CXZtb3ZlIHVzci9zaGFyZS92YWxhCisJCWZpCiAJfQogfQoKRnJvbSAzYmU0YmQxMTgxMWU2YzVh YTg3M2MxZDY1MTY4MjM3MjkxYjRmYzQ5IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiA9 P1VURi04P3E/PUM0PTkwbz1DMz1BMG49MjBUcj1FMT1CQT1BN249MjBDPUMzPUI0bmc9MjBEYW5o Pz0KIDxjb25nZGFuaHF4QGdtYWlsLmNvbT4KRGF0ZTogVHVlLCAyMyBKdW4gMjAyMCAyMjo1Mjo1 MCArMDcwMApTdWJqZWN0OiBbUEFUQ0ggNTcvNjFdIG5hdXRpbHVzOiBjb3JyZWN0IGNoZWNrZGVw ZW5kcwoKLS0tCiBzcmNwa2dzL25hdXRpbHVzL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5n ZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9u YXV0aWx1cy90ZW1wbGF0ZSBiL3NyY3BrZ3MvbmF1dGlsdXMvdGVtcGxhdGUKaW5kZXggOTRjYjEw NDkyY2EuLmM2ZmFmN2JmM2Q3IDEwMDY0NAotLS0gYS9zcmNwa2dzL25hdXRpbHVzL3RlbXBsYXRl CisrKyBiL3NyY3BrZ3MvbmF1dGlsdXMvdGVtcGxhdGUKQEAgLTExLDcgKzExLDcgQEAgbWFrZWRl cGVuZHM9ImV4ZW1waS1kZXZlbCBnbm9tZS1hdXRvYXItZGV2ZWwgZ25vbWUtZGVza3RvcC1kZXZl bCBndGsrMy1kZXZlbAogIGxpYlgxMS1kZXZlbCBsaWJ4bWwyLWRldmVsIHRyYWNrZXItZGV2ZWwg Z3N0LXBsdWdpbnMtYmFzZTEtZGV2ZWwiCiBkZXBlbmRzPSJkZXNrdG9wLWZpbGUtdXRpbHMgZ3Nl dHRpbmdzLWRlc2t0b3Atc2NoZW1hcyBoaWNvbG9yLWljb24tdGhlbWUKICB0cmFja2VyLW1pbmVy cyB0cmFja2VyIgotY2hlY2tkZXBlbmRzPSJ0cmFja2VyIgorY2hlY2tkZXBlbmRzPSJ0cmFja2Vy IHRyYWNrZXItbWluZXJzIgogc2hvcnRfZGVzYz0iR05PTUUgZmlsZSBtYW5hZ2VyIgogbWFpbnRh aW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0y LjAtb3ItbGF0ZXIsIExHUEwtMi4xLW9yLWxhdGVyIgoKRnJvbSA2M2I3OTA2MDdiNDhmYTk3MzVk NzM2YjEyNTUzNmRjYWJjMGFhNmJjIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VU Ri04P3E/PUM0PTkwbz1DMz1BMG49MjBUcj1FMT1CQT1BN249MjBDPUMzPUI0bmc9MjBEYW5oPz0K IDxjb25nZGFuaHF4QGdtYWlsLmNvbT4KRGF0ZTogVHVlLCAyMyBKdW4gMjAyMCAyMjo1MzoxNCAr MDcwMApTdWJqZWN0OiBbUEFUQ0ggNTgvNjFdIHRyYWNrZXI6IGFkZCB0YXIgdG8gY2hlY2tkZXBl bmRzCgotLS0KIHNyY3BrZ3MvdHJhY2tlci90ZW1wbGF0ZSB8IDEgKwogMSBmaWxlIGNoYW5nZWQs IDEgaW5zZXJ0aW9uKCspCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy90cmFja2VyL3RlbXBsYXRlIGIv c3JjcGtncy90cmFja2VyL3RlbXBsYXRlCmluZGV4IGU4MTRmNzdjNzExLi4xOTMzOGRiNDVlMSAx MDA2NDQKLS0tIGEvc3JjcGtncy90cmFja2VyL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvdHJhY2tl ci90ZW1wbGF0ZQpAQCAtMTEsNiArMTEsNyBAQCBob3N0bWFrZWRlcGVuZHM9ImdldHRleHQgcGtn LWNvbmZpZyBnbGliLWRldmVsIHZhbGEiCiBtYWtlZGVwZW5kcz0iZGJ1cy1kZXZlbCBsaWJnbGli LWRldmVsIGljdS1kZXZlbCBqc29uLWdsaWItZGV2ZWwKICBsaWJzb3VwLWRldmVsIGxpYnhtbDIt ZGV2ZWwgc3FsaXRlLWRldmVsIE5ldHdvcmtNYW5hZ2VyLWRldmVsCiAgYmFzaC1jb21wbGV0aW9u IgorY2hlY2tkZXBlbmRzPSJ0YXIiCiBzaG9ydF9kZXNjPSJQZXJzb25hbCBzZWFyY2ggdG9vbCBh bmQgc3RvcmFnZSBzeXN0ZW0iCiBtYWludGFpbmVyPSJPcnBoYW5lZCA8b3JwaGFuQHZvaWRsaW51 eC5vcmc+IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKCkZyb20gZTE1YjQ5YzkyODRkNjBk MjAwNzg1MWE3YjVlMTk5YTQ0ODJjZDVmZCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTog PT9VVEYtOD9xPz1DND05MG89QzM9QTBuPTIwVHI9RTE9QkE9QTduPTIwQz1DMz1CNG5nPTIwRGFu aD89CiA8Y29uZ2RhbmhxeEBnbWFpbC5jb20+CkRhdGU6IFR1ZSwgMjMgSnVuIDIwMjAgMjI6NTM6 NTUgKzA3MDAKU3ViamVjdDogW1BBVENIIDU5LzYxXSB0cmFja2VyLW1pbmVyczogc2ltcGxpZnkg dGVtcGxhdGUKCi0tLQogc3JjcGtncy90cmFja2VyLW1pbmVycy90ZW1wbGF0ZSB8IDcgKystLS0t LQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSkKCmRpZmYg LS1naXQgYS9zcmNwa2dzL3RyYWNrZXItbWluZXJzL3RlbXBsYXRlIGIvc3JjcGtncy90cmFja2Vy LW1pbmVycy90ZW1wbGF0ZQppbmRleCAwMjBjMTI0ZjMyMi4uYTVhZDY1ZDc0NDEgMTAwNjQ0Ci0t LSBhL3NyY3BrZ3MvdHJhY2tlci1taW5lcnMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy90cmFja2Vy LW1pbmVycy90ZW1wbGF0ZQpAQCAtMyw2ICszLDcgQEAgcGtnbmFtZT10cmFja2VyLW1pbmVycwog dmVyc2lvbj0yLjMuMQogcmV2aXNpb249MwogYnVpbGRfc3R5bGU9bWVzb24KKyMgTWlzc2luZyBs aWJncnNzCiBjb25maWd1cmVfYXJncz0iLUR0cmFja2VyX2NvcmU9c3lzdGVtIC1EZG9jcz1mYWxz ZSAtRGV4dHJhY3Q9dHJ1ZQogIC1EZnVuY3Rpb25hbF90ZXN0cz1mYWxzZSAtRGN1ZT1lbmFibGVk IC1EZXhpZj1lbmFibGVkIC1EZmxhYz1lbmFibGVkCiAgLURnaWY9ZW5hYmxlZCAtRGdzZj1lbmFi bGVkIC1EaXB0Yz1lbmFibGVkIC1EaXNvPWVuYWJsZWQgLURqcGVnPWVuYWJsZWQKQEAgLTE3LDE0 ICsxOCwxMCBAQCBtYWtlZGVwZW5kcz0idHJhY2tlci1kZXZlbCBmZm1wZWctZGV2ZWwgZGJ1cy1k ZXZlbCBleGVtcGktZGV2ZWwgbGliZmxhYy1kZXZlbAogIGxpYmV4aWYtZGV2ZWwgbGliZ3NmLWRl dmVsIGxpYmd4cHMtZGV2ZWwgbGliaXB0Y2RhdGEtZGV2ZWwgbGlianBlZy10dXJiby1kZXZlbAog IGxpYm9zaW5mby1kZXZlbCBsaWJwbmctZGV2ZWwgbGlic2VjY29tcC1kZXZlbCB0aWZmLWRldmVs IGxpYnhtbDItZGV2ZWwKICBsaWJ2b3JiaXMtZGV2ZWwgcG9wcGxlci1nbGliLWRldmVsIHRhZ2xp Yi1kZXZlbCB0b3RlbS1wbC1wYXJzZXItZGV2ZWwKLSB1cG93ZXItZGV2ZWwgemxpYi1kZXZlbCBn c3QtcGx1Z2lucy1iYXNlMS1kZXZlbCBnaWZsaWItZGV2ZWwiCisgdXBvd2VyLWRldmVsIHpsaWIt ZGV2ZWwgZ3N0LXBsdWdpbnMtYmFzZTEtZGV2ZWwgZ2lmbGliLWRldmVsIGxpYmhhcmZidXp6Igog c2hvcnRfZGVzYz0iRGF0YSBtaW5lcnMgZm9yIHRyYWNrZXIiCiBtYWludGFpbmVyPSJFbm5vIEJv bGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIK IGhvbWVwYWdlPSJodHRwczovL2RldmVsb3Blci5nbm9tZS5vcmcvbGlidHJhY2tlci1taW5lci9z dGFibGUiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vdHJhY2tlci1taW5lcnMvJHt2ZXJzaW9u JS4qfS90cmFja2VyLW1pbmVycy0ke3ZlcnNpb259LnRhci54eiIKIGNoZWNrc3VtPTdiMWRlMDZh N2E3OWVhMWM3ODEzYzhhMjFmOGNkMWM1NWYyYjk1Zjc5OWNmOWY0N2YwMjA0ZjNiZThhNTkwZTAK LQotIyBNaXNzaW5nIGxpYmdyc3MKLWNvbmZpZ3VyZV9hcmdzKz0iIC1EbWluZXJfcnNzPWZhbHNl IgotbWFrZWRlcGVuZHMrPSIgbGliaGFyZmJ1enoiCgpGcm9tIGJmMTk4Mjc2YWM2NWZkMWEwMDUy ODgxMGI1YTllYjI4N2E1ZDIwYzYgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206ID0/VVRG LTg/cT89QzQ9OTBvPUMzPUEwbj0yMFRyPUUxPUJBPUE3bj0yMEM9QzM9QjRuZz0yMERhbmg/PQog PGNvbmdkYW5ocXhAZ21haWwuY29tPgpEYXRlOiBXZWQsIDI0IEp1biAyMDIwIDIzOjE4OjQwICsw NzAwClN1YmplY3Q6IFtQQVRDSCA2MC82MV0gZ25vbWUtc2hlbGw6IGFkZCBkb19jaGVjawoKLS0t CiBzcmNwa2dzL2dub21lLXNoZWxsL3RlbXBsYXRlIHwgMTcgKysrKysrKysrKysrKysrKysKIDEg ZmlsZSBjaGFuZ2VkLCAxNyBpbnNlcnRpb25zKCspCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9t ZS1zaGVsbC90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25vbWUtc2hlbGwvdGVtcGxhdGUKaW5kZXggZWU0 YzYyODhmNWYuLmRlYjkyMmEwOWFkIDEwMDY0NAotLS0gYS9zcmNwa2dzL2dub21lLXNoZWxsL3Rl bXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtc2hlbGwvdGVtcGxhdGUKQEAgLTE1LDYgKzE1LDcg QEAgbWFrZWRlcGVuZHM9ImF0LXNwaTItYXRrIGNhcmlib3UtZGV2ZWwgZXZvbHV0aW9uLWRhdGEt c2VydmVyLWRldmVsIGZvbGtzLWRldmVsCiAgbmV0d29yay1tYW5hZ2VyLWFwcGxldC1kZXZlbCBw b2xraXQtZGV2ZWwgcHVsc2VhdWRpby1kZXZlbAogIHN0YXJ0dXAtbm90aWZpY2F0aW9uLWRldmVs IHRlbGVwYXRoeS1sb2dnZXItZGV2ZWwgZ25vbWUtYXV0b2FyLWRldmVsIgogZGVwZW5kcz0iY2Fy aWJvdSBlbG9naW5kIGdseGluZm8gZ25vbWUtY29udHJvbC1jZW50ZXIgZ3NldHRpbmdzLWRlc2t0 b3Atc2NoZW1hcyB1cG93ZXIiCitjaGVja2RlcGVuZHM9IiRkZXBlbmRzIGFjY291bnRzc2Vydmlj ZSBnZG0geG9yZy1zZXJ2ZXIteHZmYiBwaXBld2lyZSBtZXNhLWRyaSBkYnVzLXgxMSIKIHNob3J0 X2Rlc2M9IkdOT01FIGNvcmUgdXNlciBpbnRlcmZhY2UiCiBtYWludGFpbmVyPSJFbm5vIEJvbGFu ZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKQEAg LTIyLDMgKzIzLDE5IEBAIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL1Byb2plY3Rz L0dub21lU2hlbGwiCiBjaGFuZ2Vsb2c9Imh0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNv bS9HTk9NRS9nbm9tZS1zaGVsbC9nbm9tZS0zLTMwL05FV1MiCiBkaXN0ZmlsZXM9IiR7R05PTUVf U0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIu eHoiCiBjaGVja3N1bT04NmQ4YWJmNzBmYWI4OWQ1ZDkzOWRkN2UzOGM1OTg3MjQ5MmY0NDQyNzJh ODUyNGRiNzk0NTBhNTE4MGQ0NWJiCisKK2RvX2NoZWNrKCkgeworCWxvY2FsIF9waWQKKwlleHBv cnQgRElTUExBWT06MQorCWV4cG9ydCBYREdfUlVOVElNRV9ESVI9L3RtcAorCVh2ZmIgOjEgLXNj cmVlbiAwIDEzNjZ4NzY4eDI0ICYKKwlfcGlkPSQhCisJdHJhcCAia2lsbCAkX3BpZCIgRVhJVAor CXRyYXAgJ2V4aXQgMScgSU5UIEhVUCBURVJNCisJZXZhbCAkKGRidXMtbGF1bmNoKQorCWV4cG9y dCBEQlVTX1NFU1NJT05fQlVTX0FERFJFU1MKKwluaW5qYSB0ZXN0IC1DIGJ1aWxkCisJIyB0cmFw IGlzIGhhbmdpbmcgb24gbm9ybWFsIGV4aXQsIGRidXM/CisJdHJhcCAtIEVYSVQgSU5UIEhVUCBU RVJNCisJa2lsbCAkX3BpZCB8fCB0cnVlCit9CgpGcm9tIGRmYzlkYWZhZjFhOGJmODQ0MTMxZTU4 NjUzMjVlY2IzNDFhMDExN2MgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206ID0/VVRGLTg/ cT89QzQ9OTBvPUMzPUEwbj0yMFRyPUUxPUJBPUE3bj0yMEM9QzM9QjRuZz0yMERhbmg/PQogPGNv bmdkYW5ocXhAZ21haWwuY29tPgpEYXRlOiBUaHUsIDIgSnVsIDIwMjAgMDk6MTc6MzEgKzA3MDAK U3ViamVjdDogW1BBVENIIDYxLzYxXSBmaXh1cCEgZXZvbHV0aW9uLWRhdGEtc2VydmVyOiBzcGxp dCB2YWxhIGJ1aWxkIG9wdGlvbgogZnJvbSBnaXIKCltjaSBza2lwXQotLS0KIHNyY3BrZ3MvZXZv bHV0aW9uLWRhdGEtc2VydmVyL3RlbXBsYXRlIHwgNDIgKysrKysrKysrKysrKysrKysrKysrKysr Ky0KIDEgZmlsZSBjaGFuZ2VkLCA0MSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZm IC0tZ2l0IGEvc3JjcGtncy9ldm9sdXRpb24tZGF0YS1zZXJ2ZXIvdGVtcGxhdGUgYi9zcmNwa2dz L2V2b2x1dGlvbi1kYXRhLXNlcnZlci90ZW1wbGF0ZQppbmRleCA4MjJkNTllNjkyMi4uNzA1Y2Uw OTMxMTUgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZXZvbHV0aW9uLWRhdGEtc2VydmVyL3RlbXBsYXRl CisrKyBiL3NyY3BrZ3MvZXZvbHV0aW9uLWRhdGEtc2VydmVyL3RlbXBsYXRlCkBAIC0yNiw2ICsy Niw0NyBAQCBjaGVja3N1bT0xZjVmNDgxNzNkMGYyODgyMTlkNzNkNGYxOTNjYjkyMWFlNjMxOTMy YmE4NDAzMGYwNTc1MWM0MmJiMDAzZGIyCiBidWlsZF9vcHRpb25zPSJnaXIgdmFsYSIKIGJ1aWxk X29wdGlvbnNfZGVmYXVsdD0iZ2lyIHZhbGEiCiAKK3ByZV9idWlsZCgpIHsKKwlbIC16ICIkQ1JP U1NfQlVJTEQiIF0gJiYgcmV0dXJuIDAKKwlsb2NhbCBfZGlyPQorCWZvciBfZGlyIGluIGxpYmVi YWNrZW5kIGxpYmVkYXRhc2VydmVyIGxpYmVkYXRhc2VydmVydWkgXAorCQlhZGRyZXNzYm9vay9s aWJlYm9vay1jb250YWN0cyBcCisJCWFkZHJlc3Nib29rL2xpYmVkYXRhLWJvb2sgXAorCQlhZGRy ZXNzYm9vay9saWJlYm9vayBcCisJCWNhbGVuZGFyL2xpYmVjYWwgXAorCQljYWxlbmRhci9saWJl ZGF0YS1jYWwKKwlkbworCQlsbiAtcnNmICR3cmtzcmMvYnVpbGQvc3JjL3ByaXZhdGUvbGliZWRi dXMtcHJpdmF0ZS5zbyBidWlsZC9zcmMvJF9kaXIKKwlkb25lCisKKwlmb3IgX2RpciBpbiBhZGRy ZXNzYm9vay9saWJlYm9vay1jb250YWN0cyBcCisJCWNhbGVuZGFyL2xpYmVjYWwgY2FsZW5kYXIv bGliZWRhdGEtY2FsCisJZG8KKwkJbG4gLXNmIC4uLy4uL2NhbWVsL2xpYmNhbWVsLTEuMi5zby42 MiBidWlsZC9zcmMvJF9kaXIKKwlkb25lCisKKwlmb3IgX2RpciBpbiBhZGRyZXNzYm9vay9saWJl ZGF0YS1ib29rIGFkZHJlc3Nib29rL2xpYmVib29rIFwKKwkJY2FsZW5kYXIvbGliZWRhdGEtY2Fs CisJZG8KKwkJbG4gLXNmIC4uLy4uL2xpYmViYWNrZW5kL2xpYmViYWNrZW5kLTEuMi5zby4xMCBi dWlsZC9zcmMvJF9kaXIKKwlkb25lCisKKwlsbiAtc2YgLi4vLi4vbGliZWRhdGFzZXJ2ZXIvbGli ZWRhdGFzZXJ2ZXItMS4yLnNvLjI0IGJ1aWxkL3NyYy9jYWxlbmRhci9saWJlY2FsCisJcmV0dXJu CisJIyBpZGVhbGx5IHFlbXUgc2hvdWxkIHBpY2sgYmVsb3cgTERfTElCQVJZX1BBVEgKKwkjIGlu c3RlYWQgb2YgYWJvdmUgc2hlbmFuaWdhbnMKKwkjIEJ1dCBpdCBkb2Vzbid0IHdvcmsgZm9yIG5v dywgbGVmdCBpdCBoZXJlIGFzIGZ1dHVyZSByZWZlcmVuY2UuCisJIyBUT0RPIGZpZ3VyZSBhIGJl dHRlciBtZXRob2RzCisJX2J1aWxkZGlyPSR3cmtzcmMvYnVpbGQKKwlfbGRfbGlicmFyeV9wYXRo PSRfYnVpbGRkaXI6JF9idWlsZGRpci9zcmMKKwlmb3IgX2RpciBpbiBsaWJlZGF0YXNlcnZlciBw cml2YXRlIGNhbWVsCisJZG8KKwkJX2xkX2xpYnJhcnlfcGF0aCs9IjokX2J1aWxkZGlyL3NyYy8k X2RpciIKKwlkb25lCisJX2xkX2xpYnJhcnlfcGF0aCs9IjokWEJQU19DUk9TU19CQVNFL3Vzci9s aWIiCisJZXhwb3J0IFFFTVVfU0VUX0VOVj1MRF9MSUJBUllfUEFUSD0kX2xkX2xpYnJhcnlfcGF0 aAorfQorCiBkb19jaGVjaygpIHsKIAljZCBidWlsZAogCSMgVE9ETyBUaGlzIHRlc3QgaXMgcHJv YmxlbWF0aWMsIGZpcnN0IHJ1biB1c3VhbGx5IGZhaWwKQEAgLTQyLDcgKzgzLDYgQEAgcG9zdF9p bnN0YWxsKCkgewogCiBldm9sdXRpb24tZGF0YS1zZXJ2ZXItZGV2ZWxfcGFja2FnZSgpIHsKIAlk ZXBlbmRzPSJzcWxpdGUtZGV2ZWwgbWl0LWtyYjUtZGV2ZWwgbnNzLWRldmVsIG5zcHItZGV2ZWwg bGliaWNhbC1kZXZlbAotCiAJCWxpYmxkYXAtZGV2ZWwgbGliZ2RhdGEtZGV2ZWw+PTAuMTUgbGli c2VjcmV0LWRldmVsIGxpYmdsaWItZGV2ZWwKIAkJbGlic291cC1kZXZlbCBndGsrMy1kZXZlbCBs aWJ4bWwyLWRldmVsIGdub21lLWRlc2t0b3AtZGV2ZWwKIAkJJHtzb3VyY2Vwa2d9Pj0ke3ZlcnNp b259XyR7cmV2aXNpb259Igo= --===============8239383903060667052==--