From mboxrd@z Thu Jan 1 00:00:00 1970 Received: (qmail 32748 invoked from network); 12 Jul 2020 08:53:24 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 12 Jul 2020 08:53:24 -0000 Content-Type: multipart/mixed; boundary="===============3692285257923198848==" MIME-Version: 1.0 Subject: =?utf8?q?Re=3A_=5BPR_PATCH=5D_=5BUpdated=5D_gnome_3=2E36_updates?= To: ml@inbox.vuxu.org From: sgn Reply-to: ml@inbox.vuxu.org In-Reply-To: References: Date: Sun, 12 Jul 2020 10:53:21 +0200 List-Id: Message-ID: <20200712085321.RMseC94wV9_lOap7upQxM6GiNdO1MiTKghE5DslWokc@z> GitHub notification mails are now in MIME to allow UTF8. --===============3692285257923198848== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkgc2duIGFnYWluc3QgbWFzdGVyIG9u IHRoZSB2b2lkLXBhY2thZ2VzIHJlcG9zaXRvcnkKCmh0dHBzOi8vZ2l0aHViLmNvbS9tbmFiaWQv dm9pZC1wYWNrYWdlcyBnZWRpdApodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51eC92b2lkLXBh Y2thZ2VzL3B1bGwvMjEzODIKCmdub21lIDMuMzYgdXBkYXRlcwo8ZGV0YWlscz4NCjxzdW1tYXJ5 PjxpPkxpc3Qgb2YgdXBkYXRlcyA6IDwvaT48L3N1bW1hcnk+DQoNCiAqIGF0ayAtPiAyLjM2LjAN CiAqIGF0LXNwaTItYXRrIC0+IDIuMzQuMg0KICogYnVkZ2llLWRlc2t0b3AgLT4gKHJldmJ1bXAp DQogKiBjaGVlc2UgLT4gKHJldmJ1bXApDQogKiBkY29uZi1lZGl0b3IgLT4gMy4zNi4yDQogKiBk ZXZoZWxwIC0+IDMuMzYuMg0KICogZW9nIC0+IDMuMzYuMg0KICogZXZpbmNlIC0+IDMuMzYuMw0K ICogZXZvbHV0aW9uIC0+IDMuMzYuMw0KICogZXZvbHV0aW9uLWRhdGEtc2VydmVyIC0+IDMuMzYu Mw0KICogZXZvbHV0aW9uLWV3cyAtPiAzLjM2LjMNCiAqIGZpbGUtcm9sbGVyIC0+IDMuMzYuMg0K ICogZm9sa3MgLT4gMC4xNC4wDQogKiBnZG0gLT4gMy4zNi4yDQogKiBnZWRpdCAtPiAzLjM2LjIN CiAqIGdub21lLWJvb2tzIC0+IChyZXZidW1wKQ0KICogZ25vbWUtY2hhcmFjdGVycyAtPiAocmV2 YnVtcCkNCiAqIGdub21lLWNsb2NrcyAtPiAzLjM2LjINCiAqIGdub21lLWNvbnRhY3RzIC0+IDMu MzYuMQ0KICogZ25vbWUtY29udHJvbC1jZW50ZXIgLT4gMy4zNi4zDQogKiBnbm9tZS1kZXNrdG9w IC0+IDMuMzYuMg0KICogZ25vbWUtZG9jdW1lbnRzIC0+IChyZXZidW1wKQ0KICogZ25vbWUtZXB1 Yi10aHVtYm5haWxlciAtPiAxLjYNCiAqIGdub21lLWZsYXNoYmFjayAtPiAzLjM2LjMNCiAqIGdu b21lLWZvbnQtdmlld2VyIC0+IChyZXZidW1wKQ0KICogZ25vbWUtZ2V0dGluZy1zdGFydGVkLWRv Y3MgLT4gMy4zNi4yDQogKiBnbm9tZS1pbml0aWFsLXNldHVwIC0+IDMuMzYuMw0KICogZ25vbWUt bWFwcyAtPiAzLjM2LjINCiAqIGdub21lLW1lbnVzIC0+IDMuMzYuMA0KICogZ25vbWUtbXVzaWMg LT4gMy4zNi4zDQogKiBnbm9tZS1wYW5lbCAtPiAzLjM2LjENCiAqIGdub21lLXBvZGNhc3RzIC0+ IDAuNC43DQogKiBnbm9tZS1zY3JlZW5zYXZlciAtPiAocmV2YnVtcCkNCiAqIGdub21lLXNlc3Np b24gLT4gMy4zNi4wDQogKiBnbm9tZS1zZXR0aW5ncy1kYWVtb24gLT4gMy4zNi4xDQogKiBnbm9t ZS1zaGVsbCAtPiAzLjM2LjMNCiAqIGdub21lLXNoZWxsLWV4dGVuc2lvbnMgLT4gMy4zNi4yDQog KiBnbm9tZS10ZXJtaW5hbCAtPiAzLjM2LjINCiAqIGdub21lLXVzZXItZG9jcyAtPiAzLjM2LjIN CiAqIGdub21lLXdlYXRoZXIgLT4gKHJldmJ1bXApDQogKiBncmFwaGVuZSAtPiAxLjEwLjANCiAq IGx1dHJpcyAtPiAocmV2YnVtcCkNCiAqIG1ldGFjaXR5IC0+IDMuMzYuMQ0KICogbXV0dGVyIC0+ IDMuMzYuMw0KICogbmF1dGlsdXMgLT4gMy4zNi4zDQogKiBvcmNhIC0+IDMuMzYuMg0KICogcHl0 aG9uLWF0c3BpIC0+IDIuMzYuMA0KICogcHl0aG9uMy1hdHNwaSAtPiAyLjM2LjANCiAqIHRvdGVt IC0+IChyZXZidW1wKQ0KICogdHJhY2tlciAtPiAyLjMuNA0KICogeGRnLWRlc2t0b3AtcG9ydGFs LWd0ayAtPiAocmV2YnVtcCkNCjwvZGV0YWlscz4NCg0KQnVpbHQgbmF0aXZlbHkgaW4gYHg4Nl82 NGAgYW5kIGNyb3NzYnVpbHQgZm9yIGBhcm12N2xgLgoKQSBwYXRjaCBmaWxlIGZyb20gaHR0cHM6 Ly9naXRodWIuY29tL3ZvaWQtbGludXgvdm9pZC1wYWNrYWdlcy9wdWxsLzIxMzgyLnBhdGNoIGlz IGF0dGFjaGVk --===============3692285257923198848== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-gedit-21382.patch" RnJvbSA1YjA2YjZiY2FiZDEzMTM5YTkzMTIxODlhOWU0ZWIzNjE5ZGNhMTNmIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBU dWUsIDE2IEp1biAyMDIwIDE5OjQyOjUzICswNjAwClN1YmplY3Q6IFtQQVRDSCAwMS82NV0gZ25v bWUtZGVza3RvcDogdXBkYXRlIHRvIDMuMzYuMi4KCkNsb3NlczogIzIxMzgyCi0tLQogY29tbW9u L3NobGlicyAgICAgICAgICAgICAgICAgIHwgMiArLQogc3JjcGtncy9nbm9tZS1kZXNrdG9wL3Rl bXBsYXRlIHwgOCArKysrLS0tLQogMiBmaWxlcyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDUg ZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvY29tbW9uL3NobGlicyBiL2NvbW1vbi9zaGxpYnMK aW5kZXggMDBhMGFmNTNmY2IuLmEzNGFmZTQwNzljIDEwMDY0NAotLS0gYS9jb21tb24vc2hsaWJz 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 YnVpbGRfb3B0aW9ucz0iZ2lyIgogYnVpbGRfb3B0aW9uc19kZWZhdWx0PSJnaXIiCgpGcm9tIDVh YjA1ODRlNDhmOTk1YzgwMzI4MGRlMzI4MWRiMTFlZjkyNTdhMGMgTW9uIFNlcCAxNyAwMDowMDow MCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFR1ZSwgMTYg SnVuIDIwMjAgMTk6NDM6MTggKzA2MDAKU3ViamVjdDogW1BBVENIIDAyLzY1XSBnbm9tZS1zZXNz aW9uOiB1cGRhdGUgdG8gMy4zNi4wLgoKLS0tCiBzcmNwa2dzL2dub21lLXNlc3Npb24vdGVtcGxh dGUgfCAxMCArKysrKysrLS0tCiAxIGZpbGUgY2hhbmdlZCwgNyBpbnNlcnRpb25zKCspLCAzIGRl bGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtc2Vzc2lvbi90ZW1wbGF0ZSBi L3NyY3BrZ3MvZ25vbWUtc2Vzc2lvbi90ZW1wbGF0ZQppbmRleCA0NDQ0ZjE2MmJmMS4uODhkZWUy MGViNmUgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtc2Vzc2lvbi90ZW1wbGF0ZQorKysgYi9z cmNwa2dzL2dub21lLXNlc3Npb24vdGVtcGxhdGUKQEAgLTEsOSArMSw5IEBACiAjIFRlbXBsYXRl IGZpbGUgZm9yICdnbm9tZS1zZXNzaW9uJwogcGtnbmFtZT1nbm9tZS1zZXNzaW9uCi12ZXJzaW9u PTMuMzQuMQordmVyc2lvbj0zLjM2LjAKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPW1lc29uCi1j b25maWd1cmVfYXJncz0iLURzeXN0ZW1kX2pvdXJuYWw9ZmFsc2UiCitjb25maWd1cmVfYXJncz0i LURzeXN0ZW1kX3Nlc3Npb249ZGlzYWJsZSAtRHN5c3RlbWRfam91cm5hbD1mYWxzZSIKIGhvc3Rt YWtlZGVwZW5kcz0iZ2xpYi1kZXZlbCBpbnRsdG9vbCBwa2ctY29uZmlnIHhtbHRvIgogbWFrZWRl cGVuZHM9ImVsb2dpbmQtZGV2ZWwgZ25vbWUtZGVza3RvcC1kZXZlbCBndGsrMy1kZXZlbCBqc29u LWdsaWItZGV2ZWwKICBsaWJnbGliLWRldmVsIGxpYklDRS1kZXZlbCBsaWJTTS1kZXZlbCBsaWJY dHN0LWRldmVsIHN0YXJ0dXAtbm90aWZpY2F0aW9uLWRldmVsCkBAIC0xNSw0ICsxNSw4IEBAIG1h aW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJH UEwtMi4wLW9yLWxhdGVyLCBMR1BMLTIuMS1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL2dp dGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2Vzc2lvbiIKIGRpc3RmaWxlcz0iJHtHTk9NRV9T SVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54 eiIKLWNoZWNrc3VtPWQ3ODAxZmUyZDVhNzUxYjE5Y2I1ODA4MTc3MTMxNmE3NmFhYmQ1YzU1MGNk NThkNGU0YzZhNWE0ZWQzNTY2NjAKK2NoZWNrc3VtPWQ1NGIzOGI4MThjODEyZjY0YjgyY2M2YTEy NzllM2NhNWE2ZTM5MWVlNjYyNzkzMzIyYTM4Y2FiNTY3MGJiN2EKKworcG9zdF9pbnN0YWxsKCkg eworCXJtIC1yZiAke0RFU1RESVJ9L3Vzci9saWIvc3lzdGVtZAorfQoKRnJvbSAzZWViNDI2ODBh OTQxYjUxOTNhYTk0YzFhNTgyYzZiZTYxOGQzNmExIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpG cm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUdWUsIDE2IEp1biAyMDIw IDE5OjQzOjI1ICswNjAwClN1YmplY3Q6IFtQQVRDSCAwMy82NV0gbmF1dGlsdXM6IHVwZGF0ZSB0 byAzLjM2LjMuCgotLS0KIHNyY3BrZ3MvbmF1dGlsdXMvdGVtcGxhdGUgfCA2ICsrKy0tLQogMSBm aWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQg YS9zcmNwa2dzL25hdXRpbHVzL3RlbXBsYXRlIGIvc3JjcGtncy9uYXV0aWx1cy90ZW1wbGF0ZQpp bmRleCA1MzdhODUxOTczZi4uOTRjYjEwNDkyY2EgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvbmF1dGls dXMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9uYXV0aWx1cy90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYg QEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ25hdXRpbHVzJwogcGtnbmFtZT1uYXV0aWx1cwotdmVy c2lvbj0zLjM2LjEuMQordmVyc2lvbj0zLjM2LjMKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPW1l c29uCiBidWlsZF9oZWxwZXI9ImdpciIKQEAgLTE2LDggKzE2LDggQEAgc2hvcnRfZGVzYz0iR05P TUUgZmlsZSBtYW5hZ2VyIgogbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGlu dXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIsIExHUEwtMi4xLW9yLWxhdGVyIgog aG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcvTmF1dGlsdXMiCi1kaXN0ZmlsZXM9IiR7 R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb246OjR9LyR7cGtnbmFtZX0tJHt2ZXJzaW9u fS50YXIueHoiCi1jaGVja3N1bT1mOTI1MmY1MDgyMTFkOWYzNjhhNDlkYjY5Nzg5MGY4OTVkMDgw ZjA5NTkwYWVjYWYzMzgwM2E1MTlkZWY3YmRlCitkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtw a2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCitjaGVj a3N1bT1iNmNhZmM3YWIxZTcwYTY0MzgzZGUzOTFiNjA5N2ZjY2NiZjM2YjIwOGY4NTAyZDhjNDY0 MjMyMjRmZDMwZWY4CiAKIGJ1aWxkX29wdGlvbnM9ImdpciIKIGJ1aWxkX29wdGlvbnNfZGVmYXVs dD0iZ2lyIgoKRnJvbSAyYWE1NGVmNzA1OWFkNjRmYWM5NDY3ZGFiMzI3ZjQ5ODE5ZmY2MWFlIE1v biBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29t PgpEYXRlOiBUdWUsIDE2IEp1biAyMDIwIDE5OjQzOjMyICswNjAwClN1YmplY3Q6IFtQQVRDSCAw NC82NV0gZ25vbWUtbXVzaWM6IHVwZGF0ZSB0byAzLjM2LjMuCgotLS0KIHNyY3BrZ3MvZ25vbWUt bXVzaWMvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyks IDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1tdXNpYy90ZW1wbGF0 ZSBiL3NyY3BrZ3MvZ25vbWUtbXVzaWMvdGVtcGxhdGUKaW5kZXggMTI1MTE3MzY0MDcuLjIyNzNh YzFjYTE2IDEwMDY0NAotLS0gYS9zcmNwa2dzL2dub21lLW11c2ljL3RlbXBsYXRlCisrKyBiL3Ny Y3BrZ3MvZ25vbWUtbXVzaWMvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZp bGUgZm9yICdnbm9tZS1tdXNpYycKIHBrZ25hbWU9Z25vbWUtbXVzaWMKLXZlcnNpb249My4zNi4x Cit2ZXJzaW9uPTMuMzYuMwogcmV2aXNpb249MQogYnVpbGRfaGVscGVyPSJnaXIiCiBidWlsZF9z dHlsZT1tZXNvbgpAQCAtMTUsNSArMTUsNSBAQCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290 dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdl PSJodHRwczovL3dpa2kuZ25vbWUub3JnL0FwcHMvTXVzaWMiCiBkaXN0ZmlsZXM9IiR7R05PTUVf U0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIu eHoiCi1jaGVja3N1bT03YjgwZjYzMGQxNTgzMzQ5MzVhODc2MDI5NjU1MGNjOTFiNTBkNjA0ZmE2 OGI0MDJmZTUxNjViMTUzMWVjMzMyCitjaGVja3N1bT01NGY4ZDI0MGY4OTk1ZjRjZmY0ZGNlNWUx Y2JkYzYwYmVmYzgxZDc5YmY3MmMxZTRmZDgwN2VkMDVjMTE0MjM3CiBsaWIzMmRpc2FibGVkPXll cwoKRnJvbSBlNmYyODc4MDUxNmQxN2U0NzM3ODY0MDg1ZTgzZGNmNWU2MzM4NjU2IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRl OiBUdWUsIDE2IEp1biAyMDIwIDE5OjQzOjM4ICswNjAwClN1YmplY3Q6IFtQQVRDSCAwNS82NV0g ZGV2aGVscDogdXBkYXRlIHRvIDMuMzYuMi4KCi0tLQogc3JjcGtncy9kZXZoZWxwL3RlbXBsYXRl IHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygt KQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZGV2aGVscC90ZW1wbGF0ZSBiL3NyY3BrZ3MvZGV2aGVs cC90ZW1wbGF0ZQppbmRleCBhMWMyZGNiYjc2Mi4uYmE3NWRmZmRjZTcgMTAwNjQ0Ci0tLSBhL3Ny Y3BrZ3MvZGV2aGVscC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2RldmhlbHAvdGVtcGxhdGUKQEAg LTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdkZXZoZWxwJwogcGtnbmFtZT1kZXZo ZWxwCi12ZXJzaW9uPTMuMzYuMQordmVyc2lvbj0zLjM2LjIKIHJldmlzaW9uPTEKIGJ1aWxkX2hl bHBlcj0iZ2lyIgogYnVpbGRfc3R5bGU9bWVzb24KQEAgLTExLDcgKzExLDcgQEAgbWFpbnRhaW5l cj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAt b3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9BcHBzL0RldmhlbHAi CiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtn bmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT00Y2Y4ZWM5MzAyYmM0YTc5ZTAxYWM1 M2JkOWM4Yjk1YTU5NmY3MWYzNTM1MWY0OGI2MzI2MzIyN2YwOWE4YTNkCitjaGVja3N1bT04YjVh ODQzMTllZmJiMmVmMWJjNDAyMmVlM2VkMmQ2Njc4Nzk0ZWJhMmRmYTk5M2U1MGUwM2Q2ZTdiOTMw YzVlCiAKIGRldmhlbHAtZGV2ZWxfcGFja2FnZSgpIHsKIAlzaG9ydF9kZXNjKz0iIC0gZGV2ZWxv cG1lbnQgZmlsZXMiCgpGcm9tIDNkOGY3YzdjNzA2MjZhZmMwNDg5MzIzZDBjNTYyMWUzMTYzNjVm NjcgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9v ay5jb20+CkRhdGU6IFR1ZSwgMTYgSnVuIDIwMjAgMTk6NDM6NTEgKzA2MDAKU3ViamVjdDogW1BB VENIIDA2LzY1XSBlb2c6IHVwZGF0ZSB0byAzLjM2LjIuCgotLS0KIHNyY3BrZ3MvZW9nL3RlbXBs YXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9u cygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZW9nL3RlbXBsYXRlIGIvc3JjcGtncy9lb2cvdGVt cGxhdGUKaW5kZXggZTRjYWNiNzA3OWUuLmNmYTFjZjU3NTk0IDEwMDY0NAotLS0gYS9zcmNwa2dz L2VvZy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2VvZy90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAK ICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2VvZycKIHBrZ25hbWU9ZW9nCi12ZXJzaW9uPTMuMzYuMQor dmVyc2lvbj0zLjM2LjIKIHJldmlzaW9uPTEKIGJ1aWxkX2hlbHBlcj0iZ2lyIgogYnVpbGRfc3R5 bGU9bWVzb24KQEAgLTE0LDcgKzE0LDcgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRv eEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0i aHR0cHM6Ly93aWtpLmdub21lLm9yZy9BcHBzL0V5ZU9mR25vbWUiCiBkaXN0ZmlsZXM9IiR7R05P TUVfU0lURX0vZW9nLyR7dmVyc2lvbiUuKn0vZW9nLSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tz dW09ZTQ1NGExYTdhYTVlM2EzMzIxZWFiMDExNjc3ODExMGU1YTdhN2I2M2JjZjIxNjc2ZWRhMWE3 YmUxODdjOWM5NQorY2hlY2tzdW09NWMwNTZiMDI5NWE4ZTA2ZDA5M2I4ZmM2MGIxMGUyYThjMTlh YmRiN2JlYWUxYzdlN2UwNTk1ZWNlMmUxYjc4Ywogc2hsaWJfcHJvdmlkZXM9ImxpYmVvZy5zbyIK IGxpYjMyZGlzYWJsZWQ9eWVzCiAKCkZyb20gMjEyNWM5MzQ2MTEyZmVmYjdkZWZhMTk4ZDJjNzM5 MGU0MTdiMTVlOSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4y NUBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCAxNiBKdW4gMjAyMCAxOTo0NDowNyArMDYwMApTdWJq ZWN0OiBbUEFUQ0ggMDcvNjVdIGdub21lLW1hcHM6IHVwZGF0ZSB0byAzLjM2LjIuCgouLi4gYW5k IHVubWFyayBub2Nyb3NzLgotLS0KIGNvbW1vbi9zaGxpYnMgICAgICAgICAgICAgICB8IDEgKwog c3JjcGtncy9nbm9tZS1tYXBzL3RlbXBsYXRlIHwgOCArKysrLS0tLQogMiBmaWxlcyBjaGFuZ2Vk LCA1IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvY29tbW9uL3No bGlicyBiL2NvbW1vbi9zaGxpYnMKaW5kZXggYTM0YWZlNDA3OWMuLjA0OGNjZThjOWJiIDEwMDY0 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 MTY3YTI2Njg3OGE5Nzg0CgpGcm9tIDI3YTY1NWRiZjI5NzI3MTcwNTE1NzRkZTFkN2M0YjFhYTUx NmY0N2UgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0 bG9vay5jb20+CkRhdGU6IFR1ZSwgMTYgSnVuIDIwMjAgMTk6NDQ6MTQgKzA2MDAKU3ViamVjdDog W1BBVENIIDA4LzY1XSBnZWRpdDogdXBkYXRlIHRvIDMuMzYuMi4KCi0tLQogc3JjcGtncy9nZWRp dC90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBk ZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dlZGl0L3RlbXBsYXRlIGIvc3JjcGtn cy9nZWRpdC90ZW1wbGF0ZQppbmRleCA0ZTI3M2FhZjE4Mi4uZTNlYmVhMDVlYTcgMTAwNjQ0Ci0t LSBhL3NyY3BrZ3MvZ2VkaXQvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nZWRpdC90ZW1wbGF0ZQpA QCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dlZGl0JwogcGtnbmFtZT1nZWRp dAotdmVyc2lvbj0zLjM2LjEKK3ZlcnNpb249My4zNi4yCiByZXZpc2lvbj0xCiBidWlsZF9oZWxw ZXI9ImdpciIKIGJ1aWxkX3N0eWxlPW1lc29uCkBAIC0xNyw3ICsxNyw3IEBAIG1haW50YWluZXI9 IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9y LWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcvQXBwcy9HZWRpdCIKIGRp c3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1l fS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTZkYzM4ZWRhMjI3ZDFjMzY4ZTAzOWU5YmZm NDg1ZDBiZWU5YTQ5ZDVmOTU2MGMzODdlZTA4ZjU4MThhNGUzODcKK2NoZWNrc3VtPTY4ODc1NTQ2 NDNjNWIxYjM4NjJhYzM2NGQ5N2I3YjUwMjI0YmZmOTVlNjc1OGFlYWEwOGY0YTQ4MmI1NTQxOTcK IHNobGliX3Byb3ZpZGVzPSJsaWJnZWRpdC0zLjM2LnNvIgogcHl0aG9uX3ZlcnNpb249MwogCgpG cm9tIDg1YjU1OGQxZmJlNjZhZTI5ZDUzNjJlMzQxODMxNjFiYTlmZTA0MmQgTW9uIFNlcCAxNyAw MDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFR1 ZSwgMTYgSnVuIDIwMjAgMTk6NDQ6MjEgKzA2MDAKU3ViamVjdDogW1BBVENIIDA5LzY1XSBnbm9t ZS1jb250YWN0czogdXBkYXRlIHRvIDMuMzYuMS4KCi0tLQogc3JjcGtncy9nbm9tZS1jb250YWN0 cy90ZW1wbGF0ZSB8IDggKysrKy0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyks IDQgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1jb250YWN0cy90ZW1w bGF0ZSBiL3NyY3BrZ3MvZ25vbWUtY29udGFjdHMvdGVtcGxhdGUKaW5kZXggMmE4MjEzYTcyNDAu LjAxZmI4MmI3ODI2IDEwMDY0NAotLS0gYS9zcmNwa2dzL2dub21lLWNvbnRhY3RzL3RlbXBsYXRl CisrKyBiL3NyY3BrZ3MvZ25vbWUtY29udGFjdHMvdGVtcGxhdGUKQEAgLTEsMTAgKzEsMTAgQEAK ICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLWNvbnRhY3RzJwogcGtnbmFtZT1nbm9tZS1jb250 YWN0cwotdmVyc2lvbj0zLjM0LjAKLXJldmlzaW9uPTIKK3ZlcnNpb249My4zNi4xCityZXZpc2lv bj0xCiB3cmtzcmM9Imdub21lLWNvbnRhY3RzLSR7dmVyc2lvbiUuKn0iCiBidWlsZF9zdHlsZT1t ZXNvbgotaG9zdG1ha2VkZXBlbmRzPSJkb2Nib29rLXhzbCBnZXR0ZXh0IGdsaWItZGV2ZWwgbGli eHNsdCBwa2ctY29uZmlnIHZhbGEiCitob3N0bWFrZWRlcGVuZHM9ImRvY2Jvb2steHNsIGZvbGtz LWRldmVsIGdldHRleHQgZ2xpYi1kZXZlbCBsaWJ4c2x0IHBrZy1jb25maWcgdmFsYSIKIG1ha2Vk ZXBlbmRzPSJjaGVlc2UtZGV2ZWwgZm9sa3MtZGV2ZWwgZ2VvY29kZS1nbGliLWRldmVsIGdub21l LWRlc2t0b3AtZGV2ZWwKICBsaWJjaGFtcGxhaW4tZGV2ZWwgbGlibm90aWZ5LWRldmVsIHZhbGEt ZGV2ZWwgbGliaGFuZHktZGV2ZWwiCiBkZXBlbmRzPSJkZXNrdG9wLWZpbGUtdXRpbHMiCkBAIC0x Myw0ICsxMyw0IEBAIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9y Zz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5n bm9tZS5vcmcvQXBwcy9Db250YWN0cyIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25h bWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb24lLip9LnRhci54eiIKLWNoZWNr c3VtPTk5NjAyZWM4ZDY2MGMxZjNjOTJjYWU2MzU2ZjY0ZjcyZmI2ZGI1OGU1NWJjZTI3YTU5OTMz MGJmN2I2MjJmMTIKK2NoZWNrc3VtPWVlY2JkMjIwOWQ5M2M4ZDMxZGY5MmY2Y2NmNzkxODNiNDU2 YzZlMDdhMjhhZTAxNTVjYmRhMThhYWJkMzZmN2IKCkZyb20gYmRiOTRmMGFkMTI3MjAxNTZkNDZl NGE5ZmNiZWEwOWJhMWMwNGJjMyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMg PG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCAxNiBKdW4gMjAyMCAxOTo0NDoyOSAr MDYwMApTdWJqZWN0OiBbUEFUQ0ggMTAvNjVdIGdub21lLWNsb2NrczogdXBkYXRlIHRvIDMuMzYu Mi4KCi0tLQogc3JjcGtncy9nbm9tZS1jbG9ja3MvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBj aGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3Jj cGtncy9nbm9tZS1jbG9ja3MvdGVtcGxhdGUgYi9zcmNwa2dzL2dub21lLWNsb2Nrcy90ZW1wbGF0 ZQppbmRleCAzZTA0OWI0MmZiMS4uMzRiMTU5YWU2YTYgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25v bWUtY2xvY2tzL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtY2xvY2tzL3RlbXBsYXRlCkBA IC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ25vbWUtY2xvY2tzJwogcGtnbmFt ZT1nbm9tZS1jbG9ja3MKLXZlcnNpb249My4zNi4wCit2ZXJzaW9uPTMuMzYuMgogcmV2aXNpb249 MQogYnVpbGRfaGVscGVyPSJnaXIiCiBidWlsZF9zdHlsZT1tZXNvbgpAQCAtMTUsNCArMTUsNCBA QCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5z ZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL0Fw cHMvQ2xvY2tzIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9u JS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09NGM5NzhiMGM3Zjdi OWRhZWJkMjcyZDAxNzVmOGE1NDQxNWUyMDc4ZjEzNGY0OGFkZDVjZjI0MzYyZWVmNDljNgorY2hl Y2tzdW09ZjExYjFiMjJlYzFmMjg1ZTUwOTg4MzY4NGMwYjFmNGE1MTQ5NmFlYTEwNTU5MTIzOWU1 YjI2Zjg5ODY3NTFlNgoKRnJvbSBhY2RkMzEyMzMyMmU5OTViMGE0YTMzODYzOWUzOGFlN2M0YzAy YTVjIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxv b2suY29tPgpEYXRlOiBUdWUsIDE2IEp1biAyMDIwIDE5OjQ0OjM2ICswNjAwClN1YmplY3Q6IFtQ QVRDSCAxMS82NV0gZ25vbWUtZXB1Yi10aHVtYm5haWxlcjogdXBkYXRlIHRvIDEuNi4KCi0tLQog c3JjcGtncy9nbm9tZS1lcHViLXRodW1ibmFpbGVyL3RlbXBsYXRlIHwgNiArKystLS0KIDEgZmls ZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEv c3JjcGtncy9nbm9tZS1lcHViLXRodW1ibmFpbGVyL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1l cHViLXRodW1ibmFpbGVyL3RlbXBsYXRlCmluZGV4IGIxNmU3MDU0NzVmLi5kNjdiNzdmMWU0MyAx MDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1lcHViLXRodW1ibmFpbGVyL3RlbXBsYXRlCisrKyBi L3NyY3BrZ3MvZ25vbWUtZXB1Yi10aHVtYm5haWxlci90ZW1wbGF0ZQpAQCAtMSwxMyArMSwxMyBA QAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ25vbWUtZXB1Yi10aHVtYm5haWxlcicKIHBrZ25hbWU9 Z25vbWUtZXB1Yi10aHVtYm5haWxlcgotdmVyc2lvbj0xLjUKK3ZlcnNpb249MS42CiByZXZpc2lv bj0xCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBob3N0bWFrZWRlcGVuZHM9InBrZy1jb25m aWciCiBtYWtlZGVwZW5kcz0iZ2RrLXBpeGJ1Zi1kZXZlbCBsaWJhcmNoaXZlLWRldmVsIGxpYnht bDItZGV2ZWwiCiBzaG9ydF9kZXNjPSJUaHVtYm5haWxlciBmb3IgRVB1YiBhbmQgTU9CSSBib29r cyIKIG1haW50YWluZXI9IkFsaWYgUmFjaG1hd2FkaSA8YXJjaEBzdWJvc2l0by5jb20+IgotbGlj ZW5zZT0iR1BMLTMiCitsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBz Oi8vZ2l0Lmdub21lLm9yZy9icm93c2UvZ25vbWUtZXB1Yi10aHVtYm5haWxlciIKIGRpc3RmaWxl cz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbn0vJHtwa2duYW1lfS0ke3ZlcnNp b259LnRhci54eiIKLWNoZWNrc3VtPTMwODIxMGY1ODAwMjE5ZjY0Y2FlNDgyOGU1OWJiOGU2ZTRj NTNiODg4MDQ4Y2Y0ODcyMjFhZWI0MzM3ZDc5MWEKK2NoZWNrc3VtPWI1MDI0MjBkOWIwMmVhMGIw ZmM3OTg2ZWY1YTA5MWExMmIyMjg2YmUxNGZlZDllNDc1OTRmZTlmYTBjNTg5OGUKCkZyb20gYTY1 MzE0ZWJmZTc4YzFlM2RhNDI4OTQ2MGVkM2VjMjgwZjIyMTY1YyBNb24gU2VwIDE3IDAwOjAwOjAw IDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCAxNiBK dW4gMjAyMCAxOTo0NDo0NCArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMTIvNjVdIGdub21lLXRlcm1p bmFsOiB1cGRhdGUgdG8gMy4zNi4yLgoKLS0tCiBzcmNwa2dzL2dub21lLXRlcm1pbmFsL3RlbXBs YXRlIHwgNiArKystLS0KIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRp b25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS10ZXJtaW5hbC90ZW1wbGF0ZSBiL3Ny Y3BrZ3MvZ25vbWUtdGVybWluYWwvdGVtcGxhdGUKaW5kZXggYmYzZDViY2RkNDIuLjIyZGJjMTFi YWRhIDEwMDY0NAotLS0gYS9zcmNwa2dzL2dub21lLXRlcm1pbmFsL3RlbXBsYXRlCisrKyBiL3Ny Y3BrZ3MvZ25vbWUtdGVybWluYWwvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRl IGZpbGUgZm9yICdnbm9tZS10ZXJtaW5hbCcKIHBrZ25hbWU9Z25vbWUtdGVybWluYWwKLXZlcnNp b249My4zNi4xLjEKK3ZlcnNpb249My4zNi4yCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1nbnUt Y29uZmlndXJlCiBjb25maWd1cmVfYXJncz0iLS1kaXNhYmxlLXN0YXRpYyAtLXdpdGgtbmF1dGls dXMtZXh0ZW5zaW9uIgpAQCAtMTMsOCArMTMsOCBAQCBzaG9ydF9kZXNjPSJHTk9NRSB0ZXJtaW5h bCBlbXVsYXRvciBhcHBsaWNhdGlvbiIKIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hA dm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyLCBHRkRMLTEuMy1vbmx5 IgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcvQXBwcy9UZXJtaW5hbCIKLWRpc3Rm aWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbjowOjR9LyR7cGtnbmFtZX0t JHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT1mM2Q3MDhhMWU3NmQ3N2MxYzg1YjEyNmY2ZTAw MzIyMGExNWQ0YTQ2YTUwZmQ4MDcwZTFhM2FhYmU2NzhhMzc2CitkaXN0ZmlsZXM9IiR7R05PTUVf U0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIu eHoiCitjaGVja3N1bT00MWQxYjZhM2RjOTdjMDY2ZTI5NGFjZGI3ZjM2OTMxZTgxNjY4NjM4ZGNj OTJmZmEyNWJjYTNkZGViYWNkZjQ2CiBsaWIzMmRpc2FibGVkPXllcwogCiBpZiBbICIkQ1JPU1Nf QlVJTEQiIF07IHRoZW4KCkZyb20gN2FhYzczZTcxMTUyN2ViZWEyZWVjNDI1YmYxZDhlNGMzYjNl MzY0NyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRs b29rLmNvbT4KRGF0ZTogVHVlLCAxNiBKdW4gMjAyMCAxOTo0NDo1MiArMDYwMApTdWJqZWN0OiBb UEFUQ0ggMTMvNjVdIGdub21lLXBvZGNhc3RzOiB1cGRhdGUgdG8gMC40LjcuCgotLS0KIC4uLi9n 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 cm9tIDk3YjE5ZDg4MzQzOGI2ODg0ODgyMDZkZDM3YmNjY2MyODYyMTIyODAgTW9uIFNlcCAxNyAw MDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFR1 ZSwgMTYgSnVuIDIwMjAgMTk6NDU6MDEgKzA2MDAKU3ViamVjdDogW1BBVENIIDE0LzY1XSBnbm9t 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 IiBjaGVlc2UiCiBmaQoKRnJvbSAwMDlhNmJmNzc3MWM2MzBkMDk3NzYzNjc2MTAwMGI2ZDc5MDk4 Yzc1IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxv b2suY29tPgpEYXRlOiBUdWUsIDE2IEp1biAyMDIwIDE5OjQ1OjA4ICswNjAwClN1YmplY3Q6IFtQ QVRDSCAxNS82NV0gZ25vbWUtc2V0dGluZ3MtZGFlbW9uOiB1cGRhdGUgdG8gMy4zNi4xLgoKQWRk 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 cG9sa2l0IgoKRnJvbSBkZDU4NjliZWJiOWNiMDk3ZWU5YzEwOTgwMjNhNTYxMWExOTFkMDc3IE1v biBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29t PgpEYXRlOiBUdWUsIDE2IEp1biAyMDIwIDE5OjQ1OjI3ICswNjAwClN1YmplY3Q6IFtQQVRDSCAx Ni82NV0gZ25vbWUtdXNlci1kb2NzOiB1cGRhdGUgdG8gMy4zNi4yLgoKLS0tCiBzcmNwa2dzL2du b21lLXVzZXItZG9jcy90ZW1wbGF0ZSB8IDggKysrKy0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA0IGlu c2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS11 c2VyLWRvY3MvdGVtcGxhdGUgYi9zcmNwa2dzL2dub21lLXVzZXItZG9jcy90ZW1wbGF0ZQppbmRl eCA0Y2I1NTM5NmUzNy4uY2E5OTMzNDZlM2EgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtdXNl ci1kb2NzL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtdXNlci1kb2NzL3RlbXBsYXRlCkBA IC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ25vbWUtdXNlci1kb2NzJwogcGtn bmFtZT1nbm9tZS11c2VyLWRvY3MKLXZlcnNpb249My4zNC4wCit2ZXJzaW9uPTMuMzYuMgogcmV2 aXNpb249MQogYXJjaHM9bm9hcmNoCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCkBAIC0xMCw3 ICsxMCw3IEBAIGRlcGVuZHM9InllbHAiCiBzaG9ydF9kZXNjPSJVc2VyIGRvY3VtZW50YXRpb24g Zm9yIEdOT01FIgogbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3Jn PiIKIGxpY2Vuc2U9IkNDLUJZLTMuMCIKLWhvbWVwYWdlPSJodHRwczovL2dpdGh1Yi5jb20vR05P TUUvZ25vbWUtdXNlci1kb2NzIgotI2NoYW5nZWxvZz0iaHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNv bnRlbnQuY29tL0dOT01FL2dub21lLXVzZXItZG9jcy9tYXN0ZXIvTkVXUyIKK2hvbWVwYWdlPSJo dHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtdXNlci1kb2NzIgorY2hhbmdlbG9n PSJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtdXNlci1kb2NzLy0vcmF3LzMu MzYuMi9ORVdTIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9u JS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09OGY5OTA3ZmYxNWZm Zjk3ZGE3NWVjZTY0NWNjODY3NjY3MDNhYzU0ZDcxNmQyNTU2M2JhNjdmZmVkMWFmMjRlZAorY2hl Y2tzdW09MTk4ZmU0YzgzNjc3NWE1ZGMyNTQzYTZhNTIwZGZiMGFjNWJmMjkyY2RjYjM1OGE1N2M4 NmYzNWY3MDVlOTk1OAoKRnJvbSAzMTdiNGViNDAzZjBjODM0ZDhjNzcxYmZmMTQ5ODQ5OWM3NjYx MTVmIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxv b2suY29tPgpEYXRlOiBUdWUsIDE2IEp1biAyMDIwIDE5OjQ1OjM2ICswNjAwClN1YmplY3Q6IFtQ QVRDSCAxNy82NV0gZ25vbWUtaW5pdGlhbC1zZXR1cDogdXBkYXRlIHRvIDMuMzYuMy4KCi0tLQog c3JjcGtncy9nbm9tZS1pbml0aWFsLXNldHVwL3RlbXBsYXRlIHwgMTAgKysrKystLS0tLQogMSBm aWxlIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQg YS9zcmNwa2dzL2dub21lLWluaXRpYWwtc2V0dXAvdGVtcGxhdGUgYi9zcmNwa2dzL2dub21lLWlu aXRpYWwtc2V0dXAvdGVtcGxhdGUKaW5kZXggYWJhNWEwOTRjMjguLmNhYTMzYzI2OTVlIDEwMDY0 NAotLS0gYS9zcmNwa2dzL2dub21lLWluaXRpYWwtc2V0dXAvdGVtcGxhdGUKKysrIGIvc3JjcGtn cy9nbm9tZS1pbml0aWFsLXNldHVwL3RlbXBsYXRlCkBAIC0xLDEwICsxLDEwIEBACiAjIFRlbXBs YXRlIGZpbGUgZm9yICdnbm9tZS1pbml0aWFsLXNldHVwJwogcGtnbmFtZT1nbm9tZS1pbml0aWFs LXNldHVwCi12ZXJzaW9uPTMuMzQuMQotcmV2aXNpb249MgordmVyc2lvbj0zLjM2LjMKK3Jldmlz aW9uPTEKIGJ1aWxkX3N0eWxlPW1lc29uCi1jb25maWd1cmVfYXJncz0iLURzb2Z0d2FyZS1zb3Vy Y2VzPWRpc2FibGVkIC1Ec3lzdGVtZD1mYWxzZSIKLWhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZp ZyBnbGliLWRldmVsIgorY29uZmlndXJlX2FyZ3M9Ii1EcGFyZW50YWxfY29udHJvbHM9ZGlzYWJs ZWQgLURzeXN0ZW1kPWZhbHNlIgoraG9zdG1ha2VkZXBlbmRzPSJnZXR0ZXh0IHBrZy1jb25maWcg Z2xpYi1kZXZlbCIKIG1ha2VkZXBlbmRzPSJOZXR3b3JrTWFuYWdlci1kZXZlbCBhY2NvdW50c3Nl cnZpY2UtZGV2ZWwgbGliZ2xpYi1kZXZlbAogIGdub21lLWRlc2t0b3AtZGV2ZWwgY2hlZXNlLWRl dmVsIGxpYmd3ZWF0aGVyLWRldmVsIHdlYmtpdDJndGstZGV2ZWwKICBnbm9tZS1vbmxpbmUtYWNj b3VudHMtZGV2ZWwgZ2RtLWRldmVsIGxpYnB3cXVhbGl0eS1kZXZlbApAQCAtMTcsNCArMTcsNCBA QCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5z ZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL0Rl c2lnbi9PUy9Jbml0aWFsU2V0dXAiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1l fS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT1l NzFmMTBlZjZiNjMxY2Q5MmZmZGU3NzRlNDEzMGIzMmIyNDk0YjRkZjVlZjI4ODM3NWQ4YjE5NTdl ZWFiZmExCitjaGVja3N1bT1kOGE5MzNmOGM4MjJjYzI5M2NjMTBiNTMyNzc5Zjg1NjIzNDJhZTIy NzFiOTI5ODc5ZThmMTA4NDkxZjRjMjg1CgpGcm9tIDkyNDM2NDEwOGQ4YmMxYjY4MzQ5MTI4Njk3 OGNjYmQ5MGU5NGMzNjQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFi aWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFR1ZSwgMTYgSnVuIDIwMjAgMTk6NDU6NDMgKzA2MDAK U3ViamVjdDogW1BBVENIIDE4LzY1XSBldm9sdXRpb24tZGF0YS1zZXJ2ZXI6IHVwZGF0ZSB0byAz LjM2LjMuCgotLS0KIHNyY3BrZ3MvZXZvbHV0aW9uLWRhdGEtc2VydmVyL3RlbXBsYXRlIHwgNiAr KystLS0KIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpk aWZmIC0tZ2l0IGEvc3JjcGtncy9ldm9sdXRpb24tZGF0YS1zZXJ2ZXIvdGVtcGxhdGUgYi9zcmNw a2dzL2V2b2x1dGlvbi1kYXRhLXNlcnZlci90ZW1wbGF0ZQppbmRleCA0YWU4MjBiZTA2OC4uZWJm ODE0NWY4OGMgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZXZvbHV0aW9uLWRhdGEtc2VydmVyL3RlbXBs YXRlCisrKyBiL3NyY3BrZ3MvZXZvbHV0aW9uLWRhdGEtc2VydmVyL3RlbXBsYXRlCkBAIC0xLDcg KzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZXZvbHV0aW9uLWRhdGEtc2VydmVyJwogcGtn bmFtZT1ldm9sdXRpb24tZGF0YS1zZXJ2ZXIKLXZlcnNpb249My4zNi4xCi1yZXZpc2lvbj0yCit2 ZXJzaW9uPTMuMzYuMworcmV2aXNpb249MQogYnVpbGRfc3R5bGU9Y21ha2UKIGJ1aWxkX2hlbHBl cj1naXIKIGNvbmZpZ3VyZV9hcmdzPSItREVOQUJMRV9VT0E9T0ZGCkBAIC0xNyw3ICsxNyw3IEBA IGxpY2Vuc2U9IkxHUEwtMi4xLW9ubHkiCiBob21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21lLm9y Zy9BcHBzL0V2b2x1dGlvbiIKIGNoYW5nZWxvZz0iaHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNvbnRl bnQuY29tL0dOT01FL2V2b2x1dGlvbi1kYXRhLXNlcnZlci9nbm9tZS0zLTM2L05FV1MiCiBkaXN0 ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0t JHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT0xMzEyMmIyZWRkZGI5ODMwNjIwN2QyYTM1ZDVj Y2FlMjVhOTA3MDI3NjljYTBhMGI1MTY1M2I1OTg0OTg2Nzk2CitjaGVja3N1bT0xZjVmNDgxNzNk MGYyODgyMTlkNzNkNGYxOTNjYjkyMWFlNjMxOTMyYmE4NDAzMGYwNTc1MWM0MmJiMDAzZGIyCiAK IGJ1aWxkX29wdGlvbnM9ImdpciIKIGlmIFsgLXogIiRDUk9TU19CVUlMRCIgXTsgdGhlbgoKRnJv bSAxNThkY2ZjNzI5YWEyZjRlZmRkOTU3Y2ZmODI0MTNiZGYxMzY1NWE3IE1vbiBTZXAgMTcgMDA6 MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUdWUs IDE2IEp1biAyMDIwIDE5OjQ1OjU2ICswNjAwClN1YmplY3Q6IFtQQVRDSCAxOS82NV0gZXZvbHV0 aW9uOiB1cGRhdGUgdG8gMy4zNi4zLgoKLS0tCiBzcmNwa2dzL2V2b2x1dGlvbi90ZW1wbGF0ZSB8 IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkK CmRpZmYgLS1naXQgYS9zcmNwa2dzL2V2b2x1dGlvbi90ZW1wbGF0ZSBiL3NyY3BrZ3MvZXZvbHV0 aW9uL3RlbXBsYXRlCmluZGV4IDU2MGVkOTNkYTAyLi5kOTVjMDdlYjcyYyAxMDA2NDQKLS0tIGEv c3JjcGtncy9ldm9sdXRpb24vdGVtcGxhdGUKKysrIGIvc3JjcGtncy9ldm9sdXRpb24vdGVtcGxh dGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdldm9sdXRpb24nCiBwa2du YW1lPWV2b2x1dGlvbgotdmVyc2lvbj0zLjM2LjEKK3ZlcnNpb249My4zNi4zCiByZXZpc2lvbj0x CiBidWlsZF9zdHlsZT1jbWFrZQogY29uZmlndXJlX2FyZ3M9Ii1ERU5BQkxFX0FVVE9BUj1PRkYg LURFTkFCTEVfTElCQ1JZUFRVST1PRkYgLURFTkFCTEVfR1RLU1BFTEw9T0ZGCkBAIC0xOSw3ICsx OSw3IEBAIGxpY2Vuc2U9IkxHUEwtMi4xLW9yLWxhdGVyLCBMR1BMLTMuMC1vci1sYXRlciwgR1BM LTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL0FwcHMvRXZv bHV0aW9uIgogY2hhbmdlbG9nPSJodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vR05P TUUvZXZvbHV0aW9uL2dub21lLTMtMzYvTkVXUyIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8k e3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNo ZWNrc3VtPTg3M2FjZjFkYmVjMzhlNjdlMTY5MDY0NjQ1YWMzYTliOWE5NDRiZDJiNjMzMTYxZGY2 ZTVmMDU3MDBlMzZjYjgKK2NoZWNrc3VtPTU0ZTE2Y2FhMjg2YzAyZDRmZTk0YjQzZTMzYWJmNWNk NmYzYTE1MDIxODFiYjhjZjU1N2FhZGM4ODZiNWNhMDMKIHNobGliX3Byb3ZpZGVzPSJsaWJldm9s dXRpb24tY2FsZW5kYXIuc28gbGliZXZvbHV0aW9uLXV0aWwuc28gbGliZW1haWwtZW5naW5lLnNv CiAgbGliZXZvbHV0aW9uLW1haWwuc28gbGliZXZvbHV0aW9uLXNoZWxsLnNvIgogCgpGcm9tIDMx ZmFkMTk1MmM1MTg2MzAwNDc2OWY5ZGM3ZjMxYmRiOWQ0MzA5MGMgTW9uIFNlcCAxNyAwMDowMDow MCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFR1ZSwgMTYg SnVuIDIwMjAgMTk6NDY6MDQgKzA2MDAKU3ViamVjdDogW1BBVENIIDIwLzY1XSBldm9sdXRpb24t ZXdzOiB1cGRhdGUgdG8gMy4zNi4zLgoKLS0tCiBzcmNwa2dzL2V2b2x1dGlvbi1ld3MvdGVtcGxh dGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25z KC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9ldm9sdXRpb24tZXdzL3RlbXBsYXRlIGIvc3JjcGtn cy9ldm9sdXRpb24tZXdzL3RlbXBsYXRlCmluZGV4IDRmZjgxMTY0NjZjLi4zOGZkNjJkMzllMSAx MDA2NDQKLS0tIGEvc3JjcGtncy9ldm9sdXRpb24tZXdzL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mv ZXZvbHV0aW9uLWV3cy90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBm b3IgJ2V2b2x1dGlvbi1ld3MnCiBwa2duYW1lPWV2b2x1dGlvbi1ld3MKLXZlcnNpb249My4zNi4x Cit2ZXJzaW9uPTMuMzYuMwogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9Y21ha2UKIGNvbmZpZ3Vy ZV9hcmdzPSItRExJQkVYRUNfSU5TVEFMTF9ESVI9L3Vzci9saWIvZXZvbHV0aW9uIgpAQCAtMTIs NCArMTIsNCBAQCBsaWNlbnNlPSJMR1BMLTIuMS1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczov L3dpa2kuZ25vbWUub3JnL0FwcHMvRXZvbHV0aW9uIgogY2hhbmdlbG9nPSJodHRwczovL3Jhdy5n aXRodWJ1c2VyY29udGVudC5jb20vR05PTUUvZXZvbHV0aW9uLWV3cy9nbm9tZS0zLTM2L05FV1Mi CiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtn bmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT1kMDg4M2M3ZDIyNzgyN2NjNWM0NDY4 YjdlMzFhM2VlMzcwYmNkN2Q0MWE0ZGJiOTUwYWI1ZGIzNmM5NTUxYWMxCitjaGVja3N1bT03YTk3 YTU5YjEwZjdhNDhhM2JjZjZkNDc2YzZhMmMwNjhlYzVjNDhjNTQ2YTQzMzgxMjY5MWI4MzAxNzUy ZDA0CgpGcm9tIDFhNTBiOTQyNmVmMjFiNTUxMjY4N2UzZDc5ZjExYTY4NDk2YWYxMmIgTW9uIFNl cCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRh dGU6IFR1ZSwgMTYgSnVuIDIwMjAgMTk6NDY6MTEgKzA2MDAKU3ViamVjdDogW1BBVENIIDIxLzY1 XSBhdGs6IHVwZGF0ZSB0byAyLjM2LjAuCgotLS0KIHNyY3BrZ3MvYXRrL3RlbXBsYXRlIHwgNiAr KystLS0KIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpk aWZmIC0tZ2l0IGEvc3JjcGtncy9hdGsvdGVtcGxhdGUgYi9zcmNwa2dzL2F0ay90ZW1wbGF0ZQpp bmRleCA3YzE0YjExNjU5OC4uY2EyMmQzNjYxOTggMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvYXRrL3Rl bXBsYXRlCisrKyBiL3NyY3BrZ3MvYXRrL3RlbXBsYXRlCkBAIC0xLDE4ICsxLDE4IEBACiAjIFRl bXBsYXRlIGZpbGUgZm9yICdhdGsnCiBwa2duYW1lPWF0awotdmVyc2lvbj0yLjM0LjEKK3ZlcnNp b249Mi4zNi4wCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1tZXNvbgogYnVpbGRfaGVscGVyPSJn aXIiCiBjb25maWd1cmVfYXJncz0iLURpbnRyb3NwZWN0aW9uPSQodm9wdF9pZiBnaXIgdHJ1ZSBm YWxzZSkiCi1ob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcgZ2xpYi1kZXZlbCIKK2hvc3RtYWtl ZGVwZW5kcz0iZ2V0dGV4dCBwa2ctY29uZmlnIGdsaWItZGV2ZWwiCiBtYWtlZGVwZW5kcz0ibGli Z2xpYi1kZXZlbCIKIHNob3J0X2Rlc2M9IlNldCBvZiBpbnRlcmZhY2VzIGZvciBhY2Nlc3NpYmls aXR5IgogbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxp Y2Vuc2U9IkxHUEwtMi4xLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vZGV2ZWxvcGVyLmdu b21lLm9yZy9hdGsvIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9L2F0ay8ke3ZlcnNpb24lLip9 L2F0ay0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPWQ0ZjBlM2IzZDIxMjY1ZmNmMmJjMzcx ZTExN2RhNTFjNDJlZGUxYTcxZjZkYjFjODM0ZTY5NzZiYjIwOTk3Y2IKK2NoZWNrc3VtPWZiNzYy NDdlMzY5NDAyYmUyM2YxZjVjNjVkMzhhOTYzOWMxMTY0ZDkzNGU0MGY2YTljZjNjOWU5NmI2NTI3 ODgKIAogIyBQYWNrYWdlIGJ1aWxkIG9wdGlvbnMKIGJ1aWxkX29wdGlvbnM9ImdpciIKCkZyb20g OTRjZTY4MjQwOGMzYmE1ZDVhZTdjOWY2MGE2ZWQ5ZWM3MTYzZDA3NCBNb24gU2VwIDE3IDAwOjAw OjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCAx NiBKdW4gMjAyMCAxOTo0NjoxOSArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMjIvNjVdIGF0LXNwaTIt Y29yZTogdXBkYXRlIHRvIDIuMzYuMC4KCi0tLQogc3JjcGtncy9hdC1zcGkyLWNvcmUvdGVtcGxh dGUgfCA5ICsrKystLS0tLQogMSBmaWxlIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgNSBkZWxl dGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2F0LXNwaTItY29yZS90ZW1wbGF0ZSBiL3Ny Y3BrZ3MvYXQtc3BpMi1jb3JlL3RlbXBsYXRlCmluZGV4IGIzODNmZTk5YmVkLi5mYjc5OWFmN2U1 MiAxMDA2NDQKLS0tIGEvc3JjcGtncy9hdC1zcGkyLWNvcmUvdGVtcGxhdGUKKysrIGIvc3JjcGtn cy9hdC1zcGkyLWNvcmUvdGVtcGxhdGUKQEAgLTEsMTggKzEsMTcgQEAKICMgVGVtcGxhdGUgZmls ZSBmb3IgJ2F0LXNwaTItY29yZScKIHBrZ25hbWU9YXQtc3BpMi1jb3JlCi12ZXJzaW9uPTIuMzQu MAordmVyc2lvbj0yLjM2LjAKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPW1lc29uCiBidWlsZF9o ZWxwZXI9ImdpciIKLWhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyBkYnVzIGdsaWItZGV2ZWwi Ci1tYWtlZGVwZW5kcz0ibGliZ2xpYi1kZXZlbCBsaWJYZXh0LWRldmVsIGxpYlNNLWRldmVsIGxp Ylh0c3QtZGV2ZWwKLSBsaWJYZXZpZS1kZXZlbCBkYnVzLWRldmVsIgoraG9zdG1ha2VkZXBlbmRz PSJnZXR0ZXh0IHBrZy1jb25maWcgZGJ1cyBnbGliLWRldmVsIgorbWFrZWRlcGVuZHM9ImxpYmds aWItZGV2ZWwgbGliU00tZGV2ZWwgbGliWHRzdC1kZXZlbCBkYnVzLWRldmVsIgogc2hvcnRfZGVz Yz0iQXNzaXN0aXZlIFRlY2hub2xvZ3kgU2VydmljZSBQcm92aWRlciBJbnRlcmZhY2UiCiBtYWlu dGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BM LTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUv YXQtc3BpMi1jb3JlIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJz aW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09ZDYyOWNkYmQ2 NzRlNTM5Zjg5MTIwMjg1MTJhZjU4Mzk5MDkzOGM3YjQ5ZTI1MTg0YzEyNmIwMDEyMWVmMTFjNgor Y2hlY2tzdW09ODhkYTU3ZGUwYTdlM2M2MGJjMzQxYTk3NGE4MGZkYmEwOTE2MTJkYjM1NDdjNDEw ZDZkZWFiMDM5Y2E1YzA1YQogCiAjIFBhY2thZ2UgYnVpbGQgb3B0aW9ucwogYnVpbGRfb3B0aW9u cz0iZ2lyIgoKRnJvbSAzMjhhZjQyMTVhZjZiNjBhNjBjNmZjYTkzMTEwY2RhNGVhOGMyMWYyIE1v biBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29t PgpEYXRlOiBUdWUsIDE2IEp1biAyMDIwIDE5OjQ2OjI2ICswNjAwClN1YmplY3Q6IFtQQVRDSCAy My82NV0gYXQtc3BpMi1hdGs6IHVwZGF0ZSB0byAyLjM0LjIuCgotLS0KIHNyY3BrZ3MvYXQtc3Bp Mi1hdGsvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyks IDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9hdC1zcGkyLWF0ay90ZW1wbGF0 ZSBiL3NyY3BrZ3MvYXQtc3BpMi1hdGsvdGVtcGxhdGUKaW5kZXggNDM1MWI3OTk2ZjMuLmFhN2I4 ODM5YzlmIDEwMDY0NAotLS0gYS9zcmNwa2dzL2F0LXNwaTItYXRrL3RlbXBsYXRlCisrKyBiL3Ny Y3BrZ3MvYXQtc3BpMi1hdGsvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZp bGUgZm9yICdhdC1zcGkyLWF0aycKIHBrZ25hbWU9YXQtc3BpMi1hdGsKLXZlcnNpb249Mi4zNC4x Cit2ZXJzaW9uPTIuMzQuMgogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9bWVzb24KIGhvc3RtYWtl ZGVwZW5kcz0ibGlidG9vbCBwa2ctY29uZmlnIGludGx0b29sIGdsaWItZGV2ZWwiCkBAIC0xMCw3 ICsxMCw3IEBAIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4i CiBsaWNlbnNlPSJMR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwOi8vd3d3Lmdub21l Lm9yZyIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0v JHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTc3NmRmOTMwNzQ4ZmRlNzFj MTI4YmU2YzM2NmE5ODdiOThiNmVlNjZkNTA4ZWQ5YzhkYjIzNTViZjRiOWNjMTYKK2NoZWNrc3Vt PTkwMTMyM2NlZTBlZWYwNWMwMWVjNGRlZTA2YzcwMWFlZWNhODFhMzE0YTdkNjAyMTZmYTM2MzAw NWUyN2Y0ZjAKIAogYXQtc3BpMi1hdGstZGV2ZWxfcGFja2FnZSgpIHsKIAlkZXBlbmRzPSIke21h a2VkZXBlbmRzfSAke3NvdXJjZXBrZ30+PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0iCgpGcm9tIDA0 Zjk3NGY5MGViZjhkZDUyNjI5MzExMmZkY2I5MDMzMjBiNjk5NzUgTW9uIFNlcCAxNyAwMDowMDow MCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFR1ZSwgMTYg SnVuIDIwMjAgMTk6NDY6NDEgKzA2MDAKU3ViamVjdDogW1BBVENIIDI0LzY1XSBweXRob24tYXRz cGk6IHVwZGF0ZSB0byAyLjM2LjAuCgotLS0KIHNyY3BrZ3MvcHl0aG9uLWF0c3BpL3RlbXBsYXRl IHwgNiArKystLS0KIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25z KC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9weXRob24tYXRzcGkvdGVtcGxhdGUgYi9zcmNwa2dz L3B5dGhvbi1hdHNwaS90ZW1wbGF0ZQppbmRleCAwMTQxZDk3Zjg1ZC4uNDg4MTA1NmFkNzYgMTAw NjQ0Ci0tLSBhL3NyY3BrZ3MvcHl0aG9uLWF0c3BpL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvcHl0 aG9uLWF0c3BpL3RlbXBsYXRlCkBAIC0xLDggKzEsOCBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAn cHl0aG9uLWF0c3BpJwogIyBLZWVwIHB5dGhvbjMtYXRzcGkgaW4gc3luYwogcGtnbmFtZT1weXRo b24tYXRzcGkKLXZlcnNpb249Mi4zMi4xCi1yZXZpc2lvbj00Cit2ZXJzaW9uPTIuMzYuMAorcmV2 aXNpb249MQogYXJjaHM9bm9hcmNoCiB3cmtzcmM9InB5YXRzcGktJHt2ZXJzaW9ufSIKIGJ1aWxk X3N0eWxlPWdudS1jb25maWd1cmUKQEAgLTE0LDQgKzE0LDQgQEAgbWFpbnRhaW5lcj0iRW5ubyBC b2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIi CiBob21lcGFnZT0iaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL3B5YXRzcGkyIgogZGlz dGZpbGVzPSIke0dOT01FX1NJVEV9L3B5YXRzcGkvJHt2ZXJzaW9uJS4qfS9weWF0c3BpLSR7dmVy c2lvbn0udGFyLnh6IgotY2hlY2tzdW09ODQ5NTRhNWJiZWFjYzgzNjQzZjA1Nzc4ZDhiZWFmY2Fi ODIwOGUxMWIzOWIyNDYzN2I0YzRkZDFmODYyMDM4OQorY2hlY2tzdW09NTEzNmMxYmY5MTllMTAx ZDRlYzkwMWEyNzZlODZlYTYwZTU4ODFhOGZmNzc2M2UzNTZmMTk4NDBlNWZmZTFkZAoKRnJvbSAx Y2ZmYjQyMjc2MWJhOGFjMGIyYjVkN2E0OWEzOWFmN2VlY2JiMGRmIE1vbiBTZXAgMTcgMDA6MDA6 MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUdWUsIDE2 IEp1biAyMDIwIDE5OjQ2OjQ4ICswNjAwClN1YmplY3Q6IFtQQVRDSCAyNS82NV0gcHl0aG9uMy1h dHNwaTogdXBkYXRlIHRvIDIuMzYuMC4KCi0tLQogc3JjcGtncy9weXRob24zLWF0c3BpL3RlbXBs YXRlIHwgNiArKystLS0KIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRp b25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9weXRob24zLWF0c3BpL3RlbXBsYXRlIGIvc3Jj cGtncy9weXRob24zLWF0c3BpL3RlbXBsYXRlCmluZGV4IGEzM2EzNzRmZTE4Li5iMjM2MDgyMmFj ZiAxMDA2NDQKLS0tIGEvc3JjcGtncy9weXRob24zLWF0c3BpL3RlbXBsYXRlCisrKyBiL3NyY3Br Z3MvcHl0aG9uMy1hdHNwaS90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmls ZSBmb3IgJ3B5dGhvbjMtYXRzcGknCiBwa2duYW1lPXB5dGhvbjMtYXRzcGkKLXZlcnNpb249Mi4z Mi4xCi1yZXZpc2lvbj00Cit2ZXJzaW9uPTIuMzYuMAorcmV2aXNpb249MQogYXJjaHM9bm9hcmNo CiB3cmtzcmM9InB5YXRzcGktJHt2ZXJzaW9ufSIKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUK QEAgLTEzLDQgKzEzLDQgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGlu dXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly9n aXRsYWIuZ25vbWUub3JnL0dOT01FL3B5YXRzcGkyIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9 L3B5YXRzcGkvJHt2ZXJzaW9uJS4qfS9weWF0c3BpLSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tz dW09ODQ5NTRhNWJiZWFjYzgzNjQzZjA1Nzc4ZDhiZWFmY2FiODIwOGUxMWIzOWIyNDYzN2I0YzRk ZDFmODYyMDM4OQorY2hlY2tzdW09NTEzNmMxYmY5MTllMTAxZDRlYzkwMWEyNzZlODZlYTYwZTU4 ODFhOGZmNzc2M2UzNTZmMTk4NDBlNWZmZTFkZAoKRnJvbSA5NDAyYmRlNTAxMWI3YTVkY2U5ODIz ZDQwOWQ4MmFkNTUwNzFlNzAzIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8 bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUdWUsIDE2IEp1biAyMDIwIDE5OjQ2OjU2ICsw NjAwClN1YmplY3Q6IFtQQVRDSCAyNi82NV0gZm9sa3M6IHVwZGF0ZSB0byAwLjE0LjAuCgotLS0K IGNvbW1vbi9zaGxpYnMgICAgICAgICAgfCAgNyArKysrLS0tCiBzcmNwa2dzL2ZvbGtzL3RlbXBs YXRlIHwgMTIgKysrKysrLS0tLS0tCiAyIGZpbGVzIGNoYW5nZWQsIDEwIGluc2VydGlvbnMoKyks IDkgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvY29tbW9uL3NobGlicyBiL2NvbW1vbi9zaGxp YnMKaW5kZXggMDQ4Y2NlOGM5YmIuLjE5NmViM2VhZGZjIDEwMDY0NAotLS0gYS9jb21tb24vc2hs 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 dmVyc2lvbn1fJHtyZXZpc2lvbn0iCgpGcm9tIGE3OWQ3NmVkZmNkNTc1Nzc1YmZmZDU3YjY3ZWNh ZDY3Zjg1OTZiNWIgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQu MjVAb3V0bG9vay5jb20+CkRhdGU6IFR1ZSwgMTYgSnVuIDIwMjAgMTk6NDc6MDMgKzA2MDAKU3Vi amVjdDogW1BBVENIIDI3LzY1XSBmaWxlLXJvbGxlcjogdXBkYXRlIHRvIDMuMzYuMi4KCi0tLQog c3JjcGtncy9maWxlLXJvbGxlci90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIg aW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2ZpbGUt cm9sbGVyL3RlbXBsYXRlIGIvc3JjcGtncy9maWxlLXJvbGxlci90ZW1wbGF0ZQppbmRleCA1ZmI3 NmQ5NzMwNy4uNmEwYzI4MGYwZDUgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZmlsZS1yb2xsZXIvdGVt cGxhdGUKKysrIGIvc3JjcGtncy9maWxlLXJvbGxlci90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAK ICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2ZpbGUtcm9sbGVyJwogcGtnbmFtZT1maWxlLXJvbGxlcgot dmVyc2lvbj0zLjM2LjAKK3ZlcnNpb249My4zNi4yCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1t ZXNvbgogaG9zdG1ha2VkZXBlbmRzPSJnZXR0ZXh0IGdsaWItZGV2ZWwgaXRzdG9vbCBwa2ctY29u ZmlnIgpAQCAtMTIsNCArMTIsNCBAQCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZv aWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRw czovL3dpa2kuZ25vbWUub3JnL0FwcHMvRmlsZVJvbGxlciIKIGRpc3RmaWxlcz0iJHtHTk9NRV9T SVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54 eiIKLWNoZWNrc3VtPWI5MTQ0ZGU4ZjUzNmY1ODNlYzI5ZDcwM2MyYzE3MGJmMmQwMGM2YzE2NmNk NWUzZjdlZmFiZGE1NTFmMTA0NzgKK2NoZWNrc3VtPTI2OGY3ZmRhZDhkMmE3OGRmZWQ1ZTgyZWI4 NzEwYmFkMzg5YzMxMWI3MjA2NjZkNmYwN2EwNGVkNTEwNTZiZDIKCkZyb20gMGViODAwZWMwYTIz Mjc0MDk3OWFiNDhiZThlY2ZjMjY0MzljMTdhMSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJv bTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCAxNiBKdW4gMjAyMCAx OTo0NzoxMCArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMjgvNjVdIGRjb25mLWVkaXRvcjogdXBkYXRl IHRvIDMuMzYuMi4KCi0tLQogc3JjcGtncy9kY29uZi1lZGl0b3IvdGVtcGxhdGUgfCA2ICsrKy0t LQogMSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKCmRpZmYg LS1naXQgYS9zcmNwa2dzL2Rjb25mLWVkaXRvci90ZW1wbGF0ZSBiL3NyY3BrZ3MvZGNvbmYtZWRp dG9yL3RlbXBsYXRlCmluZGV4IGRlMjUwYmJjOGE5Li4xMGFiOGQ3OTI2NCAxMDA2NDQKLS0tIGEv c3JjcGtncy9kY29uZi1lZGl0b3IvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9kY29uZi1lZGl0b3Iv dGVtcGxhdGUKQEAgLTEsMTMgKzEsMTMgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2Rjb25mLWVk aXRvcicKIHBrZ25hbWU9ZGNvbmYtZWRpdG9yCi12ZXJzaW9uPTMuMzYuMAordmVyc2lvbj0zLjM2 LjIKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPW1lc29uCi1ob3N0bWFrZWRlcGVuZHM9ImRvY2Jv b2steHNsIGdsaWItZGV2ZWwgbGlieHNsdCBwa2ctY29uZmlnIHZhbGEiCitob3N0bWFrZWRlcGVu ZHM9ImdldHRleHQgZG9jYm9vay14c2wgZ2xpYi1kZXZlbCBsaWJ4c2x0IHBrZy1jb25maWcgdmFs YSIKIG1ha2VkZXBlbmRzPSJkY29uZi1kZXZlbCBndGsrMy1kZXZlbCIKIHNob3J0X2Rlc2M9Ikxv dy1sZXZlbCBjb25maWd1cmF0aW9uIHN5c3RlbSAtIEdUSysgZWRpdG9yIgogbWFpbnRhaW5lcj0i RW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0zLjAtb3It bGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9Qcm9qZWN0cy9kY29uZiIK IGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2du YW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTcyZWVkMDU2NzA5MTdmOGU0MzIwMGU0 MGNjYzZiZTYwMjExZjBhODdiMDE3NTM0ZWFjMWZkNmM3MTczYTA2OTMKK2NoZWNrc3VtPWVkY2Vj ODg2N2YwMTg1ODkxMjVmMTc3NDA3NzYwYzY0MmJiYmI1MmZlNTEyMmRhYWM1OTA1MjIzZDZiM2Ux YzcKCkZyb20gYzg1NDU2MGQyODU3ZDgwOWI5NGIwMTY1ZjZiNWU0ODVlMjI5ZGNkMiBNb24gU2Vw IDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0 ZTogVHVlLCAxNiBKdW4gMjAyMCAxOTo0NzoxNiArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMjkvNjVd IHRyYWNrZXI6IHVwZGF0ZSB0byAyLjMuNC4KCi0tLQogc3JjcGtncy90cmFja2VyL3RlbXBsYXRl IHwgOCArKysrLS0tLQogMSBmaWxlIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlv bnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3RyYWNrZXIvdGVtcGxhdGUgYi9zcmNwa2dzL3Ry YWNrZXIvdGVtcGxhdGUKaW5kZXggMzcwNzRjYjM0OGQuLmU4MTRmNzdjNzExIDEwMDY0NAotLS0g YS9zcmNwa2dzL3RyYWNrZXIvdGVtcGxhdGUKKysrIGIvc3JjcGtncy90cmFja2VyL3RlbXBsYXRl CkBAIC0xLDEzICsxLDEzIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICd0cmFja2VyJwogcGtnbmFt ZT10cmFja2VyCi12ZXJzaW9uPTIuMy4xCi1yZXZpc2lvbj0yCit2ZXJzaW9uPTIuMy40CityZXZp c2lvbj0xCiBidWlsZF9zdHlsZT1tZXNvbgogYnVpbGRfaGVscGVyPSJnaXIiCiBjb25maWd1cmVf YXJncz0iLURkb2NzPWZhbHNlIC1EZnRzPXRydWUgLURmdW5jdGlvbmFsX3Rlc3RzPWZhbHNlCiAg LURqb3VybmFsPXRydWUgLURtYW49dHJ1ZSAtRG5ldHdvcmtfbWFuYWdlcj1lbmFibGVkIC1Ec3Rl bW1lcj1kaXNhYmxlZAogIC1Ec3lzdGVtZF91c2VyX3NlcnZpY2VzPW5vIgotaG9zdG1ha2VkZXBl bmRzPSJwa2ctY29uZmlnIGdsaWItZGV2ZWwgdmFsYSIKK2hvc3RtYWtlZGVwZW5kcz0iZ2V0dGV4 dCBwa2ctY29uZmlnIGdsaWItZGV2ZWwgdmFsYSIKIG1ha2VkZXBlbmRzPSJkYnVzLWRldmVsIGxp YmdsaWItZGV2ZWwgaWN1LWRldmVsIGpzb24tZ2xpYi1kZXZlbAogIGxpYnNvdXAtZGV2ZWwgbGli eG1sMi1kZXZlbCBzcWxpdGUtZGV2ZWwgTmV0d29ya01hbmFnZXItZGV2ZWwKICBiYXNoLWNvbXBs ZXRpb24iCkBAIC0xNiw3ICsxNiw3IEBAIG1haW50YWluZXI9Ik9ycGhhbmVkIDxvcnBoYW5Adm9p ZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBz Oi8vbGl2ZS5nbm9tZS5vcmcvVHJhY2tlciIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS90cmFj a2VyLyR7dmVyc2lvbiUuKn0vdHJhY2tlci0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPWI2 NzQ4NzI2ZTQ2NWFkMmY0ZDk5MTU2MDYzNGIxZmQwZGY4ODQxZjNkOTgxYjNiODM3YzQxNjJhYmVk ZjA4YTEKK2NoZWNrc3VtPTU3Nzk1MjI0NGFiOTc3Yzc4YjBiODhlMmY2M2M0MTk3ZWFiYTE2ZTRk NjZiZmY2OTJiN2Y1ODk5M2UwNjUxNmQKIAogaWYgWyAiJENST1NTX0JVSUxEIiBdOyB0aGVuCiAJ aG9zdG1ha2VkZXBlbmRzKz0iIGRidXMiCgpGcm9tIDM2YTA2N2QxNDJkZjY5MWUwOTJkNDU0MDli YjcwNDU5YTZjM2ZmNTEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFi aWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFR1ZSwgMTYgSnVuIDIwMjAgMTk6NDc6MjMgKzA2MDAK U3ViamVjdDogW1BBVENIIDMwLzY1XSBvcmNhOiB1cGRhdGUgdG8gMy4zNi4yLgoKLS0tCiBzcmNw a2dzL29yY2EvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMo KyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9vcmNhL3RlbXBsYXRlIGIv c3JjcGtncy9vcmNhL3RlbXBsYXRlCmluZGV4IGY3MDIwMmU2ZDc2Li44YTcwYzg0OWY2ZCAxMDA2 NDQKLS0tIGEvc3JjcGtncy9vcmNhL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mvb3JjYS90ZW1wbGF0 ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ29yY2EnCiBwa2duYW1lPW9y Y2EKLXZlcnNpb249My4zNi4xCit2ZXJzaW9uPTMuMzYuMgogcmV2aXNpb249MQogYXJjaHM9bm9h cmNoCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCkBAIC0xMyw3ICsxMyw3IEBAIG1haW50YWlu ZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4w LW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcvUHJvamVjdHMvT3Jj YSIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtw a2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPWMxYWM2NDhiNmJlMzE0ODhjMjZm Zjk1OTExNDI4Nzg2OWRmOWNlM2NhMjE5OTllNDBkZWQ4Nzc0MWM5ODgzMWYKK2NoZWNrc3VtPWNm MDA1NWI3NmYyMTU5YzMzYzlkOWY3ZGViYjc2OTQzNWMyMDFiYmZhNmRjZjBmMDFmZGM1OGU5Mjk0 N2JmNDMKIAogaWYgWyAiJENST1NTX0JVSUxEIiBdOyB0aGVuCiAJaG9zdG1ha2VkZXBlbmRzKz0i IHB5dGhvbjMtZ29iamVjdC1kZXZlbCIKCkZyb20gMDFlNjZmOWVkMWM1MWRhMDI1MTk3MTdkZTY4 NDBmNzZmMzdmNzU5NiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJp ZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCAxNiBKdW4gMjAyMCAxOTo0NzozOSArMDYwMApT dWJqZWN0OiBbUEFUQ0ggMzEvNjVdIGdub21lLWdldHRpbmctc3RhcnRlZC1kb2NzOiB1cGRhdGUg dG8gMy4zNi4yLgoKLS0tCiBzcmNwa2dzL2dub21lLWdldHRpbmctc3RhcnRlZC1kb2NzL3RlbXBs YXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9u cygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtZ2V0dGluZy1zdGFydGVkLWRvY3MvdGVt cGxhdGUgYi9zcmNwa2dzL2dub21lLWdldHRpbmctc3RhcnRlZC1kb2NzL3RlbXBsYXRlCmluZGV4 IDViZWM5MzQ5MGJhLi5iZWQ5YjY5NjE2MiAxMDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1nZXR0 aW5nLXN0YXJ0ZWQtZG9jcy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dub21lLWdldHRpbmctc3Rh cnRlZC1kb2NzL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAn Z25vbWUtZ2V0dGluZy1zdGFydGVkLWRvY3MnCiBwa2duYW1lPWdub21lLWdldHRpbmctc3RhcnRl ZC1kb2NzCi12ZXJzaW9uPTMuMzQuMAordmVyc2lvbj0zLjM2LjIKIHJldmlzaW9uPTEKIGFyY2hz PW5vYXJjaAogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQpAQCAtMTEsNCArMTEsNCBAQCBsaWNl bnNlPSJDQy1CWS1TQS0zLjAiCiBob21lcGFnZT0iaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dO T01FL2dub21lLWdldHRpbmctc3RhcnRlZC1kb2NzIgogI2NoYW5nZWxvZz0iaHR0cHM6Ly9naXRs YWIuZ25vbWUub3JnL0dOT01FL2dub21lLWdldHRpbmctc3RhcnRlZC1kb2NzL3Jhdy9tYXN0ZXIv TkVXUyIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0v JHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPWY3MGNlMmNhMjNhZDc4NjIx NWYzYzkyZWM4NTc4M2UzYWFiZWQwN2U0Zjc4NzAwZmEyN2Y5YjJjZjc2ZTAzZGIKK2NoZWNrc3Vt PTA0OTRiODkxM2E5NDZiNjQ1MDUzNmUxMjBjMTU0YWJkMjkyMzhlYmJhMmY1MjczNDU5MmIxZjY0 NWU1MjFkYzYKCkZyb20gMGIwMzk3ZTgxNTBhZWE1MWZmMTAzMDQ3YWM3YjIxN2RmY2JlYjQ5MiBN b24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNv bT4KRGF0ZTogVHVlLCAxNiBKdW4gMjAyMCAxOTo0Nzo0NyArMDYwMApTdWJqZWN0OiBbUEFUQ0gg MzIvNjVdIGdub21lLXBhbmVsOiB1cGRhdGUgdG8gMy4zNi4xLgoKLS0tCiBjb21tb24vc2hsaWJz ICAgICAgICAgICAgICAgIHwgMyArKy0KIHNyY3BrZ3MvZ25vbWUtcGFuZWwvdGVtcGxhdGUgfCA2 ICsrKy0tLQogMiBmaWxlcyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0p CgpkaWZmIC0tZ2l0IGEvY29tbW9uL3NobGlicyBiL2NvbW1vbi9zaGxpYnMKaW5kZXggMTk2ZWIz ZWFkZmMuLjY5OTEzNjVmMTRhIDEwMDY0NAotLS0gYS9jb21tb24vc2hsaWJzCisrKyBiL2NvbW1v 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 KSB7CgpGcm9tIDQ1ZmZiMTFhZjg0ZTA5OTRhNDY1ZTA5YmQ2N2NiYzRjNTZjNzM5MDEgTW9uIFNl cCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRh dGU6IFR1ZSwgMTYgSnVuIDIwMjAgMTk6NDc6NTQgKzA2MDAKU3ViamVjdDogW1BBVENIIDMzLzY1 XSBtZXRhY2l0eTogdXBkYXRlIHRvIDMuMzYuMS4KCi0tLQogY29tbW9uL3NobGlicyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDEgKwogLi4uL3BhdGNoZXMvY29tcG9zaXRvci12 dWxrYW4tZml4LWJ1aWxkLnBhdGNoIHwgMjkgKysrKysrKysrKysrKysrKysrKwogc3JjcGtncy9t ZXRhY2l0eS90ZW1wbGF0ZSAgICAgICAgICAgICAgICAgICAgIHwgIDQgKy0tCiAzIGZpbGVzIGNo YW5nZWQsIDMyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAxMDA2 NDQgc3JjcGtncy9tZXRhY2l0eS9wYXRjaGVzL2NvbXBvc2l0b3ItdnVsa2FuLWZpeC1idWlsZC5w YXRjaAoKZGlmZiAtLWdpdCBhL2NvbW1vbi9zaGxpYnMgYi9jb21tb24vc2hsaWJzCmluZGV4IDY5 OTEzNjVmMTRhLi5kYzQwMzE2YTkyZCAxMDA2NDQKLS0tIGEvY29tbW9uL3NobGlicworKysgYi9j 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 NjYyYzFiMzIzCgpGcm9tIGUyZTQ0MDI2YTE5Njc2NjQ4NzVhMGRkMmE0MTZjZjNhZDBjNWVjYWQg TW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5j b20+CkRhdGU6IFR1ZSwgMTYgSnVuIDIwMjAgMTk6NDg6MDEgKzA2MDAKU3ViamVjdDogW1BBVENI IDM0LzY1XSBnbm9tZS1tZW51czogdXBkYXRlIHRvIDMuMzYuMC4KCi0tLQogc3JjcGtncy9nbm9t ZS1tZW51cy90ZW1wbGF0ZSB8IDYgKysrLS0tCiAxIGZpbGUgY2hhbmdlZCwgMyBpbnNlcnRpb25z KCspLCAzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtbWVudXMvdGVt cGxhdGUgYi9zcmNwa2dzL2dub21lLW1lbnVzL3RlbXBsYXRlCmluZGV4IDI5MTAyMTI5YzM4Li5l Nzg3ZmI4ZGU2YiAxMDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1tZW51cy90ZW1wbGF0ZQorKysg Yi9zcmNwa2dzL2dub21lLW1lbnVzL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0 ZSBmaWxlIGZvciAnZ25vbWUtbWVudXMnCiBwa2duYW1lPWdub21lLW1lbnVzCi12ZXJzaW9uPTMu MzIuMAotcmV2aXNpb249MgordmVyc2lvbj0zLjM2LjAKK3JldmlzaW9uPTEKIGJ1aWxkX3N0eWxl PWdudS1jb25maWd1cmUKIGJ1aWxkX2hlbHBlcj0iZ2lyIgogY29uZmlndXJlX2FyZ3M9Ii0tZGlz YWJsZS1zdGF0aWMiCkBAIC0xMiw3ICsxMiw3IEBAIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxn b3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyLCBMR1BMLTIu MC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25v bWUtbWVudXMiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24l Lip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT1jODUwYzY0YjIwNzQy NjVmZTU5ZTA5OWEzNDBiODY4OWNmM2RkNDY1OGRjOWZlZGRkMmFiNWU5NWYxYTc0Yjc0CitjaGVj a3N1bT1kOTM0OGYzOGJkZTk1NmZjMzI3NTNiMjhjMWNkZTE5YzE3NWJmZGJmMWY0ZDViMDYwMDNi M2FhMDkxNTNiYjFmCiAKIGJ1aWxkX29wdGlvbnM9ImdpciIKIGJ1aWxkX29wdGlvbnNfZGVmYXVs dD0iZ2lyIgoKRnJvbSA4ZTQ1MTU0NmZmM2M4ZDU2NGRjZDIxNmM4MGM1OWZhMGNkZjZhN2I3IE1v biBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29t PgpEYXRlOiBUdWUsIDE2IEp1biAyMDIwIDE5OjQ4OjA5ICswNjAwClN1YmplY3Q6IFtQQVRDSCAz NS82NV0gZ25vbWUtZmxhc2hiYWNrOiB1cGRhdGUgdG8gMy4zNi4zLgoKQWRkZWQgUEFNIGNvbmZp ZyB0byBlbmFibGUgc2NyZWVuIGxvY2tpbmcuCi0tLQogLi4uL2dub21lLWZsYXNoYmFjay9maWxl cy9nbm9tZS1mbGFzaGJhY2sucGFtIHwgIDYgKysrKwogLi4uL2dub21lLWZsYXNoYmFjay9wYXRj aGVzL2NvbXBpei0wLjgucGF0Y2ggIHwgMjggKysrKysrKysrKysrKysrKysrKwogc3JjcGtncy9n bm9tZS1mbGFzaGJhY2svdGVtcGxhdGUgICAgICAgICAgICAgIHwgMjcgKysrKysrKysrKysrLS0t LS0tCiAzIGZpbGVzIGNoYW5nZWQsIDUyIGluc2VydGlvbnMoKyksIDkgZGVsZXRpb25zKC0pCiBj cmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9nbm9tZS1mbGFzaGJhY2svZmlsZXMvZ25vbWUtZmxh c2hiYWNrLnBhbQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvZ25vbWUtZmxhc2hiYWNrL3Bh dGNoZXMvY29tcGl6LTAuOC5wYXRjaAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtZmxhc2hi YWNrL2ZpbGVzL2dub21lLWZsYXNoYmFjay5wYW0gYi9zcmNwa2dzL2dub21lLWZsYXNoYmFjay9m aWxlcy9nbm9tZS1mbGFzaGJhY2sucGFtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw MDAwMDAwLi5lYmJiNTFkZDBlOAotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvZ25vbWUtZmxh c2hiYWNrL2ZpbGVzL2dub21lLWZsYXNoYmFjay5wYW0KQEAgLTAsMCArMSw2IEBACisjJVBBTS0x LjAKK2F1dGggICAgICAgaW5jbHVkZQlzeXN0ZW0tYXV0aAorYXV0aCAgICAgICBvcHRpb25hbCAg ICAgcGFtX2dub21lX2tleXJpbmcuc28KK2FjY291bnQgICAgaW5jbHVkZQlzeXN0ZW0tYXV0aAor cGFzc3dvcmQgICBpbmNsdWRlCXN5c3RlbS1hdXRoCitzZXNzaW9uICAgIGluY2x1ZGUJc3lzdGVt LWF1dGgKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtZmxhc2hiYWNrL3BhdGNoZXMvY29tcGl6 LTAuOC5wYXRjaCBiL3NyY3BrZ3MvZ25vbWUtZmxhc2hiYWNrL3BhdGNoZXMvY29tcGl6LTAuOC5w YXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uZThhMmE1Yzg3ZmQK LS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2dub21lLWZsYXNoYmFjay9wYXRjaGVzL2NvbXBp ei0wLjgucGF0Y2gKQEAgLTAsMCArMSwyOCBAQAorZGlmZiAtLWdpdCBjb25maWd1cmUgY29uZmln dXJlCitpbmRleCAyNmNlYTUxLi5kMjQ2M2NjIDEwMDc1NQorLS0tIGNvbmZpZ3VyZQorKysrIGNv bmZpZ3VyZQorQEAgLTIwODQyLDggKzIwODQyLDggQEAgZmkKKyBpZiB0ZXN0ICJ4JHdpdGhfY29t cGl6X3Nlc3Npb24iICE9ICJ4bm8iOyB0aGVuIDoKKyAKKyAgIGlmIHRlc3QgLW4gIiRQS0dfQ09O RklHIiAmJiBcCistICAgIHsgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99 OiBcJFBLR19DT05GSUcgLS1leGlzdHMgLS1wcmludC1lcnJvcnMgXCJsaWJjb21waXpjb25maWcg Pj0gMC45LjE0LjBcIiI7IH0gPiY1CistICAoJFBLR19DT05GSUcgLS1leGlzdHMgLS1wcmludC1l cnJvcnMgImxpYmNvbXBpemNvbmZpZyA+PSAwLjkuMTQuMCIpIDI+JjUKKysgICAgeyB7ICRhc19l Y2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IFwkUEtHX0NPTkZJRyAtLWV4aXN0cyAt LXByaW50LWVycm9ycyBcImxpYmNvbXBpemNvbmZpZyA+PSAwLjguMTYuMFwiIjsgfSA+JjUKKysg ICgkUEtHX0NPTkZJRyAtLWV4aXN0cyAtLXByaW50LWVycm9ycyAibGliY29tcGl6Y29uZmlnID49 IDAuOC4xNi4wIikgMj4mNQorICAgYWNfc3RhdHVzPSQ/CisgICAkYXNfZWNobyAiJGFzX21lOiR7 YXNfbGluZW5vLSRMSU5FTk99OiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgIHRlc3QgJGFjX3N0 YXR1cyA9IDA7IH07IHRoZW4KK2RpZmYgLS1naXQgY29uZmlndXJlLmFjIGNvbmZpZ3VyZS5hYwor aW5kZXggYjZlMTQ3MC4uZDI4YTcwYiAxMDA2NDQKKy0tLSBjb25maWd1cmUuYWMKKysrKyBjb25m aWd1cmUuYWMKK0BAIC0zNDAsNyArMzQwLDcgQEAgQUNfQVJHX1dJVEgoW2NvbXBpei1zZXNzaW9u XSwKKyAgICAgICAgICAgICBbd2l0aF9jb21waXpfc2Vzc2lvbj0iJHdpdGh2YWwiXSwgW3dpdGhf Y29tcGl6X3Nlc3Npb249ImF1dG8iXSkKKyAKKyBBU19JRihbdGVzdCAieCR3aXRoX2NvbXBpel9z ZXNzaW9uIiAhPSAieG5vIl0sIFsKKy0gIFBLR19DSEVDS19FWElTVFMoW2xpYmNvbXBpemNvbmZp ZyA+PSAwLjkuMTQuMF0sCisrICBQS0dfQ0hFQ0tfRVhJU1RTKFtsaWJjb21waXpjb25maWcgPj0g MC44LjE2LjBdLAorICAgICAgICAgICAgICAgICAgICBbZm91bmRfY29tcGl6PSJ5ZXMiXSwgW2Zv dW5kX2NvbXBpej0ibm8iXSkKKyAKKyAgIEFTX0lGKFt0ZXN0ICJ4JGZvdW5kX2NvbXBpeiIgPSAi eHllcyJdLCBbCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLWZsYXNoYmFjay90ZW1wbGF0ZSBi L3NyY3BrZ3MvZ25vbWUtZmxhc2hiYWNrL3RlbXBsYXRlCmluZGV4IGQzMjEyMGNhYjZmLi4wODU2 NmRmNWZkNCAxMDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1mbGFzaGJhY2svdGVtcGxhdGUKKysr IGIvc3JjcGtncy9nbm9tZS1mbGFzaGJhY2svdGVtcGxhdGUKQEAgLTEsMjAgKzEsMjkgQEAKICMg VGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLWZsYXNoYmFjaycKIHBrZ25hbWU9Z25vbWUtZmxhc2hi YWNrCi12ZXJzaW9uPTMuMzQuMgordmVyc2lvbj0zLjM2LjMKIHJldmlzaW9uPTEKIGJ1aWxkX2hl bHBlcj1naXIKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKLWNvbmZpZ3VyZV9hcmdzPSItLWVu YWJsZS1jb21waWxlLXdhcm5pbmdzPW1pbmltdW0iCi1ob3N0bWFrZWRlcGVuZHM9InBrZy1jb25m aWcgYXV0b21ha2UgZ2xpYi1kZXZlbCBnZXR0ZXh0IgotbWFrZWRlcGVuZHM9Imd0ayszLWRldmVs IGdzZXR0aW5ncy1kZXNrdG9wLXNjaGVtYXMtZGV2ZWwKLSBsaWJnbGliLWRldmVsIGdkay1waXhi dWYtZGV2ZWwgdXBvd2VyLWRldmVsIGlidXMtZGV2ZWwgcG9sa2l0LWRldmVsCi0gcHVsc2VhdWRp by1kZXZlbCBsaWJjYW5iZXJyYS1kZXZlbCBsaWJ4Y2ItZGV2ZWwgbGliWDExLWRldmVsIHBhbmdv LWRldmVsCi0gbGlieGtiZmlsZS1kZXZlbCBnbm9tZS1ibHVldG9vdGgtZGV2ZWwgZ25vbWUtZGVz a3RvcC1kZXZlbCIKK2NvbmZpZ3VyZV9hcmdzPSItLXdpdGgtY29tcGl6LXNlc3Npb24gLS1lbmFi bGUtY29tcGlsZS13YXJuaW5ncz1taW5pbXVtIgoraG9zdG1ha2VkZXBlbmRzPSJnZXR0ZXh0LWRl dmVsIHBrZy1jb25maWcgYXV0b21ha2UgZ2xpYi1kZXZlbCBnZXR0ZXh0IGxpYnRvb2wiCittYWtl ZGVwZW5kcz0iZ3RrKzMtZGV2ZWwgcGFtLWRldmVsIGdzZXR0aW5ncy1kZXNrdG9wLXNjaGVtYXMt ZGV2ZWwgZWxvZ2luZC1kZXZlbAorIGdkbS1kZXZlbCBsaWJjb21waXpjb25maWctZGV2ZWwgbGli Z2xpYi1kZXZlbCBnZGstcGl4YnVmLWRldmVsIHVwb3dlci1kZXZlbCBpYnVzLWRldmVsCisgcG9s a2l0LWRldmVsIHB1bHNlYXVkaW8tZGV2ZWwgbGliY2FuYmVycmEtZGV2ZWwgbGlieGNiLWRldmVs IGxpYlgxMS1kZXZlbCBwYW5nby1kZXZlbAorIGxpYnhrYmZpbGUtZGV2ZWwgZ25vbWUtYmx1ZXRv b3RoLWRldmVsIGdub21lLWRlc2t0b3AtZGV2ZWwgZ25vbWUtcGFuZWwtZGV2ZWwiCiBkZXBlbmRz PSJnbm9tZS1ibHVldG9vdGggZ25vbWUtc2Vzc2lvbiBnbm9tZS1zZXR0aW5ncy1kYWVtb24KLSBn bm9tZS1wYW5lbCBnbm9tZS10aGVtZXMtc3RhbmRhcmQgbWV0YWNpdHkiCisgZ25vbWUtcGFuZWwg Z25vbWUtdGhlbWVzLWV4dHJhIG1ldGFjaXR5Igogc2hvcnRfZGVzYz0iR05PTUUgMyBzZXNzaW9u IHdpdGggc2ltaWxhciB1c2VyIGV4cGVyaWVuY2UgdG8gdGhlIEdOT01FIDIueCBzZXJpZXMiCiBt YWludGFpbmVyPSJzaGl6b25pYyA8cmVhbHRpYXpAZ21haWwuY29tPiIKIGxpY2Vuc2U9IkdQTC0z LjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9Qcm9qZWN0cy9H bm9tZUZsYXNoYmFjayIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVy c2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTNiZTY1Mzg4 Y2QyYzhmMzk3NDFiY2MwNWRhODdlZjQwMDM1MTgzYTlhMzk1MDJkNjc2OTYyNDJjMmFlYjQ2OWMK K2NoZWNrc3VtPTJkYmE5ZWE0MGYyZGE4MWMyMjk1NGE4Y2NjMjlmOGYxZmE0Y2E4Mzk1YTZiYjU1 MjUwNjYzNTgzMjc1MWMxYTcKKworcHJlX2NvbmZpZ3VyZSgpIHsKKwlhdXRvcmVjb25mIC12ZmkK K30KKworcG9zdF9pbnN0YWxsKCkgeworCXZpbnN0YWxsICR7RklMRVNESVJ9L2dub21lLWZsYXNo YmFjay5wYW0gNjQ0IC9ldGMvcGFtLmQgZ25vbWUtZmxhc2hiYWNrCisJdnNlZCAtaSAtZSAicy8g LS1zeXN0ZW1kLy9nIiAke0RFU1RESVJ9L3Vzci9saWJleGVjL2dub21lLWZsYXNoYmFjay17Y29t cGl6LG1ldGFjaXR5fQorfQoKRnJvbSAwODM1NmM4YjVjMDdiNjhjY2E0N2EwNWU3YWYyMTQ3Mzg2 MDVkNzE5IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91 dGxvb2suY29tPgpEYXRlOiBUdWUsIDE2IEp1biAyMDIwIDE5OjQ4OjI0ICswNjAwClN1YmplY3Q6 IFtQQVRDSCAzNi82NV0gZ3JhcGhlbmU6IHVwZGF0ZSB0byAxLjEwLjAuCgotLS0KIHNyY3BrZ3Mv Z3JhcGhlbmUvdGVtcGxhdGUgfCAxMCArKysrKy0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgNSBpbnNl cnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ3JhcGhlbmUv dGVtcGxhdGUgYi9zcmNwa2dzL2dyYXBoZW5lL3RlbXBsYXRlCmluZGV4IGYyZmU4MWEzZjQ3Li5j YjczODVmZWRiNyAxMDA2NDQKLS0tIGEvc3JjcGtncy9ncmFwaGVuZS90ZW1wbGF0ZQorKysgYi9z cmNwa2dzL2dyYXBoZW5lL3RlbXBsYXRlCkBAIC0xLDEwICsxLDEwIEBACiAjIFRlbXBsYXRlIGZp bGUgZm9yICdncmFwaGVuZScKIHBrZ25hbWU9Z3JhcGhlbmUKLXZlcnNpb249MS44LjIKLXJldmlz aW9uPTIKK3ZlcnNpb249MS4xMC4wCityZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1tZXNvbgogYnVp bGRfaGVscGVyPSJnaXIiCi1jb25maWd1cmVfYXJncz0iLUR0ZXN0cz1mYWxzZSAtRGJlbmNobWFy a3M9ZmFsc2UKK2NvbmZpZ3VyZV9hcmdzPSItRHRlc3RzPWZhbHNlIC1EYXJtX25lb249ZmFsc2UK ICAtRGludHJvc3BlY3Rpb249JCh2b3B0X2lmIGdpciB0cnVlIGZhbHNlKSIKIGhvc3RtYWtlZGVw ZW5kcz0icGtnLWNvbmZpZyIKIG1ha2VkZXBlbmRzPSJsaWJnbGliLWRldmVsIgpAQCAtMTMsMTMg KzEzLDEzIEBAIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4i CiBsaWNlbnNlPSJNSVQiCiBob21lcGFnZT0iaHR0cHM6Ly9naXRodWIuY29tL2ViYXNzaS9ncmFw aGVuZSIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS9ncmFwaGVuZS8ke3ZlcnNpb24lLip9L2dy YXBoZW5lLSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09YjNmY2YyMDk5NmU1N2IxZjRkZjM5 NDFjYWFjMTBmMTQzYmIyOTg5MGE0MmY3YTY1NDA3Y2QxOTI3MWZjODlmNworY2hlY2tzdW09NDA2 ZDk3ZjUxZGQ0Y2E2MWU5MWY4NDY2NmEwMGMzZTk3NmQzZTY2N2NkMjQ4Yjc2ZDkyZmRiMzVjZTg3 NjQ5OQogCiBidWlsZF9vcHRpb25zPSJnaXIiCiBidWlsZF9vcHRpb25zX2RlZmF1bHQ9ImdpciIK IAogcG9zdF9pbnN0YWxsKCkgewotCXZsaWNlbnNlIExJQ0VOU0UKKwl2bGljZW5zZSBMSUNFTlNF LnR4dCBMSUNFTlNFCiB9CiAKIGdyYXBoZW5lLWRldmVsX3BhY2thZ2UoKSB7CgpGcm9tIDIzY2Vl MThmNWZjZDRkOTUxMDllOTE1YzdjMDhlMjc2M2Y2OGMwMjYgTW9uIFNlcCAxNyAwMDowMDowMCAy MDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFR1ZSwgMTYgSnVu IDIwMjAgMTk6NDg6MzAgKzA2MDAKU3ViamVjdDogW1BBVENIIDM3LzY1XSBtdXR0ZXI6IHVwZGF0 ZSB0byAzLjM2LjMuCgotLS0KIGNvbW1vbi9zaGxpYnMgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICB8ICAxOCArLQogLi4uL3BhdGNoZXMvZml4LWNvZ2wtZWdsLWluY2x1ZGVzLnBhdGNo ICAgICAgIHwgIDExIC0KIHNyY3BrZ3MvbXV0dGVyL3BhdGNoZXMvcGlwZXdpcmUtMC4zLnBhdGNo ICAgICB8IDUyMSAtLS0tLS0tLS0tLS0tLS0tLS0KIHNyY3BrZ3MvbXV0dGVyL3RlbXBsYXRlICAg ICAgICAgICAgICAgICAgICAgICB8ICAyNyArLQogNCBmaWxlcyBjaGFuZ2VkLCAyMyBpbnNlcnRp b25zKCspLCA1NTQgZGVsZXRpb25zKC0pCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9tdXR0 ZXIvcGF0Y2hlcy9maXgtY29nbC1lZ2wtaW5jbHVkZXMucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0 NCBzcmNwa2dzL211dHRlci9wYXRjaGVzL3BpcGV3aXJlLTAuMy5wYXRjaAoKZGlmZiAtLWdpdCBh L2NvbW1vbi9zaGxpYnMgYi9jb21tb24vc2hsaWJzCmluZGV4IGRjNDAzMTZhOTJkLi5hY2M1M2Ew MjQxMiAxMDA2NDQKLS0tIGEvY29tbW9uL3NobGlicworKysgYi9jb21tb24vc2hsaWJzCkBAIC0z MDE5LDE1ICszMDE5LDE1IEBAIGxpYmRlY29yYXRpb24uc28uMCBjb21waXotY29yZS0wLjguMTRf MQogbGliY29tcGl6Y29uZmlnLnNvLjAgbGliY29tcGl6Y29uZmlnLTAuOC4xNF8xCiBsaWJlbWVy YWxkZW5naW5lLnNvLjAgZW1lcmFsZC0wLjguMTRfMQogbGliaGFuZ3VsLnNvLjEgbGliaGFuZ3Vs LTAuMS4wXzEKLWxpYm11dHRlci01LnNvLjAgbXV0dGVyLTMuMzQuMV8xCi1saWJtdXR0ZXItY2x1 dHRlci01LnNvIG11dHRlci0zLjM0LjFfMQotbGlibXV0dGVyLWNsdXR0ZXItNS5zby4wIG11dHRl ci0zLjM0LjFfMQotbGlibXV0dGVyLWNvZ2wtcGF0aC01LnNvIG11dHRlci0zLjM0LjFfMQotbGli bXV0dGVyLWNvZ2wtcGF0aC01LnNvLjAgbXV0dGVyLTMuMzQuMV8xCi1saWJtdXR0ZXItY29nbC01 LnNvIG11dHRlci0zLjM0LjFfMQotbGlibXV0dGVyLWNvZ2wtNS5zby4wIG11dHRlci0zLjM0LjFf MQotbGlibXV0dGVyLWNvZ2wtcGFuZ28tNS5zbyBtdXR0ZXItMy4zNC4xXzEKLWxpYm11dHRlci1j b2dsLXBhbmdvLTUuc28uMCBtdXR0ZXItMy4zNC4xXzEKK2xpYm11dHRlci02LnNvLjAgbXV0dGVy LTMuMzYuM18xCitsaWJtdXR0ZXItY2x1dHRlci02LnNvIG11dHRlci0zLjM2LjNfMQorbGlibXV0 dGVyLWNsdXR0ZXItNi5zby4wIG11dHRlci0zLjM2LjNfMQorbGlibXV0dGVyLWNvZ2wtcGF0aC02 LnNvIG11dHRlci0zLjM2LjNfMQorbGlibXV0dGVyLWNvZ2wtcGF0aC02LnNvLjAgbXV0dGVyLTMu MzYuM18xCitsaWJtdXR0ZXItY29nbC02LnNvIG11dHRlci0zLjM2LjNfMQorbGlibXV0dGVyLWNv Z2wtNi5zby4wIG11dHRlci0zLjM2LjNfMQorbGlibXV0dGVyLWNvZ2wtcGFuZ28tNi5zbyBtdXR0 ZXItMy4zNi4zXzEKK2xpYm11dHRlci1jb2dsLXBhbmdvLTYuc28uMCBtdXR0ZXItMy4zNi4zXzEK IGxpYmdlb2NsdWUtMi5zby4wIGdlb2NsdWUyLTIuNC40XzEKIGxpYmdlcHViLnNvLjAgbGliZ2Vw dWItMC40XzEKIGxpYnNsb3B5LnNvLjcuNSBzbG9wLTcuNV8xCmRpZmYgLS1naXQgYS9zcmNwa2dz L211dHRlci9wYXRjaGVzL2ZpeC1jb2dsLWVnbC1pbmNsdWRlcy5wYXRjaCBiL3NyY3BrZ3MvbXV0 dGVyL3BhdGNoZXMvZml4LWNvZ2wtZWdsLWluY2x1ZGVzLnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2Rl IDEwMDY0NAppbmRleCBkOTA5ODg4ODdjMy4uMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9tdXR0 ZXIvcGF0Y2hlcy9maXgtY29nbC1lZ2wtaW5jbHVkZXMucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAt MSwxMSArMCwwIEBACi0tLS0gY29nbC9jb2dsL21lc29uLmJ1aWxkCTIwMTktMTAtMDggMTk6MTU6 MTAuMDAwMDAwMDAwICswMjAwCi0rKysgY29nbC9jb2dsL21lc29uLmJ1aWxkCTIwMTktMTItMTYg MTU6NDU6NDQuMDM3NjQwNTQ4ICswMTAwCi1AQCAtNDgsNyArNDgsNyBAQAotIGJ1aWx0X2hlYWRl cnMgKz0gW2NvZ2xfZ2xfaGVhZGVyX2hdCi0gCi0gaWYgaGF2ZV9lZ2wKLS0gIGNvZ2xfZWdsX2lu Y2x1ZGVzX3N0cmluZyA9ICcjaW5jbHVkZSA8RUdML2VnbC5oPlxuI2luY2x1ZGUgPEVHTC9lZ2xl eHQuaD4nCi0rICBjb2dsX2VnbF9pbmNsdWRlc19zdHJpbmcgPSAnI2luY2x1ZGUgPEVHTC9lZ2wu aD5cbiNpbmNsdWRlIDxFR0wvZWdsZXh0Lmg+XG4jaW5jbHVkZSA8RUdML2VnbG1lc2FleHQuaD4n Ci0gZWxzZQotICAgY29nbF9lZ2xfaW5jbHVkZXNfc3RyaW5nID0gJycKLSBlbmRpZgpkaWZmIC0t Z2l0IGEvc3JjcGtncy9tdXR0ZXIvcGF0Y2hlcy9waXBld2lyZS0wLjMucGF0Y2ggYi9zcmNwa2dz L211dHRlci9wYXRjaGVzL3BpcGV3aXJlLTAuMy5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2 NDQKaW5kZXggZWJmZjY1ZmJhODUuLjAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvbXV0dGVyL3Bh dGNoZXMvcGlwZXdpcmUtMC4zLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsNTIxICswLDAgQEAK LUJ1aWxkIG11dHRlciBhZ2FpbnN0IHBpcGV3aXJlLTAuMywgYmFzZWQgb24gYSBwYXRjaCBhdDoK LWh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9tdXR0ZXIvLS9tZXJnZV9yZXF1ZXN0cy8x MDYyCi0tLS0gbWVzb24uYnVpbGQKLSsrKyBtZXNvbi5idWlsZAotQEAgLTUwLDcgKzUwLDcgQEAg bGliaW5wdXRfcmVxID0gJz49IDEuNycKLSBnYm1fcmVxID0gJz49IDEwLjMnCi0KLSAjIHNjcmVl biBjYXN0IHZlcnNpb24gcmVxdWlyZW1lbnRzCi0tbGlicGlwZXdpcmVfcmVxID0gJz49IDAuMi41 JwotK2xpYnBpcGV3aXJlX3JlcSA9ICc+PSAwLjMuMCcKLQotIGdub21lID0gaW1wb3J0KCdnbm9t ZScpCi0gcGtnID0gaW1wb3J0KCdwa2djb25maWcnKQotQEAgLTI0MSw3ICsyNDEsNyBAQCBlbmRp ZgotCi0gaGF2ZV9yZW1vdGVfZGVza3RvcCA9IGdldF9vcHRpb24oJ3JlbW90ZV9kZXNrdG9wJykK LSBpZiBoYXZlX3JlbW90ZV9kZXNrdG9wCi0tICBsaWJwaXBld2lyZV9kZXAgPSBkZXBlbmRlbmN5 KCdsaWJwaXBld2lyZS0wLjInLCB2ZXJzaW9uOiBsaWJwaXBld2lyZV9yZXEpCi0rICBsaWJwaXBl d2lyZV9kZXAgPSBkZXBlbmRlbmN5KCdsaWJwaXBld2lyZS0wLjMnLCB2ZXJzaW9uOiBsaWJwaXBl d2lyZV9yZXEpCi0gZW5kaWYKLQotIGhhdmVfaW50cm9zcGVjdGlvbiA9IGdldF9vcHRpb24oJ2lu dHJvc3BlY3Rpb24nKQotZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kcy9tZXRhLXNjcmVlbi1jYXN0 LXN0cmVhbS1zcmMuYyBiL3NyYy9iYWNrZW5kcy9tZXRhLXNjcmVlbi1jYXN0LXN0cmVhbS1zcmMu YwotaW5kZXggODJjNWNiYTQzNi4uYmExY2U5NGE3ZSAxMDA2NDQKLS0tLSBzcmMvYmFja2VuZHMv bWV0YS1zY3JlZW4tY2FzdC1zdHJlYW0tc3JjLmMKLSsrKyBzcmMvYmFja2VuZHMvbWV0YS1zY3Jl ZW4tY2FzdC1zdHJlYW0tc3JjLmMKLUBAIC0yOSw2ICsyOSw3IEBACi0gI2luY2x1ZGUgPHNwYS9w YXJhbS9wcm9wcy5oPgotICNpbmNsdWRlIDxzcGEvcGFyYW0vZm9ybWF0LXV0aWxzLmg+Ci0gI2lu Y2x1ZGUgPHNwYS9wYXJhbS92aWRlby9mb3JtYXQtdXRpbHMuaD4KLSsjaW5jbHVkZSA8c3BhL3V0 aWxzL3Jlc3VsdC5oPgotICNpbmNsdWRlIDxzdGRpbnQuaD4KLSAjaW5jbHVkZSA8c3lzL21tYW4u aD4KLQotQEAgLTYyLDE1ICs2Myw2IEBAIGVudW0KLQotIHN0YXRpYyBndWludCBzaWduYWxzW05f U0lHTkFMU107Ci0KLS10eXBlZGVmIHN0cnVjdCBfTWV0YVNwYVR5cGUKLS17Ci0tICBzdHJ1Y3Qg c3BhX3R5cGVfbWVkaWFfdHlwZSBtZWRpYV90eXBlOwotLSAgc3RydWN0IHNwYV90eXBlX21lZGlh X3N1YnR5cGUgbWVkaWFfc3VidHlwZTsKLS0gIHN0cnVjdCBzcGFfdHlwZV9mb3JtYXRfdmlkZW8g Zm9ybWF0X3ZpZGVvOwotLSAgc3RydWN0IHNwYV90eXBlX3ZpZGVvX2Zvcm1hdCB2aWRlb19mb3Jt YXQ7Ci0tICB1aW50MzJfdCBtZXRhX2N1cnNvcjsKLS19IE1ldGFTcGFUeXBlOwotLQotIHR5cGVk ZWYgc3RydWN0IF9NZXRhUGlwZVdpcmVTb3VyY2UKLSB7Ci0gICBHU291cmNlIGJhc2U7Ci1AQCAt ODIsMTkgKzc0LDE5IEBAIHR5cGVkZWYgc3RydWN0IF9NZXRhU2NyZWVuQ2FzdFN0cmVhbVNyY1By aXZhdGUKLSB7Ci0gICBNZXRhU2NyZWVuQ2FzdFN0cmVhbSAqc3RyZWFtOwotCi0rICBzdHJ1Y3Qg cHdfY29udGV4dCAqcGlwZXdpcmVfY29udGV4dDsKLSAgIHN0cnVjdCBwd19jb3JlICpwaXBld2ly ZV9jb3JlOwotLSAgc3RydWN0IHB3X3JlbW90ZSAqcGlwZXdpcmVfcmVtb3RlOwotLSAgc3RydWN0 IHB3X3R5cGUgKnBpcGV3aXJlX3R5cGU7Ci0gICBNZXRhUGlwZVdpcmVTb3VyY2UgKnBpcGV3aXJl X3NvdXJjZTsKLS0gIHN0cnVjdCBzcGFfaG9vayBwaXBld2lyZV9yZW1vdGVfbGlzdGVuZXI7Ci0r ICBzdHJ1Y3Qgc3BhX2hvb2sgcGlwZXdpcmVfY29yZV9saXN0ZW5lcjsKLQotICAgZ2Jvb2xlYW4g aXNfZW5hYmxlZDsKLQotICAgc3RydWN0IHB3X3N0cmVhbSAqcGlwZXdpcmVfc3RyZWFtOwotICAg c3RydWN0IHNwYV9ob29rIHBpcGV3aXJlX3N0cmVhbV9saXN0ZW5lcjsKLSsgIHVpbnQzMl90IG5v ZGVfaWQ7Ci0KLS0gIE1ldGFTcGFUeXBlIHNwYV90eXBlOwotICAgc3RydWN0IHNwYV92aWRlb19p bmZvX3JhdyB2aWRlb19mb3JtYXQ7Ci0rICBpbnQgdmlkZW9fc3RyaWRlOwotCi0gICB1aW50NjRf dCBsYXN0X2ZyYW1lX3RpbWVzdGFtcF91czsKLQotQEAgLTExMiw4ICsxMDQsNiBAQCBHX0RFRklO RV9UWVBFX1dJVEhfQ09ERSAoTWV0YVNjcmVlbkNhc3RTdHJlYW1TcmMsCi0gICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWV0YV9zY3JlZW5fY2FzdF9zdHJl YW1fc3JjX2luaXRfaW5pdGFibGVfaWZhY2UpCi0gICAgICAgICAgICAgICAgICAgICAgICAgIEdf QUREX1BSSVZBVEUgKE1ldGFTY3JlZW5DYXN0U3RyZWFtU3JjKSkKLQotLSNkZWZpbmUgUFJPUF9S QU5HRShtaW4sIG1heCkgMiwgKG1pbiksIChtYXgpCi0tCi0gc3RhdGljIHZvaWQKLSBtZXRhX3Nj cmVlbl9jYXN0X3N0cmVhbV9zcmNfZ2V0X3NwZWNzIChNZXRhU2NyZWVuQ2FzdFN0cmVhbVNyYyAq c3JjLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCAgICAgICAg ICAgICAgICAgICAgICp3aWR0aCwKLUBAIC0yODYsOSArMjc2LDYgQEAgbWV0YV9zY3JlZW5fY2Fz dF9zdHJlYW1fc3JjX3NldF9lbXB0eV9jdXJzb3Jfc3ByaXRlX21ldGFkYXRhIChNZXRhU2NyZWVu Q2FzdFN0cmUKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGludCAgICAgICAgICAgICAgICAgICAgICB4LAotICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50ICAg ICAgICAgICAgICAgICAgICAgIHkpCi0gewotLSAgTWV0YVNjcmVlbkNhc3RTdHJlYW1TcmNQcml2 YXRlICpwcml2ID0KLS0gICAgbWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1fc3JjX2dldF9pbnN0YW5j ZV9wcml2YXRlIChzcmMpOwotLSAgTWV0YVNwYVR5cGUgKnNwYV90eXBlID0gJnByaXYtPnNwYV90 eXBlOwotICAgc3RydWN0IHNwYV9tZXRhX2JpdG1hcCAqc3BhX21ldGFfYml0bWFwOwotCi0gICBz cGFfbWV0YV9jdXJzb3ItPmlkID0gMTsKLUBAIC0zMDAsNyArMjg3LDcgQEAgbWV0YV9zY3JlZW5f Y2FzdF9zdHJlYW1fc3JjX3NldF9lbXB0eV9jdXJzb3Jfc3ByaXRlX21ldGFkYXRhIChNZXRhU2Ny ZWVuQ2FzdFN0cmUKLSAgIHNwYV9tZXRhX2JpdG1hcCA9IFNQQV9NRU1CRVIgKHNwYV9tZXRhX2N1 cnNvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNwYV9tZXRhX2N1cnNvci0+ Yml0bWFwX29mZnNldCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdCBz cGFfbWV0YV9iaXRtYXApOwotLSAgc3BhX21ldGFfYml0bWFwLT5mb3JtYXQgPSBzcGFfdHlwZS0+ dmlkZW9fZm9ybWF0LlJHQkE7Ci0rICBzcGFfbWV0YV9iaXRtYXAtPmZvcm1hdCA9IFNQQV9WSURF T19GT1JNQVRfUkdCQTsKLSAgIHNwYV9tZXRhX2JpdG1hcC0+b2Zmc2V0ID0gc2l6ZW9mIChzdHJ1 Y3Qgc3BhX21ldGFfYml0bWFwKTsKLQotICAgc3BhX21ldGFfY3Vyc29yLT5ob3RzcG90LnggPSAw OwotQEAgLTMxNyw5ICszMDQsNiBAQCBtZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9zcmNfc2V0X2N1 cnNvcl9zcHJpdGVfbWV0YWRhdGEgKE1ldGFTY3JlZW5DYXN0U3RyZWFtU3JjCi0gICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgICAgICAg ICAgICAgICAgICAgICAgeSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGZsb2F0ICAgICAgICAgICAgICAgICAgICBzY2FsZSkKLSB7Ci0t ICBNZXRhU2NyZWVuQ2FzdFN0cmVhbVNyY1ByaXZhdGUgKnByaXYgPQotLSAgICBtZXRhX3NjcmVl bl9jYXN0X3N0cmVhbV9zcmNfZ2V0X2luc3RhbmNlX3ByaXZhdGUgKHNyYyk7Ci0tICBNZXRhU3Bh VHlwZSAqc3BhX3R5cGUgPSAmcHJpdi0+c3BhX3R5cGU7Ci0gICBDb2dsVGV4dHVyZSAqY3Vyc29y X3RleHR1cmU7Ci0gICBzdHJ1Y3Qgc3BhX21ldGFfYml0bWFwICpzcGFfbWV0YV9iaXRtYXA7Ci0g ICBpbnQgaG90c3BvdF94LCBob3RzcG90X3k7Ci1AQCAtMzQ2LDcgKzMzMCw3IEBAIG1ldGFfc2Ny ZWVuX2Nhc3Rfc3RyZWFtX3NyY19zZXRfY3Vyc29yX3Nwcml0ZV9tZXRhZGF0YSAoTWV0YVNjcmVl bkNhc3RTdHJlYW1TcmMKLSAgIHNwYV9tZXRhX2JpdG1hcCA9IFNQQV9NRU1CRVIgKHNwYV9tZXRh X2N1cnNvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNwYV9tZXRhX2N1cnNv ci0+Yml0bWFwX29mZnNldCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVj dCBzcGFfbWV0YV9iaXRtYXApOwotLSAgc3BhX21ldGFfYml0bWFwLT5mb3JtYXQgPSBzcGFfdHlw ZS0+dmlkZW9fZm9ybWF0LlJHQkE7Ci0rICBzcGFfbWV0YV9iaXRtYXAtPmZvcm1hdCA9IFNQQV9W SURFT19GT1JNQVRfUkdCQTsKLSAgIHNwYV9tZXRhX2JpdG1hcC0+b2Zmc2V0ID0gc2l6ZW9mIChz dHJ1Y3Qgc3BhX21ldGFfYml0bWFwKTsKLQotICAgbWV0YV9jdXJzb3Jfc3ByaXRlX2dldF9ob3Rz cG90IChjdXJzb3Jfc3ByaXRlLCAmaG90c3BvdF94LCAmaG90c3BvdF95KTsKLUBAIC0zODIsMTIg KzM2NiwxMCBAQCBzdGF0aWMgdm9pZAotIGFkZF9jdXJzb3JfbWV0YWRhdGEgKE1ldGFTY3JlZW5D YXN0U3RyZWFtU3JjICpzcmMsCi0gICAgICAgICAgICAgICAgICAgICAgc3RydWN0IHNwYV9idWZm ZXIgICAgICAgKnNwYV9idWZmZXIpCi0gewotLSAgTWV0YVNjcmVlbkNhc3RTdHJlYW1TcmNQcml2 YXRlICpwcml2ID0KLS0gICAgbWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1fc3JjX2dldF9pbnN0YW5j ZV9wcml2YXRlIChzcmMpOwotLSAgTWV0YVNwYVR5cGUgKnNwYV90eXBlID0gJnByaXYtPnNwYV90 eXBlOwotICAgc3RydWN0IHNwYV9tZXRhX2N1cnNvciAqc3BhX21ldGFfY3Vyc29yOwotCi0tICBz cGFfbWV0YV9jdXJzb3IgPSBzcGFfYnVmZmVyX2ZpbmRfbWV0YSAoc3BhX2J1ZmZlciwgc3BhX3R5 cGUtPm1ldGFfY3Vyc29yKTsKLSsgIHNwYV9tZXRhX2N1cnNvciA9IHNwYV9idWZmZXJfZmluZF9t ZXRhX2RhdGEgKHNwYV9idWZmZXIsIFNQQV9NRVRBX0N1cnNvciwKLSsgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVvZiAoKnNwYV9tZXRhX2N1cnNvcikp OwotICAgaWYgKHNwYV9tZXRhX2N1cnNvcikKLSAgICAgbWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1f c3JjX3NldF9jdXJzb3JfbWV0YWRhdGEgKHNyYywgc3BhX21ldGFfY3Vyc29yKTsKLSB9Ci1AQCAt NDQ3LDE0ICs0MjksMTQgQEAgbWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1fc3JjX21heWJlX3JlY29y ZF9mcmFtZSAoTWV0YVNjcmVlbkNhc3RTdHJlYW1TcmMgKnNyYykKLSAgICAgewotICAgICAgIGRh dGEgPSBzcGFfYnVmZmVyLT5kYXRhc1swXS5kYXRhOwotICAgICB9Ci0tICBlbHNlIGlmIChzcGFf YnVmZmVyLT5kYXRhc1swXS50eXBlID09IHByaXYtPnBpcGV3aXJlX3R5cGUtPmRhdGEuTWVtRmQp Ci0rICBlbHNlIGlmIChzcGFfYnVmZmVyLT5kYXRhc1swXS50eXBlID09IFNQQV9EQVRBX01lbUZk KQotICAgICB7Ci0gICAgICAgbWFwID0gbW1hcCAoTlVMTCwgc3BhX2J1ZmZlci0+ZGF0YXNbMF0u bWF4c2l6ZSArIHNwYV9idWZmZXItPmRhdGFzWzBdLm1hcG9mZnNldCwKLSAgICAgICAgICAgICAg ICAgICBQUk9UX1JFQUQgfCBQUk9UX1dSSVRFLCBNQVBfU0hBUkVELAotICAgICAgICAgICAgICAg ICAgIHNwYV9idWZmZXItPmRhdGFzWzBdLmZkLCAwKTsKLSAgICAgICBpZiAobWFwID09IE1BUF9G QUlMRUQpCi0gICAgICAgICB7Ci0tICAgICAgICAgIGdfd2FybmluZyAoIkZhaWxlZCB0byBtbWFw IHBpcGV3aXJlIHN0cmVhbSBidWZmZXI6ICVzXG4iLAotKyAgICAgICAgICBnX3dhcm5pbmcgKCJG YWlsZWQgdG8gbW1hcCBwaXBld2lyZSBzdHJlYW0gYnVmZmVyOiAlcyIsCi0gICAgICAgICAgICAg ICAgICAgICAgc3RyZXJyb3IgKGVycm5vKSk7Ci0gICAgICAgICAgIHJldHVybjsKLSAgICAgICAg IH0KLUBAIC00NjksMjggKzQ1MSwzMCBAQCBtZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9zcmNfbWF5 YmVfcmVjb3JkX2ZyYW1lIChNZXRhU2NyZWVuQ2FzdFN0cmVhbVNyYyAqc3JjKQotCi0gICBpZiAo bWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1fc3JjX3JlY29yZF9mcmFtZSAoc3JjLCBkYXRhKSkKLSAg ICAgewotLSAgICAgIHN0cnVjdCBzcGFfbWV0YV92aWRlb19jcm9wICpzcGFfbWV0YV92aWRlb19j cm9wOwotKyAgICAgIHN0cnVjdCBzcGFfbWV0YV9yZWdpb24gKnNwYV9tZXRhX3ZpZGVvX2Nyb3A7 Ci0KLSAgICAgICBzcGFfYnVmZmVyLT5kYXRhc1swXS5jaHVuay0+c2l6ZSA9IHNwYV9idWZmZXIt PmRhdGFzWzBdLm1heHNpemU7Ci0rICAgICAgc3BhX2J1ZmZlci0+ZGF0YXNbMF0uY2h1bmstPnN0 cmlkZSA9IHByaXYtPnZpZGVvX3N0cmlkZTsKLQotICAgICAgIC8qIFVwZGF0ZSBWaWRlb0Nyb3Ag aWYgbmVlZGVkICovCi0gICAgICAgc3BhX21ldGFfdmlkZW9fY3JvcCA9Ci0tICAgICAgICBzcGFf YnVmZmVyX2ZpbmRfbWV0YSAoc3BhX2J1ZmZlciwgcHJpdi0+cGlwZXdpcmVfdHlwZS0+bWV0YS5W aWRlb0Nyb3ApOwotKyAgICAgICAgc3BhX2J1ZmZlcl9maW5kX21ldGFfZGF0YSAoc3BhX2J1ZmZl ciwgU1BBX01FVEFfVmlkZW9Dcm9wLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgc2l6ZW9mICgqc3BhX21ldGFfdmlkZW9fY3JvcCkpOwotICAgICAgIGlmIChzcGFfbWV0YV92 aWRlb19jcm9wKQotICAgICAgICAgewotICAgICAgICAgICBpZiAobWV0YV9zY3JlZW5fY2FzdF9z dHJlYW1fc3JjX2dldF92aWRlb2Nyb3AgKHNyYywgJmNyb3BfcmVjdCkpCi0gICAgICAgICAgICAg ewotLSAgICAgICAgICAgICAgc3BhX21ldGFfdmlkZW9fY3JvcC0+eCA9IGNyb3BfcmVjdC54Owot LSAgICAgICAgICAgICAgc3BhX21ldGFfdmlkZW9fY3JvcC0+eSA9IGNyb3BfcmVjdC55OwotLSAg ICAgICAgICAgICAgc3BhX21ldGFfdmlkZW9fY3JvcC0+d2lkdGggPSBjcm9wX3JlY3Qud2lkdGg7 Ci0tICAgICAgICAgICAgICBzcGFfbWV0YV92aWRlb19jcm9wLT5oZWlnaHQgPSBjcm9wX3JlY3Qu aGVpZ2h0OwotKyAgICAgICAgICAgICAgc3BhX21ldGFfdmlkZW9fY3JvcC0+cmVnaW9uLnBvc2l0 aW9uLnggPSBjcm9wX3JlY3QueDsKLSsgICAgICAgICAgICAgIHNwYV9tZXRhX3ZpZGVvX2Nyb3At PnJlZ2lvbi5wb3NpdGlvbi55ID0gY3JvcF9yZWN0Lnk7Ci0rICAgICAgICAgICAgICBzcGFfbWV0 YV92aWRlb19jcm9wLT5yZWdpb24uc2l6ZS53aWR0aCA9IGNyb3BfcmVjdC53aWR0aDsKLSsgICAg ICAgICAgICAgIHNwYV9tZXRhX3ZpZGVvX2Nyb3AtPnJlZ2lvbi5zaXplLmhlaWdodCA9IGNyb3Bf cmVjdC5oZWlnaHQ7Ci0gICAgICAgICAgICAgfQotICAgICAgICAgICBlbHNlCi0gICAgICAgICAg ICAgewotLSAgICAgICAgICAgICAgc3BhX21ldGFfdmlkZW9fY3JvcC0+eCA9IDA7Ci0tICAgICAg ICAgICAgICBzcGFfbWV0YV92aWRlb19jcm9wLT55ID0gMDsKLS0gICAgICAgICAgICAgIHNwYV9t ZXRhX3ZpZGVvX2Nyb3AtPndpZHRoID0gcHJpdi0+c3RyZWFtX3dpZHRoOwotLSAgICAgICAgICAg ICAgc3BhX21ldGFfdmlkZW9fY3JvcC0+aGVpZ2h0ID0gcHJpdi0+c3RyZWFtX2hlaWdodDsKLSsg ICAgICAgICAgICAgIHNwYV9tZXRhX3ZpZGVvX2Nyb3AtPnJlZ2lvbi5wb3NpdGlvbi54ID0gMDsK LSsgICAgICAgICAgICAgIHNwYV9tZXRhX3ZpZGVvX2Nyb3AtPnJlZ2lvbi5wb3NpdGlvbi55ID0g MDsKLSsgICAgICAgICAgICAgIHNwYV9tZXRhX3ZpZGVvX2Nyb3AtPnJlZ2lvbi5zaXplLndpZHRo ID0gcHJpdi0+c3RyZWFtX3dpZHRoOwotKyAgICAgICAgICAgICAgc3BhX21ldGFfdmlkZW9fY3Jv cC0+cmVnaW9uLnNpemUuaGVpZ2h0ID0gcHJpdi0+c3RyZWFtX2hlaWdodDsKLSAgICAgICAgICAg ICB9Ci0gICAgICAgICB9Ci0gICAgIH0KLUBAIC01NTUsNyArNTM5LDYgQEAgb25fc3RyZWFtX3N0 YXRlX2NoYW5nZWQgKHZvaWQgICAgICAgICAgICAgICAgICpkYXRhLAotICAgTWV0YVNjcmVlbkNh c3RTdHJlYW1TcmMgKnNyYyA9IGRhdGE7Ci0gICBNZXRhU2NyZWVuQ2FzdFN0cmVhbVNyY1ByaXZh dGUgKnByaXYgPQotICAgICBtZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9zcmNfZ2V0X2luc3RhbmNl X3ByaXZhdGUgKHNyYyk7Ci0tICB1aW50MzJfdCBub2RlX2lkOwotCi0gICBzd2l0Y2ggKHN0YXRl KQotICAgICB7Ci1AQCAtNTYzLDE0ICs1NDYsMTIgQEAgb25fc3RyZWFtX3N0YXRlX2NoYW5nZWQg KHZvaWQgICAgICAgICAgICAgICAgICpkYXRhLAotICAgICAgIGdfd2FybmluZyAoInBpcGV3aXJl IHN0cmVhbSBlcnJvcjogJXMiLCBlcnJvcl9tZXNzYWdlKTsKLSAgICAgICBtZXRhX3NjcmVlbl9j YXN0X3N0cmVhbV9zcmNfbm90aWZ5X2Nsb3NlZCAoc3JjKTsKLSAgICAgICBicmVhazsKLS0gICAg Y2FzZSBQV19TVFJFQU1fU1RBVEVfQ09ORklHVVJFOgotLSAgICAgIG5vZGVfaWQgPSBwd19zdHJl YW1fZ2V0X25vZGVfaWQgKHByaXYtPnBpcGV3aXJlX3N0cmVhbSk7Ci0tICAgICAgZ19zaWduYWxf ZW1pdCAoc3JjLCBzaWduYWxzW1JFQURZXSwgMCwgKHVuc2lnbmVkIGludCkgbm9kZV9pZCk7Ci0t ICAgICAgYnJlYWs7Ci0tICAgIGNhc2UgUFdfU1RSRUFNX1NUQVRFX1VOQ09OTkVDVEVEOgotLSAg ICBjYXNlIFBXX1NUUkVBTV9TVEFURV9DT05ORUNUSU5HOgotLSAgICBjYXNlIFBXX1NUUkVBTV9T VEFURV9SRUFEWToKLSAgICAgY2FzZSBQV19TVFJFQU1fU1RBVEVfUEFVU0VEOgotKyAgICAgIGlm IChwcml2LT5ub2RlX2lkID09IFNQQV9JRF9JTlZBTElEICYmIHByaXYtPnBpcGV3aXJlX3N0cmVh bSkKLSsgICAgICAgIHsKLSsgICAgICAgICAgcHJpdi0+bm9kZV9pZCA9IHB3X3N0cmVhbV9nZXRf bm9kZV9pZCAocHJpdi0+cGlwZXdpcmVfc3RyZWFtKTsKLSsgICAgICAgICAgZ19zaWduYWxfZW1p dCAoc3JjLCBzaWduYWxzW1JFQURZXSwgMCwgKHVuc2lnbmVkIGludCkgcHJpdi0+bm9kZV9pZCk7 Ci0rICAgICAgICB9Ci0gICAgICAgaWYgKG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19pc19l bmFibGVkIChzcmMpKQotICAgICAgICAgbWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1fc3JjX2Rpc2Fi bGUgKHNyYyk7Ci0gICAgICAgYnJlYWs7Ci1AQCAtNTc4LDY4ICs1NTksNjkgQEAgb25fc3RyZWFt X3N0YXRlX2NoYW5nZWQgKHZvaWQgICAgICAgICAgICAgICAgICpkYXRhLAotICAgICAgIGlmICgh bWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1fc3JjX2lzX2VuYWJsZWQgKHNyYykpCi0gICAgICAgICBt ZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9zcmNfZW5hYmxlIChzcmMpOwotICAgICAgIGJyZWFrOwot KyAgICBjYXNlIFBXX1NUUkVBTV9TVEFURV9VTkNPTk5FQ1RFRDoKLSsgICAgY2FzZSBQV19TVFJF QU1fU1RBVEVfQ09OTkVDVElORzoKLSsgICAgICBicmVhazsKLSAgICAgfQotIH0KLQotIHN0YXRp YyB2b2lkCi0tb25fc3RyZWFtX2Zvcm1hdF9jaGFuZ2VkICh2b2lkICAgICAgICAgICAgICAgICAq ZGF0YSwKLS0gICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0cnVjdCBzcGFfcG9kICpm b3JtYXQpCi0rb25fc3RyZWFtX3BhcmFtX2NoYW5nZWQgKHZvaWQgICAgICAgICAgICAgICAgICpk YXRhLAotKyAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCAgICAgICAgICAgICAgaWQs Ci0rICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0cnVjdCBzcGFfcG9kICpmb3JtYXQp Ci0gewotICAgTWV0YVNjcmVlbkNhc3RTdHJlYW1TcmMgKnNyYyA9IGRhdGE7Ci0gICBNZXRhU2Ny ZWVuQ2FzdFN0cmVhbVNyY1ByaXZhdGUgKnByaXYgPQotICAgICBtZXRhX3NjcmVlbl9jYXN0X3N0 cmVhbV9zcmNfZ2V0X2luc3RhbmNlX3ByaXZhdGUgKHNyYyk7Ci0tICBzdHJ1Y3QgcHdfdHlwZSAq cGlwZXdpcmVfdHlwZSA9IHByaXYtPnBpcGV3aXJlX3R5cGU7Ci0gICB1aW50OF90IHBhcmFtc19i dWZmZXJbMTAyNF07Ci0gICBpbnQzMl90IHdpZHRoLCBoZWlnaHQsIHN0cmlkZSwgc2l6ZTsKLSAg IHN0cnVjdCBzcGFfcG9kX2J1aWxkZXIgcG9kX2J1aWxkZXI7Ci0gICBjb25zdCBzdHJ1Y3Qgc3Bh X3BvZCAqcGFyYW1zWzNdOwotICAgY29uc3QgaW50IGJwcCA9IDQ7Ci0KLS0gIGlmICghZm9ybWF0 KQotLSAgICB7Ci0tICAgICAgcHdfc3RyZWFtX2ZpbmlzaF9mb3JtYXQgKHByaXYtPnBpcGV3aXJl X3N0cmVhbSwgMCwgTlVMTCwgMCk7Ci0tICAgICAgcmV0dXJuOwotLSAgICB9Ci0rICBpZiAoIWZv cm1hdCB8fCBpZCAhPSBTUEFfUEFSQU1fRm9ybWF0KQotKyAgICByZXR1cm47Ci0KLSAgIHNwYV9m b3JtYXRfdmlkZW9fcmF3X3BhcnNlIChmb3JtYXQsCi0tICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgJnByaXYtPnZpZGVvX2Zvcm1hdCwKLS0gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAmcHJpdi0+c3BhX3R5cGUuZm9ybWF0X3ZpZGVvKTsKLSsgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAmcHJpdi0+dmlkZW9fZm9ybWF0KTsKLQotICAgd2lkdGggPSBwcml2LT52aWRlb19m b3JtYXQuc2l6ZS53aWR0aDsKLSAgIGhlaWdodCA9IHByaXYtPnZpZGVvX2Zvcm1hdC5zaXplLmhl aWdodDsKLSAgIHN0cmlkZSA9IFNQQV9ST1VORF9VUF9OICh3aWR0aCAqIGJwcCwgNCk7Ci0gICBz aXplID0gaGVpZ2h0ICogc3RyaWRlOwotCi0rICBwcml2LT52aWRlb19zdHJpZGUgPSBzdHJpZGU7 Ci0rCi0gICBwb2RfYnVpbGRlciA9IFNQQV9QT0RfQlVJTERFUl9JTklUIChwYXJhbXNfYnVmZmVy LCBzaXplb2YgKHBhcmFtc19idWZmZXIpKTsKLQotLSAgcGFyYW1zWzBdID0gc3BhX3BvZF9idWls ZGVyX29iamVjdCAoCi0rICBwYXJhbXNbMF0gPSBzcGFfcG9kX2J1aWxkZXJfYWRkX29iamVjdCAo Ci0gICAgICZwb2RfYnVpbGRlciwKLS0gICAgcGlwZXdpcmVfdHlwZS0+cGFyYW0uaWRCdWZmZXJz LCBwaXBld2lyZV90eXBlLT5wYXJhbV9idWZmZXJzLkJ1ZmZlcnMsCi0tICAgICI6IiwgcGlwZXdp cmVfdHlwZS0+cGFyYW1fYnVmZmVycy5zaXplLCAiaSIsIHNpemUsCi0tICAgICI6IiwgcGlwZXdp cmVfdHlwZS0+cGFyYW1fYnVmZmVycy5zdHJpZGUsICJpIiwgc3RyaWRlLAotLSAgICAiOiIsIHBp cGV3aXJlX3R5cGUtPnBhcmFtX2J1ZmZlcnMuYnVmZmVycywgImlydSIsIDE2LCBQUk9QX1JBTkdF ICgyLCAxNiksCi0tICAgICI6IiwgcGlwZXdpcmVfdHlwZS0+cGFyYW1fYnVmZmVycy5hbGlnbiwg ImkiLCAxNik7Ci0tCi0tICBwYXJhbXNbMV0gPSBzcGFfcG9kX2J1aWxkZXJfb2JqZWN0ICgKLSsg ICAgU1BBX1RZUEVfT0JKRUNUX1BhcmFtQnVmZmVycywgU1BBX1BBUkFNX0J1ZmZlcnMsCi0rICAg IFNQQV9QQVJBTV9CVUZGRVJTX2J1ZmZlcnMsIFNQQV9QT0RfQ0hPSUNFX1JBTkdFX0ludCAoMTYs IDIsIDE2KSwKLSsgICAgU1BBX1BBUkFNX0JVRkZFUlNfYmxvY2tzLCBTUEFfUE9EX0ludCAoMSks Ci0rICAgIFNQQV9QQVJBTV9CVUZGRVJTX3NpemUsIFNQQV9QT0RfSW50IChzaXplKSwKLSsgICAg U1BBX1BBUkFNX0JVRkZFUlNfc3RyaWRlLCBTUEFfUE9EX0ludCAoc3RyaWRlKSwKLSsgICAgU1BB X1BBUkFNX0JVRkZFUlNfYWxpZ24sIFNQQV9QT0RfSW50ICgxNikpOwotKwotKyAgcGFyYW1zWzFd ID0gc3BhX3BvZF9idWlsZGVyX2FkZF9vYmplY3QgKAotICAgICAmcG9kX2J1aWxkZXIsCi0tICAg IHBpcGV3aXJlX3R5cGUtPnBhcmFtLmlkTWV0YSwgcGlwZXdpcmVfdHlwZS0+cGFyYW1fbWV0YS5N ZXRhLAotLSAgICAiOiIsIHBpcGV3aXJlX3R5cGUtPnBhcmFtX21ldGEudHlwZSwgIkkiLCBwaXBl d2lyZV90eXBlLT5tZXRhLlZpZGVvQ3JvcCwKLS0gICAgIjoiLCBwaXBld2lyZV90eXBlLT5wYXJh bV9tZXRhLnNpemUsICJpIiwgc2l6ZW9mIChzdHJ1Y3Qgc3BhX21ldGFfdmlkZW9fY3JvcCkpOwot KyAgICBTUEFfVFlQRV9PQkpFQ1RfUGFyYW1NZXRhLCBTUEFfUEFSQU1fTWV0YSwKLSsgICAgU1BB X1BBUkFNX01FVEFfdHlwZSwgU1BBX1BPRF9JZCAoU1BBX01FVEFfVmlkZW9Dcm9wKSwKLSsgICAg U1BBX1BBUkFNX01FVEFfc2l6ZSwgU1BBX1BPRF9JbnQgKHNpemVvZiAoc3RydWN0IHNwYV9tZXRh X3JlZ2lvbikpKTsKLQotLSAgcGFyYW1zWzJdID0gc3BhX3BvZF9idWlsZGVyX29iamVjdCAoCi0r ICBwYXJhbXNbMl0gPSBzcGFfcG9kX2J1aWxkZXJfYWRkX29iamVjdCAoCi0gICAgICZwb2RfYnVp bGRlciwKLS0gICAgcGlwZXdpcmVfdHlwZS0+cGFyYW0uaWRNZXRhLCBwaXBld2lyZV90eXBlLT5w YXJhbV9tZXRhLk1ldGEsCi0tICAgICI6IiwgcGlwZXdpcmVfdHlwZS0+cGFyYW1fbWV0YS50eXBl LCAiSSIsIHByaXYtPnNwYV90eXBlLm1ldGFfY3Vyc29yLAotLSAgICAiOiIsIHBpcGV3aXJlX3R5 cGUtPnBhcmFtX21ldGEuc2l6ZSwgImkiLCBDVVJTT1JfTUVUQV9TSVpFICg2NCwgNjQpKTsKLSsg ICAgU1BBX1RZUEVfT0JKRUNUX1BhcmFtTWV0YSwgU1BBX1BBUkFNX01ldGEsCi0rICAgIFNQQV9Q QVJBTV9NRVRBX3R5cGUsIFNQQV9QT0RfSWQgKFNQQV9NRVRBX0N1cnNvciksCi0rICAgIFNQQV9Q QVJBTV9NRVRBX3NpemUsIFNQQV9QT0RfSW50IChDVVJTT1JfTUVUQV9TSVpFICg2NCwgNjQpKSk7 Ci0KLS0gIHB3X3N0cmVhbV9maW5pc2hfZm9ybWF0IChwcml2LT5waXBld2lyZV9zdHJlYW0sIDAs Ci0tICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFyYW1zLCBHX05fRUxFTUVOVFMgKHBhcmFt cykpOwotKyAgcHdfc3RyZWFtX3VwZGF0ZV9wYXJhbXMgKHByaXYtPnBpcGV3aXJlX3N0cmVhbSwg cGFyYW1zLCBHX05fRUxFTUVOVFMgKHBhcmFtcykpOwotIH0KLQotIHN0YXRpYyBjb25zdCBzdHJ1 Y3QgcHdfc3RyZWFtX2V2ZW50cyBzdHJlYW1fZXZlbnRzID0gewotICAgUFdfVkVSU0lPTl9TVFJF QU1fRVZFTlRTLAotICAgLnN0YXRlX2NoYW5nZWQgPSBvbl9zdHJlYW1fc3RhdGVfY2hhbmdlZCwK LS0gIC5mb3JtYXRfY2hhbmdlZCA9IG9uX3N0cmVhbV9mb3JtYXRfY2hhbmdlZCwKLSsgIC5wYXJh bV9jaGFuZ2VkID0gb25fc3RyZWFtX3BhcmFtX2NoYW5nZWQsCi0gfTsKLQotIHN0YXRpYyBzdHJ1 Y3QgcHdfc3RyZWFtICoKLUBAIC02NTIsOCArNjM0LDYgQEAgY3JlYXRlX3BpcGV3aXJlX3N0cmVh bSAoTWV0YVNjcmVlbkNhc3RTdHJlYW1TcmMgICpzcmMsCi0gICB1aW50OF90IGJ1ZmZlclsxMDI0 XTsKLSAgIHN0cnVjdCBzcGFfcG9kX2J1aWxkZXIgcG9kX2J1aWxkZXIgPQotICAgICBTUEFfUE9E X0JVSUxERVJfSU5JVCAoYnVmZmVyLCBzaXplb2YgKGJ1ZmZlcikpOwotLSAgTWV0YVNwYVR5cGUg KnNwYV90eXBlID0gJnByaXYtPnNwYV90eXBlOwotLSAgc3RydWN0IHB3X3R5cGUgKnBpcGV3aXJl X3R5cGUgPSBwcml2LT5waXBld2lyZV90eXBlOwotICAgZmxvYXQgZnJhbWVfcmF0ZTsKLSAgIE1l dGFGcmFjdGlvbiBmcmFtZV9yYXRlX2ZyYWN0aW9uOwotICAgc3RydWN0IHNwYV9mcmFjdGlvbiBt YXhfZnJhbWVyYXRlOwotQEAgLTY2MSw3ICs2NDEsOSBAQCBjcmVhdGVfcGlwZXdpcmVfc3RyZWFt IChNZXRhU2NyZWVuQ2FzdFN0cmVhbVNyYyAgKnNyYywKLSAgIGNvbnN0IHN0cnVjdCBzcGFfcG9k ICpwYXJhbXNbMV07Ci0gICBpbnQgcmVzdWx0OwotCi0tICBwaXBld2lyZV9zdHJlYW0gPSBwd19z dHJlYW1fbmV3IChwcml2LT5waXBld2lyZV9yZW1vdGUsCi0rICBwcml2LT5ub2RlX2lkID0gU1BB X0lEX0lOVkFMSUQ7Ci0rCi0rICBwaXBld2lyZV9zdHJlYW0gPSBwd19zdHJlYW1fbmV3IChwcml2 LT5waXBld2lyZV9jb3JlLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1l dGEtc2NyZWVuLWNhc3Qtc3JjIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IE5VTEwpOwotICAgaWYgKCFwaXBld2lyZV9zdHJlYW0pCi1AQCAtNjgyLDE3ICs2NjQsMTcgQEAg Y3JlYXRlX3BpcGV3aXJlX3N0cmVhbSAoTWV0YVNjcmVlbkNhc3RTdHJlYW1TcmMgICpzcmMsCi0g ICBtYXhfZnJhbWVyYXRlID0gU1BBX0ZSQUNUSU9OIChmcmFtZV9yYXRlX2ZyYWN0aW9uLm51bSwK LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZyYW1lX3JhdGVfZnJhY3Rpb24uZGVu b20pOwotCi0tICBwYXJhbXNbMF0gPSBzcGFfcG9kX2J1aWxkZXJfb2JqZWN0ICgKLSsgIHBhcmFt c1swXSA9IHNwYV9wb2RfYnVpbGRlcl9hZGRfb2JqZWN0ICgKLSAgICAgJnBvZF9idWlsZGVyLAot LSAgICBwaXBld2lyZV90eXBlLT5wYXJhbS5pZEVudW1Gb3JtYXQsIHBpcGV3aXJlX3R5cGUtPnNw YV9mb3JtYXQsCi0tICAgICJJIiwgc3BhX3R5cGUtPm1lZGlhX3R5cGUudmlkZW8sCi0tICAgICJJ Iiwgc3BhX3R5cGUtPm1lZGlhX3N1YnR5cGUucmF3LAotLSAgICAiOiIsIHNwYV90eXBlLT5mb3Jt YXRfdmlkZW8uZm9ybWF0LCAiSSIsIHNwYV90eXBlLT52aWRlb19mb3JtYXQuQkdSeCwKLS0gICAg IjoiLCBzcGFfdHlwZS0+Zm9ybWF0X3ZpZGVvLnNpemUsICJSIiwgJlNQQV9SRUNUQU5HTEUgKHBy aXYtPnN0cmVhbV93aWR0aCwKLS0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHByaXYtPnN0cmVhbV9oZWlnaHQpLAotLSAgICAiOiIsIHNw YV90eXBlLT5mb3JtYXRfdmlkZW8uZnJhbWVyYXRlLCAiRiIsICZTUEFfRlJBQ1RJT04gKDAsIDEp LAotLSAgICAiOiIsIHNwYV90eXBlLT5mb3JtYXRfdmlkZW8ubWF4X2ZyYW1lcmF0ZSwgIkZydSIs ICZtYXhfZnJhbWVyYXRlLAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIFBST1BfUkFOR0UgKCZtaW5fZnJhbWVyYXRlLAotKyAgICBTUEFfVFlQ RV9PQkpFQ1RfRm9ybWF0LCBTUEFfUEFSQU1fRW51bUZvcm1hdCwKLSsgICAgU1BBX0ZPUk1BVF9t ZWRpYVR5cGUsIFNQQV9QT0RfSWQgKFNQQV9NRURJQV9UWVBFX3ZpZGVvKSwKLSsgICAgU1BBX0ZP Uk1BVF9tZWRpYVN1YnR5cGUsIFNQQV9QT0RfSWQgKFNQQV9NRURJQV9TVUJUWVBFX3JhdyksCi0r ICAgIFNQQV9GT1JNQVRfVklERU9fZm9ybWF0LCBTUEFfUE9EX0lkIChTUEFfVklERU9fRk9STUFU X0JHUngpLAotKyAgICBTUEFfRk9STUFUX1ZJREVPX3NpemUsIFNQQV9QT0RfUmVjdGFuZ2xlICgm U1BBX1JFQ1RBTkdMRSAocHJpdi0+c3RyZWFtX3dpZHRoLAotKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJpdi0+c3RyZWFtX2hl aWdodCkpLAotKyAgICBTUEFfRk9STUFUX1ZJREVPX2ZyYW1lcmF0ZSwgU1BBX1BPRF9GcmFjdGlv biAoJlNQQV9GUkFDVElPTiAoMCwgMSkpLAotKyAgICBTUEFfRk9STUFUX1ZJREVPX21heEZyYW1l cmF0ZSwgU1BBX1BPRF9DSE9JQ0VfUkFOR0VfRnJhY3Rpb24gKCZtYXhfZnJhbWVyYXRlLAotKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICZtaW5fZnJhbWVyYXRlLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZtYXhfZnJhbWVyYXRlKSk7Ci0KLSAg IHB3X3N0cmVhbV9hZGRfbGlzdGVuZXIgKHBpcGV3aXJlX3N0cmVhbSwKLUBAIC03MDIsNyArNjg0 LDcgQEAgY3JlYXRlX3BpcGV3aXJlX3N0cmVhbSAoTWV0YVNjcmVlbkNhc3RTdHJlYW1TcmMgICpz cmMsCi0KLSAgIHJlc3VsdCA9IHB3X3N0cmVhbV9jb25uZWN0IChwaXBld2lyZV9zdHJlYW0sCi0g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUFdfRElSRUNUSU9OX09VVFBVVCwKLS0gICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLAotKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIFNQQV9JRF9JTlZBTElELAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChQ V19TVFJFQU1fRkxBR19EUklWRVIgfAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQ V19TVFJFQU1fRkxBR19NQVBfQlVGRkVSUyksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgcGFyYW1zLCBHX05fRUxFTUVOVFMgKHBhcmFtcykpOwotQEAgLTcxNyw0MCArNjk5LDE4IEBA IGNyZWF0ZV9waXBld2lyZV9zdHJlYW0gKE1ldGFTY3JlZW5DYXN0U3RyZWFtU3JjICAqc3JjLAot IH0KLQotIHN0YXRpYyB2b2lkCi0tb25fc3RhdGVfY2hhbmdlZCAodm9pZCAgICAgICAgICAgICAg ICAgKmRhdGEsCi0tICAgICAgICAgICAgICAgICAgZW51bSBwd19yZW1vdGVfc3RhdGUgIG9sZCwK LS0gICAgICAgICAgICAgICAgICBlbnVtIHB3X3JlbW90ZV9zdGF0ZSAgc3RhdGUsCi0tICAgICAg ICAgICAgICAgICAgY29uc3QgY2hhciAgICAgICAgICAgKmVycm9yX21lc3NhZ2UpCi0rb25fY29y ZV9lcnJvciAodm9pZCAgICAgICAqZGF0YSwKLSsgICAgICAgICAgICAgICB1aW50MzJfdCAgICBp ZCwKLSsJICAgICAgIGludCAgICAgICAgIHNlcSwKLSsJICAgICAgIGludCAgICAgICAgIHJlcywK LSsJICAgICAgIGNvbnN0IGNoYXIgKm1lc3NhZ2UpCi0gewotICAgTWV0YVNjcmVlbkNhc3RTdHJl YW1TcmMgKnNyYyA9IGRhdGE7Ci0tICBNZXRhU2NyZWVuQ2FzdFN0cmVhbVNyY1ByaXZhdGUgKnBy aXYgPQotLSAgICBtZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9zcmNfZ2V0X2luc3RhbmNlX3ByaXZh dGUgKHNyYyk7Ci0tICBzdHJ1Y3QgcHdfc3RyZWFtICpwaXBld2lyZV9zdHJlYW07Ci0tICBHRXJy b3IgKmVycm9yID0gTlVMTDsKLQotLSAgc3dpdGNoIChzdGF0ZSkKLS0gICAgewotLSAgICBjYXNl IFBXX1JFTU9URV9TVEFURV9FUlJPUjoKLS0gICAgICBnX3dhcm5pbmcgKCJwaXBld2lyZSByZW1v dGUgZXJyb3I6ICVzXG4iLCBlcnJvcl9tZXNzYWdlKTsKLS0gICAgICBtZXRhX3NjcmVlbl9jYXN0 X3N0cmVhbV9zcmNfbm90aWZ5X2Nsb3NlZCAoc3JjKTsKLS0gICAgICBicmVhazsKLS0gICAgY2Fz ZSBQV19SRU1PVEVfU1RBVEVfQ09OTkVDVEVEOgotLSAgICAgIHBpcGV3aXJlX3N0cmVhbSA9IGNy ZWF0ZV9waXBld2lyZV9zdHJlYW0gKHNyYywgJmVycm9yKTsKLS0gICAgICBpZiAoIXBpcGV3aXJl X3N0cmVhbSkKLS0gICAgICAgIHsKLS0gICAgICAgICAgZ193YXJuaW5nICgiQ291bGQgbm90IGNy ZWF0ZSBwaXBld2lyZSBzdHJlYW06ICVzIiwgZXJyb3ItPm1lc3NhZ2UpOwotLSAgICAgICAgICBn X2Vycm9yX2ZyZWUgKGVycm9yKTsKLS0gICAgICAgICAgbWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1f c3JjX25vdGlmeV9jbG9zZWQgKHNyYyk7Ci0tICAgICAgICB9Ci0tICAgICAgZWxzZQotLSAgICAg ICAgewotLSAgICAgICAgICBwcml2LT5waXBld2lyZV9zdHJlYW0gPSBwaXBld2lyZV9zdHJlYW07 Ci0tICAgICAgICB9Ci0tICAgICAgYnJlYWs7Ci0tICAgIGNhc2UgUFdfUkVNT1RFX1NUQVRFX1VO Q09OTkVDVEVEOgotLSAgICBjYXNlIFBXX1JFTU9URV9TVEFURV9DT05ORUNUSU5HOgotLSAgICAg IGJyZWFrOwotLSAgICB9Ci0rICBnX3dhcm5pbmcgKCJwaXBld2lyZSByZW1vdGUgZXJyb3I6IGlk OiV1ICVzIiwgaWQsIG1lc3NhZ2UpOwotKwotKyAgaWYgKGlkID09IFBXX0lEX0NPUkUgJiYgcmVz ID09IC1FUElQRSkKLSsgICAgbWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1fc3JjX25vdGlmeV9jbG9z ZWQgKHNyYyk7Ci0gfQotCi0gc3RhdGljIGdib29sZWFuCi1AQCAtNzkzLDE3ICs3NTMsNiBAQCBz dGF0aWMgR1NvdXJjZUZ1bmNzIHBpcGV3aXJlX3NvdXJjZV9mdW5jcyA9Ci0gICBwaXBld2lyZV9s b29wX3NvdXJjZV9maW5hbGl6ZQotIH07Ci0KLS1zdGF0aWMgdm9pZAotLWluaXRfc3BhX3R5cGUg KE1ldGFTcGFUeXBlICAgICAgICAgKnR5cGUsCi0tICAgICAgICAgICAgICAgc3RydWN0IHNwYV90 eXBlX21hcCAqbWFwKQotLXsKLS0gIHNwYV90eXBlX21lZGlhX3R5cGVfbWFwIChtYXAsICZ0eXBl LT5tZWRpYV90eXBlKTsKLS0gIHNwYV90eXBlX21lZGlhX3N1YnR5cGVfbWFwIChtYXAsICZ0eXBl LT5tZWRpYV9zdWJ0eXBlKTsKLS0gIHNwYV90eXBlX2Zvcm1hdF92aWRlb19tYXAgKG1hcCwgJnR5 cGUtPmZvcm1hdF92aWRlbyk7Ci0tICBzcGFfdHlwZV92aWRlb19mb3JtYXRfbWFwIChtYXAsICZ0 eXBlLT52aWRlb19mb3JtYXQpOwotLSAgdHlwZS0+bWV0YV9jdXJzb3IgPSBzcGFfdHlwZV9tYXBf Z2V0X2lkKG1hcCwgU1BBX1RZUEVfTUVUQV9fQ3Vyc29yKTsKLS19Ci0tCi0gc3RhdGljIE1ldGFQ aXBlV2lyZVNvdXJjZSAqCi0gY3JlYXRlX3BpcGV3aXJlX3NvdXJjZSAodm9pZCkKLSB7Ci1AQCAt ODI5LDkgKzc3OCw5IEBAIGNyZWF0ZV9waXBld2lyZV9zb3VyY2UgKHZvaWQpCi0gICByZXR1cm4g cGlwZXdpcmVfc291cmNlOwotIH0KLQotLXN0YXRpYyBjb25zdCBzdHJ1Y3QgcHdfcmVtb3RlX2V2 ZW50cyByZW1vdGVfZXZlbnRzID0gewotLSAgUFdfVkVSU0lPTl9SRU1PVEVfRVZFTlRTLAotLSAg LnN0YXRlX2NoYW5nZWQgPSBvbl9zdGF0ZV9jaGFuZ2VkLAotK3N0YXRpYyBjb25zdCBzdHJ1Y3Qg cHdfY29yZV9ldmVudHMgY29yZV9ldmVudHMgPSB7Ci0rICBQV19WRVJTSU9OX0NPUkVfRVZFTlRT LAotKyAgLmVycm9yID0gb25fY29yZV9lcnJvciwKLSB9OwotCi0gc3RhdGljIGdib29sZWFuCi1A QCAtODUxLDM3ICs4MDAsMzEgQEAgbWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1fc3JjX2luaXRhYmxl X2luaXQgKEdJbml0YWJsZSAgICAgKmluaXRhYmxlLAotICAgICAgIHJldHVybiBGQUxTRTsKLSAg ICAgfQotCi0tICBwcml2LT5waXBld2lyZV9jb3JlID0gcHdfY29yZV9uZXcgKHByaXYtPnBpcGV3 aXJlX3NvdXJjZS0+cGlwZXdpcmVfbG9vcCwKLS0gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgTlVMTCk7Ci0tICBpZiAoIXByaXYtPnBpcGV3aXJlX2NvcmUpCi0rICBwcml2LT5w aXBld2lyZV9jb250ZXh0ID0gcHdfY29udGV4dF9uZXcgKHByaXYtPnBpcGV3aXJlX3NvdXJjZS0+ cGlwZXdpcmVfbG9vcCwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgTlVMTCwgMCk7Ci0rICBpZiAoIXByaXYtPnBpcGV3aXJlX2NvbnRleHQpCi0gICAgIHsKLSAg ICAgICBnX3NldF9lcnJvciAoZXJyb3IsIEdfSU9fRVJST1IsIEdfSU9fRVJST1JfRkFJTEVELAot LSAgICAgICAgICAgICAgICAgICAiRmFpbGVkIHRvIGNyZWF0ZSBwaXBld2lyZSBjb3JlIik7Ci0r ICAgICAgICAgICAgICAgICAgICJGYWlsZWQgdG8gY3JlYXRlIHBpcGV3aXJlIGNvbnRleHQiKTsK LSAgICAgICByZXR1cm4gRkFMU0U7Ci0gICAgIH0KLQotLSAgcHJpdi0+cGlwZXdpcmVfcmVtb3Rl ID0gcHdfcmVtb3RlX25ldyAocHJpdi0+cGlwZXdpcmVfY29yZSwgTlVMTCwgMCk7Ci0tICBpZiAo IXByaXYtPnBpcGV3aXJlX3JlbW90ZSkKLSsgIHByaXYtPnBpcGV3aXJlX2NvcmUgPSBwd19jb250 ZXh0X2Nvbm5lY3QgKHByaXYtPnBpcGV3aXJlX2NvbnRleHQsIE5VTEwsIDApOwotKyAgaWYgKCFw cml2LT5waXBld2lyZV9jb3JlKQotICAgICB7Ci0gICAgICAgZ19zZXRfZXJyb3IgKGVycm9yLCBH X0lPX0VSUk9SLCBHX0lPX0VSUk9SX0ZBSUxFRCwKLS0gICAgICAgICAgICAgICAgICAgIkNvdWxk bid0IGNyZWF0IHBpcGV3aXJlIHJlbW90ZSIpOwotKyAgICAgICAgICAgICAgICAgICAiQ291bGRu J3QgY29ubmVjdCBwaXBld2lyZSBjb250ZXh0Iik7Ci0gICAgICAgcmV0dXJuIEZBTFNFOwotICAg ICB9Ci0KLS0gIHB3X3JlbW90ZV9hZGRfbGlzdGVuZXIgKHByaXYtPnBpcGV3aXJlX3JlbW90ZSwK LS0gICAgICAgICAgICAgICAgICAgICAgICAgICZwcml2LT5waXBld2lyZV9yZW1vdGVfbGlzdGVu ZXIsCi0tICAgICAgICAgICAgICAgICAgICAgICAgICAmcmVtb3RlX2V2ZW50cywKLS0gICAgICAg ICAgICAgICAgICAgICAgICAgIHNyYyk7Ci0rICBwd19jb3JlX2FkZF9saXN0ZW5lciAocHJpdi0+ cGlwZXdpcmVfY29yZSwKLSsgICAgICAgICAgICAgICAgICAgICAgICAmcHJpdi0+cGlwZXdpcmVf Y29yZV9saXN0ZW5lciwKLSsgICAgICAgICAgICAgICAgICAgICAgICAmY29yZV9ldmVudHMsCi0r ICAgICAgICAgICAgICAgICAgICAgICAgc3JjKTsKLQotLSAgcHJpdi0+cGlwZXdpcmVfdHlwZSA9 IHB3X2NvcmVfZ2V0X3R5cGUgKHByaXYtPnBpcGV3aXJlX2NvcmUpOwotLSAgaW5pdF9zcGFfdHlw ZSAoJnByaXYtPnNwYV90eXBlLCBwcml2LT5waXBld2lyZV90eXBlLT5tYXApOwotLQotLSAgaWYg KHB3X3JlbW90ZV9jb25uZWN0IChwcml2LT5waXBld2lyZV9yZW1vdGUpICE9IDApCi0tICAgIHsK LS0gICAgICBnX3NldF9lcnJvciAoZXJyb3IsIEdfSU9fRVJST1IsIEdfSU9fRVJST1JfRkFJTEVE LAotLSAgICAgICAgICAgICAgICAgICAiQ291bGRuJ3QgY29ubmVjdCBwaXBld2lyZSByZW1vdGUi KTsKLS0gICAgICByZXR1cm4gRkFMU0U7Ci0tICAgIH0KLSsgIHByaXYtPnBpcGV3aXJlX3N0cmVh bSA9IGNyZWF0ZV9waXBld2lyZV9zdHJlYW0gKHNyYywgZXJyb3IpOwotKyAgaWYgKCFwcml2LT5w aXBld2lyZV9zdHJlYW0pCi0rICAgIHJldHVybiBGQUxTRTsKLQotICAgcmV0dXJuIFRSVUU7Ci0g fQotQEAgLTkxMiw4ICs4NTUsOCBAQCBtZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9zcmNfZmluYWxp emUgKEdPYmplY3QgKm9iamVjdCkKLSAgICAgbWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1fc3JjX2Rp c2FibGUgKHNyYyk7Ci0KLSAgIGdfY2xlYXJfcG9pbnRlciAoJnByaXYtPnBpcGV3aXJlX3N0cmVh bSwgcHdfc3RyZWFtX2Rlc3Ryb3kpOwotLSAgZ19jbGVhcl9wb2ludGVyICgmcHJpdi0+cGlwZXdp cmVfcmVtb3RlLCBwd19yZW1vdGVfZGVzdHJveSk7Ci0tICBnX2NsZWFyX3BvaW50ZXIgKCZwcml2 LT5waXBld2lyZV9jb3JlLCBwd19jb3JlX2Rlc3Ryb3kpOwotKyAgZ19jbGVhcl9wb2ludGVyICgm cHJpdi0+cGlwZXdpcmVfY29yZSwgcHdfY29yZV9kaXNjb25uZWN0KTsKLSsgIGdfY2xlYXJfcG9p bnRlciAoJnByaXYtPnBpcGV3aXJlX2NvbnRleHQsIHB3X2NvbnRleHRfZGVzdHJveSk7Ci0gICBn X3NvdXJjZV9kZXN0cm95ICgmcHJpdi0+cGlwZXdpcmVfc291cmNlLT5iYXNlKTsKLQotICAgR19P QkpFQ1RfQ0xBU1MgKG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19wYXJlbnRfY2xhc3MpLT5m aW5hbGl6ZSAob2JqZWN0KTsKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbXV0dGVyL3RlbXBsYXRlIGIv c3JjcGtncy9tdXR0ZXIvdGVtcGxhdGUKaW5kZXggODA2YTNiZWY5ZjAuLjEzMmNkOWRkNjQ1IDEw MDY0NAotLS0gYS9zcmNwa2dzL211dHRlci90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL211dHRlci90 ZW1wbGF0ZQpAQCAtMSwzNCArMSwzNSBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnbXV0dGVyJwog cGtnbmFtZT1tdXR0ZXIKLXZlcnNpb249My4zNC4xCi1yZXZpc2lvbj0zCit2ZXJzaW9uPTMuMzYu MworcmV2aXNpb249MQogYnVpbGRfaGVscGVyPSJnaXIiCiBidWlsZF9zdHlsZT1tZXNvbgogY29u ZmlndXJlX2FyZ3M9Ii1EZWdsX2RldmljZT10cnVlIC1EdWRldj10cnVlIC1EbmF0aXZlX2JhY2tl bmQ9dHJ1ZQotIC1EcHJvZmlsZXI9ZmFsc2UgLURpbnRyb3NwZWN0aW9uPXRydWUgLUR4d2F5bGFu ZF9wYXRoPS91c3IvYmluL1h3YXlsYW5kIgorIC1EcHJvZmlsZXI9ZmFsc2UgLURpbnRyb3NwZWN0 aW9uPXRydWUgLUR4d2F5bGFuZF9wYXRoPS91c3IvYmluL1h3YXlsYW5kCisgLUR4d2F5bGFuZF9p bml0ZmQ9ZGlzYWJsZWQiCiBob3N0bWFrZWRlcGVuZHM9ImdldHRleHQgZ2xpYi1kZXZlbCBwa2ct Y29uZmlnIHplbml0eSB3YXlsYW5kLWRldmVsIHhvcmctc2VydmVyIgotbWFrZWRlcGVuZHM9ImVs b2dpbmQtZGV2ZWwgZ2xpYi1kZXZlbCBnbm9tZS1kZXNrdG9wLWRldmVsIGpzb24tZ2xpYi1kZXZl bAotIGxpYmdsaWItZGV2ZWwgbGliU00tZGV2ZWwgbGliWHRzdC1kZXZlbCBsaWJjYW5iZXJyYS1k ZXZlbCBsaWJpbnB1dC1kZXZlbAotIE1lc2FMaWItZGV2ZWwgcGlwZXdpcmUtZGV2ZWwgc3RhcnR1 cC1ub3RpZmljYXRpb24tZGV2ZWwgd2F5bGFuZC1wcm90b2NvbHMKLSBnbm9tZS1zZXR0aW5ncy1k YWVtb24tZGV2ZWwiCittYWtlZGVwZW5kcz0iZWxvZ2luZC1kZXZlbCBnbGliLWRldmVsIGdub21l LWRlc2t0b3AtZGV2ZWwgZ3JhcGhlbmUtZGV2ZWwKKyBqc29uLWdsaWItZGV2ZWwgbGliZ2xpYi1k ZXZlbCBsaWJTTS1kZXZlbCBsaWJYdHN0LWRldmVsIGxpYmNhbmJlcnJhLWRldmVsCisgbGliaW5w dXQtZGV2ZWwgTWVzYUxpYi1kZXZlbCBwaXBld2lyZS1kZXZlbCBzdGFydHVwLW5vdGlmaWNhdGlv bi1kZXZlbAorIHdheWxhbmQtcHJvdG9jb2xzIGdub21lLXNldHRpbmdzLWRhZW1vbi1kZXZlbCIK IGRlcGVuZHM9ImRlc2t0b3AtZmlsZS11dGlscyB6ZW5pdHkiCiBzaG9ydF9kZXNjPSJMaWdodHdl aWdodCBHVEsrMyB3aW5kb3cgbWFuYWdlciIKIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0 b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9 Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcvUHJvamVjdHMvTXV0dGVyLyIKIGRpc3RmaWxlcz0iJHtH Tk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259 LnRhci54eiIKLWNoZWNrc3VtPWJhMTgyNmNmODhiZGI4MWU2Mzk0M2NhYzAxNGE4ZThiY2YzNWVj MTc4YzUzMjY0NDAxZjljNzJmZGVhYjc1OGUKLXNobGliX3Byb3ZpZGVzPSJsaWJtdXR0ZXItY2x1 dHRlci01LnNvIGxpYm11dHRlci1jb2dsLTUuc28KLSBsaWJtdXR0ZXItY29nbC1wYW5nby01LnNv IGxpYm11dHRlci1jb2dsLXBhdGgtNS5zbyIKK2NoZWNrc3VtPTZhY2U3NDJlOGQ4ODkwODNkM2Mz MmQ3OTU0M2Q5MDIyNDgzZjBiMDBiNjMwZWNlYWI1ZTM4MDRhYWQzYWVlZDIKK3NobGliX3Byb3Zp ZGVzPSJsaWJtdXR0ZXItY2x1dHRlci02LnNvIGxpYm11dHRlci1jb2dsLTYuc28KKyBsaWJtdXR0 ZXItY29nbC1wYW5nby02LnNvIGxpYm11dHRlci1jb2dsLXBhdGgtNi5zbyIKIAogbXV0dGVyLWRl dmVsX3BhY2thZ2UoKSB7Ci0JZGVwZW5kcz0iZ3NldHRpbmdzLWRlc2t0b3Atc2NoZW1hcyBndGsr My1kZXZlbCBjbHV0dGVyLWRldmVsIGxpYlgxMS1kZXZlbAotCSBsaWJYdHN0LWRldmVsIG11dHRl ci0ke3ZlcnNpb259XyR7cmV2aXNpb259IgorCWRlcGVuZHM9ImdzZXR0aW5ncy1kZXNrdG9wLXNj aGVtYXMgZ3JhcGhlbmUtZGV2ZWwgZ3RrKzMtZGV2ZWwgY2x1dHRlci1kZXZlbAorCSBsaWJYMTEt ZGV2ZWwgbGliWHRzdC1kZXZlbCBtdXR0ZXItJHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIKIAlzaG9y dF9kZXNjKz0iIC0gZGV2ZWxvcG1lbnQgZmlsZXMiCiAJcGtnX2luc3RhbGwoKSB7CiAJCXZtb3Zl IHVzci9pbmNsdWRlCiAJCXZtb3ZlIHVzci9saWIvcGtnY29uZmlnCi0JCXZtb3ZlICJ1c3IvbGli L211dHRlci01LyouZ2lyIgorCQl2bW92ZSAidXNyL2xpYi9tdXR0ZXItNi8qLmdpciIKIAkJdm1v dmUgInVzci9saWIvKi5zbyIKIAl9CiB9CgpGcm9tIGEzNjgxZWU0ZDIyMjcyZTI5ZWVkZTFmODgx YjAzZGVjMTBiNTkxZmUgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFi aWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFR1ZSwgMTYgSnVuIDIwMjAgMTk6NDg6MzggKzA2MDAK U3ViamVjdDogW1BBVENIIDM4LzY1XSBnbm9tZS1zaGVsbDogdXBkYXRlIHRvIDMuMzYuMy4KCi0t LQogc3JjcGtncy9nbm9tZS1zaGVsbC90ZW1wbGF0ZSB8IDggKysrKy0tLS0KIDEgZmlsZSBjaGFu Z2VkLCA0IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtn cy9nbm9tZS1zaGVsbC90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25vbWUtc2hlbGwvdGVtcGxhdGUKaW5k ZXggOTZjNWI4MGExOTQuLmVlNGM2Mjg4ZjVmIDEwMDY0NAotLS0gYS9zcmNwa2dzL2dub21lLXNo ZWxsL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtc2hlbGwvdGVtcGxhdGUKQEAgLTEsMTIg KzEsMTIgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLXNoZWxsJwogcGtnbmFtZT1nbm9t ZS1zaGVsbAotdmVyc2lvbj0zLjM0LjEKK3ZlcnNpb249My4zNi4zCiByZXZpc2lvbj0xCiBidWls ZF9zdHlsZT1tZXNvbgogYnVpbGRfaGVscGVyPWdpcgogY29uZmlndXJlX2FyZ3M9Ii1Ec3lzdGVt ZD1mYWxzZSIKLWhvc3RtYWtlZGVwZW5kcz0iZ29iamVjdC1pbnRyb3NwZWN0aW9uIGd0ay1kb2Mg bGlieHNsdCBwa2ctY29uZmlnIHB5dGhvbjMgc2Fzc2MKLSBhc2NpaWRvYyBwZXJsIGdsaWItZGV2 ZWwgbXV0dGVyLWRldmVsIgoraG9zdG1ha2VkZXBlbmRzPSJnZXR0ZXh0IGdvYmplY3QtaW50cm9z cGVjdGlvbiBndGstZG9jIGxpYnhzbHQgcGtnLWNvbmZpZyBweXRob24zIHNhc3NjCisgYXNjaWlk b2MgcGVybCBnanMtZGV2ZWwgZ2xpYi1kZXZlbCBtdXR0ZXItZGV2ZWwiCiBtYWtlZGVwZW5kcz0i YXQtc3BpMi1hdGsgY2FyaWJvdS1kZXZlbCBldm9sdXRpb24tZGF0YS1zZXJ2ZXItZGV2ZWwgZm9s a3MtZGV2ZWwKICBnY3ItZGV2ZWwgZ2pzLWRldmVsIGdub21lLWJsdWV0b290aC1kZXZlbCBnbm9t ZS1jb250cm9sLWNlbnRlci1kZXZlbCBnbm9tZS1kZXNrdG9wLWRldmVsCiAgZ25vbWUtbWVudXMt ZGV2ZWwgZ3NldHRpbmdzLWRlc2t0b3Atc2NoZW1hcy1kZXZlbCBnc3RyZWFtZXIxLWRldmVsIGd0 ayszLWRldmVsCkBAIC0yMSw0ICsyMSw0IEBAIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBo b21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9Qcm9qZWN0cy9Hbm9tZVNoZWxsIgogY2hh bmdlbG9nPSJodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vR05PTUUvZ25vbWUtc2hl bGwvZ25vbWUtMy0zMC9ORVdTIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0v JHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09Y2Nk ODY1NTliOWM4OTdjMjE5ZDJkMmViZmRiODQxM2VmYTRjMWJlZTg0NjQyN2M3NTBjYjhhMzAxYjNm NmQxZQorY2hlY2tzdW09ODZkOGFiZjcwZmFiODlkNWQ5MzlkZDdlMzhjNTk4NzI0OTJmNDQ0Mjcy YTg1MjRkYjc5NDUwYTUxODBkNDViYgoKRnJvbSBmMmMzMzhjNTFjYmZmOWM2ZTY1MTE4OWU3MzM5 ZTI1OTJlYTM2ZGRjIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlk LjI1QG91dGxvb2suY29tPgpEYXRlOiBUdWUsIDE2IEp1biAyMDIwIDE5OjQ4OjQ2ICswNjAwClN1 YmplY3Q6IFtQQVRDSCAzOS82NV0gZ25vbWUtc2hlbGwtZXh0ZW5zaW9uczogdXBkYXRlIHRvIDMu MzYuMi4KCi0tLQogc3JjcGtncy9nbm9tZS1zaGVsbC1leHRlbnNpb25zL3RlbXBsYXRlIHwgNiAr KystLS0KIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpk aWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1zaGVsbC1leHRlbnNpb25zL3RlbXBsYXRlIGIvc3Jj cGtncy9nbm9tZS1zaGVsbC1leHRlbnNpb25zL3RlbXBsYXRlCmluZGV4IDk3MTY4YjQwZjY2Li5l MWRkNDNiYjE1MiAxMDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1zaGVsbC1leHRlbnNpb25zL3Rl bXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy90ZW1wbGF0ZQpAQCAt MSwxNSArMSwxNSBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ25vbWUtc2hlbGwtZXh0ZW5zaW9u cycKIHBrZ25hbWU9Z25vbWUtc2hlbGwtZXh0ZW5zaW9ucwotdmVyc2lvbj0zLjM0LjEKK3ZlcnNp b249My4zNi4yCiByZXZpc2lvbj0xCiBhcmNocz1ub2FyY2gKIGJ1aWxkX3N0eWxlPW1lc29uCiBj b25maWd1cmVfYXJncz0iLURleHRlbnNpb25fc2V0PWFsbCIKLWhvc3RtYWtlZGVwZW5kcz0icGtn LWNvbmZpZyIKK2hvc3RtYWtlZGVwZW5kcz0iZ2V0dGV4dCBwa2ctY29uZmlnIgogZGVwZW5kcz0i Z25vbWUtc2hlbGw+PSR7dmVyc2lvbn0gbmF1dGlsdXMgdW56aXAiCiBzaG9ydF9kZXNjPSJFeHRl bnNpb25zIGZvciBHTk9NRSBzaGVsbCwgaW5jbHVkaW5nIGNsYXNzaWMgbW9kZSIKIG1haW50YWlu ZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4w LW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcvUHJvamVjdHMvR25v bWVTaGVsbC9FeHRlbnNpb25zIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0v JHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09YjBh ZDUxMTQzYjFiZjQwZGVmNGExMGY4ZmQwYWIwZmZiNDcyMTgzMDQ4MDA3OTRlNjJjYWRkMjlkMGFj Yzc1YgorY2hlY2tzdW09OTc4MjAyZGU1MTVjZGIwM2E1ODg1ODU5YzUzODM2NmJjYThmZDc4NzYy Y2U5OGIxNzJhYzJjMDEyNmY4MDAzZgoKRnJvbSBlYTFlOTEyYWM4NDU2NjQ1MDRjMzdhN2IzYzY0 MzU1OTUxYTY3YWY4IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlk LjI1QG91dGxvb2suY29tPgpEYXRlOiBUdWUsIDE2IEp1biAyMDIwIDE5OjQ4OjUzICswNjAwClN1 YmplY3Q6IFtQQVRDSCA0MC82NV0gZ2RtOiB1cGRhdGUgdG8gMy4zNi4yLgoKLS0tCiBzcmNwa2dz L2dkbS90ZW1wbGF0ZSB8IDEwICsrKysrLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA1IGluc2VydGlv bnMoKyksIDUgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nZG0vdGVtcGxhdGUg Yi9zcmNwa2dzL2dkbS90ZW1wbGF0ZQppbmRleCBiYjViNDg2OTJkNC4uMTZiYzQzZmQwZTcgMTAw NjQ0Ci0tLSBhL3NyY3BrZ3MvZ2RtL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ2RtL3RlbXBsYXRl CkBAIC0xLDExICsxLDExIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnZG0nCiBwa2duYW1lPWdk bQotdmVyc2lvbj0zLjM0LjEKK3ZlcnNpb249My4zNi4yCiByZXZpc2lvbj0xCiBidWlsZF9oZWxw ZXI9ImdpciIKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKIGNvbmZpZ3VyZV9hcmdzPSIkKHZv cHRfZW5hYmxlIGdpciBpbnRyb3NwZWN0aW9uKQotIC0tZGlzYWJsZS1zY2hlbWFzLWNvbXBpbGUg LS1kaXNhYmxlLXN0YXRpYyAtLXdpdGgtZGVmYXVsdC1wYW0tY29uZmlnPWFyY2gKKyAtLWRpc2Fi bGUtc3RhdGljIC0td2l0aC1kZWZhdWx0LXBhbS1jb25maWc9YXJjaAogIC0td2l0aC1hdC1zcGkt cmVnaXN0cnlkLWRpcmVjdG9yeT0vdXNyL2xpYmV4ZWMgLS13aXRob3V0LXRjcC13cmFwcGVycwog IC0td2l0aC1zY3JlZW5zaG90LWRpcj0vdmFyL2xpYi9nZG0vZ3JlZXRlciAtLXNiaW5kaXI9L3Vz ci9iaW4gLS13aXRob3V0LXBseW1vdXRoCiAgLS13aXRoLXhhdXRoLWRpcj0vcnVuL2dkbSAtLXdp dGgtcGlkLWZpbGU9L3J1bi9nZG0vZ2RtLnBpZApAQCAtMTMsMTUgKzEzLDE1IEBAIGNvbmZpZ3Vy ZV9hcmdzPSIkKHZvcHRfZW5hYmxlIGdpciBpbnRyb3NwZWN0aW9uKQogaG9zdG1ha2VkZXBlbmRz PSJkY29uZiBnZXR0ZXh0IGl0c3Rvb2wgcGtnLWNvbmZpZyIKIG1ha2VkZXBlbmRzPSJhY2NvdW50 c3NlcnZpY2UtZGV2ZWwgZWxvZ2luZC1kZXZlbCBnZXR0ZXh0LWRldmVsIGdsaWItZGV2ZWwKICBp c28tY29kZXMgbGliU00tZGV2ZWwgbGliY2FuYmVycmEtZGV2ZWwgbnNzLWRldmVsIHBhbS1kZXZl bCB1cG93ZXItZGV2ZWwiCi1kZXBlbmRzPSJnbm9tZS1zZXR0aW5ncy1kYWVtb24gZ25vbWUtc2hl bGwgeG9yZy1zZXJ2ZXIgeG9yZy1zZXJ2ZXIteHdheWxhbmQKLSB4cmRiIgorZGVwZW5kcz0iZ25v bWUtc2V0dGluZ3MtZGFlbW9uIGdub21lLXNoZWxsIGdub21lLXNlc3Npb24gZ25vbWUtdGhlbWVz LWV4dHJhCisgZ3NldHRpbmdzLWRlc2t0b3Atc2NoZW1hcyB4b3JnLXNlcnZlciB4b3JnLXNlcnZl ci14d2F5bGFuZCB4cmRiIgogY2hlY2tkZXBlbmRzPSJjaGVjay1kZXZlbCIKIHNob3J0X2Rlc2M9 IkdOT01FIERpc3BsYXkgTWFuYWdlciIKIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hA dm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0 dHBzOi8vd2lraS5nbm9tZS5vcmcvUHJvamVjdHMvR0RNIgogZGlzdGZpbGVzPSIke0dOT01FX1NJ VEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6 IgotY2hlY2tzdW09ZTg1ZGY2NTdhYThkOTM2MWFmNGZiMTIyMDE0ZDhmMTIzYTkzYmZlNDVhNzY2 MmZiYTJiMzczZDgzOWRiZDhkMworY2hlY2tzdW09M2Y1NjFjMTBhZTJlNTk0MmIwMzAyNmYwMmMw YWE3ZDg3MTJlMzgyNzA4YjE3YTA5NzA4NzRkZjgxNzViODNhOAogCiBjb25mX2ZpbGVzPSIKIAkv ZXRjL2dkbS9jdXN0b20uY29uZgoKRnJvbSA4NzljYTExMWQ0MDdmZTBmOTM5MmNhYzM3NDMwNTRl YjcxMWJiYTFlIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1 QG91dGxvb2suY29tPgpEYXRlOiBUdWUsIDE2IEp1biAyMDIwIDE5OjQ5OjAwICswNjAwClN1Ympl Y3Q6IFtQQVRDSCA0MS82NV0gYnVkZ2llLWRlc2t0b3A6IHJlYnVpbGQgYWdhaW5zdAogbGliZ25v bWUtZGVza3RvcC0zLnNvLjE5CgotLS0KIC4uLi9wYXRjaGVzL011dHRlci0zLjM1LjkwLXN1cHBv cnQtMTkxOC5wYXRjaCB8IDEyNzEzICsrKysrKysrKysrKysrKysKIHNyY3BrZ3MvYnVkZ2llLWRl c2t0b3AvdGVtcGxhdGUgICAgICAgICAgICAgICB8ICAgICA5ICstCiAyIGZpbGVzIGNoYW5nZWQs IDEyNzE4IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQg c3JjcGtncy9idWRnaWUtZGVza3RvcC9wYXRjaGVzL011dHRlci0zLjM1LjkwLXN1cHBvcnQtMTkx OC5wYXRjaAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvYnVkZ2llLWRlc2t0b3AvcGF0Y2hlcy9NdXR0 ZXItMy4zNS45MC1zdXBwb3J0LTE5MTgucGF0Y2ggYi9zcmNwa2dzL2J1ZGdpZS1kZXNrdG9wL3Bh dGNoZXMvTXV0dGVyLTMuMzUuOTAtc3VwcG9ydC0xOTE4LnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAw NjQ0CmluZGV4IDAwMDAwMDAwMDAwLi5iZmYxYmFkMDM5ZgotLS0gL2Rldi9udWxsCisrKyBiL3Ny Y3BrZ3MvYnVkZ2llLWRlc2t0b3AvcGF0Y2hlcy9NdXR0ZXItMy4zNS45MC1zdXBwb3J0LTE5MTgu cGF0Y2gKQEAgLTAsMCArMSwxMjcxMyBAQAorRnJvbSA5ZDA5YTFiMTViYmY2Njc4MGNjODllZmYz YzRiODRlNjY2YjBiZmRhIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTogRGF2aWQgTW9o YW1tZWQgPGZvc3NmcmVlZG9tQHVzZXJzLm5vcmVwbHkuZ2l0aHViLmNvbT4KK0RhdGU6IFR1ZSwg MTggRmViIDIwMjAgMDY6NDA6MTIgKzAwMDAKK1N1YmplY3Q6IFtQQVRDSF0gTXV0dGVyIDMuMzYg c3VwcG9ydCAoIzE5MTgpCisKKyogQWRkIG11dHRlciAzLjM1LjIgc3VwcG9ydAorCisqIE11dHRl ciBjb21waWxlciBmbGFncyBuZWVkcyB0byBiZSBzcGVjaWZpZWQgYmVmb3JlIGRlcGVuZGVuY3kg Y2hlY2tzCisKKyogUmVnZW5lcmF0ZSB2YXBpIGZvciAzLjM1LjkwCisKK09yaWdpbjogaHR0cHM6 Ly9naXRodWIuY29tL3NvbHVzLXByb2plY3QvYnVkZ2llLWRlc2t0b3AvY29tbWl0cy85ZDA5YTFi MTViCistLS0KKyBzcmMvd20vbWVzb24uYnVpbGQgICAgICAgICAgICAgICAgfCAgIDEyICstCisg c3JjL3dtL3dtLnZhbGEgICAgICAgICAgICAgICAgICAgIHwgICAxNiArLQorIHZhcGkvQ2x1dHRl ci02Lm1ldGFkYXRhICAgICAgICAgICB8ICAyMDQgKworIHZhcGkvQ29nbC02Lm1ldGFkYXRhICAg ICAgICAgICAgICB8ICAgMjcgKworIHZhcGkvTWV0YS02Lm1ldGFkYXRhICAgICAgICAgICAgICB8 ICAgODAgKworIHZhcGkvZ3JhcGhlbmUtZ29iamVjdC0xLjAudmFwaSAgICB8ICA2OTEgKysrCisg dmFwaS9saWJtdXR0ZXItNi5kZXBzICAgICAgICAgICAgIHwgICAgNiArCisgdmFwaS9saWJtdXR0 ZXItNi52YXBpICAgICAgICAgICAgIHwgMTQ3NSArKysrKworIHZhcGkvbXV0dGVyLWNsdXR0ZXIt Ni1jdXN0b20udmFsYSB8ICAxNDcgKworIHZhcGkvbXV0dGVyLWNsdXR0ZXItNi5kZXBzICAgICAg ICB8ICAgIDQgKworIHZhcGkvbXV0dGVyLWNsdXR0ZXItNi52YXBpICAgICAgICB8IDg2ODcgKysr KysrKysrKysrKysrKysrKysrKysrKysrKysKKyB2YXBpL211dHRlci1jb2dsLTYtY3VzdG9tLnZh bGEgICAgfCAgMTI1ICsKKyB2YXBpL211dHRlci1jb2dsLTYuZGVwcyAgICAgICAgICAgfCAgICAx ICsKKyB2YXBpL211dHRlci1jb2dsLTYudmFwaSAgICAgICAgICAgfCAxMDc3ICsrKysKKyAxNCBm aWxlcyBjaGFuZ2VkLCAxMjU0OSBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorIGNyZWF0 ZSBtb2RlIDEwMDY0NCB2YXBpL0NsdXR0ZXItNi5tZXRhZGF0YQorIGNyZWF0ZSBtb2RlIDEwMDY0 NCB2YXBpL0NvZ2wtNi5tZXRhZGF0YQorIGNyZWF0ZSBtb2RlIDEwMDY0NCB2YXBpL01ldGEtNi5t ZXRhZGF0YQorIGNyZWF0ZSBtb2RlIDEwMDY0NCB2YXBpL2dyYXBoZW5lLWdvYmplY3QtMS4wLnZh cGkKKyBjcmVhdGUgbW9kZSAxMDA2NDQgdmFwaS9saWJtdXR0ZXItNi5kZXBzCisgY3JlYXRlIG1v ZGUgMTAwNjQ0IHZhcGkvbGlibXV0dGVyLTYudmFwaQorIGNyZWF0ZSBtb2RlIDEwMDY0NCB2YXBp L211dHRlci1jbHV0dGVyLTYtY3VzdG9tLnZhbGEKKyBjcmVhdGUgbW9kZSAxMDA2NDQgdmFwaS9t dXR0ZXItY2x1dHRlci02LmRlcHMKKyBjcmVhdGUgbW9kZSAxMDA2NDQgdmFwaS9tdXR0ZXItY2x1 dHRlci02LnZhcGkKKyBjcmVhdGUgbW9kZSAxMDA2NDQgdmFwaS9tdXR0ZXItY29nbC02LWN1c3Rv bS52YWxhCisgY3JlYXRlIG1vZGUgMTAwNjQ0IHZhcGkvbXV0dGVyLWNvZ2wtNi5kZXBzCisgY3Jl YXRlIG1vZGUgMTAwNjQ0IHZhcGkvbXV0dGVyLWNvZ2wtNi52YXBpCisKK2RpZmYgLS1naXQgYS9z cmMvd20vbWVzb24uYnVpbGQgYi9zcmMvd20vbWVzb24uYnVpbGQKK2luZGV4IGUzOWI4Njc4Li40 YmNjMGY5ZSAxMDA2NDQKKy0tLSBhL3NyYy93bS9tZXNvbi5idWlsZAorKysrIGIvc3JjL3dtL21l c29uLmJ1aWxkCitAQCAtMjUsMTEgKzI1LDE5IEBAIGlmIG5vdCBkZXBfbXV0dGVyLmZvdW5kKCkK KyAgICAgICAgIG1lc3NhZ2UoJ1VzaW5nIG5ldyBsaWJtdXR0ZXItNCBBQkkgZnJvbSBHTk9NRSAz LjMyJykKKyAgICAgICAgIHZhcGlfbXV0dGVyID0gJ2xpYm11dHRlci00JworICAgICBlbHNlCist ICAgICAgICBkZXBfbXV0dGVyID0gZGVwZW5kZW5jeSgnbGlibXV0dGVyLTUnLCB2ZXJzaW9uOiBn bm9tZV9taW5pbXVtX3ZlcnNpb24pCisrICAgICAgICBkZXBfbXV0dGVyID0gZGVwZW5kZW5jeSgn bGlibXV0dGVyLTUnLCB2ZXJzaW9uOiBnbm9tZV9taW5pbXVtX3ZlcnNpb24sIHJlcXVpcmVkOiBm YWxzZSkKKysgICAgICAgIGJ1ZGdpZV93bV9zdGF0dXNfdmFsYV9hcmdzICs9IFsnLUQnLCAnSEFW RV9NVVRURVJfNSddCisgICAgICAgICBpZiBkZXBfbXV0dGVyLmZvdW5kKCkKKyAgICAgICAgICAg ICBtZXNzYWdlKCdVc2luZyBuZXcgbGlibXV0dGVyLTUgQUJJIGZyb20gR05PTUUgMy4zNCcpCisg ICAgICAgICAgICAgdmFwaV9tdXR0ZXIgPSAnbGlibXV0dGVyLTUnCistICAgICAgICAgICAgYnVk Z2llX3dtX3N0YXR1c192YWxhX2FyZ3MgKz0gWyctRCcsICdIQVZFX01VVFRFUl81J10KKysgICAg ICAgIGVsc2UKKysgICAgICAgICAgICBkZXBfbXV0dGVyID0gZGVwZW5kZW5jeSgnbGlibXV0dGVy LTYnLCB2ZXJzaW9uOiBnbm9tZV9taW5pbXVtX3ZlcnNpb24pCisrICAgICAgICAgICAgYnVkZ2ll X3dtX3N0YXR1c192YWxhX2FyZ3MgKz0gWyctRCcsICdIQVZFX01VVFRFUl82J10KKysgICAgICAg ICAgICBpZiBkZXBfbXV0dGVyLmZvdW5kKCkKKysgICAgICAgICAgICAgICAgZGVwX2dyYXBoZW5l ID0gZGVwZW5kZW5jeSgnZ3JhcGhlbmUtZ29iamVjdC0xLjAnLCB2ZXJzaW9uOiAnPj0gMS4xMCcp CisrICAgICAgICAgICAgICAgIG1lc3NhZ2UoJ1VzaW5nIG5ldyBsaWJtdXR0ZXItNiBBQkkgZnJv bSBHTk9NRSAzLjM2JykKKysgICAgICAgICAgICAgICAgdmFwaV9tdXR0ZXIgPSAnbGlibXV0dGVy LTYnCisrICAgICAgICAgICAgZW5kaWYKKyAgICAgICAgIGVuZGlmCisgICAgIGVuZGlmCisgZW5k aWYKK2RpZmYgLS1naXQgYS9zcmMvd20vd20udmFsYSBiL3NyYy93bS93bS52YWxhCitpbmRleCBm ZWU4OTQ0My4uYmI0NmNkMDYgMTAwNjQ0CistLS0gYS9zcmMvd20vd20udmFsYQorKysrIGIvc3Jj L3dtL3dtLnZhbGEKK0BAIC0xMzcsOCArMTM3LDEzIEBAIHB1YmxpYyBjbGFzcyBCdWRnaWVXTSA6 IE1ldGEuUGx1Z2luCisgICAgIHB1YmxpYyBzdGF0aWMgc3RyaW5nW10/IG9sZF9hcmdzOworICAg ICBwdWJsaWMgc3RhdGljIGJvb2wgd2F5bGFuZCA9IGZhbHNlOworIAorKyNpZiBIQVZFX01VVFRF Ul82CisrICAgIHN0YXRpYyBHcmFwaGVuZS5Qb2ludCBQVl9DRU5URVI7CisrICAgIHN0YXRpYyBH cmFwaGVuZS5Qb2ludCBQVl9OT1JNOworKyNlbHNlCisgICAgIHN0YXRpYyBDbHV0dGVyLlBvaW50 IFBWX0NFTlRFUjsKKyAgICAgc3RhdGljIENsdXR0ZXIuUG9pbnQgUFZfTk9STTsKKysjZW5kaWYK KyAKKyAgICAgcHJpdmF0ZSBNZXRhLkJhY2tncm91bmRHcm91cD8gYmFja2dyb3VuZF9ncm91cDsK KyAKK0BAIC0xNzEsMTAgKzE3NiwxNSBAQCBwdWJsaWMgY2xhc3MgQnVkZ2llV00gOiBNZXRhLlBs dWdpbgorICAgICAgICAgICAgIGxpY2Vuc2UgPSAiR1BMLTIuMCIsCisgICAgICAgICAgICAgZGVz Y3JpcHRpb24gPSAiQnVkZ2llIFdpbmRvdyBNYW5hZ2VyIgorICAgICAgICAgfTsKKysjaWYgSEFW RV9NVVRURVJfNgorKyAgICAgICAgUFZfQ0VOVEVSID0gR3JhcGhlbmUuUG9pbnQoKTsKKysgICAg ICAgIFBWX05PUk0gPSBHcmFwaGVuZS5Qb2ludCgpOworKyNlbHNlCisgICAgICAgICBQVl9DRU5U RVIgPSBDbHV0dGVyLlBvaW50LmFsbG9jKCk7CisrICAgICAgICBQVl9OT1JNID0gQ2x1dHRlci5Q b2ludC5hbGxvYygpOworKyNlbmRpZgorICAgICAgICAgUFZfQ0VOVEVSLnggPSAwLjVmOworICAg ICAgICAgUFZfQ0VOVEVSLnkgPSAwLjVmOworLSAgICAgICAgUFZfTk9STSA9IENsdXR0ZXIuUG9p bnQuYWxsb2MoKTsKKyAgICAgICAgIFBWX05PUk0ueCA9IDAuMGY7CisgICAgICAgICBQVl9OT1JN LnkgPSAwLjBmOworICAgICB9CitAQCAtMTAwMSw3ICsxMDExLDExIEBAIHB1YmxpYyBjbGFzcyBC dWRnaWVXTSA6IE1ldGEuUGx1Z2luCisgICAgICAgICB0aWxlX3ByZXZpZXcuc2V0KCJzY2FsZS14 IiwgTk9USUZJQ0FUSU9OX01BUF9TQ0FMRV9YLCAic2NhbGUteSIsIE5PVElGSUNBVElPTl9NQVBf U0NBTEVfWSwKKyAgICAgICAgICAgICAicGl2b3QtcG9pbnQiLCBQVl9DRU5URVIpOworIAorKyNp ZiBIQVZFX01VVFRFUl82CisrICAgICAgICAvL3RpbGVfcHJldmlldy5sb3dlcih3aW5fYWN0b3Ip OworKyNlbHNlCisgICAgICAgICB0aWxlX3ByZXZpZXcubG93ZXIod2luX2FjdG9yKTsKKysjZW5k aWYKKyAgICAgICAgIHRpbGVfcHJldmlldy50aWxlX3JlY3QgPSB0aWxlX3JlY3Q7CisgCisgICAg ICAgICB0aWxlX3ByZXZpZXcuc2hvdygpOworZGlmZiAtLWdpdCBhL3ZhcGkvQ2x1dHRlci02Lm1l dGFkYXRhIGIvdmFwaS9DbHV0dGVyLTYubWV0YWRhdGEKK25ldyBmaWxlIG1vZGUgMTAwNjQ0Citp bmRleCAwMDAwMDAwMC4uOGMyNmExMjIKKy0tLSAvZGV2L251bGwKKysrKyBiL3ZhcGkvQ2x1dHRl ci02Lm1ldGFkYXRhCitAQCAtMCwwICsxLDIwNCBAQAorKy8vIE5vbiBtaW5pLW9iamVjdAorK0Fj dG9yQm94IHN0cnVjdAorK0NvbG9yIHN0cnVjdAorK0ZvZyBzdHJ1Y3QKKytHZW9tZXRyeSBzdHJ1 Y3QKKytLbm90IHN0cnVjdAorK1BhdGhOb2RlIHN0cnVjdAorK1BlcnNwZWN0aXZlIHN0cnVjdAor K1VuaXRzIHN0cnVjdAorK1ZlcnRleCBzdHJ1Y3QKKysKKysqLnJlZiB1bm93bmVkCisrCisraW5p dC5hcmd2IHVub3duZWQKKytpbml0X3dpdGhfYXJncworKwkuYXJndiB1bm93bmVkCisrQWN0b3IK KysJLmFwcGx5X3RyYW5zZm9ybS5tYXRyaXggcmVmCisrCS5nZXRfYWJzX2FsbG9jYXRpb25fdmVy dGljZXMudmVydHMgb3V0PWZhbHNlCisrCS5nZXRfYWxsb2NhdGlvbl92ZXJ0aWNlcy52ZXJ0cyBv dXQ9ZmFsc2UKKytDYW52YXMKKysJLm5ldyBzeW1ib2xfdHlwZT0iY29uc3RydWN0b3IiCisrRXZl bnQudHlwZSNtZXRob2QgbmFtZT0iZ2V0X3R5cGUiCisrSW1hZ2UKKysJLm5ldyBzeW1ib2xfdHlw ZT0iY29uc3RydWN0b3IiCisrCisrLy8gPz8/CisrQWN0b3IuaGFzX3BvaW50ZXIjbWV0aG9kIG5h bWU9ImdldF9oYXNfcG9pbnRlciIKKytJbml0RXJyb3IgZXJyb3Jkb21haW49ZmFsc2UKKysKKysv LyBOb3QgYWxsIGJhY2tpbmcgc3ltYm9scyBhcmUgZGVwcmVjYXRlZAorK0FjdG9yLnBpY2sgZGVw cmVjYXRlZD1mYWxzZQorKworKy8vIE51bGxhYmxlIHJldHVybiB2YWx1ZXMKKytBY3RvcgorKwku Z2V0X3BhcmVudCBudWxsYWJsZQorK3ZhbHVlX2dldF9jb2xvciBudWxsYWJsZQorKworKy8vIG1l dGhvZC92aXJ0dWFsLW1ldGhvZC9zaWduYWwgZG9uJ3QgbWF0Y2gKKytBY3RvcgorKwkuZXZlbnQj bWV0aG9kIG5hbWU9ImVtaXRfZXZlbnQiCisrCS5nZXRfcGFpbnRfdm9sdW1lI21ldGhvZCBza2lw CisrCS5xdWV1ZV9yZWRyYXcjc2lnbmFsIHNraXAKKysJLnF1ZXVlX3JlZHJhdyN2aXJ0dWFsX21l dGhvZCBza2lwCisrQ29udGFpbmVyCisrCS5hZGRfYWN0b3Igc2tpcD1mYWxzZQorK1RleHQKKysJ LmFjdGl2YXRlI21ldGhvZCBuYW1lPSJ0cnlfYWN0aXZhdGUiCisrCS5pbnNlcnRfdGV4dCNzaWdu YWwgc2tpcAorK1RleHRCdWZmZXIuZ2V0X3RleHQjdmlydHVhbF9tZXRob2QgbmFtZT0iZ2V0X3Rl eHRfd2l0aF9sZW5ndGgiCisrCisrLy8gdmlydHVhbC9hYnN0cmFjdCBkaXN0aW5jdGlvbgorK0Nv bnRhaW5lcgorKwkubG93ZXIgdmlydHVhbAorKwkucmFpc2UgdmlydHVhbAorKwkuKl9jaGlsZF9t ZXRhI3ZpcnR1YWxfbWV0aG9kIHZpcnR1YWwKKysJLmZvcmVhY2hfd2l0aF9pbnRlcm5hbHMjdmly dHVhbF9tZXRob2QgdmlydHVhbAorKworKy8vIERlZmF1bHQgdmFsdWVzCisrQ29udGFpbmVyCisr CS5sb3dlci5zaWJsaW5nIG51bGxhYmxlIGRlZmF1bHQ9bnVsbAorKwkucmFpc2Uuc2libGluZyBu dWxsYWJsZSBkZWZhdWx0PW51bGwKKytTdGFnZS5yZWFkX3BpeGVscworKwkud2lkdGggZGVmYXVs dD0tMQorKwkuaGVpZ2h0IGRlZmF1bHQ9LTEKKytUZXh0CisrCS5wb3NpdGlvbl90b19jb29yZHMu bGluZV9oZWlnaHQgZGVmYXVsdD1udWxsCisrCisrLy8gUmVwYXJlbnRlZCBmdW5jcyBtZXRob2Rz IGNhbid0IGJlIGluc3RhbmNlIG1ldGhvZHMKKytmZWF0dXJlX2F2YWlsYWJsZSBza2lwCisrZmVh dHVyZV9nZXRfYWxsIHNraXAKKysKKysvLyBTa2lwcGVkIGJ5IGctaSBmb3IgdW5rbm93biByZWFz b25zCisrTGF5b3V0TWFuYWdlcgorKwkuY3JlYXRlX2NoaWxkX21ldGEgc2tpcD1mYWxzZQorKwor Ky8vIFZhcmlhZGljIGFyZ3VtZW50cworK0FjdG9yCisrCS5hbmltYXRlIHNraXA9ZmFsc2UKKysJ LmFuaW1hdGVfd2l0aF9hbHBoYSBza2lwPWZhbHNlCisrCS5hbmltYXRlX3dpdGhfdGltZWxpbmUg c2tpcD1mYWxzZQorK0JveAorKwkucGFjayBza2lwPWZhbHNlCisrCS5wYWNrX2FmdGVyIHNraXA9 ZmFsc2UKKysJLnBhY2tfYXQgc2tpcD1mYWxzZQorKwkucGFja19iZWZvcmUgc2tpcD1mYWxzZQor K0NvbnRhaW5lcgorKwkuYWRkX3ZhbGlzdCBza2lwPWZhbHNlCisrCS5jaGlsZF9nZXQgc2tpcD1m YWxzZQorKwkuY2hpbGRfc2V0IHNraXA9ZmFsc2UKKysJLnJlbW92ZSBza2lwPWZhbHNlCisrCS5y ZW1vdmVfdmFsaXN0IHNraXA9ZmFsc2UKKytJbnRlcnZhbAorKwkubmV3IHNraXA9ZmFsc2UKKysJ LmdldF9pbnRlcnZhbCBza2lwPWZhbHNlCisrCS5zZXRfZmluYWwgc2tpcD1mYWxzZQorKwkuc2V0 X2luaXRpYWwgc2tpcD1mYWxzZQorKwkuc2V0X2ludGVydmFsIHNraXA9ZmFsc2UKKytMYXlvdXRN YW5hZ2VyCisrCS5jaGlsZF9nZXQgc2tpcD1mYWxzZQorKwkuY2hpbGRfc2V0IHNraXA9ZmFsc2UK KytTY3JpcHQKKysJLmdldF9vYmplY3RzIHNraXA9ZmFsc2UKKysKKysvLyBDaGFuZ2luZyBlcnJv ciBkb21haW5zCisrVGV4dHVyZQorKwkubmV3X2Zyb21fZmlsZSB0aHJvd3M9IkNsdXR0ZXIuVGV4 dHVyZUVycm9yIgorKworKy8vIFNraXBwZWQgdXBzdHJlYW0gZm9yIHVua25vd24gcmVhc29ucwor K0FscGhhLnJlZ2lzdGVyX2Z1bmMgc2tpcD1mYWxzZQorK0ludGVydmFsLnJlZ2lzdGVyX3Byb2dy ZXNzX2Z1bmMgc2tpcD1mYWxzZQorK2dldF9vcHRpb25fZ3JvdXAgc2tpcD1mYWxzZQorK2dldF9v cHRpb25fZ3JvdXBfd2l0aG91dF9pbml0IHNraXA9ZmFsc2UKKyt0aHJlYWRzX2FkZF9pZGxlIHNr aXA9ZmFsc2UKKyt0aHJlYWRzX2FkZF9pZGxlX2Z1bGwgc2tpcD1mYWxzZQorK3RocmVhZHNfYWRk X3RpbWVvdXQgc2tpcD1mYWxzZQorK3RocmVhZHNfYWRkX3RpbWVvdXRfZnVsbCBza2lwPWZhbHNl CisrCisrLy8gc3RydWN0L2NsYXNzIGNvbmZ1c2lvbgorK0FjdG9yQm94CisrCS5uZXcgc2tpcAor KwkuZnJvbV92ZXJ0aWNlcyBza2lwCisrVW5pdHMuZnJvbV8qIHNraXAKKytDb2xvcgorKwkubmV3 IHNraXAKKytWZXJ0ZXgubmV3IHNraXAKKysKKysvLyBDbGFzcyBtZXRob2RzCisrY29udGFpbmVy X2NsYXNzX2ZpbmRfY2hpbGRfcHJvcGVydHkgc2tpcAorK2NvbnRhaW5lcl9jbGFzc19saXN0X2No aWxkX3Byb3BlcnRpZXMgc2tpcAorKworKy8vIE1vdmUgc3ltYm9scworK2dldF9hY3Rvcl9ieV9n aWQgcGFyZW50PSJDbHV0dGVyLkFjdG9yIiBuYW1lPSJnZXRfYnlfZ2lkIgorK3VuaXRzX2Zyb21f KiBza2lwCisrCisrLy8gQ2xhc3NlcyBtYXJrZWQgYXMgb3V0IGJ1dCBub3QgZG91YmxlIHB0cgor K0FjdG9yCisrCS5nZXRfbWFyZ2luLm1hcmdpbiBvdXQ9ZmFsc2UKKytEcmFnQWN0aW9uCisrCS5n ZXRfZHJhZ19hcmVhLmRyYWdfYXJlYSBvdXQ9ZmFsc2UKKytJbnB1dERldmljZQorKwkuZ2V0X2Nv b3Jkcy5wb2ludCBvdXQ9ZmFsc2UKKytSZWN0CisrCS5nZXRfY2VudGVyLmNlbnRlciBvdXQ9ZmFs c2UKKysJLmludGVyc2VjdGlvbi5yZXMgb3V0PWZhbHNlCisrCS51bmlvbi5yZXMgb3V0PWZhbHNl CisrVGltZWxpbmUKKysJLmdldF9jdWJpY19iZXppZXJfcHJvZ3Jlc3MuY18qIG91dD1mYWxzZQor K1pvb21BY3Rpb24KKysJLmdldF9mb2NhbF9wb2ludC5wb2ludCBvdXQ9ZmFsc2UKKysJLmdldF90 cmFuc2Zvcm1lZF9mb2NhbF9wb2ludC5wb2ludCBvdXQ9ZmFsc2UKKysKKysvLyBTdHJ1Y3QgcmV0 dXJuIHZhbHVlcworK2NvbG9yX2dldF9zdGF0aWMgbnVsbGFibGUKKysKKysvLyBSZW1vdmUgZm9y IGNsdXR0ZXItMi4wCisrLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLworKworK1N0YWdlCisrIAku ZXZlbnQgbmFtZT0iZW1pdF9ldmVudCIKKysKKysvLyAqRXZlbnQgc2hvdWxkIGJlIGNvbXBhY3Qg Y2xhc3NlcyBkZXJpdmVkIGZyb20gQ2x1dHRlci5FdmVudAorK0V2ZW50LnR5cGUgc2tpcD1mYWxz ZQorK0FueUV2ZW50IHN0cnVjdD1mYWxzZSBiYXNlX3R5cGU9IkNsdXR0ZXIuRXZlbnQiCisrQnV0 dG9uRXZlbnQgc3RydWN0PWZhbHNlIGJhc2VfdHlwZT0iQ2x1dHRlci5FdmVudCIKKytDcm9zc2lu Z0V2ZW50IHN0cnVjdD1mYWxzZSBiYXNlX3R5cGU9IkNsdXR0ZXIuRXZlbnQiCisrS2V5RXZlbnQg c3RydWN0PWZhbHNlIGJhc2VfdHlwZT0iQ2x1dHRlci5FdmVudCIKKytNb3Rpb25FdmVudCBzdHJ1 Y3Q9ZmFsc2UgYmFzZV90eXBlPSJDbHV0dGVyLkV2ZW50IgorK1Njcm9sbEV2ZW50IHN0cnVjdD1m YWxzZSBiYXNlX3R5cGU9IkNsdXR0ZXIuRXZlbnQiCisrU3RhZ2VTdGF0ZUV2ZW50IHN0cnVjdD1m YWxzZSBiYXNlX3R5cGU9IkNsdXR0ZXIuRXZlbnQiCisrVG91Y2hFdmVudCBzdHJ1Y3Q9ZmFsc2Ug YmFzZV90eXBlPSJDbHV0dGVyLkV2ZW50IgorK1RvdWNocGFkUGluY2hFdmVudCBzdHJ1Y3Q9ZmFs c2UgYmFzZV90eXBlPSJDbHV0dGVyLkV2ZW50IgorK1RvdWNocGFkU3dpcGVFdmVudCBzdHJ1Y3Q9 ZmFsc2UgYmFzZV90eXBlPSJDbHV0dGVyLkV2ZW50IgorKworKy8vIEtleXN5bXMgdXNlZCB0byBi ZSBDTFVUVEVSX1ggaW5zdGVhZCBvZiBDTFVUVEVSX0tFWV9YCisrKiNjb25zdGFudCBza2lwCisr Q09HTCBza2lwPWZhbHNlCisrQ1VSUkVOVF9USU1FIHNraXA9ZmFsc2UKKytGTEFWT1VSIHNraXA9 ZmFsc2UKKytQQVRIX1JFTEFUSVZFIHNraXA9ZmFsc2UKKytQUklPUklUWV9SRURSQVcgc2tpcD1m YWxzZQorKworKy8vIENsdXR0ZXIgZGV2cyBkb24ndCBsaWtlIHVzIGNyZWF0aW5nIG5lc3RlZCBu YW1lc3BhY2VzCisrdmFsdWVfKiBuYW1lPSJ2YWx1ZV8oLispIiBwYXJlbnQ9IkNsdXR0ZXIuVmFs dWUiCisrdGhyZWFkc18qIG5hbWU9InRocmVhZHNfKC4rKSIgcGFyZW50PSJDbHV0dGVyLlRocmVh ZHMiCisrdGhyZWFkc19hZGRfaWRsZSBuYW1lPSJhZGQiIHBhcmVudD0iQ2x1dHRlci5UaHJlYWRz LklkbGUiCisrdGhyZWFkc19hZGRfaWRsZV9mdWxsIG5hbWU9ImFkZF9mdWxsIiBwYXJlbnQ9IkNs dXR0ZXIuVGhyZWFkcy5JZGxlIgorK3RocmVhZHNfYWRkX3RpbWVvdXQgbmFtZT0iYWRkIiBwYXJl bnQ9IkNsdXR0ZXIuVGhyZWFkcy5UaW1lb3V0IgorK3RocmVhZHNfYWRkX3RpbWVvdXRfZnVsbCBu YW1lPSJhZGRfZnVsbCIgcGFyZW50PSJDbHV0dGVyLlRocmVhZHMuVGltZW91dCIKKysKKysvLyBC YWNrd2FyZHMgY29tcGF0aWJpbGl0eQorK0NvbG9yLmFsbG9jIHN5bWJvbF90eXBlPSJmdW5jdGlv biIKKytQb2ludC5hbGxvYyBzeW1ib2xfdHlwZT0iZnVuY3Rpb24iCisrUmVjdC5hbGxvYyBzeW1i b2xfdHlwZT0iZnVuY3Rpb24iCisrU2l6ZS5hbGxvYyBzeW1ib2xfdHlwZT0iZnVuY3Rpb24iCisr VmVydGV4LmFsbG9jIHN5bWJvbF90eXBlPSJmdW5jdGlvbiIKKysKKytCaW5BbGlnbm1lbnQgZGVw cmVjYXRlZD1mYWxzZSBkZXByZWNhdGVkX3NpbmNlPW51bGwKKytCaW5BbGlnbm1lbnQuKiBkZXBy ZWNhdGVkCisrQmluQWxpZ25tZW50LnN0YXJ0IGRlcHJlY2F0ZWQ9ZmFsc2UKKytCaW5MYXlvdXQu bmV3LipfYWxpZ24gZGVmYXVsdD1DbHV0dGVyLkJpbkFsaWdubWVudC5TVEFSVAorKworKy8vIFBv c3NpYmx5IGtlZXAKKytLRVlfKiBza2lwPWZhbHNlIG5hbWU9IktFWV8oLispIiB0eXBlPSJ1aW50 IiBwYXJlbnQ9IkNsdXR0ZXIuS2V5IgorZGlmZiAtLWdpdCBhL3ZhcGkvQ29nbC02Lm1ldGFkYXRh IGIvdmFwaS9Db2dsLTYubWV0YWRhdGEKK25ldyBmaWxlIG1vZGUgMTAwNjQ0CitpbmRleCAwMDAw MDAwMC4uMDkyYjVlMjkKKy0tLSAvZGV2L251bGwKKysrKyBiL3ZhcGkvQ29nbC02Lm1ldGFkYXRh CitAQCAtMCwwICsxLDI3IEBACisrQ29nbCBjaGVhZGVyX2ZpbGVuYW1lPSJjb2dsL2NvZ2wuaCIK KysKKytDb2xvciBzdHJ1Y3QKKysgIC5uZXcgc2tpcAorKyAgLmZyZWUgc2tpcAorKworK2NyZWF0 ZV9wcm9ncmFtIHNraXAKKytjcmVhdGVfc2hhZGVyIHNraXAKKysKKysKKytpc19iaXRtYXAgc2tp cAorK2lzX21hdGVyaWFsIHNraXAKKytpc19vZmZzY3JlZW4gc2tpcAorK2lzX3Byb2dyYW0gc2tp cAorK2lzX3NoYWRlciBza2lwCisraXNfdGV4dHVyZSBza2lwCisraXNfdmVydGV4X2J1ZmZlciBz a2lwCisrCisrTWF0cml4IHN0cnVjdAorKyAgLmdldF9hcnJheSBhcnJheT10cnVlIGFycmF5X2xl bmd0aF9pZHg9LTEKKysgIC5nZXRfaW52ZXJzZS5pbnZlcnNlIG91dD10cnVlCisrICAubXVsdGlw bHkgc2tpcAorKyAgLmluaXRfZnJvbV9hcnJheSBza2lwCisrICAuaW5pdF9pZGVudGl0eSBza2lw CisrICAudHJhbnNmb3JtX3BvaW50LiogcmVmPXRydWUKKysKKytwcm9ncmFtXyogc2tpcAorZGlm ZiAtLWdpdCBhL3ZhcGkvTWV0YS02Lm1ldGFkYXRhIGIvdmFwaS9NZXRhLTYubWV0YWRhdGEKK25l dyBmaWxlIG1vZGUgMTAwNjQ0CitpbmRleCAwMDAwMDAwMC4uMWQ5ODQ3NzgKKy0tLSAvZGV2L251 bGwKKysrKyBiL3ZhcGkvTWV0YS02Lm1ldGFkYXRhCitAQCAtMCwwICsxLDgwIEBACisrQmFja2Vu ZCBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtYmFja2VuZC5oIgorK0JhY2tncm91bmQgY2hl YWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLWJhY2tncm91bmQuaCIKKytCYWNrZ3JvdW5kQWN0b3Ig Y2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLWJhY2tncm91bmQtYWN0b3IuaCIKKytCYWNrZ3Jv dW5kR3JvdXAgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLWJhY2tncm91bmQtZ3JvdXAuaCIK KytCYWNrZ3JvdW5kSW1hZ2UgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLWJhY2tncm91bmQt aW1hZ2UuaCIKKytCYWNrZ3JvdW5kSW1hZ2VDYWNoZSBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21l dGEtYmFja2dyb3VuZC1pbWFnZS5oIgorK0JhcnJpZXIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9i YXJyaWVyLmgiCisrQmFycmllckV2ZW50IGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvYmFycmllci5o IgorK0Nsb3NlRGlhbG9nIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1jbG9zZS1kaWFsb2cu aCIKKytDdXJzb3JUcmFja2VyIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1jdXJzb3ItdHJh Y2tlci5oIgorK0Rpc3BsYXkgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9kaXNwbGF5LmgiCisrRG5k IGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1kbmQuaCIKKytJZGxlTW9uaXRvciBjaGVhZGVy X2ZpbGVuYW1lPSJtZXRhL21ldGEtaWRsZS1tb25pdG9yLmgiCisrSW5oaWJpdFNob3J0Y3V0c0Rp YWxvZyBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtaW5oaWJpdC1zaG9ydGN1dHMtZGlhbG9n LmgiCisrTGF1bmNoQ29udGV4dCBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtbGF1bmNoLWNv bnRleHQuaCIKKytNZXRhIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWFpbi5oIgorK01vbml0b3JN YW5hZ2VyIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1tb25pdG9yLW1hbmFnZXIuaCIKKytQ cmVmZXJlbmNlIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvcHJlZnMuaCIKKytSZW1vdGVBY2Nlc3ND b250cm9sbGVyIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1yZW1vdGUtYWNjZXNzLWNvbnRy b2xsZXIuaCIKKytSZW1vdGVBY2Nlc3NIYW5kbGUgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRh LXJlbW90ZS1hY2Nlc3MtY29udHJvbGxlci5oIgorK1NldHRpbmdzIGNoZWFkZXJfZmlsZW5hbWU9 Im1ldGEvbWV0YS1zZXR0aW5ncy5oIgorK1NoYWRvd0ZhY3RvcnkgY2hlYWRlcl9maWxlbmFtZT0i bWV0YS9tZXRhLXNoYWRvdy1mYWN0b3J5LmgiCisrU2hhcGVkVGV4dHVyZSBjaGVhZGVyX2ZpbGVu YW1lPSJtZXRhL21ldGEtc2hhcGVkLXRleHR1cmUuaCIKKytTb3VuZFBsYXllciBjaGVhZGVyX2Zp bGVuYW1lPSJtZXRhL21ldGEtc291bmQtcGxheWVyLmgiCisrU3RhZ2UgY2hlYWRlcl9maWxlbmFt ZT0ibWV0YS9tZXRhLXN0YWdlLmgiCisrU3RhcnR1cE5vdGlmaWNhdGlvbiBjaGVhZGVyX2ZpbGVu YW1lPSJtZXRhL21ldGEtc3RhcnR1cC1ub3RpZmljYXRpb24uaCIKKytUaGVtZSBjaGVhZGVyX2Zp bGVuYW1lPSJtZXRhL3RoZW1lLmgiCisrV2luZG93IGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvd2lu ZG93LmgiCisrV2luZG93QWN0b3IgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLXdpbmRvdy1h Y3Rvci5oIgorK1dpbmRvd0dyb3VwIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS13aW5kb3ct Z3JvdXAuaCIKKytXaW5kb3dTaGFwZSBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtd2luZG93 LXNoYXBlLmgiCisrV29ya3NwYWNlIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvd29ya3NwYWNlLmgi CisrV29ya3NwYWNlTWFuYWdlciBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtd29ya3NwYWNl LW1hbmFnZXIuaCIKKytYMTFEaXNwbGF5IGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS14MTEt ZGlzcGxheS5oIgorK1JlY3RhbmdsZSBzdHJ1Y3QKKytQbHVnaW4gY2hlYWRlcl9maWxlbmFtZT0i bWV0YS9tZXRhLXBsdWdpbi5oIgorK1BsdWdpbkluZm8gY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9t ZXRhLXBsdWdpbi5oIgorK3ByZWZzXyogY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9wcmVmcy5oIiBw YXJlbnQ9Ik1ldGEuUHJlZnMiCisrYWRkX3ZlcmJvc2VfdG9waWMgcGFyZW50PSJNZXRhLlV0aWwi IGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvdXRpbC5oIgorK3gxMV9lcnJvcl90cmFwX3BvcCBwYXJl bnQ9Ik1ldGEuVXRpbCIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS91dGlsLmgiCisreDExX2Vycm9y X3RyYXBfcHVzaCBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS91dGls LmgiCisreDExX2Vycm9yX3RyYXBfcG9wX3dpdGhfcmV0dXJuIHBhcmVudD0iTWV0YS5VdGlsIiBj aGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIKKytleHRlcm5hbF9iaW5kaW5nX25hbWVfZm9y X2FjdGlvbiBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS91dGlsLmgi CisrZ2V0X2xvY2FsZV9kaXJlY3Rpb24gcGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5h bWU9Im1ldGEvdXRpbC5oIgorK2dyYXZpdHlfdG9fc3RyaW5nIHBhcmVudD0iTWV0YS5VdGlsIiBj aGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIKKytpc19kZWJ1Z2dpbmcgcGFyZW50PSJNZXRh LlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvdXRpbC5oIgorK2lzX3N5bmNpbmcgcGFyZW50 PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvdXRpbC5oIgorK2lzX3ZlcmJvc2Ug cGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvdXRpbC5oIgorK2lzX3dh eWxhbmRfY29tcG9zaXRvciBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hlYWRlcl9maWxlbmFtZT0ibWV0 YS91dGlsLmgiCisrbGF0ZXJfYWRkIHBhcmVudD0iTWV0YS5VdGlsIiBjaGVhZGVyX2ZpbGVuYW1l PSJtZXRhL3V0aWwuaCIKKytsYXRlcl9yZW1vdmUgcGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJf ZmlsZW5hbWU9Im1ldGEvdXRpbC5oIgorK3BvcF9ub19tc2dfcHJlZml4IHBhcmVudD0iTWV0YS5V dGlsIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIKKytwdXNoX25vX21zZ19wcmVmaXgg cGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvdXRpbC5oIgorK3JlY3Qg cGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvdXRpbC5oIgorK3JlbW92 ZV92ZXJib3NlX3RvcGljIHBhcmVudD0iTWV0YS5VdGlsIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRh L3V0aWwuaCIKKyt1bnNpZ25lZF9sb25nX2VxdWFsIHBhcmVudD0iTWV0YS5VdGlsIiBjaGVhZGVy X2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIKKyt1bnNpZ25lZF9sb25nX2hhc2ggcGFyZW50PSJNZXRh LlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvdXRpbC5oIgorK3Nob3dfZGlhbG9nIHBhcmVu dD0iTWV0YS5VdGlsIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIKKytnZXRfc3RhZ2Vf Zm9yX2Rpc3BsYXkgcGFyZW50PSJNZXRhLkNvbXBvc2l0b3IiIGNoZWFkZXJfZmlsZW5hbWU9Im1l dGEvY29tcG9zaXRvci1tdXR0ZXIuaCIKKytnZXRfd2luZG93X2FjdG9ycyBwYXJlbnQ9Ik1ldGEu Q29tcG9zaXRvciIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9jb21wb3NpdG9yLW11dHRlci5oIgor K2dldF93aW5kb3dfZ3JvdXBfZm9yX2Rpc3BsYXkgcGFyZW50PSJNZXRhLkNvbXBvc2l0b3IiIGNo ZWFkZXJfZmlsZW5hbWU9Im1ldGEvY29tcG9zaXRvci1tdXR0ZXIuaCIKKytnZXRfdG9wX3dpbmRv d19ncm91cF9mb3JfZGlzcGxheSBwYXJlbnQ9Ik1ldGEuQ29tcG9zaXRvciIgY2hlYWRlcl9maWxl bmFtZT0ibWV0YS9jb21wb3NpdG9yLW11dHRlci5oIgorK2dldF9mZWVkYmFja19ncm91cF9mb3Jf ZGlzcGxheSBwYXJlbnQ9Ik1ldGEuQ29tcG9zaXRvciIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9j b21wb3NpdG9yLW11dHRlci5oIgorK2Rpc2FibGVfdW5yZWRpcmVjdF9mb3JfZGlzcGxheSBwYXJl bnQ9Ik1ldGEuQ29tcG9zaXRvciIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9jb21wb3NpdG9yLW11 dHRlci5oIgorK2VuYWJsZV91bnJlZGlyZWN0X2Zvcl9kaXNwbGF5IHBhcmVudD0iTWV0YS5Db21w b3NpdG9yIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgiCisrc2V0 X3N0YWdlX2lucHV0X3JlZ2lvbiBwYXJlbnQ9Ik1ldGEuQ29tcG9zaXRvciIgY2hlYWRlcl9maWxl bmFtZT0ibWV0YS9jb21wb3NpdG9yLW11dHRlci5oIgorK2VtcHR5X3N0YWdlX2lucHV0X3JlZ2lv biBwYXJlbnQ9Ik1ldGEuQ29tcG9zaXRvciIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9jb21wb3Np dG9yLW11dHRlci5oIgorK2ZvY3VzX3N0YWdlX3dpbmRvdyBwYXJlbnQ9Ik1ldGEuQ29tcG9zaXRv ciIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9jb21wb3NpdG9yLW11dHRlci5oIgorK2tleWJpbmRp bmdzX3NldF9jdXN0b21faGFuZGxlciBwYXJlbnQ9Ik1ldGEuS2V5QmluZGluZyIgbmFtZT0ic2V0 X2N1c3RvbV9oYW5kbGVyIgorK0tleUhhbmRsZXJGdW5jLmV2ZW50IHR5cGU9IkNsdXR0ZXIuS2V5 RXZlbnQ/IgorK2dldF9iYWNrZW5kIHBhcmVudD0iTWV0YS5CYWNrZW5kIgorK1dpbmRvdy5mb2N1 cyNzaWduYWwgc2tpcD10cnVlCisrV2luZG93LmdldF94d2luZG93IHNraXA9ZmFsc2UKKytnZXRf b3B0aW9uX2NvbnRleHQgc2tpcD1mYWxzZQorK3NldF9nbm9tZV93bV9rZXliaW5kaW5ncyBza2lw PWZhbHNlCisrc2V0X3dtX25hbWUgc2tpcD1mYWxzZQorK2luaXQgc2tpcD1mYWxzZQorK3J1biBz a2lwPWZhbHNlCisrc2hvd19kaWFsb2cgc2tpcD1mYWxzZQorK2dldF9iYWNrZW5kIGNoZWFkZXJf ZmlsZW5hbWU9Im1ldGEvbWV0YS1iYWNrZW5kLmgiCitkaWZmIC0tZ2l0IGEvdmFwaS9ncmFwaGVu ZS1nb2JqZWN0LTEuMC52YXBpIGIvdmFwaS9ncmFwaGVuZS1nb2JqZWN0LTEuMC52YXBpCituZXcg ZmlsZSBtb2RlIDEwMDY0NAoraW5kZXggMDAwMDAwMDAuLjY5ODAxNTM1CistLS0gL2Rldi9udWxs CisrKysgYi92YXBpL2dyYXBoZW5lLWdvYmplY3QtMS4wLnZhcGkKK0BAIC0wLDAgKzEsNjkxIEBA CisrLyogZ3JhcGhlbmUtZ29iamVjdC0xLjAudmFwaSBnZW5lcmF0ZWQgYnkgdmFwaWdlbiwgZG8g bm90IG1vZGlmeS4gKi8KKysKKytbQ0NvZGUgKGNwcmVmaXggPSAiR3JhcGhlbmUiLCBnaXJfbmFt ZXNwYWNlID0gIkdyYXBoZW5lIiwgZ2lyX3ZlcnNpb24gPSAiMS4wIiwgbG93ZXJfY2FzZV9jcHJl Zml4ID0gImdyYXBoZW5lXyIpXQorK25hbWVzcGFjZSBHcmFwaGVuZSB7CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJncmFwaGVuZV9i b3hfdCIsIHR5cGVfaWQgPSAiZ3JhcGhlbmVfYm94X2dldF90eXBlICgpIildCisrCVtWZXJzaW9u IChzaW5jZSA9ICIxLjIiKV0KKysJcHVibGljIHN0cnVjdCBCb3ggeworKwkJcHVibGljIGJvb2wg Y29udGFpbnNfYm94IChHcmFwaGVuZS5Cb3ggYik7CisrCQlwdWJsaWMgYm9vbCBjb250YWluc19w b2ludCAoR3JhcGhlbmUuUG9pbnQzRCBwb2ludCk7CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQg R3JhcGhlbmUuQm94PyBlbXB0eSAoKTsKKysJCXB1YmxpYyBib29sIGVxdWFsIChHcmFwaGVuZS5C b3ggYik7CisrCQlwdWJsaWMgR3JhcGhlbmUuQm94IGV4cGFuZCAoR3JhcGhlbmUuUG9pbnQzRCBw b2ludCk7CisrCQlwdWJsaWMgR3JhcGhlbmUuQm94IGV4cGFuZF9zY2FsYXIgKGZsb2F0IHNjYWxh cik7CisrCQlwdWJsaWMgR3JhcGhlbmUuQm94IGV4cGFuZF92ZWMzIChHcmFwaGVuZS5WZWMzIHZl Yyk7CisrCQlwdWJsaWMgR3JhcGhlbmUuU3BoZXJlIGdldF9ib3VuZGluZ19zcGhlcmUgKCk7Cisr CQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQzRCBnZXRfY2VudGVyICgpOworKwkJcHVibGljIGZsb2F0 IGdldF9kZXB0aCAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfaGVpZ2h0ICgpOworKwkJcHVibGlj IEdyYXBoZW5lLlBvaW50M0QgZ2V0X21heCAoKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludDNE IGdldF9taW4gKCk7CisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMyBnZXRfc2l6ZSAoKTsKKysJCXB1 YmxpYyB2b2lkIGdldF92ZXJ0aWNlcyAoW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIHJl ZiBHcmFwaGVuZS5WZWMzIHZlcnRpY2VzWzhdKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfd2lkdGgg KCk7CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuQm94PyBpbmZpbml0ZSAoKTsK KysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLkJveD8gaW5pdCAoR3JhcGhlbmUuUG9pbnQzRD8g bWluLCBHcmFwaGVuZS5Qb2ludDNEPyBtYXgpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUu Qm94PyBpbml0X2Zyb21fYm94IChHcmFwaGVuZS5Cb3ggc3JjKTsKKysJCXB1YmxpYyB1bm93bmVk IEdyYXBoZW5lLkJveD8gaW5pdF9mcm9tX3BvaW50cyAoW0NDb2RlIChhcnJheV9sZW5ndGhfY25h bWUgPSAibl9wb2ludHMiLCBhcnJheV9sZW5ndGhfcG9zID0gMC41LCBhcnJheV9sZW5ndGhfdHlw ZSA9ICJndWludCIpXSBHcmFwaGVuZS5Qb2ludDNEW10gcG9pbnRzKTsKKysJCXB1YmxpYyB1bm93 bmVkIEdyYXBoZW5lLkJveD8gaW5pdF9mcm9tX3ZlYzMgKEdyYXBoZW5lLlZlYzM/IG1pbiwgR3Jh cGhlbmUuVmVjMz8gbWF4KTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLkJveD8gaW5pdF9m cm9tX3ZlY3RvcnMgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoX2NuYW1lID0gIm5fdmVjdG9ycyIsIGFy cmF5X2xlbmd0aF9wb3MgPSAwLjUsIGFycmF5X2xlbmd0aF90eXBlID0gImd1aW50IildIEdyYXBo ZW5lLlZlYzNbXSB2ZWN0b3JzKTsKKysJCXB1YmxpYyBib29sIGludGVyc2VjdGlvbiAoR3JhcGhl bmUuQm94IGIsIG91dCBHcmFwaGVuZS5Cb3ggcmVzKTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25l ZCBHcmFwaGVuZS5Cb3g/IG1pbnVzX29uZSAoKTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBH cmFwaGVuZS5Cb3g/IG9uZSAoKTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5C b3g/IG9uZV9taW51c19vbmUgKCk7CisrCQlwdWJsaWMgR3JhcGhlbmUuQm94IHVuaW9uIChHcmFw aGVuZS5Cb3ggYik7CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuQm94PyB6ZXJv ICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0 LmgiLCBjbmFtZSA9ICJncmFwaGVuZV9ldWxlcl90IiwgdHlwZV9pZCA9ICJncmFwaGVuZV9ldWxl cl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBz dHJ1Y3QgRXVsZXIgeworKwkJcHVibGljIGJvb2wgZXF1YWwgKEdyYXBoZW5lLkV1bGVyIGIpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfYWxwaGEg KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF9i ZXRhICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBmbG9hdCBn ZXRfZ2FtbWEgKCk7CisrCQlwdWJsaWMgR3JhcGhlbmUuRXVsZXJPcmRlciBnZXRfb3JkZXIgKCk7 CisrCQlwdWJsaWMgZmxvYXQgZ2V0X3ggKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X3kgKCk7Cisr CQlwdWJsaWMgZmxvYXQgZ2V0X3ogKCk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5FdWxl cj8gaW5pdCAoZmxvYXQgeCwgZmxvYXQgeSwgZmxvYXQgeik7CisrCQlwdWJsaWMgdW5vd25lZCBH cmFwaGVuZS5FdWxlcj8gaW5pdF9mcm9tX2V1bGVyIChHcmFwaGVuZS5FdWxlcj8gc3JjKTsKKysJ CXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLkV1bGVyPyBpbml0X2Zyb21fbWF0cml4IChHcmFwaGVu ZS5NYXRyaXg/IG0sIEdyYXBoZW5lLkV1bGVyT3JkZXIgb3JkZXIpOworKwkJcHVibGljIHVub3du ZWQgR3JhcGhlbmUuRXVsZXI/IGluaXRfZnJvbV9xdWF0ZXJuaW9uIChHcmFwaGVuZS5RdWF0ZXJu aW9uPyBxLCBHcmFwaGVuZS5FdWxlck9yZGVyIG9yZGVyKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEwIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5FdWxlcj8gaW5pdF9mcm9tX3Jh ZGlhbnMgKGZsb2F0IHgsIGZsb2F0IHksIGZsb2F0IHosIEdyYXBoZW5lLkV1bGVyT3JkZXIgb3Jk ZXIpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuRXVsZXI/IGluaXRfZnJvbV92ZWMzIChH cmFwaGVuZS5WZWMzPyB2LCBHcmFwaGVuZS5FdWxlck9yZGVyIG9yZGVyKTsKKysJCXB1YmxpYyB1 bm93bmVkIEdyYXBoZW5lLkV1bGVyPyBpbml0X3dpdGhfb3JkZXIgKGZsb2F0IHgsIGZsb2F0IHks IGZsb2F0IHosIEdyYXBoZW5lLkV1bGVyT3JkZXIgb3JkZXIpOworKwkJcHVibGljIEdyYXBoZW5l LkV1bGVyIHJlb3JkZXIgKEdyYXBoZW5lLkV1bGVyT3JkZXIgb3JkZXIpOworKwkJcHVibGljIEdy YXBoZW5lLk1hdHJpeCB0b19tYXRyaXggKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIp XQorKwkJcHVibGljIEdyYXBoZW5lLlF1YXRlcm5pb24gdG9fcXVhdGVybmlvbiAoKTsKKysJCXB1 YmxpYyBHcmFwaGVuZS5WZWMzIHRvX3ZlYzMgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdyYXBoZW5lX2ZydXN0dW1f dCIsIHR5cGVfaWQgPSAiZ3JhcGhlbmVfZnJ1c3R1bV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBzdHJ1Y3QgRnJ1c3R1bSB7CisrCQlwdWJsaWMg Ym9vbCBjb250YWluc19wb2ludCAoR3JhcGhlbmUuUG9pbnQzRCBwb2ludCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgYm9vbCBlcXVhbCAoR3JhcGhlbmUuRnJ1c3R1 bSBiKTsKKysJCXB1YmxpYyB2b2lkIGdldF9wbGFuZXMgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0g ZmFsc2UpXSByZWYgR3JhcGhlbmUuUGxhbmUgcGxhbmVzWzZdKTsKKysJCXB1YmxpYyB1bm93bmVk IEdyYXBoZW5lLkZydXN0dW0/IGluaXQgKEdyYXBoZW5lLlBsYW5lIHAwLCBHcmFwaGVuZS5QbGFu ZSBwMSwgR3JhcGhlbmUuUGxhbmUgcDIsIEdyYXBoZW5lLlBsYW5lIHAzLCBHcmFwaGVuZS5QbGFu ZSBwNCwgR3JhcGhlbmUuUGxhbmUgcDUpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuRnJ1 c3R1bT8gaW5pdF9mcm9tX2ZydXN0dW0gKEdyYXBoZW5lLkZydXN0dW0gc3JjKTsKKysJCXB1Ymxp YyB1bm93bmVkIEdyYXBoZW5lLkZydXN0dW0/IGluaXRfZnJvbV9tYXRyaXggKEdyYXBoZW5lLk1h dHJpeCBtYXRyaXgpOworKwkJcHVibGljIGJvb2wgaW50ZXJzZWN0c19ib3ggKEdyYXBoZW5lLkJv eCBib3gpOworKwkJcHVibGljIGJvb2wgaW50ZXJzZWN0c19zcGhlcmUgKEdyYXBoZW5lLlNwaGVy ZSBzcGhlcmUpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1n b2JqZWN0LmgiLCBjbmFtZSA9ICJncmFwaGVuZV9tYXRyaXhfdCIsIHR5cGVfaWQgPSAiZ3JhcGhl bmVfbWF0cml4X2dldF90eXBlICgpIildCisrCXB1YmxpYyBzdHJ1Y3QgTWF0cml4IHsKKysJCXB1 YmxpYyBib29sIGRlY29tcG9zZSAob3V0IEdyYXBoZW5lLlZlYzMgdHJhbnNsYXRlLCBvdXQgR3Jh cGhlbmUuVmVjMyBzY2FsZSwgb3V0IEdyYXBoZW5lLlF1YXRlcm5pb24gcm90YXRlLCBvdXQgR3Jh cGhlbmUuVmVjMyBzaGVhciwgb3V0IEdyYXBoZW5lLlZlYzQgcGVyc3BlY3RpdmUpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGRldGVybWluYW50ICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBib29sIGVxdWFsIChHcmFw aGVuZS5NYXRyaXggYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IGJvb2wgZXF1YWxfZmFzdCAoR3JhcGhlbmUuTWF0cml4IGIpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzQgZ2V0X3JvdyAodWludCBpbmRleF8p OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF92YWx1 ZSAodWludCByb3csIHVpbnQgY29sKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJ CXB1YmxpYyBmbG9hdCBnZXRfeF9zY2FsZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEw IildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3hfdHJhbnNsYXRpb24gKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3lfc2NhbGUgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF95X3RyYW5zbGF0aW9u ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF96 X3NjYWxlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBmbG9h dCBnZXRfel90cmFuc2xhdGlvbiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJ CXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLk1hdHJpeD8gaW5pdF9mcm9tXzJkIChkb3VibGUgeHgs IGRvdWJsZSB5eCwgZG91YmxlIHh5LCBkb3VibGUgeXksIGRvdWJsZSB4XzAsIGRvdWJsZSB5XzAp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhl bmUuTWF0cml4PyBpbml0X2Zyb21fZmxvYXQgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2Up XSBmbG9hdCB2WzE2XSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg dW5vd25lZCBHcmFwaGVuZS5NYXRyaXg/IGluaXRfZnJvbV9tYXRyaXggKEdyYXBoZW5lLk1hdHJp eCBzcmMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQg R3JhcGhlbmUuTWF0cml4PyBpbml0X2Zyb21fdmVjNCAoR3JhcGhlbmUuVmVjNCB2MCwgR3JhcGhl bmUuVmVjNCB2MSwgR3JhcGhlbmUuVmVjNCB2MiwgR3JhcGhlbmUuVmVjNCB2Myk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5NYXRyaXg/ IGluaXRfZnJ1c3R1bSAoZmxvYXQgbGVmdCwgZmxvYXQgcmlnaHQsIGZsb2F0IGJvdHRvbSwgZmxv YXQgdG9wLCBmbG9hdCB6X25lYXIsIGZsb2F0IHpfZmFyKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLk1hdHJpeD8gaW5pdF9pZGVudGl0 eSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdy YXBoZW5lLk1hdHJpeD8gaW5pdF9sb29rX2F0IChHcmFwaGVuZS5WZWMzIGV5ZSwgR3JhcGhlbmUu VmVjMyBjZW50ZXIsIEdyYXBoZW5lLlZlYzMgdXApOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuTWF0cml4PyBpbml0X29ydGhvIChmbG9h dCBsZWZ0LCBmbG9hdCByaWdodCwgZmxvYXQgdG9wLCBmbG9hdCBib3R0b20sIGZsb2F0IHpfbmVh ciwgZmxvYXQgel9mYXIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGlj IHVub3duZWQgR3JhcGhlbmUuTWF0cml4PyBpbml0X3BlcnNwZWN0aXZlIChmbG9hdCBmb3Z5LCBm bG9hdCBhc3BlY3QsIGZsb2F0IHpfbmVhciwgZmxvYXQgel9mYXIpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuTWF0cml4PyBpbml0X3Jv dGF0ZSAoZmxvYXQgYW5nbGUsIEdyYXBoZW5lLlZlYzMgYXhpcyk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5NYXRyaXg/IGluaXRfc2Nh bGUgKGZsb2F0IHgsIGZsb2F0IHksIGZsb2F0IHopOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuTWF0cml4PyBpbml0X3NrZXcgKGZsb2F0 IHhfc2tldywgZmxvYXQgeV9za2V3KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJ CXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLk1hdHJpeD8gaW5pdF90cmFuc2xhdGUgKEdyYXBoZW5l LlBvaW50M0QgcCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3Jh cGhlbmUuTWF0cml4IGludGVycG9sYXRlIChHcmFwaGVuZS5NYXRyaXggYiwgZG91YmxlIGZhY3Rv cik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgYm9vbCBpbnZlcnNl IChvdXQgR3JhcGhlbmUuTWF0cml4IHJlcyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIild CisrCQlwdWJsaWMgYm9vbCBpc18yZCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0K KysJCXB1YmxpYyBib29sIGlzX2JhY2tmYWNlX3Zpc2libGUgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCQlwdWJsaWMgYm9vbCBpc19pZGVudGl0eSAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBib29sIGlzX3Npbmd1bGFyICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLk1hdHJpeCBtdWx0aXBs eSAoR3JhcGhlbmUuTWF0cml4IGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyBib29sIG5lYXIgKEdyYXBoZW5lLk1hdHJpeCBiLCBmbG9hdCBlcHNpbG9uKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5NYXRyaXggbm9y bWFsaXplICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBo ZW5lLk1hdHJpeCBwZXJzcGVjdGl2ZSAoZmxvYXQgZGVwdGgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgcHJpbnQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQgcHJvamVjdF9wb2ludCAoR3JhcGhl bmUuUG9pbnQgcCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgR3Jh cGhlbmUuUXVhZCBwcm9qZWN0X3JlY3QgKEdyYXBoZW5lLlJlY3Qgcik7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuUmVjdCBwcm9qZWN0X3JlY3RfYm91 bmRzIChHcmFwaGVuZS5SZWN0IHIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJ cHVibGljIHZvaWQgcm90YXRlIChmbG9hdCBhbmdsZSwgR3JhcGhlbmUuVmVjMyBheGlzKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHJvdGF0ZV9ldWxlciAo R3JhcGhlbmUuRXVsZXIgZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJs aWMgdm9pZCByb3RhdGVfcXVhdGVybmlvbiAoR3JhcGhlbmUuUXVhdGVybmlvbiBxKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHJvdGF0ZV94IChmbG9hdCBh bmdsZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCByb3Rh dGVfeSAoZmxvYXQgYW5nbGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVi bGljIHZvaWQgcm90YXRlX3ogKGZsb2F0IGFuZ2xlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjAiKV0KKysJCXB1YmxpYyB2b2lkIHNjYWxlIChmbG9hdCBmYWN0b3JfeCwgZmxvYXQgZmFjdG9y X3ksIGZsb2F0IGZhY3Rvcl96KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyB2b2lkIHNrZXdfeHkgKGZsb2F0IGZhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4wIildCisrCQlwdWJsaWMgdm9pZCBza2V3X3h6IChmbG9hdCBmYWN0b3IpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgc2tld195eiAoZmxvYXQgZmFjdG9y KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBib29sIHRvXzJkIChv dXQgZG91YmxlIHh4LCBvdXQgZG91YmxlIHl4LCBvdXQgZG91YmxlIHh5LCBvdXQgZG91YmxlIHl5 LCBvdXQgZG91YmxlIHhfMCwgb3V0IGRvdWJsZSB5XzApOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMCIpXQorKwkJcHVibGljIHZvaWQgdG9fZmxvYXQgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0g ZmFsc2UpXSByZWYgZmxvYXQgdlsxNl0pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwkJcHVibGljIEdyYXBoZW5lLlJlY3QgdHJhbnNmb3JtX2JvdW5kcyAoR3JhcGhlbmUuUmVjdCBy KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5Cb3gg dHJhbnNmb3JtX2JveCAoR3JhcGhlbmUuQm94IGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlBvaW50IHRyYW5zZm9ybV9wb2ludCAoR3JhcGhlbmUu UG9pbnQgcCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgR3JhcGhl bmUuUG9pbnQzRCB0cmFuc2Zvcm1fcG9pbnQzZCAoR3JhcGhlbmUuUG9pbnQzRCBwKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5SYXkgdHJhbnNmb3Jt X3JheSAoR3JhcGhlbmUuUmF5IHIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJ cHVibGljIEdyYXBoZW5lLlF1YWQgdHJhbnNmb3JtX3JlY3QgKEdyYXBoZW5lLlJlY3Qgcik7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgR3JhcGhlbmUuU3BoZXJlIHRy YW5zZm9ybV9zcGhlcmUgKEdyYXBoZW5lLlNwaGVyZSBzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMzIHRyYW5zZm9ybV92ZWMzIChHcmFwaGVu ZS5WZWMzIHYpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBo ZW5lLlZlYzQgdHJhbnNmb3JtX3ZlYzQgKEdyYXBoZW5lLlZlYzQgdik7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCB0cmFuc2xhdGUgKEdyYXBoZW5lLlBvaW50 M0QgcG9zKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVu ZS5NYXRyaXggdHJhbnNwb3NlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJ cHVibGljIEdyYXBoZW5lLlBvaW50M0QgdW5wcm9qZWN0X3BvaW50M2QgKEdyYXBoZW5lLk1hdHJp eCBtb2RlbHZpZXcsIEdyYXBoZW5lLlBvaW50M0QgcG9pbnQpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlJlY3QgdW50cmFuc2Zvcm1fYm91bmRzIChH cmFwaGVuZS5SZWN0IHIsIEdyYXBoZW5lLlJlY3QgYm91bmRzKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBib29sIHVudHJhbnNmb3JtX3BvaW50IChHcmFwaGVuZS5Q b2ludCBwLCBHcmFwaGVuZS5SZWN0IGJvdW5kcywgb3V0IEdyYXBoZW5lLlBvaW50IHJlcyk7Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNu YW1lID0gImdyYXBoZW5lX3BsYW5lX3QiLCB0eXBlX2lkID0gImdyYXBoZW5lX3BsYW5lX2dldF90 eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJcHVibGljIHN0cnVjdCBQ bGFuZSB7CisrCQlwdWJsaWMgZmxvYXQgZGlzdGFuY2UgKEdyYXBoZW5lLlBvaW50M0QgcG9pbnQp OworKwkJcHVibGljIGJvb2wgZXF1YWwgKEdyYXBoZW5lLlBsYW5lIGIpOworKwkJcHVibGljIGZs b2F0IGdldF9jb25zdGFudCAoKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMzIGdldF9ub3JtYWwg KCk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5QbGFuZT8gaW5pdCAoR3JhcGhlbmUuVmVj Mz8gbm9ybWFsLCBmbG9hdCBjb25zdGFudCk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5Q bGFuZT8gaW5pdF9mcm9tX3BsYW5lIChHcmFwaGVuZS5QbGFuZSBzcmMpOworKwkJcHVibGljIHVu b3duZWQgR3JhcGhlbmUuUGxhbmU/IGluaXRfZnJvbV9wb2ludCAoR3JhcGhlbmUuVmVjMyBub3Jt YWwsIEdyYXBoZW5lLlBvaW50M0QgcG9pbnQpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUu UGxhbmU/IGluaXRfZnJvbV9wb2ludHMgKEdyYXBoZW5lLlBvaW50M0QgYSwgR3JhcGhlbmUuUG9p bnQzRCBiLCBHcmFwaGVuZS5Qb2ludDNEIGMpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUu UGxhbmU/IGluaXRfZnJvbV92ZWM0IChHcmFwaGVuZS5WZWM0IHNyYyk7CisrCQlwdWJsaWMgR3Jh cGhlbmUuUGxhbmUgbmVnYXRlICgpOworKwkJcHVibGljIEdyYXBoZW5lLlBsYW5lIG5vcm1hbGl6 ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgR3JhcGhlbmUu UGxhbmUgdHJhbnNmb3JtIChHcmFwaGVuZS5NYXRyaXggbWF0cml4LCBHcmFwaGVuZS5NYXRyaXg/ IG5vcm1hbF9tYXRyaXgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFw aGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJncmFwaGVuZV9wb2ludF90IiwgdHlwZV9pZCA9ICJn cmFwaGVuZV9wb2ludF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIild CisrCXB1YmxpYyBzdHJ1Y3QgUG9pbnQgeworKwkJcHVibGljIGZsb2F0IHg7CisrCQlwdWJsaWMg ZmxvYXQgeTsKKysJCXB1YmxpYyBmbG9hdCBkaXN0YW5jZSAoR3JhcGhlbmUuUG9pbnQgYiwgb3V0 IGZsb2F0IGRfeCwgb3V0IGZsb2F0IGRfeSk7CisrCQlwdWJsaWMgYm9vbCBlcXVhbCAoR3JhcGhl bmUuUG9pbnQgYik7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5Qb2ludD8gaW5pdCAoZmxv YXQgeCwgZmxvYXQgeSk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5Qb2ludD8gaW5pdF9m cm9tX3BvaW50IChHcmFwaGVuZS5Qb2ludCBzcmMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu NCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUG9pbnQ/IGluaXRfZnJvbV92ZWMyIChH cmFwaGVuZS5WZWMyIHNyYyk7CisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQgaW50ZXJwb2xhdGUg KEdyYXBoZW5lLlBvaW50IGIsIGRvdWJsZSBmYWN0b3IpOworKwkJcHVibGljIGJvb2wgbmVhciAo R3JhcGhlbmUuUG9pbnQgYiwgZmxvYXQgZXBzaWxvbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS40IildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMiB0b192ZWMyICgpOworKwkJcHVibGljIHN0 YXRpYyB1bm93bmVkIEdyYXBoZW5lLlBvaW50PyB6ZXJvICgpOworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJncmFwaGVuZV9w b2ludDNkX3QiLCBsb3dlcl9jYXNlX2NzdWZmaXggPSAicG9pbnQzZCIsIHR5cGVfaWQgPSAiZ3Jh cGhlbmVfcG9pbnQzZF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIild CisrCXB1YmxpYyBzdHJ1Y3QgUG9pbnQzRCB7CisrCQlwdWJsaWMgZmxvYXQgeDsKKysJCXB1Ymxp YyBmbG9hdCB5OworKwkJcHVibGljIGZsb2F0IHo7CisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQz RCBjcm9zcyAoR3JhcGhlbmUuUG9pbnQzRCBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQi KV0KKysJCXB1YmxpYyBmbG9hdCBkaXN0YW5jZSAoR3JhcGhlbmUuUG9pbnQzRCBiLCBvdXQgR3Jh cGhlbmUuVmVjMyBkZWx0YSk7CisrCQlwdWJsaWMgZmxvYXQgZG90IChHcmFwaGVuZS5Qb2ludDNE IGIpOworKwkJcHVibGljIGJvb2wgZXF1YWwgKEdyYXBoZW5lLlBvaW50M0QgYik7CisrCQlwdWJs aWMgdW5vd25lZCBHcmFwaGVuZS5Qb2ludDNEPyBpbml0IChmbG9hdCB4LCBmbG9hdCB5LCBmbG9h dCB6KTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlBvaW50M0Q/IGluaXRfZnJvbV9wb2lu dCAoR3JhcGhlbmUuUG9pbnQzRCBzcmMpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUG9p bnQzRD8gaW5pdF9mcm9tX3ZlYzMgKEdyYXBoZW5lLlZlYzMgdik7CisrCQlwdWJsaWMgR3JhcGhl bmUuUG9pbnQzRCBpbnRlcnBvbGF0ZSAoR3JhcGhlbmUuUG9pbnQzRCBiLCBkb3VibGUgZmFjdG9y KTsKKysJCXB1YmxpYyBmbG9hdCBsZW5ndGggKCk7CisrCQlwdWJsaWMgYm9vbCBuZWFyIChHcmFw aGVuZS5Qb2ludDNEIGIsIGZsb2F0IGVwc2lsb24pOworKwkJcHVibGljIEdyYXBoZW5lLlBvaW50 M0Qgbm9ybWFsaXplICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGlj IEdyYXBoZW5lLlBvaW50M0Qgbm9ybWFsaXplX3ZpZXdwb3J0IChHcmFwaGVuZS5SZWN0IHZpZXdw b3J0LCBmbG9hdCB6X25lYXIsIGZsb2F0IHpfZmFyKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2lu dDNEIHNjYWxlIChmbG9hdCBmYWN0b3IpOworKwkJcHVibGljIEdyYXBoZW5lLlZlYzMgdG9fdmVj MyAoKTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5Qb2ludDNEPyB6ZXJvICgp OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0Lmgi LCBjbmFtZSA9ICJncmFwaGVuZV9xdWFkX3QiLCB0eXBlX2lkID0gImdyYXBoZW5lX3F1YWRfZ2V0 X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgc3RydWN0 IFF1YWQgeworKwkJcHVibGljIEdyYXBoZW5lLlJlY3QgYm91bmRzICgpOworKwkJcHVibGljIGJv b2wgY29udGFpbnMgKEdyYXBoZW5lLlBvaW50IHApOworKwkJcHVibGljIHVub3duZWQgR3JhcGhl bmUuUG9pbnQ/IGdldF9wb2ludCAodWludCBpbmRleF8pOworKwkJcHVibGljIHVub3duZWQgR3Jh cGhlbmUuUXVhZD8gaW5pdCAoR3JhcGhlbmUuUG9pbnQgcDEsIEdyYXBoZW5lLlBvaW50IHAyLCBH cmFwaGVuZS5Qb2ludCBwMywgR3JhcGhlbmUuUG9pbnQgcDQpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMiIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUXVhZD8gaW5pdF9mcm9tX3Bv aW50cyAoW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIEdyYXBoZW5lLlBvaW50IHBvaW50 c1s0XSk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5RdWFkPyBpbml0X2Zyb21fcmVjdCAo R3JhcGhlbmUuUmVjdCByKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3Jh cGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfcXVhdGVybmlvbl90IiwgdHlwZV9p ZCA9ICJncmFwaGVuZV9xdWF0ZXJuaW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjAiKV0KKysJcHVibGljIHN0cnVjdCBRdWF0ZXJuaW9uIHsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgR3JhcGhlbmUuUXVhdGVybmlvbiBhZGQgKEdyYXBo ZW5lLlF1YXRlcm5pb24gYik7CisrCQlwdWJsaWMgZmxvYXQgZG90IChHcmFwaGVuZS5RdWF0ZXJu aW9uIGIpOworKwkJcHVibGljIGJvb2wgZXF1YWwgKEdyYXBoZW5lLlF1YXRlcm5pb24gYik7Cisr CQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5RdWF0ZXJuaW9uPyBpbml0IChmbG9hdCB4LCBmbG9h dCB5LCBmbG9hdCB6LCBmbG9hdCB3KTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlF1YXRl cm5pb24/IGluaXRfZnJvbV9hbmdsZV92ZWMzIChmbG9hdCBhbmdsZSwgR3JhcGhlbmUuVmVjMyBh eGlzKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlF1YXRlcm5pb24/IGluaXRfZnJvbV9h bmdsZXMgKGZsb2F0IGRlZ194LCBmbG9hdCBkZWdfeSwgZmxvYXQgZGVnX3opOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUXVhdGVybmlv bj8gaW5pdF9mcm9tX2V1bGVyIChHcmFwaGVuZS5FdWxlciBlKTsKKysJCXB1YmxpYyB1bm93bmVk IEdyYXBoZW5lLlF1YXRlcm5pb24/IGluaXRfZnJvbV9tYXRyaXggKEdyYXBoZW5lLk1hdHJpeCBt KTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlF1YXRlcm5pb24/IGluaXRfZnJvbV9xdWF0 ZXJuaW9uIChHcmFwaGVuZS5RdWF0ZXJuaW9uIHNyYyk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFw aGVuZS5RdWF0ZXJuaW9uPyBpbml0X2Zyb21fcmFkaWFucyAoZmxvYXQgcmFkX3gsIGZsb2F0IHJh ZF95LCBmbG9hdCByYWRfeik7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5RdWF0ZXJuaW9u PyBpbml0X2Zyb21fdmVjNCAoR3JhcGhlbmUuVmVjNCBzcmMpOworKwkJcHVibGljIHVub3duZWQg R3JhcGhlbmUuUXVhdGVybmlvbj8gaW5pdF9pZGVudGl0eSAoKTsKKysJCXB1YmxpYyBHcmFwaGVu ZS5RdWF0ZXJuaW9uIGludmVydCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisr CQlwdWJsaWMgR3JhcGhlbmUuUXVhdGVybmlvbiBtdWx0aXBseSAoR3JhcGhlbmUuUXVhdGVybmlv biBiKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5RdWF0ZXJuaW9uIG5vcm1hbGl6ZSAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgR3JhcGhlbmUuUXVhdGVybmlvbiBz Y2FsZSAoZmxvYXQgZmFjdG9yKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5RdWF0ZXJuaW9uIHNsZXJw IChHcmFwaGVuZS5RdWF0ZXJuaW9uIGIsIGZsb2F0IGZhY3Rvcik7CisrCQlwdWJsaWMgdm9pZCB0 b19hbmdsZV92ZWMzIChvdXQgZmxvYXQgYW5nbGUsIG91dCBHcmFwaGVuZS5WZWMzIGF4aXMpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgdG9fYW5nbGVzIChv dXQgZmxvYXQgZGVnX3gsIG91dCBmbG9hdCBkZWdfeSwgb3V0IGZsb2F0IGRlZ196KTsKKysJCXB1 YmxpYyBHcmFwaGVuZS5NYXRyaXggdG9fbWF0cml4ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMiIpXQorKwkJcHVibGljIHZvaWQgdG9fcmFkaWFucyAob3V0IGZsb2F0IHJhZF94LCBvdXQg ZmxvYXQgcmFkX3ksIG91dCBmbG9hdCByYWRfeik7CisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjNCB0 b192ZWM0ICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1n b2JqZWN0LmgiLCBjbmFtZSA9ICJncmFwaGVuZV9yYXlfdCIsIHR5cGVfaWQgPSAiZ3JhcGhlbmVf cmF5X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGlj IHN0cnVjdCBSYXkgeworKwkJcHVibGljIGJvb2wgZXF1YWwgKEdyYXBoZW5lLlJheSBiKTsKKysJ CXB1YmxpYyBHcmFwaGVuZS5Qb2ludDNEIGdldF9jbG9zZXN0X3BvaW50X3RvX3BvaW50IChHcmFw aGVuZS5Qb2ludDNEIHApOworKwkJcHVibGljIEdyYXBoZW5lLlZlYzMgZ2V0X2RpcmVjdGlvbiAo KTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfZGlzdGFuY2VfdG9fcGxhbmUgKEdyYXBoZW5lLlBsYW5l IHApOworKwkJcHVibGljIGZsb2F0IGdldF9kaXN0YW5jZV90b19wb2ludCAoR3JhcGhlbmUuUG9p bnQzRCBwKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludDNEIGdldF9vcmlnaW4gKCk7CisrCQlw dWJsaWMgR3JhcGhlbmUuUG9pbnQzRCBnZXRfcG9zaXRpb25fYXQgKGZsb2F0IHQpOworKwkJcHVi bGljIHVub3duZWQgR3JhcGhlbmUuUmF5PyBpbml0IChHcmFwaGVuZS5Qb2ludDNEPyBvcmlnaW4s IEdyYXBoZW5lLlZlYzM/IGRpcmVjdGlvbik7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5S YXk/IGluaXRfZnJvbV9yYXkgKEdyYXBoZW5lLlJheSBzcmMpOworKwkJcHVibGljIHVub3duZWQg R3JhcGhlbmUuUmF5PyBpbml0X2Zyb21fdmVjMyAoR3JhcGhlbmUuVmVjMz8gb3JpZ2luLCBHcmFw aGVuZS5WZWMzPyBkaXJlY3Rpb24pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyBHcmFwaGVuZS5SYXlJbnRlcnNlY3Rpb25LaW5kIGludGVyc2VjdF9ib3ggKEdyYXBo ZW5lLkJveCBiLCBvdXQgZmxvYXQgdF9vdXQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAi KV0KKysJCXB1YmxpYyBHcmFwaGVuZS5SYXlJbnRlcnNlY3Rpb25LaW5kIGludGVyc2VjdF9zcGhl cmUgKEdyYXBoZW5lLlNwaGVyZSBzLCBvdXQgZmxvYXQgdF9vdXQpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5SYXlJbnRlcnNlY3Rpb25LaW5kIGlu dGVyc2VjdF90cmlhbmdsZSAoR3JhcGhlbmUuVHJpYW5nbGUgdCwgb3V0IGZsb2F0IHRfb3V0KTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgYm9vbCBpbnRlcnNlY3Rz X2JveCAoR3JhcGhlbmUuQm94IGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyBib29sIGludGVyc2VjdHNfc3BoZXJlIChHcmFwaGVuZS5TcGhlcmUgcyk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGJvb2wgaW50ZXJzZWN0c190cmlh bmdsZSAoR3JhcGhlbmUuVHJpYW5nbGUgdCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdyYXBoZW5lX3JlY3RfdCIsIHR5 cGVfaWQgPSAiZ3JhcGhlbmVfcmVjdF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCXB1YmxpYyBzdHJ1Y3QgUmVjdCB7CisrCQlwdWJsaWMgR3JhcGhlbmUuUG9p bnQgb3JpZ2luOworKwkJcHVibGljIEdyYXBoZW5lLlNpemUgc2l6ZTsKKysJCXB1YmxpYyBzdGF0 aWMgR3JhcGhlbmUuUmVjdD8gYWxsb2MgKCk7CisrCQlwdWJsaWMgYm9vbCBjb250YWluc19wb2lu dCAoR3JhcGhlbmUuUG9pbnQgcCk7CisrCQlwdWJsaWMgYm9vbCBjb250YWluc19yZWN0IChHcmFw aGVuZS5SZWN0IGIpOworKwkJcHVibGljIGJvb2wgZXF1YWwgKEdyYXBoZW5lLlJlY3QgYik7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgR3JhcGhlbmUuUmVjdCBleHBh bmQgKEdyYXBoZW5lLlBvaW50IHApOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyBmbG9hdCBnZXRfYXJlYSAoKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludCBnZXRf Ym90dG9tX2xlZnQgKCk7CisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQgZ2V0X2JvdHRvbV9yaWdo dCAoKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludCBnZXRfY2VudGVyICgpOworKwkJcHVibGlj IGZsb2F0IGdldF9oZWlnaHQgKCk7CisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQgZ2V0X3RvcF9s ZWZ0ICgpOworKwkJcHVibGljIEdyYXBoZW5lLlBvaW50IGdldF90b3BfcmlnaHQgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBnZXRfdmVydGljZXMgKFtD Q29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSByZWYgR3JhcGhlbmUuVmVjMiB2ZXJ0aWNlc1s0 XSk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X3dpZHRoICgpOworKwkJcHVibGljIGZsb2F0IGdldF94 ICgpOworKwkJcHVibGljIGZsb2F0IGdldF95ICgpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhl bmUuUmVjdD8gaW5pdCAoZmxvYXQgeCwgZmxvYXQgeSwgZmxvYXQgd2lkdGgsIGZsb2F0IGhlaWdo dCk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5SZWN0PyBpbml0X2Zyb21fcmVjdCAoR3Jh cGhlbmUuUmVjdCBzcmMpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUmVjdD8gaW5zZXQg KGZsb2F0IGRfeCwgZmxvYXQgZF95KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJ CXB1YmxpYyBHcmFwaGVuZS5SZWN0IGluc2V0X3IgKGZsb2F0IGRfeCwgZmxvYXQgZF95KTsKKysJ CXB1YmxpYyBHcmFwaGVuZS5SZWN0IGludGVycG9sYXRlIChHcmFwaGVuZS5SZWN0IGIsIGRvdWJs ZSBmYWN0b3IpOworKwkJcHVibGljIGJvb2wgaW50ZXJzZWN0aW9uIChHcmFwaGVuZS5SZWN0IGIs IG91dCBHcmFwaGVuZS5SZWN0IHJlcyk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5SZWN0 PyBub3JtYWxpemUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMg R3JhcGhlbmUuUmVjdCBub3JtYWxpemVfciAoKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5l LlJlY3Q/IG9mZnNldCAoZmxvYXQgZF94LCBmbG9hdCBkX3kpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuNCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlJlY3Qgb2Zmc2V0X3IgKGZsb2F0IGRfeCwg ZmxvYXQgZF95KTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9z aW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgR3JhcGhlbmUuUmVjdCBy b3VuZCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgR3JhcGhl bmUuUmVjdCByb3VuZF9leHRlbnRzICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVl LCBkZXByZWNhdGVkX3NpbmNlID0gIjEuNCIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVu b3duZWQgR3JhcGhlbmUuUmVjdD8gcm91bmRfdG9fcGl4ZWwgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlJlY3Qgc2NhbGUgKGZsb2F0IHNfaCwg ZmxvYXQgc192KTsKKysJCXB1YmxpYyBHcmFwaGVuZS5SZWN0IHVuaW9uIChHcmFwaGVuZS5SZWN0 IGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93 bmVkIEdyYXBoZW5lLlJlY3Q/IHplcm8gKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdyYXBoZW5lX3NpbWQ0Zl90Iiwg aGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgU2ltZDRGIHsKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAi Z3JhcGhlbmVfc2ltZDR4NGZfdCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgc3Ry dWN0IFNpbWQ0WDRGIHsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhl bmUtZ29iamVjdC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfc2l6ZV90IiwgdHlwZV9pZCA9ICJncmFw aGVuZV9zaXplX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJ cHVibGljIHN0cnVjdCBTaXplIHsKKysJCXB1YmxpYyBmbG9hdCB3aWR0aDsKKysJCXB1YmxpYyBm bG9hdCBoZWlnaHQ7CisrCQlwdWJsaWMgYm9vbCBlcXVhbCAoR3JhcGhlbmUuU2l6ZSBiKTsKKysJ CXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlNpemU/IGluaXQgKGZsb2F0IHdpZHRoLCBmbG9hdCBo ZWlnaHQpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuU2l6ZT8gaW5pdF9mcm9tX3NpemUg KEdyYXBoZW5lLlNpemUgc3JjKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5TaXplIGludGVycG9sYXRl IChHcmFwaGVuZS5TaXplIGIsIGRvdWJsZSBmYWN0b3IpOworKwkJcHVibGljIEdyYXBoZW5lLlNp emUgc2NhbGUgKGZsb2F0IGZhY3Rvcik7CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhl bmUuU2l6ZT8gemVybyAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3Jh cGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfc3BoZXJlX3QiLCB0eXBlX2lkID0g ImdyYXBoZW5lX3NwaGVyZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4y IildCisrCXB1YmxpYyBzdHJ1Y3QgU3BoZXJlIHsKKysJCXB1YmxpYyBib29sIGNvbnRhaW5zX3Bv aW50IChHcmFwaGVuZS5Qb2ludDNEIHBvaW50KTsKKysJCXB1YmxpYyBmbG9hdCBkaXN0YW5jZSAo R3JhcGhlbmUuUG9pbnQzRCBwb2ludCk7CisrCQlwdWJsaWMgYm9vbCBlcXVhbCAoR3JhcGhlbmUu U3BoZXJlIGIpOworKwkJcHVibGljIEdyYXBoZW5lLkJveCBnZXRfYm91bmRpbmdfYm94ICgpOwor KwkJcHVibGljIEdyYXBoZW5lLlBvaW50M0QgZ2V0X2NlbnRlciAoKTsKKysJCXB1YmxpYyBmbG9h dCBnZXRfcmFkaXVzICgpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuU3BoZXJlPyBpbml0 IChHcmFwaGVuZS5Qb2ludDNEPyBjZW50ZXIsIGZsb2F0IHJhZGl1cyk7CisrCQlwdWJsaWMgdW5v d25lZCBHcmFwaGVuZS5TcGhlcmU/IGluaXRfZnJvbV9wb2ludHMgKFtDQ29kZSAoYXJyYXlfbGVu Z3RoX2NuYW1lID0gIm5fcG9pbnRzIiwgYXJyYXlfbGVuZ3RoX3BvcyA9IDAuNSwgYXJyYXlfbGVu Z3RoX3R5cGUgPSAiZ3VpbnQiKV0gR3JhcGhlbmUuUG9pbnQzRFtdIHBvaW50cywgR3JhcGhlbmUu UG9pbnQzRD8gY2VudGVyKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlNwaGVyZT8gaW5p dF9mcm9tX3ZlY3RvcnMgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoX2NuYW1lID0gIm5fdmVjdG9ycyIs IGFycmF5X2xlbmd0aF9wb3MgPSAwLjUsIGFycmF5X2xlbmd0aF90eXBlID0gImd1aW50IildIEdy YXBoZW5lLlZlYzNbXSB2ZWN0b3JzLCBHcmFwaGVuZS5Qb2ludDNEPyBjZW50ZXIpOworKwkJcHVi bGljIGJvb2wgaXNfZW1wdHkgKCk7CisrCQlwdWJsaWMgR3JhcGhlbmUuU3BoZXJlIHRyYW5zbGF0 ZSAoR3JhcGhlbmUuUG9pbnQzRCBwb2ludCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdyYXBoZW5lX3RyaWFuZ2xlX3Qi LCB0eXBlX2lkID0gImdyYXBoZW5lX3RyaWFuZ2xlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9u IChzaW5jZSA9ICIxLjIiKV0KKysJcHVibGljIHN0cnVjdCBUcmlhbmdsZSB7CisrCQlwdWJsaWMg Ym9vbCBjb250YWluc19wb2ludCAoR3JhcGhlbmUuUG9pbnQzRCBwKTsKKysJCXB1YmxpYyBib29s IGVxdWFsIChHcmFwaGVuZS5UcmlhbmdsZSBiKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfYXJlYSAo KTsKKysJCXB1YmxpYyBib29sIGdldF9iYXJ5Y29vcmRzIChHcmFwaGVuZS5Qb2ludDNEPyBwLCBv dXQgR3JhcGhlbmUuVmVjMiByZXMpOworKwkJcHVibGljIEdyYXBoZW5lLkJveCBnZXRfYm91bmRp bmdfYm94ICgpOworKwkJcHVibGljIEdyYXBoZW5lLlBvaW50M0QgZ2V0X21pZHBvaW50ICgpOwor KwkJcHVibGljIEdyYXBoZW5lLlZlYzMgZ2V0X25vcm1hbCAoKTsKKysJCXB1YmxpYyBHcmFwaGVu ZS5QbGFuZSBnZXRfcGxhbmUgKCk7CisrCQlwdWJsaWMgdm9pZCBnZXRfcG9pbnRzIChvdXQgR3Jh cGhlbmUuUG9pbnQzRCBhLCBvdXQgR3JhcGhlbmUuUG9pbnQzRCBiLCBvdXQgR3JhcGhlbmUuUG9p bnQzRCBjKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgYm9vbCBn ZXRfdXYgKEdyYXBoZW5lLlBvaW50M0Q/IHAsIEdyYXBoZW5lLlZlYzIgdXZfYSwgR3JhcGhlbmUu VmVjMiB1dl9iLCBHcmFwaGVuZS5WZWMyIHV2X2MsIG91dCBHcmFwaGVuZS5WZWMyIHJlcyk7Cisr CQlwdWJsaWMgdm9pZCBnZXRfdmVydGljZXMgKG91dCBHcmFwaGVuZS5WZWMzIGEsIG91dCBHcmFw aGVuZS5WZWMzIGIsIG91dCBHcmFwaGVuZS5WZWMzIGMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlRyaWFuZ2xlPyBpbml0X2Zyb21f ZmxvYXQgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSBmbG9hdCBhWzNdLCBbQ0NvZGUg KGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gZmxvYXQgYlszXSwgW0NDb2RlIChhcnJheV9sZW5ndGgg PSBmYWxzZSldIGZsb2F0IGNbM10pOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuVHJpYW5n bGU/IGluaXRfZnJvbV9wb2ludDNkIChHcmFwaGVuZS5Qb2ludDNEPyBhLCBHcmFwaGVuZS5Qb2lu dDNEPyBiLCBHcmFwaGVuZS5Qb2ludDNEPyBjKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5l LlRyaWFuZ2xlPyBpbml0X2Zyb21fdmVjMyAoR3JhcGhlbmUuVmVjMz8gYSwgR3JhcGhlbmUuVmVj Mz8gYiwgR3JhcGhlbmUuVmVjMz8gYyk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdyYXBoZW5lX3ZlYzJfdCIsIHR5cGVf aWQgPSAiZ3JhcGhlbmVfdmVjMl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgc3RydWN0IFZlYzIg eworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzIg YWRkIChHcmFwaGVuZS5WZWMyIGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJ cHVibGljIEdyYXBoZW5lLlZlYzIgZGl2aWRlIChHcmFwaGVuZS5WZWMyIGIpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGRvdCAoR3JhcGhlbmUuVmVjMiBi KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBib29sIGVxdWFsIChH cmFwaGVuZS5WZWMyIHYyKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1Ymxp YyBmbG9hdCBnZXRfeCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1Ymxp YyBmbG9hdCBnZXRfeSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1Ymxp YyB1bm93bmVkIEdyYXBoZW5lLlZlYzI/IGluaXQgKGZsb2F0IHgsIGZsb2F0IHkpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuVmVjMj8g aW5pdF9mcm9tX2Zsb2F0IChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gZmxvYXQgc3Jj WzJdKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdy YXBoZW5lLlZlYzI/IGluaXRfZnJvbV92ZWMyIChHcmFwaGVuZS5WZWMyIHNyYyk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzIgaW50ZXJwb2xh dGUgKEdyYXBoZW5lLlZlYzIgdjIsIGRvdWJsZSBmYWN0b3IpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGxlbmd0aCAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMyIG1heCAoR3JhcGhlbmUuVmVjMiBi KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMy IG1pbiAoR3JhcGhlbmUuVmVjMiBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJ CXB1YmxpYyBHcmFwaGVuZS5WZWMyIG11bHRpcGx5IChHcmFwaGVuZS5WZWMyIGIpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIGJvb2wgbmVhciAoR3JhcGhlbmUuVmVj MiB2MiwgZmxvYXQgZXBzaWxvbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlw dWJsaWMgR3JhcGhlbmUuVmVjMiBuZWdhdGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMiBub3JtYWxpemUgKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuVmVjMj8g b25lICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIEdyYXBoZW5l LlZlYzIgc2NhbGUgKGZsb2F0IGZhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIild CisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMiBzdWJ0cmFjdCAoR3JhcGhlbmUuVmVjMiBiKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHRvX2Zsb2F0IChbQ0Nv ZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gcmVmIGZsb2F0IGRlc3RbMl0pOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLlZl YzI/IHhfYXhpcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBz dGF0aWMgdW5vd25lZCBHcmFwaGVuZS5WZWMyPyB5X2F4aXMgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuVmVjMj8gemVy byAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVj dC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfdmVjM190IiwgdHlwZV9pZCA9ICJncmFwaGVuZV92ZWMz X2dldF90eXBlICgpIildCisrCXB1YmxpYyBzdHJ1Y3QgVmVjMyB7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMyBhZGQgKEdyYXBoZW5lLlZlYzMg Yik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVj MyBjcm9zcyAoR3JhcGhlbmUuVmVjMyBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0K KysJCXB1YmxpYyBHcmFwaGVuZS5WZWMzIGRpdmlkZSAoR3JhcGhlbmUuVmVjMyBiKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBkb3QgKEdyYXBoZW5lLlZl YzMgYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgYm9vbCBlcXVh bCAoR3JhcGhlbmUuVmVjMyB2Mik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlw dWJsaWMgZmxvYXQgZ2V0X3ggKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlw dWJsaWMgR3JhcGhlbmUuVmVjMiBnZXRfeHkgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMyBnZXRfeHkwICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzQgZ2V0X3h5ejAgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjNCBnZXRfeHl6 MSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5W ZWM0IGdldF94eXp3IChmbG9hdCB3KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJ CXB1YmxpYyBmbG9hdCBnZXRfeSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJ CXB1YmxpYyBmbG9hdCBnZXRfeiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJ CXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlZlYzM/IGluaXQgKGZsb2F0IHgsIGZsb2F0IHksIGZs b2F0IHopOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQg R3JhcGhlbmUuVmVjMz8gaW5pdF9mcm9tX2Zsb2F0IChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZh bHNlKV0gZmxvYXQgc3JjWzNdKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyB1bm93bmVkIEdyYXBoZW5lLlZlYzM/IGluaXRfZnJvbV92ZWMzIChHcmFwaGVuZS5WZWMz IHNyYyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIEdyYXBoZW5l LlZlYzMgaW50ZXJwb2xhdGUgKEdyYXBoZW5lLlZlYzMgdjIsIGRvdWJsZSBmYWN0b3IpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGxlbmd0aCAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMzIG1heCAo R3JhcGhlbmUuVmVjMyBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1Ymxp YyBHcmFwaGVuZS5WZWMzIG1pbiAoR3JhcGhlbmUuVmVjMyBiKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMzIG11bHRpcGx5IChHcmFwaGVuZS5W ZWMzIGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIGJvb2wgbmVh ciAoR3JhcGhlbmUuVmVjMyB2MiwgZmxvYXQgZXBzaWxvbik7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4yIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMyBuZWdhdGUgKCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMyBub3JtYWxpemUgKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQg R3JhcGhlbmUuVmVjMz8gb25lICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJ cHVibGljIEdyYXBoZW5lLlZlYzMgc2NhbGUgKGZsb2F0IGZhY3Rvcik7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMyBzdWJ0cmFjdCAoR3JhcGhl bmUuVmVjMyBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lk IHRvX2Zsb2F0IChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gcmVmIGZsb2F0IGRlc3Rb M10pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93 bmVkIEdyYXBoZW5lLlZlYzM/IHhfYXhpcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5WZWMzPyB5X2F4aXMgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3Jh cGhlbmUuVmVjMz8gel9heGlzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJ cHVibGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLlZlYzM/IHplcm8gKCk7CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdy YXBoZW5lX3ZlYzRfdCIsIHR5cGVfaWQgPSAiZ3JhcGhlbmVfdmVjNF9nZXRfdHlwZSAoKSIpXQor KwlwdWJsaWMgc3RydWN0IFZlYzQgeworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJ cHVibGljIEdyYXBoZW5lLlZlYzQgYWRkIChHcmFwaGVuZS5WZWM0IGIpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzQgZGl2aWRlIChHcmFwaGVu ZS5WZWM0IGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0 IGRvdCAoR3JhcGhlbmUuVmVjNCBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJ CXB1YmxpYyBib29sIGVxdWFsIChHcmFwaGVuZS5WZWM0IHYyKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfdyAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfeCAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMyIGdldF94eSAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMzIGdldF94eXogKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3kgKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3ogKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVu ZS5WZWM0PyBpbml0IChmbG9hdCB4LCBmbG9hdCB5LCBmbG9hdCB6LCBmbG9hdCB3KTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlZlYzQ/ IGluaXRfZnJvbV9mbG9hdCAoW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIGZsb2F0IHNy Y1s0XSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBH cmFwaGVuZS5WZWM0PyBpbml0X2Zyb21fdmVjMiAoR3JhcGhlbmUuVmVjMiBzcmMsIGZsb2F0IHos IGZsb2F0IHcpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3du ZWQgR3JhcGhlbmUuVmVjND8gaW5pdF9mcm9tX3ZlYzMgKEdyYXBoZW5lLlZlYzMgc3JjLCBmbG9h dCB3KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdy YXBoZW5lLlZlYzQ/IGluaXRfZnJvbV92ZWM0IChHcmFwaGVuZS5WZWM0IHNyYyk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzQgaW50ZXJwb2xh dGUgKEdyYXBoZW5lLlZlYzQgdjIsIGRvdWJsZSBmYWN0b3IpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGxlbmd0aCAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWM0IG1heCAoR3JhcGhlbmUuVmVjNCBi KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWM0 IG1pbiAoR3JhcGhlbmUuVmVjNCBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJ CXB1YmxpYyBHcmFwaGVuZS5WZWM0IG11bHRpcGx5IChHcmFwaGVuZS5WZWM0IGIpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIGJvb2wgbmVhciAoR3JhcGhlbmUuVmVj NCB2MiwgZmxvYXQgZXBzaWxvbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlw dWJsaWMgR3JhcGhlbmUuVmVjNCBuZWdhdGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjNCBub3JtYWxpemUgKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuVmVjND8g b25lICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIEdyYXBoZW5l LlZlYzQgc2NhbGUgKGZsb2F0IGZhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIild CisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjNCBzdWJ0cmFjdCAoR3JhcGhlbmUuVmVjNCBiKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHRvX2Zsb2F0IChbQ0Nv ZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gcmVmIGZsb2F0IGRlc3RbNF0pOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLlZl YzQ/IHdfYXhpcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBz dGF0aWMgdW5vd25lZCBHcmFwaGVuZS5WZWM0PyB4X2F4aXMgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuVmVjND8geV9h eGlzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyB1 bm93bmVkIEdyYXBoZW5lLlZlYzQ/IHpfYXhpcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjAiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5WZWM0PyB6ZXJvICgpOwor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBj bmFtZSA9ICJncmFwaGVuZV9ldWxlcl9vcmRlcl90IiwgY3ByZWZpeCA9ICJHUkFQSEVORV9FVUxF Ul9PUkRFUl8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEu MiIpXQorKwlwdWJsaWMgZW51bSBFdWxlck9yZGVyIHsKKysJCURFRkFVTFQsCisrCQlYWVosCisr CQlZWlgsCisrCQlaWFksCisrCQlYWlksCisrCQlZWFosCisrCQlaWVgsCisrCQlTWFlaLAorKwkJ U1hZWCwKKysJCVNYWlksCisrCQlTWFpYLAorKwkJU1laWCwKKysJCVNZWlksCisrCQlTWVhaLAor KwkJU1lYWSwKKysJCVNaWFksCisrCQlTWlhaLAorKwkJU1pZWCwKKysJCVNaWVosCisrCQlSWllY LAorKwkJUlhZWCwKKysJCVJZWlgsCisrCQlSWFpYLAorKwkJUlhaWSwKKysJCVJZWlksCisrCQlS WlhZLAorKwkJUllYWSwKKysJCVJZWFosCisrCQlSWlhaLAorKwkJUlhZWiwKKysJCVJaWVoKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25h bWUgPSAiZ3JhcGhlbmVfcmF5X2ludGVyc2VjdGlvbl9raW5kX3QiLCBjcHJlZml4ID0gIkdSQVBI RU5FX1JBWV9JTlRFUlNFQ1RJT05fS0lORF8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGVudW0gUmF5SW50ZXJzZWN0aW9uS2lu ZCB7CisrCQlOT05FLAorKwkJRU5URVIsCisrCQlMRUFWRQorKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJHUkFQSEVORV9IQVNf R0NDIildCisrCXB1YmxpYyBjb25zdCBpbnQgSEFTX0dDQzsKKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gIkdSQVBIRU5FX0hBU19TQ0FM QVIiKV0KKysJcHVibGljIGNvbnN0IGludCBIQVNfU0NBTEFSOworKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiR1JBUEhFTkVfSEFTX1NT RSIpXQorKwlwdWJsaWMgY29uc3QgaW50IEhBU19TU0U7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJHUkFQSEVORV9QSSIpXQorKwlw dWJsaWMgY29uc3QgZG91YmxlIFBJOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3Jh cGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiR1JBUEhFTkVfUElfMiIpXQorKwlwdWJsaWMgY29u c3QgZG91YmxlIFBJXzI7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1n b2JqZWN0LmgiLCBjbmFtZSA9ICJHUkFQSEVORV9TSU1EX1MiKV0KKysJcHVibGljIGNvbnN0IHN0 cmluZyBTSU1EX1M7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2Jq ZWN0LmgiLCBjbmFtZSA9ICJHUkFQSEVORV9WRUMyX0xFTiIpXQorKwlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCXB1YmxpYyBjb25zdCBpbnQgVkVDMl9MRU47CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJHUkFQSEVORV9WRUMz X0xFTiIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBjb25zdCBpbnQg VkVDM19MRU47CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0 LmgiLCBjbmFtZSA9ICJHUkFQSEVORV9WRUM0X0xFTiIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAi MS4wIildCisrCXB1YmxpYyBjb25zdCBpbnQgVkVDNF9MRU47CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJmYWxzZSIpXQorKwlwdWJs aWMgY29uc3QgaW50IEBmYWxzZTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBo ZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gInRydWUiKV0KKysJcHVibGljIGNvbnN0IGludCBAdHJ1 ZTsKKyt9CitkaWZmIC0tZ2l0IGEvdmFwaS9saWJtdXR0ZXItNi5kZXBzIGIvdmFwaS9saWJtdXR0 ZXItNi5kZXBzCituZXcgZmlsZSBtb2RlIDEwMDY0NAoraW5kZXggMDAwMDAwMDAuLjIyMzUyNWU0 CistLS0gL2Rldi9udWxsCisrKysgYi92YXBpL2xpYm11dHRlci02LmRlcHMKK0BAIC0wLDAgKzEs NiBAQAorK2d0aystMy4wCisranNvbi1nbGliLTEuMAorK211dHRlci1jbHV0dGVyLTYKKyt4MTEK Kyt4Zml4ZXMtNC4wCisrZ3JhcGhlbmUtZ29iamVjdC0xLjAKK2RpZmYgLS1naXQgYS92YXBpL2xp Ym11dHRlci02LnZhcGkgYi92YXBpL2xpYm11dHRlci02LnZhcGkKK25ldyBmaWxlIG1vZGUgMTAw NjQ0CitpbmRleCAwMDAwMDAwMC4uMzFmNDgwMWMKKy0tLSAvZGV2L251bGwKKysrKyBiL3ZhcGkv bGlibXV0dGVyLTYudmFwaQorQEAgLTAsMCArMSwxNDc1IEBACisrLyogbGlibXV0dGVyLTYudmFw aSBnZW5lcmF0ZWQgYnkgdmFwaWdlbiwgZG8gbm90IG1vZGlmeS4gKi8KKysKKytbQ0NvZGUgKGNw cmVmaXggPSAiTWV0YSIsIGdpcl9uYW1lc3BhY2UgPSAiTWV0YSIsIGdpcl92ZXJzaW9uID0gIjYi LCBsb3dlcl9jYXNlX2NwcmVmaXggPSAibWV0YV8iKV0KKytuYW1lc3BhY2UgTWV0YSB7CisrCW5h bWVzcGFjZSBDb21wb3NpdG9yIHsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRh L2NvbXBvc2l0b3ItbXV0dGVyLmgiLCBjbmFtZSA9ICJtZXRhX2Rpc2FibGVfdW5yZWRpcmVjdF9m b3JfZGlzcGxheSIpXQorKwkJcHVibGljIHN0YXRpYyB2b2lkIGRpc2FibGVfdW5yZWRpcmVjdF9m b3JfZGlzcGxheSAoTWV0YS5EaXNwbGF5IGRpc3BsYXkpOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gIm1ldGEvY29tcG9zaXRvci1tdXR0ZXIuaCIsIGNuYW1lID0gIm1ldGFfZW5hYmxl X3VucmVkaXJlY3RfZm9yX2Rpc3BsYXkiKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBlbmFibGVf dW5yZWRpcmVjdF9mb3JfZGlzcGxheSAoTWV0YS5EaXNwbGF5IGRpc3BsYXkpOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvY29tcG9zaXRvci1tdXR0ZXIuaCIsIGNuYW1lID0g Im1ldGFfZm9jdXNfc3RhZ2Vfd2luZG93IildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQgZm9jdXNf c3RhZ2Vfd2luZG93IChNZXRhLkRpc3BsYXkgZGlzcGxheSwgdWludDMyIHRpbWVzdGFtcCk7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9jb21wb3NpdG9yLW11dHRlci5oIiwg Y25hbWUgPSAibWV0YV9nZXRfZmVlZGJhY2tfZ3JvdXBfZm9yX2Rpc3BsYXkiKV0KKysJCXB1Ymxp YyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF9mZWVkYmFja19ncm91cF9mb3JfZGlz cGxheSAoTWV0YS5EaXNwbGF5IGRpc3BsYXkpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gIm1ldGEvY29tcG9zaXRvci1tdXR0ZXIuaCIsIGNuYW1lID0gIm1ldGFfZ2V0X3N0YWdlX2Zv cl9kaXNwbGF5IildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRf c3RhZ2VfZm9yX2Rpc3BsYXkgKE1ldGEuRGlzcGxheSBkaXNwbGF5KTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJtZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgiLCBjbmFtZSA9ICJtZXRh X2dldF90b3Bfd2luZG93X2dyb3VwX2Zvcl9kaXNwbGF5IildCisrCQlwdWJsaWMgc3RhdGljIHVu b3duZWQgQ2x1dHRlci5BY3RvciBnZXRfdG9wX3dpbmRvd19ncm91cF9mb3JfZGlzcGxheSAoTWV0 YS5EaXNwbGF5IGRpc3BsYXkpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEv Y29tcG9zaXRvci1tdXR0ZXIuaCIsIGNuYW1lID0gIm1ldGFfZ2V0X3dpbmRvd19hY3RvcnMiKV0K KysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHTGliLkxpc3Q8Q2x1dHRlci5BY3Rvcj4gZ2V0X3dp bmRvd19hY3RvcnMgKE1ldGEuRGlzcGxheSBkaXNwbGF5KTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJtZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgiLCBjbmFtZSA9ICJtZXRhX2dldF93 aW5kb3dfZ3JvdXBfZm9yX2Rpc3BsYXkiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0 dGVyLkFjdG9yIGdldF93aW5kb3dfZ3JvdXBfZm9yX2Rpc3BsYXkgKE1ldGEuRGlzcGxheSBkaXNw bGF5KTsKKysJfQorKwluYW1lc3BhY2UgUHJlZnMgeworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfYmVsbF9pc19hdWRpYmxl IildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wgcHJlZnNfYmVsbF9pc19hdWRpYmxlICgpOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFf cHJlZnNfY2hhbmdlX3dvcmtzcGFjZV9uYW1lIildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQgcHJl ZnNfY2hhbmdlX3dvcmtzcGFjZV9uYW1lIChpbnQgaSwgc3RyaW5nIG5hbWUpOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNf Z2V0X2FjdGlvbl9kb3VibGVfY2xpY2tfdGl0bGViYXIiKV0KKysJCXB1YmxpYyBzdGF0aWMgR0Rl c2t0b3AuVGl0bGViYXJBY3Rpb24gcHJlZnNfZ2V0X2FjdGlvbl9kb3VibGVfY2xpY2tfdGl0bGVi YXIgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25h bWUgPSAibWV0YV9wcmVmc19nZXRfYWN0aW9uX21pZGRsZV9jbGlja190aXRsZWJhciIpXQorKwkJ cHVibGljIHN0YXRpYyBHRGVza3RvcC5UaXRsZWJhckFjdGlvbiBwcmVmc19nZXRfYWN0aW9uX21p ZGRsZV9jbGlja190aXRsZWJhciAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJt ZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9hY3Rpb25fcmlnaHRfY2xpY2tf dGl0bGViYXIiKV0KKysJCXB1YmxpYyBzdGF0aWMgR0Rlc2t0b3AuVGl0bGViYXJBY3Rpb24gcHJl ZnNfZ2V0X2FjdGlvbl9yaWdodF9jbGlja190aXRsZWJhciAoKTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9hdHRh Y2hfbW9kYWxfZGlhbG9ncyIpXQorKwkJcHVibGljIHN0YXRpYyBib29sIHByZWZzX2dldF9hdHRh Y2hfbW9kYWxfZGlhbG9ncyAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRh L3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9hdXRvX21heGltaXplIildCisrCQlw dWJsaWMgc3RhdGljIGJvb2wgcHJlZnNfZ2V0X2F1dG9fbWF4aW1pemUgKCk7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19n ZXRfYXV0b19yYWlzZSIpXQorKwkJcHVibGljIHN0YXRpYyBib29sIHByZWZzX2dldF9hdXRvX3Jh aXNlICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNu YW1lID0gIm1ldGFfcHJlZnNfZ2V0X2F1dG9fcmFpc2VfZGVsYXkiKV0KKysJCXB1YmxpYyBzdGF0 aWMgaW50IHByZWZzX2dldF9hdXRvX3JhaXNlX2RlbGF5ICgpOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X2J1dHRv bl9sYXlvdXQiKV0KKysJCXB1YmxpYyBzdGF0aWMgTWV0YS5CdXR0b25MYXlvdXQgcHJlZnNfZ2V0 X2J1dHRvbl9sYXlvdXQgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9w cmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfY2VudGVyX25ld193aW5kb3dzIildCisr CQlwdWJsaWMgc3RhdGljIGJvb2wgcHJlZnNfZ2V0X2NlbnRlcl9uZXdfd2luZG93cyAoKTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRh X3ByZWZzX2dldF9jb21wb3NpdGluZ19tYW5hZ2VyIildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wg cHJlZnNfZ2V0X2NvbXBvc2l0aW5nX21hbmFnZXIgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfY3Vyc29yX3Np emUiKV0KKysJCXB1YmxpYyBzdGF0aWMgaW50IHByZWZzX2dldF9jdXJzb3Jfc2l6ZSAoKTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRh X3ByZWZzX2dldF9jdXJzb3JfdGhlbWUiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBzdHJp bmcgcHJlZnNfZ2V0X2N1cnNvcl90aGVtZSAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9kaXNhYmxlX3dvcmth cm91bmRzIildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wgcHJlZnNfZ2V0X2Rpc2FibGVfd29ya2Fy b3VuZHMgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwg Y25hbWUgPSAibWV0YV9wcmVmc19nZXRfZHJhZ190aHJlc2hvbGQiKV0KKysJCXB1YmxpYyBzdGF0 aWMgaW50IHByZWZzX2dldF9kcmFnX3RocmVzaG9sZCAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9kcmFnZ2Fi bGVfYm9yZGVyX3dpZHRoIildCisrCQlwdWJsaWMgc3RhdGljIGludCBwcmVmc19nZXRfZHJhZ2dh YmxlX2JvcmRlcl93aWR0aCAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRh L3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9keW5hbWljX3dvcmtzcGFjZXMiKV0K KysJCXB1YmxpYyBzdGF0aWMgYm9vbCBwcmVmc19nZXRfZHluYW1pY193b3Jrc3BhY2VzICgpOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1l dGFfcHJlZnNfZ2V0X2VkZ2VfdGlsaW5nIildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wgcHJlZnNf Z2V0X2VkZ2VfdGlsaW5nICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEv cHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X2ZvY3VzX2NoYW5nZV9vbl9wb2ludGVy X3Jlc3QiKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBwcmVmc19nZXRfZm9jdXNfY2hhbmdlX29u X3BvaW50ZXJfcmVzdCAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3By ZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9mb2N1c19tb2RlIildCisrCQlwdWJsaWMg c3RhdGljIEdEZXNrdG9wLkZvY3VzTW9kZSBwcmVmc19nZXRfZm9jdXNfbW9kZSAoKTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3By ZWZzX2dldF9mb2N1c19uZXdfd2luZG93cyIpXQorKwkJcHVibGljIHN0YXRpYyBHRGVza3RvcC5G b2N1c05ld1dpbmRvd3MgcHJlZnNfZ2V0X2ZvY3VzX25ld193aW5kb3dzICgpOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNf Z2V0X2ZvcmNlX2Z1bGxzY3JlZW4iKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBwcmVmc19nZXRf Zm9yY2VfZnVsbHNjcmVlbiAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRh L3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9nbm9tZV9hY2Nlc3NpYmlsaXR5Iild CisrCQlwdWJsaWMgc3RhdGljIGJvb2wgcHJlZnNfZ2V0X2dub21lX2FjY2Vzc2liaWxpdHkgKCk7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAi bWV0YV9wcmVmc19nZXRfZ25vbWVfYW5pbWF0aW9ucyIpXQorKwkJcHVibGljIHN0YXRpYyBib29s IHByZWZzX2dldF9nbm9tZV9hbmltYXRpb25zICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X2tleWJpbmRpbmdf YWN0aW9uIildCisrCQlwdWJsaWMgc3RhdGljIE1ldGEuS2V5QmluZGluZ0FjdGlvbiBwcmVmc19n ZXRfa2V5YmluZGluZ19hY3Rpb24gKHN0cmluZyBuYW1lKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9tb3VzZV9i dXR0b25fbWVudSIpXQorKwkJcHVibGljIHN0YXRpYyBpbnQgcHJlZnNfZ2V0X21vdXNlX2J1dHRv bl9tZW51ICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIs IGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X21vdXNlX2J1dHRvbl9tb2RzIildCisrCQlwdWJsaWMg c3RhdGljIE1ldGEuVmlydHVhbE1vZGlmaWVyIHByZWZzX2dldF9tb3VzZV9idXR0b25fbW9kcyAo KTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9 ICJtZXRhX3ByZWZzX2dldF9tb3VzZV9idXR0b25fcmVzaXplIildCisrCQlwdWJsaWMgc3RhdGlj IGludCBwcmVmc19nZXRfbW91c2VfYnV0dG9uX3Jlc2l6ZSAoKTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9udW1f d29ya3NwYWNlcyIpXQorKwkJcHVibGljIHN0YXRpYyBpbnQgcHJlZnNfZ2V0X251bV93b3Jrc3Bh Y2VzICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNu YW1lID0gIm1ldGFfcHJlZnNfZ2V0X3JhaXNlX29uX2NsaWNrIildCisrCQlwdWJsaWMgc3RhdGlj IGJvb2wgcHJlZnNfZ2V0X3JhaXNlX29uX2NsaWNrICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X3Nob3dfZmFs bGJhY2tfYXBwX21lbnUiKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBwcmVmc19nZXRfc2hvd19m YWxsYmFja19hcHBfbWVudSAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRh L3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF90aXRsZWJhcl9mb250IildCisrCQlw dWJsaWMgc3RhdGljIHVub3duZWQgUGFuZ28uRm9udERlc2NyaXB0aW9uIHByZWZzX2dldF90aXRs ZWJhcl9mb250ICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMu aCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X3Zpc3VhbF9iZWxsIildCisrCQlwdWJsaWMgc3Rh dGljIGJvb2wgcHJlZnNfZ2V0X3Zpc3VhbF9iZWxsICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X3Zpc3VhbF9i ZWxsX3R5cGUiKV0KKysJCXB1YmxpYyBzdGF0aWMgR0Rlc2t0b3AuVmlzdWFsQmVsbFR5cGUgcHJl ZnNfZ2V0X3Zpc3VhbF9iZWxsX3R5cGUgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfd29ya3NwYWNlX25hbWUi KV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBzdHJpbmcgcHJlZnNfZ2V0X3dvcmtzcGFjZV9u YW1lIChpbnQgaSk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5o IiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfd29ya3NwYWNlc19vbmx5X29uX3ByaW1hcnkiKV0K KysJCXB1YmxpYyBzdGF0aWMgYm9vbCBwcmVmc19nZXRfd29ya3NwYWNlc19vbmx5X29uX3ByaW1h cnkgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25h bWUgPSAibWV0YV9wcmVmc19pbml0IildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQgcHJlZnNfaW5p dCAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFt ZSA9ICJtZXRhX3ByZWZzX3NldF9mb3JjZV9mdWxsc2NyZWVuIildCisrCQlwdWJsaWMgc3RhdGlj IHZvaWQgcHJlZnNfc2V0X2ZvcmNlX2Z1bGxzY3JlZW4gKGJvb2wgd2hldGhlcik7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVm c19zZXRfbnVtX3dvcmtzcGFjZXMiKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBwcmVmc19zZXRf bnVtX3dvcmtzcGFjZXMgKGludCBuX3dvcmtzcGFjZXMpOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfc2V0X3Nob3dfZmFs bGJhY2tfYXBwX21lbnUiKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBwcmVmc19zZXRfc2hvd19m YWxsYmFja19hcHBfbWVudSAoYm9vbCB3aGV0aGVyKTsKKysJfQorKwluYW1lc3BhY2UgVXRpbCB7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJt ZXRhX2FkZF92ZXJib3NlX3RvcGljIildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQgYWRkX3ZlcmJv c2VfdG9waWMgKE1ldGEuRGVidWdUb3BpYyB0b3BpYyk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX2V4dGVybmFsX2JpbmRpbmdfbmFt ZV9mb3JfYWN0aW9uIildCisrCQlwdWJsaWMgc3RhdGljIHN0cmluZyBleHRlcm5hbF9iaW5kaW5n X25hbWVfZm9yX2FjdGlvbiAodWludCBrZXliaW5kaW5nX2FjdGlvbik7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX2dldF9sb2NhbGVf ZGlyZWN0aW9uIildCisrCQlwdWJsaWMgc3RhdGljIE1ldGEuTG9jYWxlRGlyZWN0aW9uIGdldF9s b2NhbGVfZGlyZWN0aW9uICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEv dXRpbC5oIiwgY25hbWUgPSAibWV0YV9ncmF2aXR5X3RvX3N0cmluZyIpXQorKwkJcHVibGljIHN0 YXRpYyB1bm93bmVkIHN0cmluZyBncmF2aXR5X3RvX3N0cmluZyAoaW50IGdyYXZpdHkpOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRpbC5oIiwgY25hbWUgPSAibWV0YV9p c19kZWJ1Z2dpbmciKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBpc19kZWJ1Z2dpbmcgKCk7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRh X2lzX3N5bmNpbmciKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBpc19zeW5jaW5nICgpOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRpbC5oIiwgY25hbWUgPSAibWV0YV9p c192ZXJib3NlIildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wgaXNfdmVyYm9zZSAoKTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3V0aWwuaCIsIGNuYW1lID0gIm1ldGFfaXNf d2F5bGFuZF9jb21wb3NpdG9yIildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wgaXNfd2F5bGFuZF9j b21wb3NpdG9yICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRpbC5o IiwgY25hbWUgPSAibWV0YV9sYXRlcl9hZGQiKV0KKysJCXB1YmxpYyBzdGF0aWMgdWludCBsYXRl cl9hZGQgKE1ldGEuTGF0ZXJUeXBlIHdoZW4sIG93bmVkIEdMaWIuU291cmNlRnVuYyBmdW5jKTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3V0aWwuaCIsIGNuYW1lID0gIm1l dGFfbGF0ZXJfcmVtb3ZlIildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQgbGF0ZXJfcmVtb3ZlICh1 aW50IGxhdGVyX2lkKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3V0aWwu aCIsIGNuYW1lID0gIm1ldGFfcG9wX25vX21zZ19wcmVmaXgiKV0KKysJCXB1YmxpYyBzdGF0aWMg dm9pZCBwb3Bfbm9fbXNnX3ByZWZpeCAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJtZXRhL3V0aWwuaCIsIGNuYW1lID0gIm1ldGFfcHVzaF9ub19tc2dfcHJlZml4IildCisrCQlw dWJsaWMgc3RhdGljIHZvaWQgcHVzaF9ub19tc2dfcHJlZml4ICgpOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRpbC5oIiwgY25hbWUgPSAibWV0YV9yZWN0IildCisrCQlw dWJsaWMgc3RhdGljIE1ldGEuUmVjdGFuZ2xlPyByZWN0IChpbnQgeCwgaW50IHksIGludCB3aWR0 aCwgaW50IGhlaWdodCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91dGls LmgiLCBjbmFtZSA9ICJtZXRhX3JlbW92ZV92ZXJib3NlX3RvcGljIildCisrCQlwdWJsaWMgc3Rh dGljIHZvaWQgcmVtb3ZlX3ZlcmJvc2VfdG9waWMgKE1ldGEuRGVidWdUb3BpYyB0b3BpYyk7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRh X3Nob3dfZGlhbG9nIildCisrCQlwdWJsaWMgc3RhdGljIEdMaWIuUGlkIHNob3dfZGlhbG9nIChz dHJpbmcgdHlwZSwgc3RyaW5nIG1lc3NhZ2UsIHN0cmluZyB0aW1lb3V0LCBzdHJpbmcgZGlzcGxh eSwgc3RyaW5nIG9rX3RleHQsIHN0cmluZyBjYW5jZWxfdGV4dCwgc3RyaW5nIGljb25fbmFtZSwg aW50IHRyYW5zaWVudF9mb3IsIEdMaWIuU0xpc3Q8dm9pZCo+IGNvbHVtbnMsIEdMaWIuU0xpc3Q8 dm9pZCo+IGVudHJpZXMpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRp bC5oIiwgY25hbWUgPSAibWV0YV91bnNpZ25lZF9sb25nX2VxdWFsIildCisrCQlwdWJsaWMgc3Rh dGljIGludCB1bnNpZ25lZF9sb25nX2VxdWFsICh2b2lkKiB2MSwgdm9pZCogdjIpOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRpbC5oIiwgY25hbWUgPSAibWV0YV91bnNp Z25lZF9sb25nX2hhc2giKV0KKysJCXB1YmxpYyBzdGF0aWMgdWludCB1bnNpZ25lZF9sb25nX2hh c2ggKHZvaWQqIHYpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRpbC5o IiwgY25hbWUgPSAibWV0YV94MTFfZXJyb3JfdHJhcF9wb3AiKV0KKysJCXB1YmxpYyBzdGF0aWMg dm9pZCB4MTFfZXJyb3JfdHJhcF9wb3AgKE1ldGEuWDExRGlzcGxheSB4MTFfZGlzcGxheSk7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRh X3gxMV9lcnJvcl90cmFwX3BvcF93aXRoX3JldHVybiIpXQorKwkJcHVibGljIHN0YXRpYyBpbnQg eDExX2Vycm9yX3RyYXBfcG9wX3dpdGhfcmV0dXJuIChNZXRhLlgxMURpc3BsYXkgeDExX2Rpc3Bs YXkpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRpbC5oIiwgY25hbWUg PSAibWV0YV94MTFfZXJyb3JfdHJhcF9wdXNoIildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQgeDEx X2Vycm9yX3RyYXBfcHVzaCAoTWV0YS5YMTFEaXNwbGF5IHgxMV9kaXNwbGF5KTsKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLWJhY2tlbmQuaCIsIHR5cGVfaWQg PSAibWV0YV9iYWNrZW5kX2dldF90eXBlICgpIildCisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBC YWNrZW5kIDogR0xpYi5PYmplY3QsIEdMaWIuSW5pdGFibGUgeworKwkJW0NDb2RlIChoYXNfY29u c3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIEJhY2tlbmQgKCk7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLWJhY2tlbmQuaCIsIGNuYW1lID0g Im1ldGFfZ2V0X2JhY2tlbmQiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBNZXRhLkJhY2tl bmQgZ2V0X2JhY2tlbmQgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLkRuZCBnZXRfZG5kICgp OworKwkJcHVibGljIHVub3duZWQgTWV0YS5SZW1vdGVBY2Nlc3NDb250cm9sbGVyIGdldF9yZW1v dGVfYWNjZXNzX2NvbnRyb2xsZXIgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9y IGdldF9zdGFnZSAoKTsKKysJCXB1YmxpYyB2b2lkIGxvY2tfbGF5b3V0X2dyb3VwICh1aW50IGlk eCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfa2V5bWFwIChzdHJpbmcgbGF5b3V0cywgc3RyaW5nIHZh cmlhbnRzLCBzdHJpbmcgb3B0aW9ucyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfbnVtbG9jayAoYm9v bCBudW1sb2NrX3N0YXRlKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBrZXltYXBfY2hhbmdlZCAo KTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBrZXltYXBfbGF5b3V0X2dyb3VwX2NoYW5nZWQgKHVp bnQgb2JqZWN0KTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBsYXN0X2RldmljZV9jaGFuZ2VkIChD bHV0dGVyLklucHV0RGV2aWNlIG9iamVjdCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgbGlkX2lz X2Nsb3NlZF9jaGFuZ2VkIChib29sIG9iamVjdCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gIm1ldGEvbWV0YS1iYWNrZ3JvdW5kLmgiLCB0eXBlX2lkID0gIm1ldGFfYmFja2dy b3VuZF9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgQmFja2dyb3VuZCA6IEdMaWIuT2Jq ZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1 YmxpYyBCYWNrZ3JvdW5kIChNZXRhLkRpc3BsYXkgZGlzcGxheSk7CisrCQlwdWJsaWMgc3RhdGlj IHZvaWQgcmVmcmVzaF9hbGwgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfYmxlbmQgKEdMaWIuRmls ZSBmaWxlMSwgR0xpYi5GaWxlIGZpbGUyLCBkb3VibGUgYmxlbmRfZmFjdG9yLCBHRGVza3RvcC5C YWNrZ3JvdW5kU3R5bGUgc3R5bGUpOworKwkJcHVibGljIHZvaWQgc2V0X2NvbG9yIChDbHV0dGVy LkNvbG9yIGNvbG9yKTsKKysJCXB1YmxpYyB2b2lkIHNldF9maWxlIChHTGliLkZpbGU/IGZpbGUs IEdEZXNrdG9wLkJhY2tncm91bmRTdHlsZSBzdHlsZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfZ3Jh ZGllbnQgKEdEZXNrdG9wLkJhY2tncm91bmRTaGFkaW5nIHNoYWRpbmdfZGlyZWN0aW9uLCBDbHV0 dGVyLkNvbG9yIGNvbG9yLCBDbHV0dGVyLkNvbG9yIHNlY29uZF9jb2xvcik7CisrCQlbTm9BY2Nl c3Nvck1ldGhvZF0KKysJCXB1YmxpYyBNZXRhLkRpc3BsYXkgbWV0YV9kaXNwbGF5IHsgb3duZWQg Z2V0OyBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCBjaGFuZ2VkICgpOworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtYmFja2dyb3VuZC1hY3Rv ci5oIiwgdHlwZV9pZCA9ICJtZXRhX2JhY2tncm91bmRfYWN0b3JfZ2V0X3R5cGUgKCkiKV0KKysJ cHVibGljIGNsYXNzIEJhY2tncm91bmRBY3RvciA6IENsdXR0ZXIuQWN0b3IsIEF0ay5JbXBsZW1l bnRvciwgQ2x1dHRlci5BbmltYXRhYmxlLCBDbHV0dGVyLkNvbnRhaW5lciwgQ2x1dHRlci5TY3Jp cHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBl ID0gIkNsdXR0ZXJBY3RvcioiKV0KKysJCXB1YmxpYyBCYWNrZ3JvdW5kQWN0b3IgKE1ldGEuRGlz cGxheSBkaXNwbGF5LCBpbnQgbW9uaXRvcik7CisrCQlwdWJsaWMgdm9pZCBzZXRfYmFja2dyb3Vu ZCAoTWV0YS5CYWNrZ3JvdW5kIGJhY2tncm91bmQpOworKwkJcHVibGljIHZvaWQgc2V0X2dyYWRp ZW50IChib29sIGVuYWJsZWQsIGludCBoZWlnaHQsIGRvdWJsZSB0b25lX3N0YXJ0KTsKKysJCXB1 YmxpYyB2b2lkIHNldF9tb25pdG9yIChpbnQgbW9uaXRvcik7CisrCQlwdWJsaWMgdm9pZCBzZXRf dmlnbmV0dGUgKGJvb2wgZW5hYmxlZCwgZG91YmxlIGJyaWdodG5lc3MsIGRvdWJsZSBzaGFycG5l c3MpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgTWV0YS5CYWNrZ3JvdW5kIGJh Y2tncm91bmQgeyBvd25lZCBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlw dWJsaWMgZG91YmxlIGJyaWdodG5lc3MgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRo b2RdCisrCQlwdWJsaWMgYm9vbCBncmFkaWVudCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nv ck1ldGhvZF0KKysJCXB1YmxpYyBpbnQgZ3JhZGllbnRfaGVpZ2h0IHsgZ2V0OyBzZXQ7IH0KKysJ CVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGRvdWJsZSBncmFkaWVudF9tYXhfZGFya25l c3MgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgTWV0YS5E aXNwbGF5IG1ldGFfZGlzcGxheSB7IG93bmVkIGdldDsgY29uc3RydWN0OyB9CisrCQlbTm9BY2Nl c3Nvck1ldGhvZF0KKysJCXB1YmxpYyBpbnQgbW9uaXRvciB7IGdldDsgY29uc3RydWN0OyB9Cisr CQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIHZpZ25ldHRlIHsgZ2V0OyBzZXQ7 IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGRvdWJsZSB2aWduZXR0ZV9zaGFy cG5lc3MgeyBnZXQ7IHNldDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJt ZXRhL21ldGEtYmFja2dyb3VuZC1ncm91cC5oIiwgdHlwZV9pZCA9ICJtZXRhX2JhY2tncm91bmRf Z3JvdXBfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIEJhY2tncm91bmRHcm91cCA6IENs dXR0ZXIuQWN0b3IsIEF0ay5JbXBsZW1lbnRvciwgQ2x1dHRlci5BbmltYXRhYmxlLCBDbHV0dGVy LkNvbnRhaW5lciwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVj dF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3RvcioiKV0KKysJCXB1YmxpYyBC YWNrZ3JvdW5kR3JvdXAgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1l dGEvbWV0YS1iYWNrZ3JvdW5kLWltYWdlLmgiLCB0eXBlX2lkID0gIm1ldGFfYmFja2dyb3VuZF9p bWFnZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgQmFja2dyb3VuZEltYWdlIDogR0xp Yi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQor KwkJcHJvdGVjdGVkIEJhY2tncm91bmRJbWFnZSAoKTsKKysJCXB1YmxpYyBib29sIGdldF9zdWNj ZXNzICgpOworKwkJcHVibGljIHVub3duZWQgQ29nbC5UZXh0dXJlIGdldF90ZXh0dXJlICgpOwor KwkJcHVibGljIGJvb2wgaXNfbG9hZGVkICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGxvYWRl ZCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLWJhY2tn cm91bmQtaW1hZ2UuaCIsIHR5cGVfaWQgPSAibWV0YV9iYWNrZ3JvdW5kX2ltYWdlX2NhY2hlX2dl dF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBCYWNrZ3JvdW5kSW1hZ2VDYWNoZSA6IEdMaWIu T2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJ CXByb3RlY3RlZCBCYWNrZ3JvdW5kSW1hZ2VDYWNoZSAoKTsKKysJCXB1YmxpYyBzdGF0aWMgdW5v d25lZCBNZXRhLkJhY2tncm91bmRJbWFnZUNhY2hlIGdldF9kZWZhdWx0ICgpOworKwkJcHVibGlj IE1ldGEuQmFja2dyb3VuZEltYWdlIGxvYWQgKEdMaWIuRmlsZSBmaWxlKTsKKysJCXB1YmxpYyB2 b2lkIHB1cmdlIChHTGliLkZpbGUgZmlsZSk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gIm1ldGEvYmFycmllci5oIiwgdHlwZV9pZCA9ICJtZXRhX2JhcnJpZXJfZ2V0X3R5cGUg KCkiKV0KKysJcHVibGljIGNsYXNzIEJhcnJpZXIgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUg KGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgQmFycmllciAo KTsKKysJCXB1YmxpYyB2b2lkIGRlc3Ryb3kgKCk7CisrCQlwdWJsaWMgYm9vbCBpc19hY3RpdmUg KCk7CisrCQlwdWJsaWMgdm9pZCByZWxlYXNlIChNZXRhLkJhcnJpZXJFdmVudCBldmVudCk7Cisr CQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBNZXRhLkJhcnJpZXJEaXJlY3Rpb24gZGly ZWN0aW9ucyB7IGdldDsgY29uc3RydWN0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1 YmxpYyBNZXRhLkRpc3BsYXkgZGlzcGxheSB7IG93bmVkIGdldDsgY29uc3RydWN0OyB9CisrCQlb Tm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBpbnQgeDEgeyBnZXQ7IGNvbnN0cnVjdDsgfQor KwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgaW50IHgyIHsgZ2V0OyBjb25zdHJ1Y3Q7 IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGludCB5MSB7IGdldDsgY29uc3Ry dWN0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBpbnQgeTIgeyBnZXQ7IGNv bnN0cnVjdDsgfQorKwkJcHVibGljIHNpZ25hbCB2b2lkIGhpdCAoTWV0YS5CYXJyaWVyRXZlbnQg ZXZlbnQpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGxlZnQgKE1ldGEuQmFycmllckV2ZW50IGV2 ZW50KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9iYXJyaWVyLmgi LCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24gPSAiZ19ib3hl ZF9mcmVlIiwgdHlwZV9pZCA9ICJtZXRhX2JhcnJpZXJfZXZlbnRfZ2V0X3R5cGUgKCkiKV0KKysJ W0NvbXBhY3RdCisrCXB1YmxpYyBjbGFzcyBCYXJyaWVyRXZlbnQgeworKwkJcHVibGljIGludCBk dDsKKysJCXB1YmxpYyBkb3VibGUgZHg7CisrCQlwdWJsaWMgZG91YmxlIGR5OworKwkJcHVibGlj IGludCBldmVudF9pZDsKKysJCXB1YmxpYyBib29sIGdyYWJiZWQ7CisrCQlwdWJsaWMgYm9vbCBy ZWxlYXNlZDsKKysJCXB1YmxpYyB1aW50MzIgdGltZTsKKysJCXB1YmxpYyBkb3VibGUgeDsKKysJ CXB1YmxpYyBkb3VibGUgeTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0 YS9tZXRhLWN1cnNvci10cmFja2VyLmgiLCB0eXBlX2lkID0gIm1ldGFfY3Vyc29yX3RyYWNrZXJf Z2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIEN1cnNvclRyYWNrZXIgOiBHTGliLk9iamVj dCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90 ZWN0ZWQgQ3Vyc29yVHJhY2tlciAoKTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBNZXRhLkN1 cnNvclRyYWNrZXIgZ2V0X2Zvcl9kaXNwbGF5IChNZXRhLkRpc3BsYXkgZGlzcGxheSk7CisrCQlw dWJsaWMgdm9pZCBnZXRfaG90IChvdXQgaW50IHgsIG91dCBpbnQgeSk7CisrCQlwdWJsaWMgdm9p ZCBnZXRfcG9pbnRlciAoaW50IHgsIGludCB5LCBDbHV0dGVyLk1vZGlmaWVyVHlwZSBtb2RzKTsK KysJCXB1YmxpYyBib29sIGdldF9wb2ludGVyX3Zpc2libGUgKCk7CisrCQlwdWJsaWMgdW5vd25l ZCBDb2dsLlRleHR1cmUgZ2V0X3Nwcml0ZSAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9wb2ludGVy X3Zpc2libGUgKGJvb2wgdmlzaWJsZSk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgY3Vyc29yX2No YW5nZWQgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgY3Vyc29yX21vdmVkIChmbG9hdCB4LCBm bG9hdCB5KTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCB2aXNpYmlsaXR5X2NoYW5nZWQgKCk7Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvZGlzcGxheS5oIiwgdHlwZV9p ZCA9ICJtZXRhX2Rpc3BsYXlfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIERpc3BsYXkg OiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxz ZSldCisrCQlwcm90ZWN0ZWQgRGlzcGxheSAoKTsKKysJCXB1YmxpYyB2b2lkIGFkZF9pZ25vcmVk X2Nyb3NzaW5nX3NlcmlhbCAodWxvbmcgc2VyaWFsKTsKKysJCXB1YmxpYyB1aW50IGFkZF9rZXli aW5kaW5nIChzdHJpbmcgbmFtZSwgR0xpYi5TZXR0aW5ncyBzZXR0aW5ncywgTWV0YS5LZXlCaW5k aW5nRmxhZ3MgZmxhZ3MsIG93bmVkIE1ldGEuS2V5SGFuZGxlckZ1bmMgaGFuZGxlcik7CisrCQlw dWJsaWMgYm9vbCBiZWdpbl9ncmFiX29wIChNZXRhLldpbmRvdyB3aW5kb3csIE1ldGEuR3JhYk9w IG9wLCBib29sIHBvaW50ZXJfYWxyZWFkeV9ncmFiYmVkLCBib29sIGZyYW1lX2FjdGlvbiwgaW50 IGJ1dHRvbiwgdWxvbmcgbW9kbWFzaywgdWludDMyIHRpbWVzdGFtcCwgaW50IHJvb3RfeCwgaW50 IHJvb3RfeSk7CisrCQlwdWJsaWMgdm9pZCBjbGVhcl9tb3VzZV9tb2RlICgpOworKwkJcHVibGlj IHZvaWQgY2xvc2UgKHVpbnQzMiB0aW1lc3RhbXApOworKwkJcHVibGljIHZvaWQgZW5kX2dyYWJf b3AgKHVpbnQzMiB0aW1lc3RhbXApOworKwkJcHVibGljIHZvaWQgZm9jdXNfZGVmYXVsdF93aW5k b3cgKHVpbnQzMiB0aW1lc3RhbXApOworKwkJcHVibGljIHZvaWQgZnJlZXplX2tleWJvYXJkICh1 aW50MzIgdGltZXN0YW1wKTsKKysJCXB1YmxpYyBpbnQgZ2V0X2N1cnJlbnRfbW9uaXRvciAoKTsK KysJCXB1YmxpYyB1aW50MzIgZ2V0X2N1cnJlbnRfdGltZSAoKTsKKysJCXB1YmxpYyB1aW50MzIg Z2V0X2N1cnJlbnRfdGltZV9yb3VuZHRyaXAgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLldp bmRvdyBnZXRfZm9jdXNfd2luZG93ICgpOworKwkJcHVibGljIE1ldGEuR3JhYk9wIGdldF9ncmFi X29wICgpOworKwkJcHVibGljIHVpbnQgZ2V0X2tleWJpbmRpbmdfYWN0aW9uICh1aW50IGtleWNv ZGUsIHVsb25nIG1hc2spOworKwkJcHVibGljIHVpbnQzMiBnZXRfbGFzdF91c2VyX3RpbWUgKCk7 CisrCQlwdWJsaWMgTWV0YS5SZWN0YW5nbGUgZ2V0X21vbml0b3JfZ2VvbWV0cnkgKGludCBtb25p dG9yKTsKKysJCXB1YmxpYyBib29sIGdldF9tb25pdG9yX2luX2Z1bGxzY3JlZW4gKGludCBtb25p dG9yKTsKKysJCXB1YmxpYyBpbnQgZ2V0X21vbml0b3JfaW5kZXhfZm9yX3JlY3QgKE1ldGEuUmVj dGFuZ2xlIHJlY3QpOworKwkJcHVibGljIGludCBnZXRfbW9uaXRvcl9uZWlnaGJvcl9pbmRleCAo aW50IHdoaWNoX21vbml0b3IsIE1ldGEuRGlzcGxheURpcmVjdGlvbiBkaXIpOworKwkJcHVibGlj IGZsb2F0IGdldF9tb25pdG9yX3NjYWxlIChpbnQgbW9uaXRvcik7CisrCQlwdWJsaWMgaW50IGdl dF9uX21vbml0b3JzICgpOworKwkJcHVibGljIHN0cmluZyBnZXRfcGFkX2FjdGlvbl9sYWJlbCAo Q2x1dHRlci5JbnB1dERldmljZSBwYWQsIE1ldGEuUGFkQWN0aW9uVHlwZSBhY3Rpb25fdHlwZSwg dWludCBhY3Rpb25fbnVtYmVyKTsKKysJCXB1YmxpYyBpbnQgZ2V0X3ByaW1hcnlfbW9uaXRvciAo KTsKKysJCXB1YmxpYyB1bm93bmVkIE1ldGEuU2VsZWN0aW9uIGdldF9zZWxlY3Rpb24gKCk7Cisr CQlwdWJsaWMgdm9pZCBnZXRfc2l6ZSAob3V0IGludCB3aWR0aCwgb3V0IGludCBoZWlnaHQpOwor KwkJcHVibGljIHVub3duZWQgTWV0YS5Tb3VuZFBsYXllciBnZXRfc291bmRfcGxheWVyICgpOwor KwkJcHVibGljIHVub3duZWQgTWV0YS5XaW5kb3cgZ2V0X3RhYl9jdXJyZW50IChNZXRhLlRhYkxp c3QgdHlwZSwgTWV0YS5Xb3Jrc3BhY2Ugd29ya3NwYWNlKTsKKysJCXB1YmxpYyBHTGliLkxpc3Q8 d2VhayBNZXRhLldpbmRvdz4gZ2V0X3RhYl9saXN0IChNZXRhLlRhYkxpc3QgdHlwZSwgTWV0YS5X b3Jrc3BhY2U/IHdvcmtzcGFjZSk7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLldpbmRvdyBnZXRf dGFiX25leHQgKE1ldGEuVGFiTGlzdCB0eXBlLCBNZXRhLldvcmtzcGFjZSB3b3Jrc3BhY2UsIE1l dGEuV2luZG93PyB3aW5kb3csIGJvb2wgYmFja3dhcmQpOworKwkJcHVibGljIHVub3duZWQgTWV0 YS5Xb3Jrc3BhY2VNYW5hZ2VyIGdldF93b3Jrc3BhY2VfbWFuYWdlciAoKTsKKysJCXB1YmxpYyB1 aW50IGdyYWJfYWNjZWxlcmF0b3IgKHN0cmluZyBhY2NlbGVyYXRvciwgTWV0YS5LZXlCaW5kaW5n RmxhZ3MgZmxhZ3MpOworKwkJcHVibGljIGJvb2wgaXNfcG9pbnRlcl9lbXVsYXRpbmdfc2VxdWVu Y2UgKENsdXR0ZXIuRXZlbnRTZXF1ZW5jZT8gc2VxdWVuY2UpOworKwkJcHVibGljIGJvb2wgcmVt b3ZlX2tleWJpbmRpbmcgKHN0cmluZyBuYW1lKTsKKysJCXB1YmxpYyB2b2lkIHJlcXVlc3RfcGFk X29zZCAoQ2x1dHRlci5JbnB1dERldmljZSBwYWQsIGJvb2wgZWRpdGlvbl9tb2RlKTsKKysJCXB1 YmxpYyB2b2lkIHNldF9jdXJzb3IgKE1ldGEuQ3Vyc29yIGN1cnNvcik7CisrCQlwdWJsaWMgdm9p ZCBzZXRfaW5wdXRfZm9jdXMgKE1ldGEuV2luZG93IHdpbmRvdywgYm9vbCBmb2N1c19mcmFtZSwg dWludDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMgR0xpYi5TTGlzdDx3ZWFrIE1ldGEuV2luZG93 PiBzb3J0X3dpbmRvd3NfYnlfc3RhY2tpbmcgKEdMaWIuU0xpc3Q8TWV0YS5XaW5kb3c+IHdpbmRv d3MpOworKwkJcHVibGljIGJvb2wgc3VwcG9ydHNfZXh0ZW5kZWRfYmFycmllcnMgKCk7CisrCQlw dWJsaWMgdm9pZCB1bmZyZWV6ZV9rZXlib2FyZCAodWludDMyIHRpbWVzdGFtcCk7CisrCQlwdWJs aWMgYm9vbCB1bmdyYWJfYWNjZWxlcmF0b3IgKHVpbnQgYWN0aW9uX2lkKTsKKysJCXB1YmxpYyB2 b2lkIHVuZ3JhYl9rZXlib2FyZCAodWludDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMgdm9pZCB1 bnNldF9pbnB1dF9mb2N1cyAodWludDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMgYm9vbCB4c2Vy dmVyX3RpbWVfaXNfYmVmb3JlICh1aW50MzIgdGltZTEsIHVpbnQzMiB0aW1lMik7CisrCQlwdWJs aWMgTWV0YS5XaW5kb3cgZm9jdXNfd2luZG93IHsgZ2V0OyB9CisrCQlwdWJsaWMgc2lnbmFsIHZv aWQgYWNjZWxlcmF0b3JfYWN0aXZhdGVkICh1aW50IG9iamVjdCwgQ2x1dHRlci5JbnB1dERldmlj ZSBwMCwgdWludCBwMSk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgY2xvc2luZyAoKTsKKysJCXB1 YmxpYyBzaWduYWwgdm9pZCBjdXJzb3JfdXBkYXRlZCAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9p ZCBnbF92aWRlb19tZW1vcnlfcHVyZ2VkICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGdyYWJf b3BfYmVnaW4gKE1ldGEuRGlzcGxheSBvYmplY3QsIE1ldGEuV2luZG93IHAwLCBNZXRhLkdyYWJP cCBwMSk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgZ3JhYl9vcF9lbmQgKE1ldGEuRGlzcGxheSBv YmplY3QsIE1ldGEuV2luZG93IHAwLCBNZXRhLkdyYWJPcCBwMSk7CisrCQlwdWJsaWMgc2lnbmFs IHZvaWQgaW5fZnVsbHNjcmVlbl9jaGFuZ2VkICgpOworKwkJcHVibGljIHNpZ25hbCBib29sIG1v ZGlmaWVyc19hY2NlbGVyYXRvcl9hY3RpdmF0ZWQgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQg b3ZlcmxheV9rZXkgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgcGFkX21vZGVfc3dpdGNoIChD bHV0dGVyLklucHV0RGV2aWNlIG9iamVjdCwgdWludCBwMCwgdWludCBwMSk7CisrCQlwdWJsaWMg c2lnbmFsIHZvaWQgcmVzdGFja2VkICgpOworKwkJcHVibGljIHNpZ25hbCBib29sIHJlc3RhcnQg KCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgc2hvd19vc2QgKGludCBvYmplY3QsIHN0cmluZyBw MCwgc3RyaW5nIHAxKTsKKysJCXB1YmxpYyBzaWduYWwgdW5vd25lZCBDbHV0dGVyLkFjdG9yPyBz aG93X3BhZF9vc2QgKENsdXR0ZXIuSW5wdXREZXZpY2UgcGFkLCBHTGliLlNldHRpbmdzIHNldHRp bmdzLCBzdHJpbmcgbGF5b3V0X3BhdGgsIGJvb2wgZWRpdGlvbl9tb2RlLCBpbnQgbW9uaXRvcl9p ZHgpOworKwkJcHVibGljIHNpZ25hbCBib29sIHNob3dfcmVzaXplX3BvcHVwIChib29sIG9iamVj dCwgTWV0YS5SZWN0YW5nbGUgcDAsIGludCBwMSwgaW50IHAyKTsKKysJCXB1YmxpYyBzaWduYWwg Ym9vbCBzaG93X3Jlc3RhcnRfbWVzc2FnZSAoc3RyaW5nPyBtZXNzYWdlKTsKKysJCXB1YmxpYyBz aWduYWwgdm9pZCBzaG93aW5nX2Rlc2t0b3BfY2hhbmdlZCAoKTsKKysJCXB1YmxpYyBzaWduYWwg dm9pZCB3aW5kb3dfY3JlYXRlZCAoTWV0YS5XaW5kb3cgb2JqZWN0KTsKKysJCXB1YmxpYyBzaWdu YWwgdm9pZCB3aW5kb3dfZGVtYW5kc19hdHRlbnRpb24gKE1ldGEuV2luZG93IG9iamVjdCk7Cisr CQlwdWJsaWMgc2lnbmFsIHZvaWQgd2luZG93X2VudGVyZWRfbW9uaXRvciAoaW50IG9iamVjdCwg TWV0YS5XaW5kb3cgcDApOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHdpbmRvd19sZWZ0X21vbml0 b3IgKGludCBvYmplY3QsIE1ldGEuV2luZG93IHAwKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCB3 aW5kb3dfbWFya2VkX3VyZ2VudCAoTWV0YS5XaW5kb3cgb2JqZWN0KTsKKysJCXB1YmxpYyBzaWdu YWwgdm9pZCB3b3JrYXJlYXNfY2hhbmdlZCAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCB4MTFf ZGlzcGxheV9jbG9zaW5nICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHgxMV9kaXNwbGF5X29w ZW5lZCAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCB4MTFfZGlzcGxheV9zZXR1cCAoKTsKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLWRuZC5oIiwgdHlwZV9p ZCA9ICJtZXRhX2RuZF9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgRG5kIDogR0xpYi5P YmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJ cHJvdGVjdGVkIERuZCAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBkbmRfZW50ZXIgKCk7Cisr CQlwdWJsaWMgc2lnbmFsIHZvaWQgZG5kX2xlYXZlICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lk IGRuZF9wb3NpdGlvbl9jaGFuZ2UgKGludCBvYmplY3QsIGludCBwMCk7CisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSld CisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3MgRnJhbWUgeworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtaWRsZS1tb25pdG9yLmgiLCB0eXBlX2lkID0gIm1l dGFfaWRsZV9tb25pdG9yX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBJZGxlTW9uaXRv ciA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZh bHNlKV0KKysJCXByb3RlY3RlZCBJZGxlTW9uaXRvciAoKTsKKysJCXB1YmxpYyB1aW50IGFkZF9p ZGxlX3dhdGNoICh1aW50NjQgaW50ZXJ2YWxfbXNlYywgb3duZWQgTWV0YS5JZGxlTW9uaXRvcldh dGNoRnVuYz8gY2FsbGJhY2spOworKwkJcHVibGljIHVpbnQgYWRkX3VzZXJfYWN0aXZlX3dhdGNo IChvd25lZCBNZXRhLklkbGVNb25pdG9yV2F0Y2hGdW5jPyBjYWxsYmFjayk7CisrCQlwdWJsaWMg c3RhdGljIHVub3duZWQgTWV0YS5JZGxlTW9uaXRvciBnZXRfY29yZSAoKTsKKysJCXB1YmxpYyBz dGF0aWMgdW5vd25lZCBNZXRhLklkbGVNb25pdG9yIGdldF9mb3JfZGV2aWNlIChDbHV0dGVyLklu cHV0RGV2aWNlIGRldmljZSk7CisrCQlwdWJsaWMgaW50NjQgZ2V0X2lkbGV0aW1lICgpOworKwkJ cHVibGljIHZvaWQgcmVtb3ZlX3dhdGNoICh1aW50IGlkKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9k XQorKwkJcHVibGljIENsdXR0ZXIuSW5wdXREZXZpY2UgZGV2aWNlIHsgb3duZWQgZ2V0OyBjb25z dHJ1Y3Q7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgi LCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24gPSAiZ19ib3hl ZF9mcmVlIiwgdHlwZV9pZCA9ICJtZXRhX2tleV9iaW5kaW5nX2dldF90eXBlICgpIildCisrCVtD b21wYWN0XQorKwlwdWJsaWMgY2xhc3MgS2V5QmluZGluZyB7CisrCQlwdWJsaWMgdWludCBnZXRf bWFzayAoKTsKKysJCXB1YmxpYyBNZXRhLlZpcnR1YWxNb2RpZmllciBnZXRfbW9kaWZpZXJzICgp OworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9uYW1lICgpOworKwkJcHVibGljIGJvb2wg aXNfYnVpbHRpbiAoKTsKKysJCXB1YmxpYyBib29sIGlzX3JldmVyc2VkICgpOworKwkJW0NDb2Rl IChjbmFtZSA9ICJtZXRhX2tleWJpbmRpbmdzX3NldF9jdXN0b21faGFuZGxlciIpXQorKwkJcHVi bGljIHN0YXRpYyBib29sIHNldF9jdXN0b21faGFuZGxlciAoc3RyaW5nIG5hbWUsIG93bmVkIE1l dGEuS2V5SGFuZGxlckZ1bmM/IGhhbmRsZXIpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJtZXRhL21ldGEtbGF1bmNoLWNvbnRleHQuaCIsIHR5cGVfaWQgPSAibWV0YV9sYXVu Y2hfY29udGV4dF9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgTGF1bmNoQ29udGV4dCA6 IEdMaWIuQXBwTGF1bmNoQ29udGV4dCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rp b24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgTGF1bmNoQ29udGV4dCAoKTsKKysJCXB1YmxpYyB2 b2lkIHNldF90aW1lc3RhbXAgKHVpbnQzMiB0aW1lc3RhbXApOworKwkJcHVibGljIHZvaWQgc2V0 X3dvcmtzcGFjZSAoTWV0YS5Xb3Jrc3BhY2Ugd29ya3NwYWNlKTsKKysJCVtOb0FjY2Vzc29yTWV0 aG9kXQorKwkJcHVibGljIE1ldGEuRGlzcGxheSBkaXNwbGF5IHsgb3duZWQgZ2V0OyBjb25zdHJ1 Y3Q7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIHVpbnQgdGltZXN0YW1wIHsg Z2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIE1ldGEuV29ya3Nw YWNlIHdvcmtzcGFjZSB7IG93bmVkIGdldDsgc2V0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1tb25pdG9yLW1hbmFnZXIuaCIsIHR5cGVfaWQgPSAibWV0 YV9tb25pdG9yX21hbmFnZXJfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIE1vbml0b3JN YW5hZ2VyIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9u ID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIE1vbml0b3JNYW5hZ2VyICgpOworKwkJcHVibGljIGJv b2wgY2FuX3N3aXRjaF9jb25maWcgKCk7CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgTWV0YS5N b25pdG9yTWFuYWdlciBAZ2V0ICgpOworKwkJcHVibGljIHN0YXRpYyBpbnQgZ2V0X2Rpc3BsYXlf Y29uZmlndXJhdGlvbl90aW1lb3V0ICgpOworKwkJcHVibGljIGJvb2wgZ2V0X2lzX2J1aWx0aW5f ZGlzcGxheV9vbiAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0X21vbml0b3JfZm9yX2Nvbm5lY3RvciAo c3RyaW5nIGNvbm5lY3Rvcik7CisrCQlwdWJsaWMgTWV0YS5Nb25pdG9yU3dpdGNoQ29uZmlnVHlw ZSBnZXRfc3dpdGNoX2NvbmZpZyAoKTsKKysJCXB1YmxpYyB2b2lkIHN3aXRjaF9jb25maWcgKE1l dGEuTW9uaXRvclN3aXRjaENvbmZpZ1R5cGUgY29uZmlnX3R5cGUpOworKwkJW05vQWNjZXNzb3JN ZXRob2RdCisrCQlwdWJsaWMgTWV0YS5CYWNrZW5kIGJhY2tlbmQgeyBvd25lZCBnZXQ7IGNvbnN0 cnVjdDsgfQorKwkJcHVibGljIHNpZ25hbCB2b2lkIGNvbmZpcm1fZGlzcGxheV9jaGFuZ2UgKCk7 CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgbW9uaXRvcnNfY2hhbmdlZCAoKTsKKysJCXB1YmxpYyBz aWduYWwgdm9pZCBtb25pdG9yc19jaGFuZ2VkX2ludGVybmFsICgpOworKwkJcHVibGljIHNpZ25h bCB2b2lkIHBvd2VyX3NhdmVfbW9kZV9jaGFuZ2VkICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJtZXRhL21ldGEtcGx1Z2luLmgiLCB0eXBlX2lkID0gIm1ldGFfcGx1Z2lu X2dldF90eXBlICgpIildCisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBQbHVnaW4gOiBHTGliLk9i amVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlw cm90ZWN0ZWQgUGx1Z2luICgpOworKwkJcHVibGljIGJvb2wgYmVnaW5fbW9kYWwgKE1ldGEuTW9k YWxPcHRpb25zIG9wdGlvbnMsIHVpbnQzMiB0aW1lc3RhbXApOworKwkJcHVibGljIHZvaWQgY29t cGxldGVfZGlzcGxheV9jaGFuZ2UgKGJvb2wgb2spOworKwkJW05vV3JhcHBlcl0KKysJCXB1Ymxp YyB2aXJ0dWFsIHZvaWQgY29uZmlybV9kaXNwbGF5X2NoYW5nZSAoKTsKKysJCVtOb1dyYXBwZXJd CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGRlc3Ryb3kgKE1ldGEuV2luZG93QWN0b3IgYWN0b3Ip OworKwkJcHVibGljIHZvaWQgZGVzdHJveV9jb21wbGV0ZWQgKE1ldGEuV2luZG93QWN0b3IgYWN0 b3IpOworKwkJcHVibGljIHZvaWQgZW5kX21vZGFsICh1aW50MzIgdGltZXN0YW1wKTsKKysJCXB1 YmxpYyB1bm93bmVkIE1ldGEuRGlzcGxheSBnZXRfZGlzcGxheSAoKTsKKysJCXB1YmxpYyB1bm93 bmVkIE1ldGEuUGx1Z2luSW5mbz8gZ2V0X2luZm8gKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVi bGljIHZpcnR1YWwgdm9pZCBoaWRlX3RpbGVfcHJldmlldyAoKTsKKysJCVtOb1dyYXBwZXJdCisr CQlwdWJsaWMgdmlydHVhbCBib29sIGtleWJpbmRpbmdfZmlsdGVyIChNZXRhLktleUJpbmRpbmcg YmluZGluZyk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBraWxsX3N3 aXRjaF93b3Jrc3BhY2UgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9p ZCBraWxsX3dpbmRvd19lZmZlY3RzIChNZXRhLldpbmRvd0FjdG9yIGFjdG9yKTsKKysJCVtOb1dy YXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGxvY2F0ZV9wb2ludGVyICgpOworKwkJcHVi bGljIHN0YXRpYyB2b2lkIG1hbmFnZXJfc2V0X3BsdWdpbl90eXBlIChHTGliLlR5cGUgZ3R5cGUp OworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgbWFwIChNZXRhLldpbmRv d0FjdG9yIGFjdG9yKTsKKysJCXB1YmxpYyB2b2lkIG1hcF9jb21wbGV0ZWQgKE1ldGEuV2luZG93 QWN0b3IgYWN0b3IpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgbWlu aW1pemUgKE1ldGEuV2luZG93QWN0b3IgYWN0b3IpOworKwkJcHVibGljIHZvaWQgbWluaW1pemVf Y29tcGxldGVkIChNZXRhLldpbmRvd0FjdG9yIGFjdG9yKTsKKysJCVtOb1dyYXBwZXJdCisrCQlw dWJsaWMgdmlydHVhbCB1bm93bmVkIE1ldGEuUGx1Z2luSW5mbz8gcGx1Z2luX2luZm8gKCk7Cisr CQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBzaG93X3RpbGVfcHJldmlldyAo TWV0YS5XaW5kb3cgd2luZG93LCBNZXRhLlJlY3RhbmdsZSB0aWxlX3JlY3QsIGludCB0aWxlX21v bml0b3JfbnVtYmVyKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHNo b3dfd2luZG93X21lbnUgKE1ldGEuV2luZG93IHdpbmRvdywgTWV0YS5XaW5kb3dNZW51VHlwZSBt ZW51LCBpbnQgeCwgaW50IHkpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZv aWQgc2hvd193aW5kb3dfbWVudV9mb3JfcmVjdCAoTWV0YS5XaW5kb3cgd2luZG93LCBNZXRhLldp bmRvd01lbnVUeXBlIG1lbnUsIE1ldGEuUmVjdGFuZ2xlIHJlY3QpOworKwkJW05vV3JhcHBlcl0K KysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgc2l6ZV9jaGFuZ2UgKE1ldGEuV2luZG93QWN0b3IgYWN0 b3IsIE1ldGEuU2l6ZUNoYW5nZSB3aGljaF9jaGFuZ2UsIE1ldGEuUmVjdGFuZ2xlIG9sZF9mcmFt ZV9yZWN0LCBNZXRhLlJlY3RhbmdsZSBvbGRfYnVmZmVyX3JlY3QpOworKwkJcHVibGljIHZvaWQg c2l6ZV9jaGFuZ2VfY29tcGxldGVkIChNZXRhLldpbmRvd0FjdG9yIGFjdG9yKTsKKysJCVtOb1dy YXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHNpemVfY2hhbmdlZCAoTWV0YS5XaW5kb3dB Y3RvciBhY3Rvcik7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBzdGFy dCAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHN3aXRjaF93b3Jr c3BhY2UgKGludCBmcm9tLCBpbnQgdG8sIE1ldGEuTW90aW9uRGlyZWN0aW9uIGRpcmVjdGlvbik7 CisrCQlwdWJsaWMgdm9pZCBzd2l0Y2hfd29ya3NwYWNlX2NvbXBsZXRlZCAoKTsKKysJCVtOb1dy YXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHVubWluaW1pemUgKE1ldGEuV2luZG93QWN0 b3IgYWN0b3IpOworKwkJcHVibGljIHZvaWQgdW5taW5pbWl6ZV9jb21wbGV0ZWQgKE1ldGEuV2lu ZG93QWN0b3IgYWN0b3IpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIGJvb2wg eGV2ZW50X2ZpbHRlciAoWC5FdmVudCBldmVudCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gIm1ldGEvbWV0YS1yZW1vdGUtYWNjZXNzLWNvbnRyb2xsZXIuaCIsIHR5cGVfaWQg PSAibWV0YV9yZW1vdGVfYWNjZXNzX2NvbnRyb2xsZXJfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGlj IGNsYXNzIFJlbW90ZUFjY2Vzc0NvbnRyb2xsZXIgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUg KGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgUmVtb3RlQWNj ZXNzQ29udHJvbGxlciAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBuZXdfaGFuZGxlIChNZXRh LlJlbW90ZUFjY2Vzc0hhbmRsZSBvYmplY3QpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJtZXRhL21ldGEtcmVtb3RlLWFjY2Vzcy1jb250cm9sbGVyLmgiLCB0eXBlX2lkID0g Im1ldGFfcmVtb3RlX2FjY2Vzc19oYW5kbGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNz IFJlbW90ZUFjY2Vzc0hhbmRsZSA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0 cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBSZW1vdGVBY2Nlc3NIYW5kbGUg KCk7CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHN0b3AgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZv aWQgc3RvcHBlZCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9t YWluLmgiLCB0eXBlX2lkID0gIm1ldGFfc2VsZWN0aW9uX2dldF90eXBlICgpIildCisrCXB1Ymxp YyBjbGFzcyBTZWxlY3Rpb24gOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1 Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwdWJsaWMgU2VsZWN0aW9uIChNZXRhLkRpc3BsYXkg ZGlzcGxheSk7CisrCQlwdWJsaWMgR0xpYi5MaXN0PHN0cmluZz4gZ2V0X21pbWV0eXBlcyAoTWV0 YS5TZWxlY3Rpb25UeXBlIHNlbGVjdGlvbl90eXBlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9vd25l ciAoTWV0YS5TZWxlY3Rpb25UeXBlIHNlbGVjdGlvbl90eXBlLCBNZXRhLlNlbGVjdGlvblNvdXJj ZSBvd25lcik7CisrCQlwdWJsaWMgYXN5bmMgYm9vbCB0cmFuc2Zlcl9hc3luYyAoTWV0YS5TZWxl Y3Rpb25UeXBlIHNlbGVjdGlvbl90eXBlLCBzdHJpbmcgbWltZXR5cGUsIHNzaXplX3Qgc2l6ZSwg R0xpYi5PdXRwdXRTdHJlYW0gb3V0cHV0LCBHTGliLkNhbmNlbGxhYmxlPyBjYW5jZWxsYWJsZSkg dGhyb3dzIEdMaWIuRXJyb3I7CisrCQlwdWJsaWMgdm9pZCB1bnNldF9vd25lciAoTWV0YS5TZWxl Y3Rpb25UeXBlIHNlbGVjdGlvbl90eXBlLCBNZXRhLlNlbGVjdGlvblNvdXJjZSBvd25lcik7Cisr CQlwdWJsaWMgc2lnbmFsIHZvaWQgb3duZXJfY2hhbmdlZCAodWludCBvYmplY3QsIE1ldGEuU2Vs ZWN0aW9uU291cmNlIHAwKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0 YS9tYWluLmgiLCB0eXBlX2lkID0gIm1ldGFfc2VsZWN0aW9uX3NvdXJjZV9nZXRfdHlwZSAoKSIp XQorKwlwdWJsaWMgY2xhc3MgU2VsZWN0aW9uU291cmNlIDogR0xpYi5PYmplY3QgeworKwkJW0ND b2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFNlbGVj dGlvblNvdXJjZSAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIEdMaWIuTGlzdDxzdHJpbmc+IGdldF9t aW1ldHlwZXMgKCk7CisrCQlwdWJsaWMgYm9vbCBpc19hY3RpdmUgKCk7CisrCQlwdWJsaWMgdmly dHVhbCBhc3luYyBHTGliLklucHV0U3RyZWFtIHJlYWRfYXN5bmMgKHN0cmluZyBtaW1ldHlwZSwg R0xpYi5DYW5jZWxsYWJsZT8gY2FuY2VsbGFibGUpIHRocm93cyBHTGliLkVycm9yOworKwkJcHVi bGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgYWN0aXZhdGVkICgpOworKwkJcHVibGljIHZpcnR1YWwg c2lnbmFsIHZvaWQgZGVhY3RpdmF0ZWQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gIm1ldGEvbWFpbi5oIiwgdHlwZV9pZCA9ICJtZXRhX3NlbGVjdGlvbl9zb3VyY2VfbWVt b3J5X2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBTZWxlY3Rpb25Tb3VyY2VNZW1vcnkg OiBNZXRhLlNlbGVjdGlvblNvdXJjZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rp b24gPSBmYWxzZSwgdHlwZSA9ICJNZXRhU2VsZWN0aW9uU291cmNlKiIpXQorKwkJcHVibGljIFNl bGVjdGlvblNvdXJjZU1lbW9yeSAoc3RyaW5nIG1pbWV0eXBlLCBHTGliLkJ5dGVzIGNvbnRlbnQp OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtc2V0dGluZ3Mu aCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIFNl dHRpbmdzIHsKKysJCXB1YmxpYyBpbnQgZ2V0X2ZvbnRfZHBpICgpOworKwkJcHVibGljIGludCBn ZXRfdWlfc2NhbGluZ19mYWN0b3IgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gIm1ldGEvbWFpbi5oIiwgcmVmX2Z1bmN0aW9uID0gIm1ldGFfc2hhZG93X3JlZiIsIHR5cGVf aWQgPSAibWV0YV9zaGFkb3dfZ2V0X3R5cGUgKCkiLCB1bnJlZl9mdW5jdGlvbiA9ICJtZXRhX3No YWRvd191bnJlZiIpXQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIFNoYWRvdyB7CisrCQlw dWJsaWMgdm9pZCBnZXRfYm91bmRzIChpbnQgd2luZG93X3gsIGludCB3aW5kb3dfeSwgaW50IHdp bmRvd193aWR0aCwgaW50IHdpbmRvd19oZWlnaHQsIENhaXJvLlJlY3RhbmdsZUludCBib3VuZHMp OworKwkJcHVibGljIHZvaWQgcGFpbnQgKENvZ2wuRnJhbWVidWZmZXIgZnJhbWVidWZmZXIsIGlu dCB3aW5kb3dfeCwgaW50IHdpbmRvd195LCBpbnQgd2luZG93X3dpZHRoLCBpbnQgd2luZG93X2hl aWdodCwgdWludDggb3BhY2l0eSwgQ2Fpcm8uUmVnaW9uPyBjbGlwLCBib29sIGNsaXBfc3RyaWN0 bHkpOworKwkJcHVibGljIE1ldGEuU2hhZG93IEByZWYgKCk7CisrCQlwdWJsaWMgdm9pZCB1bnJl ZiAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLXNoYWRv dy1mYWN0b3J5LmgiLCB0eXBlX2lkID0gIm1ldGFfc2hhZG93X2ZhY3RvcnlfZ2V0X3R5cGUgKCki KV0KKysJcHVibGljIGNsYXNzIFNoYWRvd0ZhY3RvcnkgOiBHTGliLk9iamVjdCB7CisrCQlbQ0Nv ZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwdWJsaWMgU2hhZG93RmFj dG9yeSAoKTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBNZXRhLlNoYWRvd0ZhY3RvcnkgZ2V0 X2RlZmF1bHQgKCk7CisrCQlwdWJsaWMgTWV0YS5TaGFkb3dQYXJhbXMgZ2V0X3BhcmFtcyAoc3Ry aW5nIGNsYXNzX25hbWUsIGJvb2wgZm9jdXNlZCk7CisrCQlwdWJsaWMgTWV0YS5TaGFkb3cgZ2V0 X3NoYWRvdyAoTWV0YS5XaW5kb3dTaGFwZSBzaGFwZSwgaW50IHdpZHRoLCBpbnQgaGVpZ2h0LCBz dHJpbmcgY2xhc3NfbmFtZSwgYm9vbCBmb2N1c2VkKTsKKysJCXB1YmxpYyB2b2lkIHNldF9wYXJh bXMgKHN0cmluZyBjbGFzc19uYW1lLCBib29sIGZvY3VzZWQsIE1ldGEuU2hhZG93UGFyYW1zIEBw YXJhbXMpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGNoYW5nZWQgKCk7CisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1zaGFwZWQtdGV4dHVyZS5oIiwgdHlwZV9p ZCA9ICJtZXRhX3NoYXBlZF90ZXh0dXJlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBT aGFwZWRUZXh0dXJlIDogR0xpYi5PYmplY3QsIENsdXR0ZXIuQ29udGVudCB7CisrCQlbQ0NvZGUg KGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgU2hhcGVkVGV4 dHVyZSAoKTsKKysJCXB1YmxpYyBDYWlyby5TdXJmYWNlPyBnZXRfaW1hZ2UgKENhaXJvLlJlY3Rh bmdsZUludD8gY2xpcCk7CisrCQlwdWJsaWMgdW5vd25lZCBDb2dsLlRleHR1cmUgZ2V0X3RleHR1 cmUgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfY3JlYXRlX21pcG1hcHMgKGJvb2wgY3JlYXRlX21p cG1hcHMpOworKwkJcHVibGljIHZvaWQgc2V0X21hc2tfdGV4dHVyZSAoQ29nbC5UZXh0dXJlIG1h c2tfdGV4dHVyZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfb3BhcXVlX3JlZ2lvbiAob3duZWQgQ2Fp cm8uUmVnaW9uIG9wYXF1ZV9yZWdpb24pOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHNpemVfY2hh bmdlZCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLXNv dW5kLXBsYXllci5oIiwgdHlwZV9pZCA9ICJtZXRhX3NvdW5kX3BsYXllcl9nZXRfdHlwZSAoKSIp XQorKwlwdWJsaWMgY2xhc3MgU291bmRQbGF5ZXIgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUg KGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgU291bmRQbGF5 ZXIgKCk7CisrCQlwdWJsaWMgdm9pZCBwbGF5X2Zyb21fZmlsZSAoR0xpYi5GaWxlIGZpbGUsIHN0 cmluZyBkZXNjcmlwdGlvbiwgR0xpYi5DYW5jZWxsYWJsZT8gY2FuY2VsbGFibGUgPSBudWxsKTsK KysJCXB1YmxpYyB2b2lkIHBsYXlfZnJvbV90aGVtZSAoc3RyaW5nIG5hbWUsIHN0cmluZyBkZXNj cmlwdGlvbiwgR0xpYi5DYW5jZWxsYWJsZT8gY2FuY2VsbGFibGUgPSBudWxsKTsKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLXN0YWdlLmgiLCB0eXBlX2lkID0g Im1ldGFfc3RhZ2VfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFN0YWdlIDogQ2x1dHRl ci5TdGFnZSwgQXRrLkltcGxlbWVudG9yLCBDbHV0dGVyLkFuaW1hdGFibGUsIENsdXR0ZXIuQ29u dGFpbmVyLCBDbHV0dGVyLlNjcmlwdGFibGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1 bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFN0YWdlICgpOworKwkJcHVibGljIHN0YXRp YyBib29sIGlzX2ZvY3VzZWQgKE1ldGEuRGlzcGxheSBkaXNwbGF5KTsKKysJCXB1YmxpYyBzaWdu YWwgdm9pZCBhY3RvcnNfcGFpbnRlZCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAibWV0YS9tZXRhLXN0YXJ0dXAtbm90aWZpY2F0aW9uLmgiLCB0eXBlX2lkID0gIm1ldGFf c3RhcnR1cF9ub3RpZmljYXRpb25fZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFN0YXJ0 dXBOb3RpZmljYXRpb24gOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3Rf ZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgU3RhcnR1cE5vdGlmaWNhdGlvbiAoKTsK KysJCXB1YmxpYyBNZXRhLkxhdW5jaENvbnRleHQgY3JlYXRlX2xhdW5jaGVyICgpOworKwkJW05v QWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgTWV0YS5EaXNwbGF5IGRpc3BsYXkgeyBvd25lZCBn ZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIHNpZ25hbCB2b2lkIGNoYW5nZWQgKHZvaWQqIG9i amVjdCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwg dHlwZV9pZCA9ICJtZXRhX3N0YXJ0dXBfc2VxdWVuY2VfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGlj IGNsYXNzIFN0YXJ0dXBTZXF1ZW5jZSA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2Nv bnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBTdGFydHVwU2VxdWVuY2Ug KCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X2FwcGxpY2F0aW9uX2lkICgpOworKwkJ cHVibGljIGJvb2wgZ2V0X2NvbXBsZXRlZCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBn ZXRfaWNvbl9uYW1lICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9pZCAoKTsKKysJ CXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfbmFtZSAoKTsKKysJCXB1YmxpYyB1aW50NjQgZ2V0 X3RpbWVzdGFtcCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfd21jbGFzcyAoKTsK KysJCXB1YmxpYyBpbnQgZ2V0X3dvcmtzcGFjZSAoKTsKKysJCXB1YmxpYyBzdHJpbmcgYXBwbGlj YXRpb25faWQgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIHN0cmluZyBpY29uX25hbWUg eyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIHN0cmluZyBpZCB7IGdldDsgY29uc3RydWN0 OyB9CisrCQlwdWJsaWMgc3RyaW5nIG5hbWUgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVibGlj IHVpbnQ2NCB0aW1lc3RhbXAgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIHN0cmluZyB3 bWNsYXNzIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBpbnQgd29ya3NwYWNlIHsgZ2V0 OyBjb25zdHJ1Y3Q7IH0KKysJCVtIYXNFbWl0dGVyXQorKwkJcHVibGljIHNpZ25hbCB2b2lkIGNv bXBsZXRlICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3RoZW1l LmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFzcyBU aGVtZSB7CisrCQlwdWJsaWMgdm9pZCBmcmVlICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJtZXRhL3dpbmRvdy5oIiwgdHlwZV9pZCA9ICJtZXRhX3dpbmRvd19nZXRfdHlw ZSAoKSIpXQorKwlwdWJsaWMgYWJzdHJhY3QgY2xhc3MgV2luZG93IDogR0xpYi5PYmplY3Qgewor KwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVk IFdpbmRvdyAoKTsKKysJCXB1YmxpYyB2b2lkIGFjdGl2YXRlICh1aW50MzIgY3VycmVudF90aW1l KTsKKysJCXB1YmxpYyB2b2lkIGFjdGl2YXRlX3dpdGhfd29ya3NwYWNlICh1aW50MzIgY3VycmVu dF90aW1lLCBNZXRhLldvcmtzcGFjZSB3b3Jrc3BhY2UpOworKwkJcHVibGljIGJvb2wgYWxsb3dz X21vdmUgKCk7CisrCQlwdWJsaWMgYm9vbCBhbGxvd3NfcmVzaXplICgpOworKwkJcHVibGljIHZv aWQgYmVnaW5fZ3JhYl9vcCAoTWV0YS5HcmFiT3Agb3AsIGJvb2wgZnJhbWVfYWN0aW9uLCB1aW50 MzIgdGltZXN0YW1wKTsKKysJCXB1YmxpYyBib29sIGNhbl9jbG9zZSAoKTsKKysJCXB1YmxpYyBi b29sIGNhbl9tYXhpbWl6ZSAoKTsKKysJCXB1YmxpYyBib29sIGNhbl9taW5pbWl6ZSAoKTsKKysJ CXB1YmxpYyBib29sIGNhbl9zaGFkZSAoKTsKKysJCXB1YmxpYyB2b2lkIGNoYW5nZV93b3Jrc3Bh Y2UgKE1ldGEuV29ya3NwYWNlIHdvcmtzcGFjZSk7CisrCQlwdWJsaWMgdm9pZCBjaGFuZ2Vfd29y a3NwYWNlX2J5X2luZGV4IChpbnQgc3BhY2VfaW5kZXgsIGJvb2wgYXBwZW5kKTsKKysJCXB1Ymxp YyB2b2lkIGNoZWNrX2FsaXZlICh1aW50MzIgdGltZXN0YW1wKTsKKysJCXB1YmxpYyBNZXRhLlJl Y3RhbmdsZSBjbGllbnRfcmVjdF90b19mcmFtZV9yZWN0IChNZXRhLlJlY3RhbmdsZSBjbGllbnRf cmVjdCk7CisrCQlwdWJsaWMgdm9pZCBjb21wdXRlX2dyb3VwICgpOworKwkJcHVibGljIHZvaWQg QGRlbGV0ZSAodWludDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLldpbmRv dyBmaW5kX3Jvb3RfYW5jZXN0b3IgKCk7CisrCQlwdWJsaWMgdm9pZCBmb2N1cyAodWludDMyIHRp bWVzdGFtcCk7CisrCQlwdWJsaWMgdm9pZCBmb3JlYWNoX2FuY2VzdG9yIChNZXRhLldpbmRvd0Zv cmVhY2hGdW5jIGZ1bmMpOworKwkJcHVibGljIHZvaWQgZm9yZWFjaF90cmFuc2llbnQgKE1ldGEu V2luZG93Rm9yZWFjaEZ1bmMgZnVuYyk7CisrCQlwdWJsaWMgTWV0YS5SZWN0YW5nbGUgZnJhbWVf cmVjdF90b19jbGllbnRfcmVjdCAoTWV0YS5SZWN0YW5nbGUgZnJhbWVfcmVjdCk7CisrCQlwdWJs aWMgTWV0YS5SZWN0YW5nbGUgZ2V0X2J1ZmZlcl9yZWN0ICgpOworKwkJcHVibGljIHVub3duZWQg c3RyaW5nIGdldF9jbGllbnRfbWFjaGluZSAoKTsKKysJCXB1YmxpYyBNZXRhLldpbmRvd0NsaWVu dFR5cGUgZ2V0X2NsaWVudF90eXBlICgpOworKwkJcHVibGljIHVub3duZWQgR0xpYi5PYmplY3Qg Z2V0X2NvbXBvc2l0b3JfcHJpdmF0ZSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRf ZGVzY3JpcHRpb24gKCk7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLkRpc3BsYXkgZ2V0X2Rpc3Bs YXkgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDYWlyby5SZWdpb24/IGdldF9mcmFtZV9ib3VuZHMg KCk7CisrCQlwdWJsaWMgTWV0YS5SZWN0YW5nbGUgZ2V0X2ZyYW1lX3JlY3QgKCk7CisrCQlwdWJs aWMgTWV0YS5GcmFtZVR5cGUgZ2V0X2ZyYW1lX3R5cGUgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBz dHJpbmcgZ2V0X2d0a19hcHBfbWVudV9vYmplY3RfcGF0aCAoKTsKKysJCXB1YmxpYyB1bm93bmVk IHN0cmluZyBnZXRfZ3RrX2FwcGxpY2F0aW9uX2lkICgpOworKwkJcHVibGljIHVub3duZWQgc3Ry aW5nIGdldF9ndGtfYXBwbGljYXRpb25fb2JqZWN0X3BhdGggKCk7CisrCQlwdWJsaWMgdW5vd25l ZCBzdHJpbmcgZ2V0X2d0a19tZW51YmFyX29iamVjdF9wYXRoICgpOworKwkJcHVibGljIHVub3du ZWQgc3RyaW5nIGdldF9ndGtfdGhlbWVfdmFyaWFudCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0 cmluZyBnZXRfZ3RrX3VuaXF1ZV9idXNfbmFtZSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmlu ZyBnZXRfZ3RrX3dpbmRvd19vYmplY3RfcGF0aCAoKTsKKysJCXB1YmxpYyBib29sIGdldF9pY29u X2dlb21ldHJ5IChvdXQgTWV0YS5SZWN0YW5nbGUgcmVjdCk7CisrCQlwdWJsaWMgdWludDY0IGdl dF9pZCAoKTsKKysJCXB1YmxpYyBNZXRhLlN0YWNrTGF5ZXIgZ2V0X2xheWVyICgpOworKwkJcHVi bGljIE1ldGEuTWF4aW1pemVGbGFncyBnZXRfbWF4aW1pemVkICgpOworKwkJcHVibGljIGludCBn ZXRfbW9uaXRvciAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfbXV0dGVyX2hpbnRz ICgpOworKwkJcHVibGljIGludCBnZXRfcGlkICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5n IGdldF9yb2xlICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9zYW5kYm94ZWRfYXBw X2lkICgpOworKwkJcHVibGljIHVpbnQgZ2V0X3N0YWJsZV9zZXF1ZW5jZSAoKTsKKysJCXB1Ymxp YyB1bm93bmVkIHN0cmluZyBnZXRfc3RhcnR1cF9pZCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIE1l dGEuV2luZG93PyBnZXRfdGlsZV9tYXRjaCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBn ZXRfdGl0bGUgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLldpbmRvdyBnZXRfdHJhbnNpZW50 X2ZvciAoKTsKKysJCXB1YmxpYyB1aW50MzIgZ2V0X3VzZXJfdGltZSAoKTsKKysJCXB1YmxpYyBN ZXRhLldpbmRvd1R5cGUgZ2V0X3dpbmRvd190eXBlICgpOworKwkJcHVibGljIHVub3duZWQgc3Ry aW5nIGdldF93bV9jbGFzcyAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfd21fY2xh c3NfaW5zdGFuY2UgKCk7CisrCQlwdWJsaWMgTWV0YS5SZWN0YW5nbGUgZ2V0X3dvcmtfYXJlYV9h bGxfbW9uaXRvcnMgKCk7CisrCQlwdWJsaWMgTWV0YS5SZWN0YW5nbGUgZ2V0X3dvcmtfYXJlYV9j dXJyZW50X21vbml0b3IgKCk7CisrCQlwdWJsaWMgTWV0YS5SZWN0YW5nbGUgZ2V0X3dvcmtfYXJl YV9mb3JfbW9uaXRvciAoaW50IHdoaWNoX21vbml0b3IpOworKwkJcHVibGljIHVub3duZWQgTWV0 YS5Xb3Jrc3BhY2UgZ2V0X3dvcmtzcGFjZSAoKTsKKysJCXB1YmxpYyBYLldpbmRvdyBnZXRfeHdp bmRvdyAoKTsKKysJCXB1YmxpYyB2b2lkIGdyb3VwX2xlYWRlcl9jaGFuZ2VkICgpOworKwkJcHVi bGljIGJvb2wgaGFzX2ZvY3VzICgpOworKwkJcHVibGljIGJvb2wgaXNfYWJvdmUgKCk7CisrCQlw dWJsaWMgYm9vbCBpc19hbHdheXNfb25fYWxsX3dvcmtzcGFjZXMgKCk7CisrCQlwdWJsaWMgYm9v bCBpc19hbmNlc3Rvcl9vZl90cmFuc2llbnQgKE1ldGEuV2luZG93IHRyYW5zaWVudCk7CisrCQlw dWJsaWMgYm9vbCBpc19hdHRhY2hlZF9kaWFsb2cgKCk7CisrCQlwdWJsaWMgYm9vbCBpc19jbGll bnRfZGVjb3JhdGVkICgpOworKwkJcHVibGljIGJvb2wgaXNfZnVsbHNjcmVlbiAoKTsKKysJCXB1 YmxpYyBib29sIGlzX2hpZGRlbiAoKTsKKysJCXB1YmxpYyBib29sIGlzX21vbml0b3Jfc2l6ZWQg KCk7CisrCQlwdWJsaWMgYm9vbCBpc19vbl9hbGxfd29ya3NwYWNlcyAoKTsKKysJCXB1YmxpYyBi b29sIGlzX29uX3ByaW1hcnlfbW9uaXRvciAoKTsKKysJCXB1YmxpYyBib29sIGlzX292ZXJyaWRl X3JlZGlyZWN0ICgpOworKwkJcHVibGljIGJvb2wgaXNfcmVtb3RlICgpOworKwkJcHVibGljIGJv b2wgaXNfc2NyZWVuX3NpemVkICgpOworKwkJcHVibGljIGJvb2wgaXNfc2hhZGVkICgpOworKwkJ cHVibGljIGJvb2wgaXNfc2tpcF90YXNrYmFyICgpOworKwkJcHVibGljIHZvaWQga2lsbCAoKTsK KysJCXB1YmxpYyBib29sIGxvY2F0ZWRfb25fd29ya3NwYWNlIChNZXRhLldvcmtzcGFjZSB3b3Jr c3BhY2UpOworKwkJcHVibGljIHZvaWQgbG93ZXIgKCk7CisrCQlwdWJsaWMgdm9pZCBtYWtlX2Fi b3ZlICgpOworKwkJcHVibGljIHZvaWQgbWFrZV9mdWxsc2NyZWVuICgpOworKwkJcHVibGljIHZv aWQgbWF4aW1pemUgKE1ldGEuTWF4aW1pemVGbGFncyBkaXJlY3Rpb25zKTsKKysJCXB1YmxpYyB2 b2lkIG1pbmltaXplICgpOworKwkJcHVibGljIHZvaWQgbW92ZV9mcmFtZSAoYm9vbCB1c2VyX29w LCBpbnQgcm9vdF94X253LCBpbnQgcm9vdF95X253KTsKKysJCXB1YmxpYyB2b2lkIG1vdmVfcmVz aXplX2ZyYW1lIChib29sIHVzZXJfb3AsIGludCByb290X3hfbncsIGludCByb290X3lfbncsIGlu dCB3LCBpbnQgaCk7CisrCQlwdWJsaWMgdm9pZCBtb3ZlX3RvX21vbml0b3IgKGludCBtb25pdG9y KTsKKysJCXB1YmxpYyB2b2lkIHJhaXNlICgpOworKwkJcHVibGljIGJvb2wgcmVxdWVzdGVkX2J5 cGFzc19jb21wb3NpdG9yICgpOworKwkJcHVibGljIGJvb2wgcmVxdWVzdGVkX2RvbnRfYnlwYXNz X2NvbXBvc2l0b3IgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfY29tcG9zaXRvcl9wcml2YXRlIChH TGliLk9iamVjdCBwcml2KTsKKysJCXB1YmxpYyB2b2lkIHNldF9kZW1hbmRzX2F0dGVudGlvbiAo KTsKKysJCXB1YmxpYyB2b2lkIHNldF9pY29uX2dlb21ldHJ5IChNZXRhLlJlY3RhbmdsZT8gcmVj dCk7CisrCQlwdWJsaWMgdm9pZCBzaGFkZSAodWludDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMg dm9pZCBzaG92ZV90aXRsZWJhcl9vbnNjcmVlbiAoKTsKKysJCXB1YmxpYyBib29sIHNob3dpbmdf b25faXRzX3dvcmtzcGFjZSAoKTsKKysJCXB1YmxpYyB2b2lkIHNodXRkb3duX2dyb3VwICgpOwor KwkJcHVibGljIHZvaWQgc3RpY2sgKCk7CisrCQlwdWJsaWMgYm9vbCB0aXRsZWJhcl9pc19vbnNj cmVlbiAoKTsKKysJCXB1YmxpYyB2b2lkIHVubWFrZV9hYm92ZSAoKTsKKysJCXB1YmxpYyB2b2lk IHVubWFrZV9mdWxsc2NyZWVuICgpOworKwkJcHVibGljIHZvaWQgdW5tYXhpbWl6ZSAoTWV0YS5N YXhpbWl6ZUZsYWdzIGRpcmVjdGlvbnMpOworKwkJcHVibGljIHZvaWQgdW5taW5pbWl6ZSAoKTsK KysJCXB1YmxpYyB2b2lkIHVuc2V0X2RlbWFuZHNfYXR0ZW50aW9uICgpOworKwkJcHVibGljIHZv aWQgdW5zaGFkZSAodWludDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMgdm9pZCB1bnN0aWNrICgp OworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9vbCBhYm92ZSB7IGdldDsgfQor KwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9vbCBhcHBlYXJzX2ZvY3VzZWQgeyBn ZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wgZGVjb3JhdGVkIHsg Z2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIGRlbWFuZHNfYXR0 ZW50aW9uIHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIGZ1 bGxzY3JlZW4geyBnZXQ7IH0KKysJCXB1YmxpYyBzdHJpbmcgZ3RrX2FwcF9tZW51X29iamVjdF9w YXRoIHsgZ2V0OyB9CisrCQlwdWJsaWMgc3RyaW5nIGd0a19hcHBsaWNhdGlvbl9pZCB7IGdldDsg fQorKwkJcHVibGljIHN0cmluZyBndGtfYXBwbGljYXRpb25fb2JqZWN0X3BhdGggeyBnZXQ7IH0K KysJCXB1YmxpYyBzdHJpbmcgZ3RrX21lbnViYXJfb2JqZWN0X3BhdGggeyBnZXQ7IH0KKysJCXB1 YmxpYyBzdHJpbmcgZ3RrX3VuaXF1ZV9idXNfbmFtZSB7IGdldDsgfQorKwkJcHVibGljIHN0cmlu ZyBndGtfd2luZG93X29iamVjdF9wYXRoIHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0K KysJCXB1YmxpYyB2b2lkKiBpY29uIHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJ CXB1YmxpYyBib29sIG1heGltaXplZF9ob3Jpem9udGFsbHkgeyBnZXQ7IH0KKysJCVtOb0FjY2Vz c29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wgbWF4aW1pemVkX3ZlcnRpY2FsbHkgeyBnZXQ7IH0K KysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIHZvaWQqIG1pbmlfaWNvbiB7IGdldDsg fQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9vbCBtaW5pbWl6ZWQgeyBnZXQ7 IH0KKysJCXB1YmxpYyBzdHJpbmcgbXV0dGVyX2hpbnRzIHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nv ck1ldGhvZF0KKysJCXB1YmxpYyBib29sIG9uX2FsbF93b3Jrc3BhY2VzIHsgZ2V0OyB9CisrCQlb Tm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIHJlc2l6ZWFibGUgeyBnZXQ7IH0KKysJ CVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wgc2tpcF90YXNrYmFyIHsgZ2V0OyB9 CisrCQlwdWJsaWMgc3RyaW5nIHRpdGxlIHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0K KysJCXB1YmxpYyBib29sIHVyZ2VudCB7IGdldDsgfQorKwkJcHVibGljIHVpbnQgdXNlcl90aW1l IHsgZ2V0OyB9CisrCQlwdWJsaWMgTWV0YS5XaW5kb3dUeXBlIHdpbmRvd190eXBlIHsgZ2V0OyB9 CisrCQlwdWJsaWMgc3RyaW5nIHdtX2NsYXNzIHsgZ2V0OyB9CisrCQlwdWJsaWMgc2lnbmFsIHZv aWQgcG9zaXRpb25fY2hhbmdlZCAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCByYWlzZWQgKCk7 CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgc2hvd24gKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQg c2l6ZV9jaGFuZ2VkICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHVubWFuYWdlZCAoKTsKKysJ CXB1YmxpYyBzaWduYWwgdm9pZCB3b3Jrc3BhY2VfY2hhbmdlZCAoKTsKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLXdpbmRvdy1hY3Rvci5oIiwgdHlwZV9pZCA9 ICJtZXRhX3dpbmRvd19hY3Rvcl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgYWJzdHJhY3QgY2xh c3MgV2luZG93QWN0b3IgOiBDbHV0dGVyLkFjdG9yLCBBdGsuSW1wbGVtZW50b3IsIENsdXR0ZXIu QW5pbWF0YWJsZSwgQ2x1dHRlci5Db250YWluZXIsIENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlb Q0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgV2lu ZG93QWN0b3IgKCk7CisrCQlwdWJsaWMgQ2Fpcm8uU3VyZmFjZT8gZ2V0X2ltYWdlIChDYWlyby5S ZWN0YW5nbGVJbnQ/IGNsaXApOworKwkJcHVibGljIHVub3duZWQgTWV0YS5XaW5kb3cgZ2V0X21l dGFfd2luZG93ICgpOworKwkJcHVibGljIHVub3duZWQgTWV0YS5TaGFwZWRUZXh0dXJlIGdldF90 ZXh0dXJlICgpOworKwkJcHVibGljIGJvb2wgaXNfZGVzdHJveWVkICgpOworKwkJcHVibGljIHZv aWQgc3luY192aXNpYmlsaXR5ICgpOworKwkJcHVibGljIE1ldGEuV2luZG93IG1ldGFfd2luZG93 IHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCBkYW1hZ2VkICgpOwor KwkJcHVibGljIHNpZ25hbCB2b2lkIGVmZmVjdHNfY29tcGxldGVkICgpOworKwkJcHVibGljIHNp Z25hbCB2b2lkIGZpcnN0X2ZyYW1lICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHRoYXdlZCAo KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLXdpbmRvdy1n cm91cC5oIiwgdHlwZV9pZCA9ICJtZXRhX3dpbmRvd19ncm91cF9nZXRfdHlwZSAoKSIpXQorKwlw dWJsaWMgY2xhc3MgV2luZG93R3JvdXAgOiBDbHV0dGVyLkFjdG9yLCBBdGsuSW1wbGVtZW50b3Is IENsdXR0ZXIuQW5pbWF0YWJsZSwgQ2x1dHRlci5Db250YWluZXIsIENsdXR0ZXIuU2NyaXB0YWJs ZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90 ZWN0ZWQgV2luZG93R3JvdXAgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g Im1ldGEvbWV0YS13aW5kb3ctc2hhcGUuaCIsIHJlZl9mdW5jdGlvbiA9ICJtZXRhX3dpbmRvd19z aGFwZV9yZWYiLCB0eXBlX2lkID0gIm1ldGFfd2luZG93X3NoYXBlX2dldF90eXBlICgpIiwgdW5y ZWZfZnVuY3Rpb24gPSAibWV0YV93aW5kb3dfc2hhcGVfdW5yZWYiKV0KKysJW0NvbXBhY3RdCisr CXB1YmxpYyBjbGFzcyBXaW5kb3dTaGFwZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVu Y3Rpb24gPSBmYWxzZSldCisrCQlwdWJsaWMgV2luZG93U2hhcGUgKENhaXJvLlJlZ2lvbiByZWdp b24pOworKwkJcHVibGljIGJvb2wgZXF1YWwgKE1ldGEuV2luZG93U2hhcGUgc2hhcGVfYik7Cisr CQlwdWJsaWMgdm9pZCBnZXRfYm9yZGVycyAoaW50IGJvcmRlcl90b3AsIGludCBib3JkZXJfcmln aHQsIGludCBib3JkZXJfYm90dG9tLCBpbnQgYm9yZGVyX2xlZnQpOworKwkJcHVibGljIHVpbnQg aGFzaCAoKTsKKysJCXB1YmxpYyBNZXRhLldpbmRvd1NoYXBlIEByZWYgKCk7CisrCQlwdWJsaWMg Q2Fpcm8uUmVnaW9uIHRvX3JlZ2lvbiAoaW50IGNlbnRlcl93aWR0aCwgaW50IGNlbnRlcl9oZWln aHQpOworKwkJcHVibGljIHZvaWQgdW5yZWYgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gIm1ldGEvd29ya3NwYWNlLmgiLCB0eXBlX2lkID0gIm1ldGFfd29ya3NwYWNlX2dl dF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBXb3Jrc3BhY2UgOiBHTGliLk9iamVjdCB7Cisr CQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQg V29ya3NwYWNlICgpOworKwkJcHVibGljIHZvaWQgYWN0aXZhdGUgKHVpbnQzMiB0aW1lc3RhbXAp OworKwkJcHVibGljIHZvaWQgYWN0aXZhdGVfd2l0aF9mb2N1cyAoTWV0YS5XaW5kb3cgZm9jdXNf dGhpcywgdWludDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLkRpc3BsYXkg Z2V0X2Rpc3BsYXkgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLldvcmtzcGFjZSBnZXRfbmVp Z2hib3IgKE1ldGEuTW90aW9uRGlyZWN0aW9uIGRpcmVjdGlvbik7CisrCQlwdWJsaWMgTWV0YS5S ZWN0YW5nbGUgZ2V0X3dvcmtfYXJlYV9hbGxfbW9uaXRvcnMgKCk7CisrCQlwdWJsaWMgTWV0YS5S ZWN0YW5nbGUgZ2V0X3dvcmtfYXJlYV9mb3JfbW9uaXRvciAoaW50IHdoaWNoX21vbml0b3IpOwor KwkJcHVibGljIGludCBpbmRleCAoKTsKKysJCXB1YmxpYyBHTGliLkxpc3Q8d2VhayBNZXRhLldp bmRvdz4gbGlzdF93aW5kb3dzICgpOworKwkJcHVibGljIHZvaWQgc2V0X2J1aWx0aW5fc3RydXRz IChHTGliLlNMaXN0PE1ldGEuU3RydXQ/PiBzdHJ1dHMpOworKwkJW05vQWNjZXNzb3JNZXRob2Rd CisrCQlwdWJsaWMgdWludCBuX3dpbmRvd3MgeyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9k XQorKwkJcHVibGljIHVpbnQgd29ya3NwYWNlX2luZGV4IHsgZ2V0OyB9CisrCQlwdWJsaWMgc2ln bmFsIHZvaWQgd2luZG93X2FkZGVkIChNZXRhLldpbmRvdyBvYmplY3QpOworKwkJcHVibGljIHNp Z25hbCB2b2lkIHdpbmRvd19yZW1vdmVkIChNZXRhLldpbmRvdyBvYmplY3QpOworKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtd29ya3NwYWNlLW1hbmFnZXIuaCIs IHR5cGVfaWQgPSAibWV0YV93b3Jrc3BhY2VfbWFuYWdlcl9nZXRfdHlwZSAoKSIpXQorKwlwdWJs aWMgY2xhc3MgV29ya3NwYWNlTWFuYWdlciA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFz X2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBXb3Jrc3BhY2VNYW5h Z2VyICgpOworKwkJcHVibGljIHVub3duZWQgTWV0YS5Xb3Jrc3BhY2UgYXBwZW5kX25ld193b3Jr c3BhY2UgKGJvb2wgYWN0aXZhdGUsIHVpbnQzMiB0aW1lc3RhbXApOworKwkJcHVibGljIHVub3du ZWQgTWV0YS5Xb3Jrc3BhY2UgZ2V0X2FjdGl2ZV93b3Jrc3BhY2UgKCk7CisrCQlwdWJsaWMgaW50 IGdldF9hY3RpdmVfd29ya3NwYWNlX2luZGV4ICgpOworKwkJcHVibGljIGludCBnZXRfbl93b3Jr c3BhY2VzICgpOworKwkJcHVibGljIHVub3duZWQgTWV0YS5Xb3Jrc3BhY2U/IGdldF93b3Jrc3Bh Y2VfYnlfaW5kZXggKGludCBpbmRleCk7CisrCQlwdWJsaWMgdm9pZCBvdmVycmlkZV93b3Jrc3Bh Y2VfbGF5b3V0IChNZXRhLkRpc3BsYXlDb3JuZXIgc3RhcnRpbmdfY29ybmVyLCBib29sIHZlcnRp Y2FsX2xheW91dCwgaW50IG5fcm93cywgaW50IG5fY29sdW1ucyk7CisrCQlwdWJsaWMgdm9pZCBy ZW1vdmVfd29ya3NwYWNlIChNZXRhLldvcmtzcGFjZSB3b3Jrc3BhY2UsIHVpbnQzMiB0aW1lc3Rh bXApOworKwkJcHVibGljIHZvaWQgcmVvcmRlcl93b3Jrc3BhY2UgKE1ldGEuV29ya3NwYWNlIHdv cmtzcGFjZSwgaW50IG5ld19pbmRleCk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1Ymxp YyBpbnQgbGF5b3V0X2NvbHVtbnMgeyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJ cHVibGljIGludCBsYXlvdXRfcm93cyB7IGdldDsgfQorKwkJcHVibGljIGludCBuX3dvcmtzcGFj ZXMgeyBnZXQ7IH0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCBhY3RpdmVfd29ya3NwYWNlX2NoYW5n ZWQgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgc2hvd2luZ19kZXNrdG9wX2NoYW5nZWQgKCk7 CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgd29ya3NwYWNlX2FkZGVkIChpbnQgb2JqZWN0KTsKKysJ CXB1YmxpYyBzaWduYWwgdm9pZCB3b3Jrc3BhY2VfcmVtb3ZlZCAoaW50IG9iamVjdCk7CisrCQlw dWJsaWMgc2lnbmFsIHZvaWQgd29ya3NwYWNlX3N3aXRjaGVkIChpbnQgb2JqZWN0LCBpbnQgcDAs IE1ldGEuTW90aW9uRGlyZWN0aW9uIHAxKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCB3b3Jrc3Bh Y2VzX3Jlb3JkZXJlZCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0 YS9tZXRhLXgxMS1kaXNwbGF5LmgiLCB0eXBlX2lkID0gIm1ldGFfeDExX2Rpc3BsYXlfZ2V0X3R5 cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFgxMURpc3BsYXkgOiBHTGliLk9iamVjdCB7CisrCQlb Q0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgWDEx RGlzcGxheSAoKTsKKysJCXB1YmxpYyB2b2lkIGNsZWFyX3N0YWdlX2lucHV0X3JlZ2lvbiAoKTsK KysJCXB1YmxpYyBpbnQgZ2V0X2RhbWFnZV9ldmVudF9iYXNlICgpOworKwkJcHVibGljIGludCBn ZXRfc2NyZWVuX251bWJlciAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0X3NoYXBlX2V2ZW50X2Jhc2Ug KCk7CisrCQlwdWJsaWMgYm9vbCBoYXNfc2hhcGUgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfY21f c2VsZWN0aW9uICgpOworKwkJcHVibGljIHZvaWQgc2V0X3N0YWdlX2lucHV0X3JlZ2lvbiAoWC5Y c2VydmVyUmVnaW9uIHJlZ2lvbik7CisrCQlwdWJsaWMgYm9vbCB4d2luZG93X2lzX2Ffbm9fZm9j dXNfd2luZG93IChYLldpbmRvdyB4d2luZG93KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAibWV0YS9tZXRhLWNsb3NlLWRpYWxvZy5oIiwgdHlwZV9jbmFtZSA9ICJNZXRhQ2xv c2VEaWFsb2dJbnRlcmZhY2UiLCB0eXBlX2lkID0gIm1ldGFfY2xvc2VfZGlhbG9nX2dldF90eXBl ICgpIildCisrCXB1YmxpYyBpbnRlcmZhY2UgQ2xvc2VEaWFsb2cgOiBHTGliLk9iamVjdCB7Cisr CQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBmb2N1cyAoKTsKKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lk IGhpZGUgKCk7CisrCQlwdWJsaWMgYm9vbCBpc192aXNpYmxlICgpOworKwkJcHVibGljIGFic3Ry YWN0IHZvaWQgc2hvdyAoKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGFic3Ry YWN0IE1ldGEuV2luZG93IHdpbmRvdyB7IG93bmVkIGdldDsgY29uc3RydWN0OyB9CisrCQlbSGFz RW1pdHRlcl0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCByZXNwb25zZSAoTWV0YS5DbG9zZURpYWxv Z1Jlc3BvbnNlIHJlc3BvbnNlKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi bWV0YS9tZXRhLWluaGliaXQtc2hvcnRjdXRzLWRpYWxvZy5oIiwgdHlwZV9jbmFtZSA9ICJNZXRh SW5oaWJpdFNob3J0Y3V0c0RpYWxvZ0ludGVyZmFjZSIsIHR5cGVfaWQgPSAibWV0YV9pbmhpYml0 X3Nob3J0Y3V0c19kaWFsb2dfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGludGVyZmFjZSBJbmhp Yml0U2hvcnRjdXRzRGlhbG9nIDogR0xpYi5PYmplY3QgeworKwkJcHVibGljIGFic3RyYWN0IHZv aWQgaGlkZSAoKTsKKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lkIHNob3cgKCk7CisrCQlbTm9BY2Nl c3Nvck1ldGhvZF0KKysJCXB1YmxpYyBhYnN0cmFjdCBNZXRhLldpbmRvdyB3aW5kb3cgeyBvd25l ZCBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJW0hhc0VtaXR0ZXJdCisrCQlwdWJsaWMgc2lnbmFsIHZv aWQgcmVzcG9uc2UgKE1ldGEuSW5oaWJpdFNob3J0Y3V0c0RpYWxvZ1Jlc3BvbnNlIHJlc3BvbnNl KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBoYXNf dHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBCdXR0b25MYXlvdXQgeworKwkJW0ND b2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldCisrCQlwdWJsaWMgd2VhayBNZXRhLkJ1dHRvbkZ1 bmN0aW9uIGxlZnRfYnV0dG9uc1s0XTsKKysJCVtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2Up XQorKwkJcHVibGljIHdlYWsgYm9vbCBsZWZ0X2J1dHRvbnNfaGFzX3NwYWNlcls0XTsKKysJCVtD Q29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXQorKwkJcHVibGljIHdlYWsgTWV0YS5CdXR0b25G dW5jdGlvbiByaWdodF9idXR0b25zWzRdOworKwkJW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxz ZSldCisrCQlwdWJsaWMgd2VhayBib29sIHJpZ2h0X2J1dHRvbnNfaGFzX3NwYWNlcls0XTsKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBoYXNfdHlwZV9p ZCA9IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBFZGdlIHsKKysJCXB1YmxpYyBNZXRhLlJlY3Rh bmdsZSByZWN0OworKwkJcHVibGljIE1ldGEuU2lkZSBzaWRlX3R5cGU7CisrCQlwdWJsaWMgTWV0 YS5FZGdlVHlwZSBlZGdlX3R5cGU7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g Im1ldGEvbWFpbi5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgRnJh bWVCb3JkZXJzIHsKKysJCXB1YmxpYyBHdGsuQm9yZGVyIHZpc2libGU7CisrCQlwdWJsaWMgR3Rr LkJvcmRlciBpbnZpc2libGU7CisrCQlwdWJsaWMgR3RrLkJvcmRlciB0b3RhbDsKKysJCXB1Ymxp YyB2b2lkIGNsZWFyICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRh L21ldGEtcGx1Z2luLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBQ bHVnaW5JbmZvIHsKKysJCXB1YmxpYyB3ZWFrIHN0cmluZyBuYW1lOworKwkJcHVibGljIHdlYWsg c3RyaW5nIHZlcnNpb247CisrCQlwdWJsaWMgd2VhayBzdHJpbmcgYXV0aG9yOworKwkJcHVibGlj IHdlYWsgc3RyaW5nIGxpY2Vuc2U7CisrCQlwdWJsaWMgd2VhayBzdHJpbmcgZGVzY3JpcHRpb247 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgaGFzX3R5 cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgUGx1Z2luVmVyc2lvbiB7CisrCQlwdWJs aWMgdWludCB2ZXJzaW9uX21ham9yOworKwkJcHVibGljIHVpbnQgdmVyc2lvbl9taW5vcjsKKysJ CXB1YmxpYyB1aW50IHZlcnNpb25fbWljcm87CisrCQlwdWJsaWMgdWludCB2ZXJzaW9uX2FwaTsK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjb3B5X2Z1 bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwg dHlwZV9pZCA9ICJtZXRhX3JlY3RhbmdsZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgc3RydWN0 IFJlY3RhbmdsZSB7CisrCQlwdWJsaWMgaW50IHg7CisrCQlwdWJsaWMgaW50IHk7CisrCQlwdWJs aWMgaW50IHdpZHRoOworKwkJcHVibGljIGludCBoZWlnaHQ7CisrCQlwdWJsaWMgaW50IGFyZWEg KCk7CisrCQlwdWJsaWMgYm9vbCBjb250YWluc19yZWN0IChNZXRhLlJlY3RhbmdsZSBpbm5lcl9y ZWN0KTsKKysJCXB1YmxpYyBNZXRhLlJlY3RhbmdsZT8gY29weSAoKTsKKysJCXB1YmxpYyBib29s IGNvdWxkX2ZpdF9yZWN0IChNZXRhLlJlY3RhbmdsZSBpbm5lcl9yZWN0KTsKKysJCXB1YmxpYyBi b29sIGVxdWFsIChNZXRhLlJlY3RhbmdsZSBzcmMyKTsKKysJCXB1YmxpYyB2b2lkIGZyZWUgKCk7 CisrCQlwdWJsaWMgYm9vbCBob3Jpel9vdmVybGFwIChNZXRhLlJlY3RhbmdsZSByZWN0Mik7Cisr CQlwdWJsaWMgYm9vbCBpbnRlcnNlY3QgKE1ldGEuUmVjdGFuZ2xlIHNyYzIsIG91dCBNZXRhLlJl Y3RhbmdsZSBkZXN0KTsKKysJCXB1YmxpYyBib29sIG92ZXJsYXAgKE1ldGEuUmVjdGFuZ2xlIHJl Y3QyKTsKKysJCXB1YmxpYyBNZXRhLlJlY3RhbmdsZSB1bmlvbiAoTWV0YS5SZWN0YW5nbGUgcmVj dDIpOworKwkJcHVibGljIGJvb2wgdmVydF9vdmVybGFwIChNZXRhLlJlY3RhbmdsZSByZWN0Mik7 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgaGFzX3R5 cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgU2hhZG93UGFyYW1zIHsKKysJCXB1Ymxp YyBpbnQgcmFkaXVzOworKwkJcHVibGljIGludCB0b3BfZmFkZTsKKysJCXB1YmxpYyBpbnQgeF9v ZmZzZXQ7CisrCQlwdWJsaWMgaW50IHlfb2Zmc2V0OworKwkJcHVibGljIHVpbnQ4IG9wYWNpdHk7 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgaGFzX3R5 cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgU3RydXQgeworKwkJcHVibGljIE1ldGEu UmVjdGFuZ2xlIHJlY3Q7CisrCQlwdWJsaWMgTWV0YS5TaWRlIHNpZGU7CisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX0JBUlJJ RVJfRElSRUNUSU9OXyIsIHR5cGVfaWQgPSAibWV0YV9iYXJyaWVyX2RpcmVjdGlvbl9nZXRfdHlw ZSAoKSIpXQorKwlbRmxhZ3NdCisrCXB1YmxpYyBlbnVtIEJhcnJpZXJEaXJlY3Rpb24geworKwkJ UE9TSVRJVkVfWCwKKysJCVBPU0lUSVZFX1ksCisrCQlORUdBVElWRV9YLAorKwkJTkVHQVRJVkVf WQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVm aXggPSAiTUVUQV9CVVRUT05fRlVOQ1RJT05fIiwgdHlwZV9pZCA9ICJtZXRhX2J1dHRvbl9mdW5j dGlvbl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBCdXR0b25GdW5jdGlvbiB7CisrCQlN RU5VLAorKwkJTUlOSU1JWkUsCisrCQlNQVhJTUlaRSwKKysJCUNMT1NFLAorKwkJTEFTVAorKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAi TUVUQV9DTE9TRV9ESUFMT0dfUkVTUE9OU0VfIiwgdHlwZV9pZCA9ICJtZXRhX2Nsb3NlX2RpYWxv Z19yZXNwb25zZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBDbG9zZURpYWxvZ1Jlc3Bv bnNlIHsKKysJCVdBSVQsCisrCQlGT1JDRV9DTE9TRQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9DT01QX0VGRkVDVF8iLCB0 eXBlX2lkID0gIm1ldGFfY29tcF9lZmZlY3RfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0g Q29tcEVmZmVjdCB7CisrCQlDUkVBVEUsCisrCQlVTk1JTklNSVpFLAorKwkJREVTVFJPWSwKKysJ CU1JTklNSVpFLAorKwkJTk9ORQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJt ZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9DVVJTT1JfIiwgdHlwZV9pZCA9ICJtZXRhX2N1 cnNvcl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBDdXJzb3IgeworKwkJTk9ORSwKKysJ CURFRkFVTFQsCisrCQlOT1JUSF9SRVNJWkUsCisrCQlTT1VUSF9SRVNJWkUsCisrCQlXRVNUX1JF U0laRSwKKysJCUVBU1RfUkVTSVpFLAorKwkJU0VfUkVTSVpFLAorKwkJU1dfUkVTSVpFLAorKwkJ TkVfUkVTSVpFLAorKwkJTldfUkVTSVpFLAorKwkJTU9WRV9PUl9SRVNJWkVfV0lORE9XLAorKwkJ QlVTWSwKKysJCURORF9JTl9EUkFHLAorKwkJRE5EX01PVkUsCisrCQlETkRfQ09QWSwKKysJCURO RF9VTlNVUFBPUlRFRF9UQVJHRVQsCisrCQlQT0lOVElOR19IQU5ELAorKwkJQ1JPU1NIQUlSLAor KwkJSUJFQU0sCisrCQlMQVNUCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1l dGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX0RFQlVHXyIsIHR5cGVfaWQgPSAibWV0YV9kZWJ1 Z190b3BpY19nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCXB1YmxpYyBlbnVtIERlYnVnVG9w aWMgeworKwkJVkVSQk9TRSwKKysJCUZPQ1VTLAorKwkJV09SS0FSRUEsCisrCQlTVEFDSywKKysJ CVRIRU1FUywKKysJCVNNLAorKwkJRVZFTlRTLAorKwkJV0lORE9XX1NUQVRFLAorKwkJV0lORE9X X09QUywKKysJCUdFT01FVFJZLAorKwkJUExBQ0VNRU5ULAorKwkJUElORywKKysJCVhJTkVSQU1B LAorKwkJS0VZQklORElOR1MsCisrCQlTWU5DLAorKwkJRVJST1JTLAorKwkJU1RBUlRVUCwKKysJ CVBSRUZTLAorKwkJR1JPVVBTLAorKwkJUkVTSVpJTkcsCisrCQlTSEFQRVMsCisrCQlDT01QT1NJ VE9SLAorKwkJRURHRV9SRVNJU1RBTkNFLAorKwkJREJVUworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9ESVJFQ1RJT05fIiwg dHlwZV9pZCA9ICJtZXRhX2RpcmVjdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCXB1 YmxpYyBlbnVtIERpcmVjdGlvbiB7CisrCQlMRUZULAorKwkJUklHSFQsCisrCQlUT1AsCisrCQlC T1RUT00sCisrCQlVUCwKKysJCURPV04sCisrCQlIT1JJWk9OVEFMLAorKwkJVkVSVElDQUwKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0g Ik1FVEFfRElTUExBWV8iLCB0eXBlX2lkID0gIm1ldGFfZGlzcGxheV9jb3JuZXJfZ2V0X3R5cGUg KCkiKV0KKysJcHVibGljIGVudW0gRGlzcGxheUNvcm5lciB7CisrCQlUT1BMRUZULAorKwkJVE9Q UklHSFQsCisrCQlCT1RUT01MRUZULAorKwkJQk9UVE9NUklHSFQKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfRElTUExBWV8i LCB0eXBlX2lkID0gIm1ldGFfZGlzcGxheV9kaXJlY3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJcHVi bGljIGVudW0gRGlzcGxheURpcmVjdGlvbiB7CisrCQlVUCwKKysJCURPV04sCisrCQlMRUZULAor KwkJUklHSFQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgi LCBjcHJlZml4ID0gIk1FVEFfRURHRV8iLCB0eXBlX2lkID0gIm1ldGFfZWRnZV90eXBlX2dldF90 eXBlICgpIildCisrCXB1YmxpYyBlbnVtIEVkZ2VUeXBlIHsKKysJCVdJTkRPVywKKysJCU1PTklU T1IsCisrCQlTQ1JFRU4KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9t YWluLmgiLCBjcHJlZml4ID0gIk1FVEFfRVhJVF8iLCB0eXBlX2lkID0gIm1ldGFfZXhpdF9jb2Rl X2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIEV4aXRDb2RlIHsKKysJCVNVQ0NFU1MsCisr CQlFUlJPUgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIs IGNwcmVmaXggPSAiTUVUQV9GUkFNRV8iLCB0eXBlX2lkID0gIm1ldGFfZnJhbWVfZmxhZ3NfZ2V0 X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlwdWJsaWMgZW51bSBGcmFtZUZsYWdzIHsKKysJCUFM TE9XU19ERUxFVEUsCisrCQlBTExPV1NfTUVOVSwKKysJCUFMTE9XU19NSU5JTUlaRSwKKysJCUFM TE9XU19NQVhJTUlaRSwKKysJCUFMTE9XU19WRVJUSUNBTF9SRVNJWkUsCisrCQlBTExPV1NfSE9S SVpPTlRBTF9SRVNJWkUsCisrCQlIQVNfRk9DVVMsCisrCQlTSEFERUQsCisrCQlTVFVDSywKKysJ CU1BWElNSVpFRCwKKysJCUFMTE9XU19TSEFERSwKKysJCUFMTE9XU19NT1ZFLAorKwkJRlVMTFND UkVFTiwKKysJCUFCT1ZFLAorKwkJVElMRURfTEVGVCwKKysJCVRJTEVEX1JJR0hUCisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRB X0ZSQU1FX1RZUEVfIiwgdHlwZV9pZCA9ICJtZXRhX2ZyYW1lX3R5cGVfZ2V0X3R5cGUgKCkiKV0K KysJcHVibGljIGVudW0gRnJhbWVUeXBlIHsKKysJCU5PUk1BTCwKKysJCURJQUxPRywKKysJCU1P REFMX0RJQUxPRywKKysJCVVUSUxJVFksCisrCQlNRU5VLAorKwkJQk9SREVSLAorKwkJQVRUQUNI RUQsCisrCQlMQVNUOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIHRvX3N0cmluZyAoKTsKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0g Ik1FVEFfR1JBQl9PUF8iLCB0eXBlX2lkID0gIm1ldGFfZ3JhYl9vcF9nZXRfdHlwZSAoKSIpXQor KwlwdWJsaWMgZW51bSBHcmFiT3AgeworKwkJTk9ORSwKKysJCVdJTkRPV19CQVNFLAorKwkJQ09N UE9TSVRPUiwKKysJCVdBWUxBTkRfUE9QVVAsCisrCQlGUkFNRV9CVVRUT04sCisrCQlNT1ZJTkcs CisrCQlSRVNJWklOR19OVywKKysJCVJFU0laSU5HX04sCisrCQlSRVNJWklOR19ORSwKKysJCVJF U0laSU5HX0UsCisrCQlSRVNJWklOR19TVywKKysJCVJFU0laSU5HX1MsCisrCQlSRVNJWklOR19T RSwKKysJCVJFU0laSU5HX1csCisrCQlLRVlCT0FSRF9NT1ZJTkcsCisrCQlLRVlCT0FSRF9SRVNJ WklOR19VTktOT1dOLAorKwkJS0VZQk9BUkRfUkVTSVpJTkdfTlcsCisrCQlLRVlCT0FSRF9SRVNJ WklOR19OLAorKwkJS0VZQk9BUkRfUkVTSVpJTkdfTkUsCisrCQlLRVlCT0FSRF9SRVNJWklOR19F LAorKwkJS0VZQk9BUkRfUkVTSVpJTkdfU1csCisrCQlLRVlCT0FSRF9SRVNJWklOR19TLAorKwkJ S0VZQk9BUkRfUkVTSVpJTkdfU0UsCisrCQlLRVlCT0FSRF9SRVNJWklOR19XCisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX0lO SElCSVRfU0hPUlRDVVRTX0RJQUxPR19SRVNQT05TRV8iLCB0eXBlX2lkID0gIm1ldGFfaW5oaWJp dF9zaG9ydGN1dHNfZGlhbG9nX3Jlc3BvbnNlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVt IEluaGliaXRTaG9ydGN1dHNEaWFsb2dSZXNwb25zZSB7CisrCQlBTExPVywKKysJCURFTlkKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0g Ik1FVEFfS0VZQklORElOR19BQ1RJT05fIiwgdHlwZV9pZCA9ICJtZXRhX2tleV9iaW5kaW5nX2Fj dGlvbl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBLZXlCaW5kaW5nQWN0aW9uIHsKKysJ CU5PTkUsCisrCQlXT1JLU1BBQ0VfMSwKKysJCVdPUktTUEFDRV8yLAorKwkJV09SS1NQQUNFXzMs CisrCQlXT1JLU1BBQ0VfNCwKKysJCVdPUktTUEFDRV81LAorKwkJV09SS1NQQUNFXzYsCisrCQlX T1JLU1BBQ0VfNywKKysJCVdPUktTUEFDRV84LAorKwkJV09SS1NQQUNFXzksCisrCQlXT1JLU1BB Q0VfMTAsCisrCQlXT1JLU1BBQ0VfMTEsCisrCQlXT1JLU1BBQ0VfMTIsCisrCQlXT1JLU1BBQ0Vf TEVGVCwKKysJCVdPUktTUEFDRV9SSUdIVCwKKysJCVdPUktTUEFDRV9VUCwKKysJCVdPUktTUEFD RV9ET1dOLAorKwkJV09SS1NQQUNFX0xBU1QsCisrCQlTV0lUQ0hfQVBQTElDQVRJT05TLAorKwkJ U1dJVENIX0FQUExJQ0FUSU9OU19CQUNLV0FSRCwKKysJCVNXSVRDSF9HUk9VUCwKKysJCVNXSVRD SF9HUk9VUF9CQUNLV0FSRCwKKysJCVNXSVRDSF9XSU5ET1dTLAorKwkJU1dJVENIX1dJTkRPV1Nf QkFDS1dBUkQsCisrCQlTV0lUQ0hfUEFORUxTLAorKwkJU1dJVENIX1BBTkVMU19CQUNLV0FSRCwK KysJCUNZQ0xFX0dST1VQLAorKwkJQ1lDTEVfR1JPVVBfQkFDS1dBUkQsCisrCQlDWUNMRV9XSU5E T1dTLAorKwkJQ1lDTEVfV0lORE9XU19CQUNLV0FSRCwKKysJCUNZQ0xFX1BBTkVMUywKKysJCUNZ Q0xFX1BBTkVMU19CQUNLV0FSRCwKKysJCVNIT1dfREVTS1RPUCwKKysJCVBBTkVMX01BSU5fTUVO VSwKKysJCVBBTkVMX1JVTl9ESUFMT0csCisrCQlUT0dHTEVfUkVDT1JESU5HLAorKwkJU0VUX1NQ RVdfTUFSSywKKysJCUFDVElWQVRFX1dJTkRPV19NRU5VLAorKwkJVE9HR0xFX0ZVTExTQ1JFRU4s CisrCQlUT0dHTEVfTUFYSU1JWkVELAorKwkJVE9HR0xFX1RJTEVEX0xFRlQsCisrCQlUT0dHTEVf VElMRURfUklHSFQsCisrCQlUT0dHTEVfQUJPVkUsCisrCQlNQVhJTUlaRSwKKysJCVVOTUFYSU1J WkUsCisrCQlUT0dHTEVfU0hBREVELAorKwkJTUlOSU1JWkUsCisrCQlDTE9TRSwKKysJCUJFR0lO X01PVkUsCisrCQlCRUdJTl9SRVNJWkUsCisrCQlUT0dHTEVfT05fQUxMX1dPUktTUEFDRVMsCisr CQlNT1ZFX1RPX1dPUktTUEFDRV8xLAorKwkJTU9WRV9UT19XT1JLU1BBQ0VfMiwKKysJCU1PVkVf VE9fV09SS1NQQUNFXzMsCisrCQlNT1ZFX1RPX1dPUktTUEFDRV80LAorKwkJTU9WRV9UT19XT1JL U1BBQ0VfNSwKKysJCU1PVkVfVE9fV09SS1NQQUNFXzYsCisrCQlNT1ZFX1RPX1dPUktTUEFDRV83 LAorKwkJTU9WRV9UT19XT1JLU1BBQ0VfOCwKKysJCU1PVkVfVE9fV09SS1NQQUNFXzksCisrCQlN T1ZFX1RPX1dPUktTUEFDRV8xMCwKKysJCU1PVkVfVE9fV09SS1NQQUNFXzExLAorKwkJTU9WRV9U T19XT1JLU1BBQ0VfMTIsCisrCQlNT1ZFX1RPX1dPUktTUEFDRV9MRUZULAorKwkJTU9WRV9UT19X T1JLU1BBQ0VfUklHSFQsCisrCQlNT1ZFX1RPX1dPUktTUEFDRV9VUCwKKysJCU1PVkVfVE9fV09S S1NQQUNFX0RPV04sCisrCQlNT1ZFX1RPX1dPUktTUEFDRV9MQVNULAorKwkJTU9WRV9UT19NT05J VE9SX0xFRlQsCisrCQlNT1ZFX1RPX01PTklUT1JfUklHSFQsCisrCQlNT1ZFX1RPX01PTklUT1Jf VVAsCisrCQlNT1ZFX1RPX01PTklUT1JfRE9XTiwKKysJCVJBSVNFX09SX0xPV0VSLAorKwkJUkFJ U0UsCisrCQlMT1dFUiwKKysJCU1BWElNSVpFX1ZFUlRJQ0FMTFksCisrCQlNQVhJTUlaRV9IT1JJ Wk9OVEFMTFksCisrCQlNT1ZFX1RPX0NPUk5FUl9OVywKKysJCU1PVkVfVE9fQ09STkVSX05FLAor KwkJTU9WRV9UT19DT1JORVJfU1csCisrCQlNT1ZFX1RPX0NPUk5FUl9TRSwKKysJCU1PVkVfVE9f U0lERV9OLAorKwkJTU9WRV9UT19TSURFX1MsCisrCQlNT1ZFX1RPX1NJREVfRSwKKysJCU1PVkVf VE9fU0lERV9XLAorKwkJTU9WRV9UT19DRU5URVIsCisrCQlPVkVSTEFZX0tFWSwKKysJCUxPQ0FU RV9QT0lOVEVSX0tFWSwKKysJCUlTT19ORVhUX0dST1VQLAorKwkJQUxXQVlTX09OX1RPUCwKKysJ CVNXSVRDSF9NT05JVE9SLAorKwkJUk9UQVRFX01PTklUT1IsCisrCQlMQVNUCisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX0tF WV9CSU5ESU5HXyIsIHR5cGVfaWQgPSAibWV0YV9rZXlfYmluZGluZ19mbGFnc19nZXRfdHlwZSAo KSIpXQorKwlbRmxhZ3NdCisrCXB1YmxpYyBlbnVtIEtleUJpbmRpbmdGbGFncyB7CisrCQlOT05F LAorKwkJUEVSX1dJTkRPVywKKysJCUJVSUxUSU4sCisrCQlJU19SRVZFUlNFRCwKKysJCU5PTl9N QVNLQUJMRSwKKysJCUlHTk9SRV9BVVRPUkVQRUFULAorKwkJTk9fQVVUT19HUkFCCisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRB X0xBVEVSXyIsIHR5cGVfaWQgPSAibWV0YV9sYXRlcl90eXBlX2dldF90eXBlICgpIildCisrCXB1 YmxpYyBlbnVtIExhdGVyVHlwZSB7CisrCQlSRVNJWkUsCisrCQlDQUxDX1NIT1dJTkcsCisrCQlD SEVDS19GVUxMU0NSRUVOLAorKwkJU1lOQ19TVEFDSywKKysJCUJFRk9SRV9SRURSQVcsCisrCQlJ RExFCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3By ZWZpeCA9ICJNRVRBX0xPQ0FMRV9ESVJFQ1RJT05fIiwgdHlwZV9pZCA9ICJtZXRhX2xvY2FsZV9k aXJlY3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gTG9jYWxlRGlyZWN0aW9uIHsK KysJCUxUUiwKKysJCVJUTAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRh L21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9NQVhJTUlaRV8iLCB0eXBlX2lkID0gIm1ldGFfbWF4 aW1pemVfZmxhZ3NfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlwdWJsaWMgZW51bSBNYXhp bWl6ZUZsYWdzIHsKKysJCUhPUklaT05UQUwsCisrCQlWRVJUSUNBTCwKKysJCUJPVEgKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1F VEFfTU9EQUxfIiwgdHlwZV9pZCA9ICJtZXRhX21vZGFsX29wdGlvbnNfZ2V0X3R5cGUgKCkiKV0K KysJW0ZsYWdzXQorKwlwdWJsaWMgZW51bSBNb2RhbE9wdGlvbnMgeworKwkJUE9JTlRFUl9BTFJF QURZX0dSQUJCRUQsCisrCQlLRVlCT0FSRF9BTFJFQURZX0dSQUJCRUQKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfTU9OSVRP Ul9TV0lUQ0hfQ09ORklHXyIsIHR5cGVfaWQgPSAibWV0YV9tb25pdG9yX3N3aXRjaF9jb25maWdf dHlwZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBNb25pdG9yU3dpdGNoQ29uZmlnVHlw ZSB7CisrCQlBTExfTUlSUk9SLAorKwkJQUxMX0xJTkVBUiwKKysJCUVYVEVSTkFMLAorKwkJQlVJ TFRJTiwKKysJCVVOS05PV04KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0 YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfTU9USU9OXyIsIHR5cGVfaWQgPSAibWV0YV9tb3Rp b25fZGlyZWN0aW9uX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIE1vdGlvbkRpcmVjdGlv biB7CisrCQlVUCwKKysJCURPV04sCisrCQlMRUZULAorKwkJUklHSFQsCisrCQlVUF9MRUZULAor KwkJVVBfUklHSFQsCisrCQlET1dOX0xFRlQsCisrCQlET1dOX1JJR0hUCisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX1BBRF9B Q1RJT05fIiwgdHlwZV9pZCA9ICJtZXRhX3BhZF9hY3Rpb25fdHlwZV9nZXRfdHlwZSAoKSIpXQor KwlwdWJsaWMgZW51bSBQYWRBY3Rpb25UeXBlIHsKKysJCUJVVFRPTiwKKysJCVJJTkcsCisrCQlT VFJJUAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBj cHJlZml4ID0gIk1FVEFfUFJFRl8iLCB0eXBlX2lkID0gIm1ldGFfcHJlZmVyZW5jZV9nZXRfdHlw ZSAoKSIpXQorKwlwdWJsaWMgZW51bSBQcmVmZXJlbmNlIHsKKysJCU1PVVNFX0JVVFRPTl9NT0RT LAorKwkJRk9DVVNfTU9ERSwKKysJCUZPQ1VTX05FV19XSU5ET1dTLAorKwkJQVRUQUNIX01PREFM X0RJQUxPR1MsCisrCQlSQUlTRV9PTl9DTElDSywKKysJCUFDVElPTl9ET1VCTEVfQ0xJQ0tfVElU TEVCQVIsCisrCQlBQ1RJT05fTUlERExFX0NMSUNLX1RJVExFQkFSLAorKwkJQUNUSU9OX1JJR0hU X0NMSUNLX1RJVExFQkFSLAorKwkJQVVUT19SQUlTRSwKKysJCUFVVE9fUkFJU0VfREVMQVksCisr CQlGT0NVU19DSEFOR0VfT05fUE9JTlRFUl9SRVNULAorKwkJVElUTEVCQVJfRk9OVCwKKysJCU5V TV9XT1JLU1BBQ0VTLAorKwkJRFlOQU1JQ19XT1JLU1BBQ0VTLAorKwkJS0VZQklORElOR1MsCisr CQlESVNBQkxFX1dPUktBUk9VTkRTLAorKwkJQlVUVE9OX0xBWU9VVCwKKysJCVdPUktTUEFDRV9O QU1FUywKKysJCVZJU1VBTF9CRUxMLAorKwkJQVVESUJMRV9CRUxMLAorKwkJVklTVUFMX0JFTExf VFlQRSwKKysJCUdOT01FX0FDQ0VTU0lCSUxJVFksCisrCQlHTk9NRV9BTklNQVRJT05TLAorKwkJ Q1VSU09SX1RIRU1FLAorKwkJQ1VSU09SX1NJWkUsCisrCQlSRVNJWkVfV0lUSF9SSUdIVF9CVVRU T04sCisrCQlFREdFX1RJTElORywKKysJCUZPUkNFX0ZVTExTQ1JFRU4sCisrCQlXT1JLU1BBQ0VT X09OTFlfT05fUFJJTUFSWSwKKysJCURSQUdHQUJMRV9CT1JERVJfV0lEVEgsCisrCQlBVVRPX01B WElNSVpFLAorKwkJQ0VOVEVSX05FV19XSU5ET1dTLAorKwkJRFJBR19USFJFU0hPTEQsCisrCQlM T0NBVEVfUE9JTlRFUjsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyB0b19zdHJpbmcgKCk7Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9 ICJNRVRBXyIsIHR5cGVfaWQgPSAibWV0YV9zZWxlY3Rpb25fdHlwZV9nZXRfdHlwZSAoKSIpXQor KwlwdWJsaWMgZW51bSBTZWxlY3Rpb25UeXBlIHsKKysJCVNFTEVDVElPTl9QUklNQVJZLAorKwkJ U0VMRUNUSU9OX0NMSVBCT0FSRCwKKysJCVNFTEVDVElPTl9ETkQsCisrCQlOX1NFTEVDVElPTl9U WVBFUworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNw cmVmaXggPSAiTUVUQV9TSEFET1dfTU9ERV8iLCB0eXBlX2lkID0gIm1ldGFfc2hhZG93X21vZGVf Z2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gU2hhZG93TW9kZSB7CisrCQlBVVRPLAorKwkJ Rk9SQ0VEX09GRiwKKysJCUZPUkNFRF9PTgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9TSURFXyIsIHR5cGVfaWQgPSAibWV0 YV9zaWRlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIFNpZGUgeworKwkJTEVGVCwKKysJ CVJJR0hULAorKwkJVE9QLAorKwkJQk9UVE9NCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX1NJWkVfQ0hBTkdFXyIsIHR5cGVf aWQgPSAibWV0YV9zaXplX2NoYW5nZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBTaXpl Q2hhbmdlIHsKKysJCU1BWElNSVpFLAorKwkJVU5NQVhJTUlaRSwKKysJCUZVTExTQ1JFRU4sCisr CQlVTkZVTExTQ1JFRU4KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9t YWluLmgiLCBjcHJlZml4ID0gIk1FVEFfTEFZRVJfIiwgdHlwZV9pZCA9ICJtZXRhX3N0YWNrX2xh eWVyX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIFN0YWNrTGF5ZXIgeworKwkJREVTS1RP UCwKKysJCUJPVFRPTSwKKysJCU5PUk1BTCwKKysJCVRPUCwKKysJCURPQ0ssCisrCQlPVkVSUklE RV9SRURJUkVDVCwKKysJCUxBU1QKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi bWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfVEFCX0xJU1RfIiwgdHlwZV9pZCA9ICJtZXRh X3RhYl9saXN0X2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIFRhYkxpc3QgeworKwkJTk9S TUFMLAorKwkJRE9DS1MsCisrCQlHUk9VUCwKKysJCU5PUk1BTF9BTEwKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfVEFCX1NI T1dfIiwgdHlwZV9pZCA9ICJtZXRhX3RhYl9zaG93X3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVi bGljIGVudW0gVGFiU2hvd1R5cGUgeworKwkJSUNPTiwKKysJCUlOU1RBTlRMWQorKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9W SVJUVUFMXyIsIHR5cGVfaWQgPSAibWV0YV92aXJ0dWFsX21vZGlmaWVyX2dldF90eXBlICgpIild CisrCVtGbGFnc10KKysJcHVibGljIGVudW0gVmlydHVhbE1vZGlmaWVyIHsKKysJCVNISUZUX01B U0ssCisrCQlDT05UUk9MX01BU0ssCisrCQlBTFRfTUFTSywKKysJCU1FVEFfTUFTSywKKysJCVNV UEVSX01BU0ssCisrCQlIWVBFUl9NQVNLLAorKwkJTU9EMl9NQVNLLAorKwkJTU9EM19NQVNLLAor KwkJTU9ENF9NQVNLLAorKwkJTU9ENV9NQVNLCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX1dJTkRPV19DTElFTlRfVFlQRV8i LCB0eXBlX2lkID0gIm1ldGFfd2luZG93X2NsaWVudF90eXBlX2dldF90eXBlICgpIildCisrCXB1 YmxpYyBlbnVtIFdpbmRvd0NsaWVudFR5cGUgeworKwkJV0FZTEFORCwKKysJCVgxMQorKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVU QV9XSU5ET1dfTUVOVV8iLCB0eXBlX2lkID0gIm1ldGFfd2luZG93X21lbnVfdHlwZV9nZXRfdHlw ZSAoKSIpXQorKwlwdWJsaWMgZW51bSBXaW5kb3dNZW51VHlwZSB7CisrCQlXTSwKKysJCUFQUAor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXgg PSAiTUVUQV9XSU5ET1dfIiwgdHlwZV9pZCA9ICJtZXRhX3dpbmRvd190eXBlX2dldF90eXBlICgp IildCisrCXB1YmxpYyBlbnVtIFdpbmRvd1R5cGUgeworKwkJTk9STUFMLAorKwkJREVTS1RPUCwK KysJCURPQ0ssCisrCQlESUFMT0csCisrCQlNT0RBTF9ESUFMT0csCisrCQlUT09MQkFSLAorKwkJ TUVOVSwKKysJCVVUSUxJVFksCisrCQlTUExBU0hTQ1JFRU4sCisrCQlEUk9QRE9XTl9NRU5VLAor KwkJUE9QVVBfTUVOVSwKKysJCVRPT0xUSVAsCisrCQlOT1RJRklDQVRJT04sCisrCQlDT01CTywK KysJCURORCwKKysJCU9WRVJSSURFX09USEVSCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gIm1ldGEvbWFpbi5oIiwgaW5zdGFuY2VfcG9zID0gMi45KV0KKysJcHVibGljIGRlbGVn YXRlIHZvaWQgSWRsZU1vbml0b3JXYXRjaEZ1bmMgKE1ldGEuSWRsZU1vbml0b3IgbW9uaXRvciwg dWludCB3YXRjaF9pZCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4u aCIsIGluc3RhbmNlX3BvcyA9IDQuOSldCisrCXB1YmxpYyBkZWxlZ2F0ZSB2b2lkIEtleUhhbmRs ZXJGdW5jIChNZXRhLkRpc3BsYXkgZGlzcGxheSwgTWV0YS5XaW5kb3cgd2luZG93LCBbQ0NvZGUg KHR5cGUgPSAiQ2x1dHRlcktleUV2ZW50KiIpXSBDbHV0dGVyLktleUV2ZW50PyBldmVudCwgTWV0 YS5LZXlCaW5kaW5nIGJpbmRpbmcpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0 YS9tYWluLmgiLCBpbnN0YW5jZV9wb3MgPSAxLjkpXQorKwlwdWJsaWMgZGVsZWdhdGUgdm9pZCBQ cmVmc0NoYW5nZWRGdW5jIChNZXRhLlByZWZlcmVuY2UgcHJlZik7CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGluc3RhbmNlX3BvcyA9IDEuOSldCisrCXB1Ymxp YyBkZWxlZ2F0ZSBib29sIFdpbmRvd0ZvcmVhY2hGdW5jIChNZXRhLldpbmRvdyB3aW5kb3cpOwor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjbmFtZSA9ICJNRVRB X0NVUlJFTlRfVElNRSIpXQorKwlwdWJsaWMgY29uc3QgaW50IENVUlJFTlRfVElNRTsKKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY25hbWUgPSAiTUVUQV9ERUZB VUxUX0lDT05fTkFNRSIpXQorKwlwdWJsaWMgY29uc3Qgc3RyaW5nIERFRkFVTFRfSUNPTl9OQU1F OworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjbmFtZSA9ICJN RVRBX0lDT05fSEVJR0hUIildCisrCXB1YmxpYyBjb25zdCBpbnQgSUNPTl9IRUlHSFQ7CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNuYW1lID0gIk1FVEFfSUNP Tl9XSURUSCIpXQorKwlwdWJsaWMgY29uc3QgaW50IElDT05fV0lEVEg7CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNuYW1lID0gIk1FVEFfTUFKT1JfVkVSU0lP TiIpXQorKwlwdWJsaWMgY29uc3QgaW50IE1BSk9SX1ZFUlNJT047CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNuYW1lID0gIk1FVEFfTUlDUk9fVkVSU0lPTiIp XQorKwlwdWJsaWMgY29uc3QgaW50IE1JQ1JPX1ZFUlNJT047CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNuYW1lID0gIk1FVEFfTUlOSV9JQ09OX0hFSUdIVCIp XQorKwlwdWJsaWMgY29uc3QgaW50IE1JTklfSUNPTl9IRUlHSFQ7CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNuYW1lID0gIk1FVEFfTUlOSV9JQ09OX1dJRFRI IildCisrCXB1YmxpYyBjb25zdCBpbnQgTUlOSV9JQ09OX1dJRFRIOworKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjbmFtZSA9ICJNRVRBX01JTk9SX1ZFUlNJT04i KV0KKysJcHVibGljIGNvbnN0IGludCBNSU5PUl9WRVJTSU9OOworKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjbmFtZSA9ICJNRVRBX1BMVUdJTl9BUElfVkVSU0lP TiIpXQorKwlwdWJsaWMgY29uc3QgaW50IFBMVUdJTl9BUElfVkVSU0lPTjsKKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY25hbWUgPSAiTUVUQV9QUklPUklUWV9C RUZPUkVfUkVEUkFXIildCisrCXB1YmxpYyBjb25zdCBpbnQgUFJJT1JJVFlfQkVGT1JFX1JFRFJB VzsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY25hbWUgPSAi TUVUQV9QUklPUklUWV9QUkVGU19OT1RJRlkiKV0KKysJcHVibGljIGNvbnN0IGludCBQUklPUklU WV9QUkVGU19OT1RJRlk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4u aCIsIGNuYW1lID0gIk1FVEFfUFJJT1JJVFlfUkVEUkFXIildCisrCXB1YmxpYyBjb25zdCBpbnQg UFJJT1JJVFlfUkVEUkFXOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWlu LmgiLCBjbmFtZSA9ICJNRVRBX1BSSU9SSVRZX1JFU0laRSIpXQorKwlwdWJsaWMgY29uc3QgaW50 IFBSSU9SSVRZX1JFU0laRTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFp bi5oIiwgY25hbWUgPSAiTUVUQV9WSVJUVUFMX0NPUkVfS0VZQk9BUkRfSUQiKV0KKysJcHVibGlj IGNvbnN0IGludCBWSVJUVUFMX0NPUkVfS0VZQk9BUkRfSUQ7CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNuYW1lID0gIk1FVEFfVklSVFVBTF9DT1JFX1BPSU5U RVJfSUQiKV0KKysJcHVibGljIGNvbnN0IGludCBWSVJUVUFMX0NPUkVfUE9JTlRFUl9JRDsKKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIildCisrCXB1YmxpYyBzdGF0 aWMgYm9vbCBhY3RpdmF0ZV9zZXNzaW9uICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAibWV0YS9tYWluLmgiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIGFkZF9jbHV0dGVyX2RlYnVn X2ZsYWdzIChDbHV0dGVyLkRlYnVnRmxhZyBkZWJ1Z19mbGFncywgQ2x1dHRlci5EcmF3RGVidWdG bGFnIGRyYXdfZmxhZ3MsIENsdXR0ZXIuUGlja0RlYnVnRmxhZyBwaWNrX2ZsYWdzKTsKKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIildCisrCXB1YmxpYyBzdGF0aWMg dm9pZCBleGl0IChNZXRhLkV4aXRDb2RlIGNvZGUpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAibWV0YS9tYWluLmgiKV0KKysJcHVibGljIHN0YXRpYyBzdHJpbmcgZ191dGY4X3N0cm5k dXAgKHN0cmluZyBzcmMsIHNpemVfdCBuKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g Im1ldGEvbWFpbi5oIildCisrCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHTGliLk9wdGlvbkNvbnRl eHQgZ2V0X29wdGlvbl9jb250ZXh0ICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi bWV0YS9tYWluLmgiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGdldF9yZXBsYWNlX2N1cnJlbnRf d20gKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIpXQorKwlw dWJsaWMgc3RhdGljIHZvaWQgaW5pdCAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g Im1ldGEvbWFpbi5oIildCisrCXB1YmxpYyBzdGF0aWMgYm9vbCBpc19yZXN0YXJ0ICgpOworKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiKV0KKysJcHVibGljIHN0YXRp YyB2b2lkIHF1aXQgKE1ldGEuRXhpdENvZGUgY29kZSk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJtZXRhL21haW4uaCIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgcmVnaXN0ZXJfd2l0 aF9zZXNzaW9uICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgi KV0KKysJcHVibGljIHN0YXRpYyB2b2lkIHJlbW92ZV9jbHV0dGVyX2RlYnVnX2ZsYWdzIChDbHV0 dGVyLkRlYnVnRmxhZyBkZWJ1Z19mbGFncywgQ2x1dHRlci5EcmF3RGVidWdGbGFnIGRyYXdfZmxh Z3MsIENsdXR0ZXIuUGlja0RlYnVnRmxhZyBwaWNrX2ZsYWdzKTsKKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCByZXN0YXJ0 IChzdHJpbmc/IG1lc3NhZ2UpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9t YWluLmgiKV0KKysJcHVibGljIHN0YXRpYyBpbnQgcnVuICgpOworKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIHNldF9nbm9t ZV93bV9rZXliaW5kaW5ncyAoc3RyaW5nIHdtX2tleWJpbmRpbmdzKTsKKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBzZXRf d21fbmFtZSAoc3RyaW5nIHdtX25hbWUpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi bWV0YS9tYWluLmgiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIHRlc3RfaW5pdCAoKTsKKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIildCisrCXB1YmxpYyBzdGF0aWMg Ym9vbCB4MTFfaW5pdF9nZGtfZGlzcGxheSAoKSB0aHJvd3MgR0xpYi5FcnJvcjsKKyt9CitkaWZm IC0tZ2l0IGEvdmFwaS9tdXR0ZXItY2x1dHRlci02LWN1c3RvbS52YWxhIGIvdmFwaS9tdXR0ZXIt Y2x1dHRlci02LWN1c3RvbS52YWxhCituZXcgZmlsZSBtb2RlIDEwMDY0NAoraW5kZXggMDAwMDAw MDAuLjg5MjI0YmU2CistLS0gL2Rldi9udWxsCisrKysgYi92YXBpL211dHRlci1jbHV0dGVyLTYt Y3VzdG9tLnZhbGEKK0BAIC0wLDAgKzEsMTQ3IEBACisrbmFtZXNwYWNlIENsdXR0ZXIgeworKwor KyAgcHVibGljIHN0cnVjdCBNYXRyaXggOiBDb2dsLk1hdHJpeCB7CisrICB9CisrCisrICBwdWJs aWMgY2xhc3MgQmFja2VuZCA6IEdMaWIuT2JqZWN0IHsKKysgICAgW05vV3JhcHBlcl0KKysgICAg cHVibGljIHZpcnR1YWwgdm9pZCBhZGRfb3B0aW9ucyAoR0xpYi5PcHRpb25Hcm91cCBncm91cCk7 CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1YmxpYyB2aXJ0dWFsIGJvb2wgY3JlYXRlX2NvbnRl eHQgKCkgdGhyb3dzIEdMaWIuRXJyb3I7CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1YmxpYyB2 aXJ0dWFsIHVub3duZWQgQ2x1dHRlci5TdGFnZVdpbmRvdyBjcmVhdGVfc3RhZ2UgKENsdXR0ZXIu U3RhZ2Ugd3JhcHBlcikgdGhyb3dzIEdMaWIuRXJyb3I7CisrICAgIFtOb1dyYXBwZXJdCisrICAg IHB1YmxpYyB2aXJ0dWFsIHZvaWQgZW5zdXJlX2NvbnRleHQgKENsdXR0ZXIuU3RhZ2Ugc3RhZ2Up OworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMgdmlydHVhbCBDbHV0dGVyLkZlYXR1cmVG bGFncyBnZXRfZmVhdHVyZXMgKCk7CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1YmxpYyB2aXJ0 dWFsIHZvaWQgaW5pdF9ldmVudHMgKCk7CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1YmxpYyB2 aXJ0dWFsIHZvaWQgaW5pdF9mZWF0dXJlcyAoKTsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVi bGljIHZpcnR1YWwgYm9vbCBwb3N0X3BhcnNlICgpIHRocm93cyBHTGliLkVycm9yOworKyAgICBb Tm9XcmFwcGVyXQorKyAgICBwdWJsaWMgdmlydHVhbCBib29sIHByZV9wYXJzZSAoKSB0aHJvd3Mg R0xpYi5FcnJvcjsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVibGljIHZpcnR1YWwgdm9pZCBy ZWRyYXcgKENsdXR0ZXIuU3RhZ2Ugc3RhZ2UpOworKyAgfQorKworKyAgW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2JveF9n ZXRfdHlwZSAoKSIpXQorKyAgcHVibGljIGNsYXNzIEJveCA6IENsdXR0ZXIuQWN0b3IgeworKyAg ICBwdWJsaWMgQ2x1dHRlci5MYXlvdXRNYW5hZ2VyIGxheW91dF9tYW5hZ2VyIHsgZ2V0OyBzZXQ7 IH0KKysgIH0KKysKKysgIFtDQ29kZSAodHlwZV9pZCA9ICJDTFVUVEVSX1RZUEVfQ09MT1IiLCBj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrICBwdWJsaWMgc3RydWN0 IENvbG9yIHsKKysgICAgW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX2NvbG9yX2Zyb21faGxzIild CisrICAgIHB1YmxpYyBDb2xvci5mcm9tX2hscyAoZmxvYXQgaHVlLCBmbG9hdCBsdW1pbmFuY2Us IGZsb2F0IHNhdHVyYXRpb24pOworKyAgICBbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfY29sb3Jf ZnJvbV9waXhlbCIpXQorKyAgICBwdWJsaWMgQ29sb3IuZnJvbV9waXhlbCAodWludDMyIHBpeGVs KTsKKysgICAgW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX2NvbG9yX2Zyb21fc3RyaW5nIildCisr ICAgIHB1YmxpYyBDb2xvci5mcm9tX3N0cmluZyAoc3RyaW5nIHN0cik7CisrICAgIFtDQ29kZSAo Y25hbWUgPSAiY2x1dHRlcl9jb2xvcl9mcm9tX3N0cmluZyIpXQorKyAgICBwdWJsaWMgYm9vbCBw YXJzZV9zdHJpbmcgKHN0cmluZyBzdHIpOworKyAgICBwdWJsaWMgc3RhdGljIHVub3duZWQgQ2x1 dHRlci5Db2xvcj8gZ2V0X3N0YXRpYyAoQ2x1dHRlci5TdGF0aWNDb2xvciBjb2xvcik7CisrICB9 CisrCisrICBbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0 eXBlX2lkID0gImNsdXR0ZXJfY29udGFpbmVyX2dldF90eXBlICgpIildCisrICBwdWJsaWMgaW50 ZXJmYWNlIENvbnRhaW5lciA6IEdMaWIuT2JqZWN0IHsKKysgICAgcHVibGljIHZvaWQgYWRkIChw YXJhbXMgQ2x1dHRlci5BY3RvcltdIGFjdG9ycyk7CisrICAgIFtDQ29kZSAoY25hbWUgPSAiY2x1 dHRlcl9jb250YWluZXJfY2xhc3NfZmluZF9jaGlsZF9wcm9wZXJ0eSIpXQorKyAgICBwdWJsaWMg Y2xhc3MgdW5vd25lZCBHTGliLlBhcmFtU3BlYyBmaW5kX2NoaWxkX3Byb3BlcnR5IChzdHJpbmcg cHJvcGVydHlfbmFtZSk7CisrICAgIFtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl9jb250YWluZXJf Y2xhc3NfbGlzdF9jaGlsZF9wcm9wZXJ0aWVzIildCisrICAgIHB1YmxpYyBjbGFzcyB1bm93bmVk IEdMaWIuUGFyYW1TcGVjW10gbGlzdF9jaGlsZF9wcm9wZXJ0aWVzICgpOworKyAgfQorKworKyAg W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY29weV9mdW5j dGlvbiA9ICJnX2JveGVkX2NvcHkiLCBmcmVlX2Z1bmN0aW9uID0gImdfYm94ZWRfZnJlZSIsIHR5 cGVfaWQgPSAiY2x1dHRlcl9ldmVudF9nZXRfdHlwZSAoKSIpXQorKyAgW0NvbXBhY3RdCisrICBw dWJsaWMgY2xhc3MgRXZlbnQgeworKyAgICBwdWJsaWMgQ2x1dHRlci5BbnlFdmVudCBhbnkgeyBb Q0NvZGUgKGNuYW1lID0gIihDbHV0dGVyQW55RXZlbnQgKikiKV0gZ2V0OyB9CisrICAgIHB1Ymxp YyBDbHV0dGVyLkJ1dHRvbkV2ZW50IGJ1dHRvbiB7IFtDQ29kZSAoY25hbWUgPSAiKENsdXR0ZXJC dXR0b25FdmVudCAqKSIpXSBnZXQ7IH0KKysgICAgcHVibGljIENsdXR0ZXIuQ3Jvc3NpbmdFdmVu dCBjcm9zc2luZyB7IFtDQ29kZSAoY25hbWUgPSAiKENsdXR0ZXJDcm9zc2luZ0V2ZW50ICopIild IGdldDsgfQorKyAgICBwdWJsaWMgQ2x1dHRlci5LZXlFdmVudCBrZXkgeyBbQ0NvZGUgKGNuYW1l ID0gIihDbHV0dGVyS2V5RXZlbnQgKikiKV0gZ2V0OyB9CisrICAgIHB1YmxpYyBDbHV0dGVyLk1v dGlvbkV2ZW50IG1vdGlvbiB7IFtDQ29kZSAoY25hbWUgPSAiKENsdXR0ZXJNb3Rpb25FdmVudCAq KSIpXSBnZXQ7IH0KKysgICAgcHVibGljIENsdXR0ZXIuU2Nyb2xsRXZlbnQgc2Nyb2xsIHsgW0ND b2RlIChjbmFtZSA9ICIoQ2x1dHRlclNjcm9sbEV2ZW50ICopIildIGdldDsgfQorKyAgICBwdWJs aWMgQ2x1dHRlci5TdGFnZVN0YXRlRXZlbnQgc3RhZ2Vfc3RhdGUgeyBbQ0NvZGUgKGNuYW1lID0g IihDbHV0dGVyU3RhZ2VTdGF0ZUV2ZW50ICopIildIGdldDsgfQorKyAgICBwdWJsaWMgQ2x1dHRl ci5Ub3VjaEV2ZW50IHRvdWNoIHsgW0NDb2RlIChjbmFtZSA9ICIoQ2x1dHRlclRvdWNoRXZlbnQg KikiKV0gZ2V0OyB9CisrICAgIHB1YmxpYyBDbHV0dGVyLlRvdWNocGFkUGluY2hFdmVudCB0b3Vj aHBhZF9waW5jaCB7IFtDQ29kZSAoY25hbWUgPSAiKENsdXR0ZXJUb3VjaHBhZFBpbmNoRXZlbnQg KikiKV0gZ2V0OyB9CisrICAgIHB1YmxpYyBDbHV0dGVyLlRvdWNocGFkU3dpcGVFdmVudCB0b3Vj aHBhZF9zd2lwZSB7IFtDQ29kZSAoY25hbWUgPSAiKENsdXR0ZXJUb3VjaHBhZFN3aXBlRXZlbnQg KikiKV0gZ2V0OyB9CisrICB9CisrCisrICBbQ0NvZGUgKHR5cGVfaWQgPSAiY2x1dHRlcl9zdGFn ZV9nZXRfdHlwZSAoKSIsIGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0K KysgIHB1YmxpYyBjbGFzcyBTdGFnZSA6IENsdXR0ZXIuR3JvdXAgeworKyAgICBbQ0NvZGUgKGNu YW1lID0gImNsdXR0ZXJfcmVkcmF3IildCisrICAgIHB1YmxpYyB2b2lkIHJlZHJhdyAoKTsKKysg IH0KKysKKysgIFtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIp XQorKyAgcHVibGljIGludGVyZmFjZSBTdGFnZVdpbmRvdyA6IEdMaWIuT2JqZWN0IHsKKysgICAg W05vV3JhcHBlcl0KKysgICAgcHVibGljIGFic3RyYWN0IGludCBnZXRfcGVuZGluZ19zd2FwcyAo KTsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVibGljIGFic3RyYWN0IHVub3duZWQgQ2x1dHRl ci5BY3RvciBnZXRfd3JhcHBlciAoKTsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVibGljIGFi c3RyYWN0IGJvb2wgaGFzX3JlZHJhd19jbGlwcyAoKTsKKysgICAgW05vV3JhcHBlcl0KKysgICAg cHVibGljIGFic3RyYWN0IHZvaWQgaGlkZSAoKTsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVi bGljIGFic3RyYWN0IGJvb2wgaWdub3JpbmdfcmVkcmF3X2NsaXBzICgpOworKyAgICBbTm9XcmFw cGVyXQorKyAgICBwdWJsaWMgYWJzdHJhY3QgYm9vbCByZWFsaXplICgpOworKyAgICBbTm9XcmFw cGVyXQorKyAgICBwdWJsaWMgYWJzdHJhY3Qgdm9pZCByZXNpemUgKGludCB3aWR0aCwgaW50IGhl aWdodCk7CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1YmxpYyBhYnN0cmFjdCB2b2lkIHNldF9j dXJzb3JfdmlzaWJsZSAoYm9vbCBjdXJzb3JfdmlzaWJsZSk7CisrICAgIFtOb1dyYXBwZXJdCisr ICAgIHB1YmxpYyBhYnN0cmFjdCB2b2lkIHNldF9mdWxsc2NyZWVuIChib29sIGlzX2Z1bGxzY3Jl ZW4pOworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMgYWJzdHJhY3Qgdm9pZCBzZXRfdGl0 bGUgKHN0cmluZyB0aXRsZSk7CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1YmxpYyBhYnN0cmFj dCB2b2lkIHNldF91c2VyX3Jlc2l6YWJsZSAoYm9vbCBpc19yZXNpemFibGUpOworKyAgICBbTm9X cmFwcGVyXQorKyAgICBwdWJsaWMgYWJzdHJhY3Qgdm9pZCBzaG93IChib29sIGRvX3JhaXNlKTsK KysgICAgW05vV3JhcHBlcl0KKysgICAgcHVibGljIGFic3RyYWN0IHZvaWQgdW5yZWFsaXplICgp OworKyAgfQorKworKyAgW0NDb2RlICh0eXBlX2lkID0gImNsdXR0ZXJfdGV4dHVyZV9nZXRfdHlw ZSAoKSIsIGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysgIHB1Ymxp YyBjbGFzcyBUZXh0dXJlIDogQ2x1dHRlci5BY3RvciB7CisrICAgIHB1YmxpYyBDb2dsLk1hdGVy aWFsIGNvZ2xfbWF0ZXJpYWwgeyBnZXQ7IHNldDsgfQorKyAgICBwdWJsaWMgQ29nbC5UZXh0dXJl IGNvZ2xfdGV4dHVyZSB7IGdldDsgc2V0OyB9CisrICB9CisrCisrICBbQ29tcGFjdF0KKysgIFtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKyAgcHVibGlj IGNsYXNzIFRpbWVvdXRQb29sIHsKKysgICAgW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9u ID0gZmFsc2UpXQorKyAgICBwdWJsaWMgVGltZW91dFBvb2wgKGludCBwcmlvcml0eSk7CisrICB9 CisrCisrICBbQ0NvZGUgKGNwcmVmaXggPSAiQ0xVVFRFUl9GRUFUVVJFXyIsIGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysgIFtGbGFnc10KKysgIHB1YmxpYyBlbnVt IEZlYXR1cmVGbGFncyB7CisrICAgIFRFWFRVUkVfTlBPVDsKKysgICAgW0NDb2RlIChjbmFtZSA9 ICJjbHV0dGVyX2ZlYXR1cmVfYXZhaWxhYmxlIildCisrICAgIHB1YmxpYyBib29sIGlzX2F2YWls YWJsZSAoKTsKKysgICAgW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX2ZlYXR1cmVfZ2V0X2FsbCIp XQorKyAgICBwdWJsaWMgc3RhdGljIENsdXR0ZXIuRmVhdHVyZUZsYWdzIEBnZXQgKCk7CisrICB9 CisrCisrICBbQ0NvZGUgKHR5cGVfaWQgPSAiQ0xVVFRFUl9UWVBFX1VOSVRTIiwgY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKyAgcHVibGljIHN0cnVjdCBVbml0cyB7 CisrICAgIFtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl91bml0c19mcm9tX2NtIildCisrICAgIHB1 YmxpYyBVbml0cy5mcm9tX2NtIChmbG9hdCBjbSk7CisrICAgIFtDQ29kZSAoY25hbWUgPSAiY2x1 dHRlcl91bml0c19mcm9tX2VtIildCisrICAgIHB1YmxpYyBVbml0cy5mcm9tX2VtIChmbG9hdCBl bSk7CisrICAgIFtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl91bml0c19mcm9tX2VtX2Zvcl9mb250 IildCisrICAgIHB1YmxpYyBVbml0cy5mcm9tX2VtX2Zvcl9mb250IChzdHJpbmcgZm9udF9uYW1l LCBmbG9hdCBlbSk7CisrICAgIFtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl91bml0c19mcm9tX21t IildCisrICAgIHB1YmxpYyBVbml0cy5mcm9tX21tIChmbG9hdCBtbSk7CisrICAgIFtDQ29kZSAo Y25hbWUgPSAiY2x1dHRlcl91bml0c19mcm9tX3BpeGVscyIpXQorKyAgICBwdWJsaWMgVW5pdHMu ZnJvbV9waXhlbHMgKGludCBweCk7CisrICAgIFtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl91bml0 c19mcm9tX3B0IildCisrICAgIHB1YmxpYyBVbml0cy5mcm9tX3B0IChmbG9hdCBwdCk7CisrICAg IFtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl91bml0c19mcm9tX3N0cmluZyIpXQorKyAgICBwdWJs aWMgVW5pdHMuZnJvbV9zdHJpbmcgKHN0cmluZyBzdHIpOworKyAgfQorK30KK2RpZmYgLS1naXQg YS92YXBpL211dHRlci1jbHV0dGVyLTYuZGVwcyBiL3ZhcGkvbXV0dGVyLWNsdXR0ZXItNi5kZXBz CituZXcgZmlsZSBtb2RlIDEwMDY0NAoraW5kZXggMDAwMDAwMDAuLjdhNzBkNmRmCistLS0gL2Rl di9udWxsCisrKysgYi92YXBpL211dHRlci1jbHV0dGVyLTYuZGVwcworQEAgLTAsMCArMSw0IEBA CisrYXRrCisrY2Fpcm8KKytqc29uLWdsaWItMS4wCisrbXV0dGVyLWNvZ2wtNgorZGlmZiAtLWdp dCBhL3ZhcGkvbXV0dGVyLWNsdXR0ZXItNi52YXBpIGIvdmFwaS9tdXR0ZXItY2x1dHRlci02LnZh cGkKK25ldyBmaWxlIG1vZGUgMTAwNjQ0CitpbmRleCAwMDAwMDAwMC4uZDY2ZjlhYzgKKy0tLSAv ZGV2L251bGwKKysrKyBiL3ZhcGkvbXV0dGVyLWNsdXR0ZXItNi52YXBpCitAQCAtMCwwICsxLDg2 ODcgQEAKKysvKiBtdXR0ZXItY2x1dHRlci02LnZhcGkgZ2VuZXJhdGVkIGJ5IHZhcGlnZW4sIGRv IG5vdCBtb2RpZnkuICovCisrCisrW0NDb2RlIChjcHJlZml4ID0gIkNsdXR0ZXIiLCBnaXJfbmFt ZXNwYWNlID0gIkNsdXR0ZXIiLCBnaXJfdmVyc2lvbiA9ICI2IiwgbG93ZXJfY2FzZV9jcHJlZml4 ID0gImNsdXR0ZXJfIildCisrbmFtZXNwYWNlIENsdXR0ZXIgeworKwluYW1lc3BhY2UgS2V5IHsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZXzAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAwOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfMSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDE7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8yIild CisrCQlwdWJsaWMgY29uc3QgdWludCBAMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEAzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9BbHRDdXJzb3IiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEAzMjcwX0FsdEN1cnNvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfQXR0 biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfQXR0bjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMy NzBfQmFja1RhYiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfQmFja1RhYjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZXzMyNzBfQ2hhbmdlU2NyZWVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3 MF9DaGFuZ2VTY3JlZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX0NvcHkiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEAzMjcwX0NvcHk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX0N1cnNvckJsaW5rIild CisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9DdXJzb3JCbGluazsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ XzMyNzBfQ3Vyc29yU2VsZWN0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9DdXJzb3JT ZWxlY3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX0RlbGV0ZVdvcmQiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEAzMjcwX0RlbGV0ZVdvcmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX0R1cGxpY2F0ZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfRHVwbGljYXRlOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf MzI3MF9FbnRlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfRW50ZXI7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV8zMjcwX0VyYXNlRU9GIildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9FcmFz ZUVPRjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfRXJhc2VJbnB1dCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQDMyNzBfRXJhc2VJbnB1dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfRXhTZWxlY3QiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX0V4U2VsZWN0OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3 MF9GaWVsZE1hcmsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX0ZpZWxkTWFyazsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZXzMyNzBfSWRlbnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX0lk ZW50OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9KdW1wIildCisrCQlwdWJsaWMgY29uc3QgdWludCBA MzI3MF9KdW1wOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9LZXlDbGljayIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQDMyNzBfS2V5Q2xpY2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX0xlZnQyIildCisr CQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9MZWZ0MjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfUEEx IildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9QQTE7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcw X1BBMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfUEEyOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf MzI3MF9QQTMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX1BBMzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZXzMyNzBfUGxheSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfUGxheTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZXzMyNzBfUHJpbnRTY3JlZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcw X1ByaW50U2NyZWVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9RdWl0IildCisrCQlwdWJsaWMgY29u c3QgdWludCBAMzI3MF9RdWl0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9SZWNvcmQiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEAzMjcwX1JlY29yZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfUmVzZXQi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX1Jlc2V0OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3 MF9SaWdodDIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX1JpZ2h0MjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZXzMyNzBfUnVsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfUnVsZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZXzMyNzBfU2V0dXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX1Nl dHVwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9UZXN0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBA MzI3MF9UZXN0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDQ7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV81IildCisrCQlwdWJsaWMgY29uc3QgdWludCBANTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZXzYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEA2OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfNyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV84IildCisrCQlwdWJs aWMgY29uc3QgdWludCBAODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzkiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEA5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0FFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBRTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0FhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQWFjdXRlOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQWJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBYmVsb3dkb3Q7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9BYnJldmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFicmV2ZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0FicmV2ZWFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBYnJldmVhY3V0ZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0FicmV2ZWJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBB YnJldmViZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FicmV2ZWdyYXZlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBBYnJldmVncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FicmV2ZWhvb2siKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEFicmV2ZWhvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BYnJldmV0aWxk ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQWJyZXZldGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9B Y2Nlc3NYX0VuYWJsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQWNjZXNzWF9FbmFibGU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9BY2Nlc3NYX0ZlZWRiYWNrX0VuYWJsZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQWNjZXNzWF9GZWVkYmFja19FbmFibGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BY2lyY3VtZmxl eCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQWNpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9B Y2lyY3VtZmxleGFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBY2lyY3VtZmxleGFjdXRl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQWNpcmN1bWZsZXhiZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQWNpcmN1bWZsZXhiZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FjaXJjdW1mbGV4Z3Jh dmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFjaXJjdW1mbGV4Z3JhdmU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9BY2lyY3VtZmxleGhvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFjaXJjdW1mbGV4 aG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0FjaXJjdW1mbGV4dGlsZGUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEFjaXJjdW1mbGV4dGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BZGRGYXZvcml0ZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQWRkRmF2b3JpdGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BZGlhZXJl c2lzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBZGlhZXJlc2lzOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QWdyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBZ3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9B aG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQWhvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BbHRf TCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQWx0X0w7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BbHRfUiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQWx0X1I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BbWFjcm9uIild CisrCQlwdWJsaWMgY29uc3QgdWludCBBbWFjcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQW9nb25layIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQW9nb25lazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FwcGxpY2F0 aW9uTGVmdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXBwbGljYXRpb25MZWZ0OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQXBwbGljYXRpb25SaWdodCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXBwbGlj YXRpb25SaWdodDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY18wIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBBcmFiaWNfMDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY18xIildCisrCQlwdWJsaWMgY29u c3QgdWludCBBcmFiaWNfMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY18yIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBBcmFiaWNfMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY18zIildCisrCQlwdWJs aWMgY29uc3QgdWludCBBcmFiaWNfMzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY180IildCisrCQlw dWJsaWMgY29uc3QgdWludCBBcmFiaWNfNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY181IildCisr CQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY182Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfNjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY183 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfNzsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJp Y184IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfODsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Fy YWJpY185IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfOTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0FyYWJpY19haW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19haW47CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9BcmFiaWNfYWxlZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2FsZWY7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfYWxlZm1ha3N1cmEiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEFyYWJpY19hbGVmbWFrc3VyYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19iZWgiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19iZWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfY29t bWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19jb21tYTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0FyYWJpY19kYWQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19kYWQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9BcmFiaWNfZGFsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfZGFsOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQXJhYmljX2RhbW1hIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFi aWNfZGFtbWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfZGFtbWF0YW4iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEFyYWJpY19kYW1tYXRhbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19kZGFsIild CisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfZGRhbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJp Y19mYXJzaV95ZWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19mYXJzaV95ZWg7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9BcmFiaWNfZmF0aGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJp Y19mYXRoYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19mYXRoYXRhbiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQXJhYmljX2ZhdGhhdGFuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2ZlaCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2ZlaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19m dWxsc3RvcCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2Z1bGxzdG9wOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQXJhYmljX2dhZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2dhZjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0FyYWJpY19naGFpbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJh YmljX2doYWluOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2hhIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBBcmFiaWNfaGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfaGFoIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBBcmFiaWNfaGFoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2hhbXphIildCisr CQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfaGFtemE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNf aGFtemFfYWJvdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19oYW16YV9hYm92ZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0FyYWJpY19oYW16YV9iZWxvdyIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQXJhYmljX2hhbXphX2JlbG93OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2hhbXphb25hbGVm IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfaGFtemFvbmFsZWY7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9BcmFiaWNfaGFtemFvbndhdyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2hh bXphb253YXc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfaGFtemFvbnllaCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQXJhYmljX2hhbXphb255ZWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfaGFt emF1bmRlcmFsZWYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19oYW16YXVuZGVyYWxl ZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19oZWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFy YWJpY19oZWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfaGVoX2RvYWNoYXNobWVlIildCisrCQlw dWJsaWMgY29uc3QgdWludCBBcmFiaWNfaGVoX2RvYWNoYXNobWVlOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QXJhYmljX2hlaF9nb2FsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfaGVoX2dvYWw7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfamVlbSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJh YmljX2plZW07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfamVoIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBBcmFiaWNfamVoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2thZiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQXJhYmljX2thZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19rYXNyYSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2thc3JhOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmlj X2thc3JhdGFuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfa2FzcmF0YW47CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9BcmFiaWNfa2VoZWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19r ZWhlaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19raGFoIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBBcmFiaWNfa2hhaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19sYW0iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEFyYWJpY19sYW07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfbWFkZGFfYWJvdmUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19tYWRkYV9hYm92ZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0FyYWJpY19tYWRkYW9uYWxlZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX21h ZGRhb25hbGVmOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX21lZW0iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEFyYWJpY19tZWVtOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX25vb24iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEFyYWJpY19ub29uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX25vb25f Z2h1bm5hIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfbm9vbl9naHVubmE7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9BcmFiaWNfcGVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfcGVo OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3BlcmNlbnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEFyYWJpY19wZXJjZW50OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3FhZiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQXJhYmljX3FhZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19xdWVzdGlvbl9t YXJrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfcXVlc3Rpb25fbWFyazsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0FyYWJpY19yYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3JhOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQXJhYmljX3JyZWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJp Y19ycmVoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3NhZCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQXJhYmljX3NhZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19zZWVuIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBBcmFiaWNfc2VlbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19zZW1pY29sb24i KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19zZW1pY29sb247CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9BcmFiaWNfc2hhZGRhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfc2hhZGRhOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQXJhYmljX3NoZWVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFi aWNfc2hlZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfc3VrdW4iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEFyYWJpY19zdWt1bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19zdXBlcnNjcmlwdF9h bGVmIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfc3VwZXJzY3JpcHRfYWxlZjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0FyYWJpY19zd2l0Y2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJp Y19zd2l0Y2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfdGFoIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBBcmFiaWNfdGFoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3RhdHdlZWwiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEFyYWJpY190YXR3ZWVsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3Rj aGVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfdGNoZWg7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9BcmFiaWNfdGVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfdGVoOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQXJhYmljX3RlaG1hcmJ1dGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJp Y190ZWhtYXJidXRhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3RoYWwiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEFyYWJpY190aGFsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3RoZWgiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY190aGVoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3R0 ZWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY190dGVoOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QXJhYmljX3ZlaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3ZlaDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0FyYWJpY193YXciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY193YXc7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9BcmFiaWNfeWVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNf eWVoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3llaF9iYXJlZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQXJhYmljX3llaF9iYXJlZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY196YWgiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY196YWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfemFp biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3phaW47CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9B cmluZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJpbmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1l bmlhbl9BVCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fQVQ7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9Bcm1lbmlhbl9BWUIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX0FZQjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0JFTiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJt ZW5pYW5fQkVOOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fQ0hBIildCisrCQlwdWJsaWMgY29u c3QgdWludCBBcm1lbmlhbl9DSEE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9EQSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fREE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9E WkEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX0RaQTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0FybWVuaWFuX0UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX0U7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9Bcm1lbmlhbl9GRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fRkU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9HSEFUIildCisrCQlwdWJsaWMgY29uc3QgdWludCBB cm1lbmlhbl9HSEFUOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fR0lNIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBBcm1lbmlhbl9HSU07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9ISSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fSEk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlh bl9ITyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fSE87CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9Bcm1lbmlhbl9JTkkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX0lOSTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0FybWVuaWFuX0pFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlh bl9KRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0tFIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBBcm1lbmlhbl9LRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0tFTiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQXJtZW5pYW5fS0VOOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fS0hFIild CisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9LSEU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1l bmlhbl9MWVVOIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9MWVVOOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQXJtZW5pYW5fTUVOIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9N RU47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9OVSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg QXJtZW5pYW5fTlU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9PIildCisrCQlwdWJsaWMgY29u c3QgdWludCBBcm1lbmlhbl9POworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fUEUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX1BFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fUFlV UiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fUFlVUjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0FybWVuaWFuX1JBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9SQTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0FybWVuaWFuX1JFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9S RTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX1NFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBB cm1lbmlhbl9TRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX1NIQSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQXJtZW5pYW5fU0hBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fVENIRSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fVENIRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVu aWFuX1RPIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9UTzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0FybWVuaWFuX1RTQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fVFNBOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fVFNPIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1l bmlhbl9UU087CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9UWVVOIildCisrCQlwdWJsaWMgY29u c3QgdWludCBBcm1lbmlhbl9UWVVOOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fVkVWIildCisr CQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9WRVY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlh bl9WTyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fVk87CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9Bcm1lbmlhbl9WWVVOIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9WWVVOOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fWUVDSCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJt ZW5pYW5fWUVDSDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX1pBIildCisrCQlwdWJsaWMgY29u c3QgdWludCBBcm1lbmlhbl9aQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX1pIRSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fWkhFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5f YWNjZW50IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9hY2NlbnQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9Bcm1lbmlhbl9hbWFuYWsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFu X2FtYW5hazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2Fwb3N0cm9waGUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEFybWVuaWFuX2Fwb3N0cm9waGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlh bl9hdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fYXQ7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9Bcm1lbmlhbl9heWIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2F5YjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0FybWVuaWFuX2JlbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5p YW5fYmVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fYnV0IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBBcm1lbmlhbl9idXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9jaGEiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2NoYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2Rh IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9kYTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Fy bWVuaWFuX2R6YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fZHphOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQXJtZW5pYW5fZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2V4Y2xhbSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg QXJtZW5pYW5fZXhjbGFtOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fZmUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEFybWVuaWFuX2ZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fZnVsbF9z dG9wIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9mdWxsX3N0b3A7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9Bcm1lbmlhbl9naGF0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9n aGF0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fZ2ltIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBBcm1lbmlhbl9naW07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9oaSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQXJtZW5pYW5faGk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9obyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5faG87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlh bl9oeXBoZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2h5cGhlbjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0FybWVuaWFuX2luaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5f aW5pOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5famUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEFybWVuaWFuX2plOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fa2UiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEFybWVuaWFuX2tlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fa2VuIildCisr CQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9rZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlh bl9raGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2toZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0FybWVuaWFuX2xpZ2F0dXJlX2V3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlh bl9saWdhdHVyZV9ldzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2x5dW4iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEFybWVuaWFuX2x5dW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9tZW4i KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX21lbjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Fy bWVuaWFuX251IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9udTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0FybWVuaWFuX28iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX287Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9wYXJ1eWsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFy bWVuaWFuX3BhcnV5azsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3BlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBBcm1lbmlhbl9wZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3B5dXIiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX3B5dXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1l bmlhbl9xdWVzdGlvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fcXVlc3Rpb247 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9yYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJt ZW5pYW5fcmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9yZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQXJtZW5pYW5fcmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9zZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fc2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9zZXBh cmF0aW9uX21hcmsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX3NlcGFyYXRpb25f bWFyazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3NoYSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQXJtZW5pYW5fc2hhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fc2hlc2h0IildCisrCQlw dWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9zaGVzaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlh bl90Y2hlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl90Y2hlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQXJtZW5pYW5fdG8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX3RvOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fdHNhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1l bmlhbl90c2E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl90c28iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEFybWVuaWFuX3RzbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3R5dW4iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX3R5dW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlh bl92ZXJqYWtldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fdmVyamFrZXQ7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl92ZXYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVu aWFuX3ZldjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3ZvIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBBcm1lbmlhbl92bzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3Z5dW4iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX3Z5dW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl95 ZWNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl95ZWNoOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQXJtZW5pYW5feWVudGFtbmEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX3ll bnRhbW5hOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5femEiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEFybWVuaWFuX3phOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5femhlIildCisrCQlwdWJs aWMgY29uc3QgdWludCBBcm1lbmlhbl96aGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BdGlsZGUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEF0aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0F1ZGlibGVCZWxsX0Vu YWJsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXVkaWJsZUJlbGxfRW5hYmxlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQXVkaW9DeWNsZVRyYWNrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBdWRpb0N5 Y2xlVHJhY2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BdWRpb0ZvcndhcmQiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEF1ZGlvRm9yd2FyZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0F1ZGlvTG93ZXJWb2x1bWUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEF1ZGlvTG93ZXJWb2x1bWU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9B dWRpb01lZGlhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBdWRpb01lZGlhOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQXVkaW9NaWNNdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBdWRpb01pY011dGU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9BdWRpb011dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEF1ZGlv TXV0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0F1ZGlvTmV4dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg QXVkaW9OZXh0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXVkaW9QYXVzZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQXVkaW9QYXVzZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0F1ZGlvUGxheSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQXVkaW9QbGF5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXVkaW9QcmV2IildCisrCQlw dWJsaWMgY29uc3QgdWludCBBdWRpb1ByZXY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BdWRpb1JhaXNlVm9s dW1lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBdWRpb1JhaXNlVm9sdW1lOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQXVkaW9SYW5kb21QbGF5IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBdWRpb1JhbmRv bVBsYXk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BdWRpb1JlY29yZCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQXVkaW9SZWNvcmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BdWRpb1JlcGVhdCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQXVkaW9SZXBlYXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BdWRpb1Jld2luZCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQXVkaW9SZXdpbmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BdWRpb1N0 b3AiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEF1ZGlvU3RvcDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0F3 YXkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEF3YXk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9CIildCisr CQlwdWJsaWMgY29uc3QgdWludCBCOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQmFib3ZlZG90IildCisrCQlw dWJsaWMgY29uc3QgdWludCBCYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9CYWNrIildCisrCQlw dWJsaWMgY29uc3QgdWludCBCYWNrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQmFja0ZvcndhcmQiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEJhY2tGb3J3YXJkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQmFja1NwYWNl IildCisrCQlwdWJsaWMgY29uc3QgdWludCBCYWNrU3BhY2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9CYXR0 ZXJ5IildCisrCQlwdWJsaWMgY29uc3QgdWludCBCYXR0ZXJ5OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQmVn aW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEJlZ2luOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQmx1ZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQmx1ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0JsdWV0b290aCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQmx1ZXRvb3RoOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQm9vayIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQm9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0JvdW5jZUtleXNf RW5hYmxlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBCb3VuY2VLZXlzX0VuYWJsZTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0JyZWFrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBCcmVhazsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0JyaWdodG5lc3NBZGp1c3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEJyaWdodG5l c3NBZGp1c3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9CeWVsb3J1c3NpYW5fU0hPUlRVIildCisrCQlwdWJs aWMgY29uc3QgdWludCBCeWVsb3J1c3NpYW5fU0hPUlRVOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQnllbG9y dXNzaWFuX3Nob3J0dSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQnllbG9ydXNzaWFuX3Nob3J0 dTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEM7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9DRCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ0Q7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9D SCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ0g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DX0giKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IENfSDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NfaCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQ19oOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ2Fib3ZlZG90IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBDYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DYWN1dGUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IENhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NhbGN1bGF0b3IiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IENhbGN1bGF0b3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DYWxlbmRhciIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQ2FsZW5kYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DYW5jZWwiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IENhbmNlbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NhcHNfTG9jayIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ2Fwc19Mb2NrOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ2Nhcm9u IildCisrCQlwdWJsaWMgY29uc3QgdWludCBDY2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DY2VkaWxs YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ2NlZGlsbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DY2ly Y3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ2NpcmN1bWZsZXg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9DaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DbGVh ciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ2xlYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DbGVhckdy YWIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENsZWFyR3JhYjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Ns b3NlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDbG9zZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NvZGVp bnB1dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ29kZWlucHV0OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf Q29sb25TaWduIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDb2xvblNpZ247CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9Db21tdW5pdHkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENvbW11bml0eTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0NvbnRyYXN0QWRqdXN0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBDb250cmFz dEFkanVzdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NvbnRyb2xfTCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQ29udHJvbF9MOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ29udHJvbF9SIildCisrCQlwdWJsaWMgY29u c3QgdWludCBDb250cm9sX1I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Db3B5IildCisrCQlwdWJsaWMgY29u c3QgdWludCBDb3B5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3J1emVpcm9TaWduIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBDcnV6ZWlyb1NpZ247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DdXQiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEN1dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5Y2xlQW5nbGUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEN5Y2xlQW5nbGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19BIildCisr CQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19BOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNf QkUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0JFOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf Q3lyaWxsaWNfQ0hFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19DSEU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9DeXJpbGxpY19DSEVfZGVzY2VuZGVyIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBDeXJpbGxpY19DSEVfZGVzY2VuZGVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfQ0hFX3Zl cnRzdHJva2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0NIRV92ZXJ0c3Ryb2tl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfREUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5 cmlsbGljX0RFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfRFpIRSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQ3lyaWxsaWNfRFpIRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0UiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19F RiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfRUY7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9D eXJpbGxpY19FTCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfRUw7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9DeXJpbGxpY19FTSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfRU07 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19FTiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3ly aWxsaWNfRU47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19FTl9kZXNjZW5kZXIiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0VOX2Rlc2NlbmRlcjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5 cmlsbGljX0VSIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19FUjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0N5cmlsbGljX0VTIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19FUzsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0dIRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3ly aWxsaWNfR0hFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfR0hFX2JhciIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQ3lyaWxsaWNfR0hFX2JhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0hB IildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19IQTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5 cmlsbGljX0hBUkRTSUdOIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19IQVJEU0lH TjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0hBX2Rlc2NlbmRlciIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQ3lyaWxsaWNfSEFfZGVzY2VuZGVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNf SSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfSTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5 cmlsbGljX0lFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19JRTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0N5cmlsbGljX0lPIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19JTzsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0lfbWFjcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBDeXJpbGxpY19JX21hY3JvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0pFIildCisrCQlw dWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19KRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0tB IildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19LQTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5 cmlsbGljX0tBX2Rlc2NlbmRlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfS0Ff ZGVzY2VuZGVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfS0FfdmVydHN0cm9rZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfS0FfdmVydHN0cm9rZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0N5cmlsbGljX0xKRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfTEpFOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQ3lyaWxsaWNfTkpFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxp Y19OSkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19PIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBDeXJpbGxpY19POworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfT19iYXIiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEN5cmlsbGljX09fYmFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfUEUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX1BFOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3ly aWxsaWNfU0NIV0EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX1NDSFdBOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQ3lyaWxsaWNfU0hBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxp Y19TSEE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19TSENIQSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQ3lyaWxsaWNfU0hDSEE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19TSEhBIildCisr CQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19TSEhBOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxs aWNfU0hPUlRJIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19TSE9SVEk7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9DeXJpbGxpY19TT0ZUU0lHTiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3ly aWxsaWNfU09GVFNJR047CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19URSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQ3lyaWxsaWNfVEU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19UU0UiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX1RTRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmls bGljX1UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX1U7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9DeXJpbGxpY19VX21hY3JvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfVV9t YWNyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19VX3N0cmFpZ2h0IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBDeXJpbGxpY19VX3N0cmFpZ2h0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNf VV9zdHJhaWdodF9iYXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX1Vfc3RyYWln aHRfYmFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfVkUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEN5cmlsbGljX1ZFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfWUEiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEN5cmlsbGljX1lBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfWUVSVSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfWUVSVTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5 cmlsbGljX1lVIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19ZVTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0N5cmlsbGljX1pFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19aRTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX1pIRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3ly aWxsaWNfWkhFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfWkhFX2Rlc2NlbmRlciIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfWkhFX2Rlc2NlbmRlcjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0N5cmlsbGljX2EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2E7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9DeXJpbGxpY19iZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfYmU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19jaGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5 cmlsbGljX2NoZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2NoZV9kZXNjZW5kZXIiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2NoZV9kZXNjZW5kZXI7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9DeXJpbGxpY19jaGVfdmVydHN0cm9rZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxs aWNfY2hlX3ZlcnRzdHJva2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19kZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19kemhl IildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19kemhlOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf Q3lyaWxsaWNfZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0N5cmlsbGljX2VmIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19lZjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2VsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJp bGxpY19lbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2VtIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBDeXJpbGxpY19lbTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2VuIildCisrCQlwdWJs aWMgY29uc3QgdWludCBDeXJpbGxpY19lbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2VuX2Rl c2NlbmRlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfZW5fZGVzY2VuZGVyOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmls bGljX2VyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfZXMiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEN5cmlsbGljX2VzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfZ2hlIildCisrCQlwdWJs aWMgY29uc3QgdWludCBDeXJpbGxpY19naGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19naGVf YmFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19naGVfYmFyOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQ3lyaWxsaWNfaGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2hhOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfaGFfZGVzY2VuZGVyIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBDeXJpbGxpY19oYV9kZXNjZW5kZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19oYXJk c2lnbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfaGFyZHNpZ247CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9DeXJpbGxpY19pIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19pOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfaV9tYWNyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEN5cmlsbGljX2lfbWFjcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfaWUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2llOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfaW8i KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2lvOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3ly aWxsaWNfamUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2plOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQ3lyaWxsaWNfa2EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2thOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfa2FfZGVzY2VuZGVyIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBDeXJpbGxpY19rYV9kZXNjZW5kZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19rYV92 ZXJ0c3Ryb2tlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19rYV92ZXJ0c3Ryb2tl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfbGplIildCisrCQlwdWJsaWMgY29uc3QgdWludCBD eXJpbGxpY19samU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19uamUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEN5cmlsbGljX25qZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX28iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX287CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19v X2JhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfb19iYXI7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9DeXJpbGxpY19wZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfcGU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19zY2h3YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3ly aWxsaWNfc2Nod2E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19zaGEiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEN5cmlsbGljX3NoYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3NoY2hhIild CisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19zaGNoYTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5 cmlsbGljX3NoaGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX3NoaGE7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9DeXJpbGxpY19zaG9ydGkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmls bGljX3Nob3J0aTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3NvZnRzaWduIildCisrCQlwdWJs aWMgY29uc3QgdWludCBDeXJpbGxpY19zb2Z0c2lnbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGlj X3RlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY190ZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0N5cmlsbGljX3RzZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfdHNlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQ3lyaWxsaWNfdSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNf dTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3VfbWFjcm9uIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBDeXJpbGxpY191X21hY3JvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3Vfc3RyYWln aHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX3Vfc3RyYWlnaHQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9DeXJpbGxpY191X3N0cmFpZ2h0X2JhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg Q3lyaWxsaWNfdV9zdHJhaWdodF9iYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY192ZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxp Y195YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfeWE7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9DeXJpbGxpY195ZXJ1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY195ZXJ1Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfeXUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmls bGljX3l1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfemUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEN5cmlsbGljX3plOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfemhlIildCisrCQlwdWJs aWMgY29uc3QgdWludCBDeXJpbGxpY196aGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY196aGVf ZGVzY2VuZGVyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY196aGVfZGVzY2VuZGVy OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfRCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0RPUyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRE9TOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf RGFib3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBEYWJvdmVkb3Q7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9EY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IERjYXJvbjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0RlbGV0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRGVsZXRlOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfRGlzcGxheSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRGlzcGxheTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0RvY3VtZW50cyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRG9jdW1lbnRzOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfRG9uZ1NpZ24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IERvbmdTaWduOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfRG93biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRG93bjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0RzdHJva2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IERzdHJva2U7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9FIildCisrCQlwdWJsaWMgY29uc3QgdWludCBFOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRU5H IildCisrCQlwdWJsaWMgY29uc3QgdWludCBFTkc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FVEgiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEVUSDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0VaSCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgRVpIOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRWFib3ZlZG90IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBFYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FYWN1dGUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEVhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0ViZWxvd2RvdCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgRWJlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRWNhcm9uIildCisrCQlw dWJsaWMgY29uc3QgdWludCBFY2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FY2lyY3VtZmxleCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgRWNpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FY2lyY3Vt ZmxleGFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBFY2lyY3VtZmxleGFjdXRlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfRWNpcmN1bWZsZXhiZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg RWNpcmN1bWZsZXhiZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0VjaXJjdW1mbGV4Z3JhdmUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEVjaXJjdW1mbGV4Z3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9F Y2lyY3VtZmxleGhvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEVjaXJjdW1mbGV4aG9vazsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0VjaXJjdW1mbGV4dGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEVjaXJjdW1mbGV4dGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FY3VTaWduIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBFY3VTaWduOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRWRpYWVyZXNpcyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgRWRpYWVyZXNpczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0VncmF2ZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgRWdyYXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRWhvb2siKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEVob29rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRWlzdV9TaGlmdCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgRWlzdV9TaGlmdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Vpc3VfdG9nZ2xl IildCisrCQlwdWJsaWMgY29uc3QgdWludCBFaXN1X3RvZ2dsZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Vq ZWN0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBFamVjdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0VtYWNy b24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEVtYWNyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FbmQi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEVuZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0VvZ29uZWsiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEVvZ29uZWs7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Fc2NhcGUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEVzY2FwZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0V0aCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgRXRoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRXRpbGRlIildCisrCQlwdWJs aWMgY29uc3QgdWludCBFdGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FdXJvU2lnbiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgRXVyb1NpZ247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FeGNlbCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgRXhjZWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FeGVjdXRlIildCisrCQlwdWJs aWMgY29uc3QgdWludCBFeGVjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRXhwbG9yZXIiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEV4cGxvcmVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgRjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YxIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBGMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0YxMCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjEwOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfRjExIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMTE7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9GMTIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYxMjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0YxMyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjEzOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjE0Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBGMTQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMTUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEYxNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YxNiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgRjE2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjE3IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBGMTc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMTgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYxODsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0YxOSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjE5OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfRjIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYyOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf RjIwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMjA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMjEiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEYyMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YyMiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgRjIyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjIzIildCisrCQlwdWJsaWMgY29u c3QgdWludCBGMjM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMjQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEYyNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0YyNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjI1Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfRjI2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMjY7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9GMjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYyNzsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0YyOCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjI4OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjI5Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBGMjk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgRjM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMzAiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEYzMDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YzMSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg RjMxOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfRjMyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMzI7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9GMzMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYzMzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0YzNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjM0OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf RjM1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMzU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GNCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgRjQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GNSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgRjU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GNiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgRjY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GNyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjc7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9GOCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9GOSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjk7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GRnJh bmNTaWduIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGRnJhbmNTaWduOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfRmFib3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGYWJvdmVkb3Q7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9GYXJzaV8wIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGYXJzaV8wOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfRmFyc2lfMSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRmFyc2lfMTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0ZhcnNpXzIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEZhcnNpXzI7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9GYXJzaV8zIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGYXJzaV8zOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfRmFyc2lfNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRmFyc2lfNDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0ZhcnNpXzUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEZhcnNpXzU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9GYXJzaV82IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGYXJzaV82Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfRmFyc2lfNyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRmFyc2lfNzsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0ZhcnNpXzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEZhcnNpXzg7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9GYXJzaV85IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGYXJzaV85 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfRmFyc2lfeWVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGYXJz aV95ZWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GYXZvcml0ZXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEZhdm9yaXRlczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0ZpbmFuY2UiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEZpbmFuY2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GaW5kIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBGaW5kOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRmlyc3RfVmlydHVhbF9TY3JlZW4iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEZpcnN0X1ZpcnR1YWxfU2NyZWVuOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRm9yd2Fy ZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRm9yd2FyZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0ZyYW1l QmFjayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRnJhbWVCYWNrOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf RnJhbWVGb3J3YXJkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGcmFtZUZvcndhcmQ7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9HIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf R2Fib3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHYWJvdmVkb3Q7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9HYW1lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHYW1lOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf R2JyZXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHYnJldmU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9H Y2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdjYXJvbjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dj ZWRpbGxhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHY2VkaWxsYTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0djaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHY2lyY3VtZmxleDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0dlb3JnaWFuX2FuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9h bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX2JhbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg R2VvcmdpYW5fYmFuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fY2FuIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBHZW9yZ2lhbl9jYW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9jaGFyIild CisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9jaGFyOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2Vv cmdpYW5fY2hpbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fY2hpbjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0dlb3JnaWFuX2NpbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5f Y2lsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fZG9uIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBHZW9yZ2lhbl9kb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9lbiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgR2VvcmdpYW5fZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9maSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fZmk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lh bl9nYW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2dhbjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0dlb3JnaWFuX2doYW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2doYW47 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9oYWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdl b3JnaWFuX2hhZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX2hhciIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgR2VvcmdpYW5faGFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5faGUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2hlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5f aGllIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9oaWU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9HZW9yZ2lhbl9ob2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2hvZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0dlb3JnaWFuX2luIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lh bl9pbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX2poYW4iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEdlb3JnaWFuX2poYW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9qaWwiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2ppbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX2th biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fa2FuOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf R2VvcmdpYW5fa2hhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fa2hhcjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0dlb3JnaWFuX2xhcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2Vvcmdp YW5fbGFzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fbWFuIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBHZW9yZ2lhbl9tYW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9uYXIiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX25hcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX29u IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9vbjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dl b3JnaWFuX3BhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fcGFyOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfR2VvcmdpYW5fcGhhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5f cGhhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX3FhciIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgR2VvcmdpYW5fcWFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fcmFlIildCisrCQlwdWJs aWMgY29uc3QgdWludCBHZW9yZ2lhbl9yYWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9zYW4i KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX3NhbjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dl b3JnaWFuX3NoaW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX3NoaW47CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9HZW9yZ2lhbl90YW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFu X3RhbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX3RhciIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgR2VvcmdpYW5fdGFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fdW4iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEdlb3JnaWFuX3VuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fdmluIild CisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl92aW47CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9y Z2lhbl93ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fd2U7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9HZW9yZ2lhbl94YW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX3hhbjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX3plbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2Vv cmdpYW5femVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5femhhciIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgR2VvcmdpYW5femhhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dvIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBHbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX0FMUEhBIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBHcmVla19BTFBIQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX0FMUEhBYWNjZW50 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19BTFBIQWFjY2VudDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0dyZWVrX0JFVEEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX0JFVEE7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9HcmVla19DSEkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX0NISTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0dyZWVrX0RFTFRBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVl a19ERUxUQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX0VQU0lMT04iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEdyZWVrX0VQU0lMT047CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19FUFNJTE9OYWNjZW50 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19FUFNJTE9OYWNjZW50OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfR3JlZWtfRVRBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19FVEE7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9HcmVla19FVEFhY2NlbnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVr X0VUQWFjY2VudDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX0dBTU1BIildCisrCQlwdWJsaWMgY29u c3QgdWludCBHcmVla19HQU1NQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX0lPVEEiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEdyZWVrX0lPVEE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19JT1RBYWNj ZW50IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19JT1RBYWNjZW50OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfR3JlZWtfSU9UQWRpYWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtf SU9UQWRpYWVyZXNpczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX0lPVEFkaWVyZXNpcyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgR3JlZWtfSU9UQWRpZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3Jl ZWtfS0FQUEEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX0tBUFBBOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfR3JlZWtfTEFNQkRBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19MQU1CREE7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9HcmVla19MQU1EQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3Jl ZWtfTEFNREE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19NVSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgR3JlZWtfTVU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19OVSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgR3JlZWtfTlU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19PTUVHQSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgR3JlZWtfT01FR0E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19PTUVHQWFjY2Vu dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfT01FR0FhY2NlbnQ7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9HcmVla19PTUlDUk9OIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19PTUlDUk9O OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfT01JQ1JPTmFjY2VudCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgR3JlZWtfT01JQ1JPTmFjY2VudDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX1BISSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfUEhJOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfUEki KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX1BJOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtf UFNJIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19QU0k7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9H cmVla19SSE8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX1JITzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0dyZWVrX1NJR01BIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19TSUdNQTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0dyZWVrX1RBVSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfVEFV OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfVEhFVEEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdy ZWVrX1RIRVRBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfVVBTSUxPTiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgR3JlZWtfVVBTSUxPTjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX1VQU0lMT05hY2Nl bnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX1VQU0lMT05hY2NlbnQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9HcmVla19VUFNJTE9OZGllcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdy ZWVrX1VQU0lMT05kaWVyZXNpczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX1hJIildCisrCQlwdWJs aWMgY29uc3QgdWludCBHcmVla19YSTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX1pFVEEiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX1pFVEE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19hY2Nl bnRkaWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfYWNjZW50ZGllcmVzaXM7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9HcmVla19hbHBoYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3Jl ZWtfYWxwaGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19hbHBoYWFjY2VudCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgR3JlZWtfYWxwaGFhY2NlbnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19iZXRh IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19iZXRhOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3Jl ZWtfY2hpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19jaGk7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9HcmVla19kZWx0YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfZGVsdGE7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9HcmVla19lcHNpbG9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19l cHNpbG9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfZXBzaWxvbmFjY2VudCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgR3JlZWtfZXBzaWxvbmFjY2VudDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX2V0 YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfZXRhOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3Jl ZWtfZXRhYWNjZW50IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19ldGFhY2NlbnQ7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9HcmVla19maW5hbHNtYWxsc2lnbWEiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEdyZWVrX2ZpbmFsc21hbGxzaWdtYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX2dhbW1hIild CisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19nYW1tYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVr X2hvcml6YmFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19ob3JpemJhcjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0dyZWVrX2lvdGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX2lvdGE7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9HcmVla19pb3RhYWNjZW50IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBHcmVla19pb3RhYWNjZW50OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfaW90YWFjY2VudGRpZXJl c2lzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19pb3RhYWNjZW50ZGllcmVzaXM7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9HcmVla19pb3RhZGllcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEdyZWVrX2lvdGFkaWVyZXNpczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX2thcHBhIildCisrCQlw dWJsaWMgY29uc3QgdWludCBHcmVla19rYXBwYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX2xhbWJk YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfbGFtYmRhOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf R3JlZWtfbGFtZGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX2xhbWRhOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfR3JlZWtfbXUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX211OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfR3JlZWtfbnUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX251Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfR3JlZWtfb21lZ2EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVr X29tZWdhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfb21lZ2FhY2NlbnQiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEdyZWVrX29tZWdhYWNjZW50OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfb21pY3Jv biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfb21pY3JvbjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0dyZWVrX29taWNyb25hY2NlbnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX29taWNy b25hY2NlbnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19waGkiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEdyZWVrX3BoaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX3BpIildCisrCQlwdWJsaWMgY29u c3QgdWludCBHcmVla19waTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX3BzaSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgR3JlZWtfcHNpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfcmhvIildCisrCQlw dWJsaWMgY29uc3QgdWludCBHcmVla19yaG87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19zaWdtYSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfc2lnbWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVl a19zd2l0Y2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX3N3aXRjaDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0dyZWVrX3RhdSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfdGF1OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfR3JlZWtfdGhldGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX3Ro ZXRhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfdXBzaWxvbiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgR3JlZWtfdXBzaWxvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX3Vwc2lsb25hY2NlbnQiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX3Vwc2lsb25hY2NlbnQ7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9HcmVla191cHNpbG9uYWNjZW50ZGllcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdy ZWVrX3Vwc2lsb25hY2NlbnRkaWVyZXNpczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX3Vwc2lsb25k aWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfdXBzaWxvbmRpZXJlc2lzOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfR3JlZWtfeGkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX3hp OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfemV0YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3Jl ZWtfemV0YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBH cmVlbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEg7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9IYW5ndWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0hhbmd1bF9BIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfQTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0hhbmd1bF9BRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0FF OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0FyYWVBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBI YW5ndWxfQXJhZUE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfQXJhZUFFIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBIYW5ndWxfQXJhZUFFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0JhbmphIild CisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfQmFuamE7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5n dWxfQ2lldWMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9DaWV1YzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0hhbmd1bF9Db2RlaW5wdXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9D b2RlaW5wdXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfRGlrZXVkIildCisrCQlwdWJsaWMgY29u c3QgdWludCBIYW5ndWxfRGlrZXVkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0UiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEhhbmd1bF9FOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0VPIildCisr CQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfRU87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfRVUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9FVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1 bF9FbmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9FbmQ7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9IYW5ndWxfSGFuamEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9IYW5qYTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0hhbmd1bF9IaWV1aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3Vs X0hpZXVoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEhhbmd1bF9JOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0lldW5nIildCisrCQlwdWJsaWMgY29u c3QgdWludCBIYW5ndWxfSWV1bmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9DaWV1YyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfQ2lldWM7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5n dWxfSl9EaWtldWQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX0Rpa2V1ZDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0hhbmd1bF9KX0hpZXVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5n dWxfSl9IaWV1aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX0lldW5nIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBIYW5ndWxfSl9JZXVuZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX0ppZXVq IildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9KaWV1ajsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0hhbmd1bF9KX0toaWV1cSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfS2hpZXVx OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfS2l5ZW9nIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBIYW5ndWxfSl9LaXllb2c7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9LaXllb2dTaW9zIild CisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9LaXllb2dTaW9zOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfSGFuZ3VsX0pfS2tvZ2ppRGFscmluSWV1bmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhh bmd1bF9KX0trb2dqaURhbHJpbklldW5nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfTWlldW0i KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX01pZXVtOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf SGFuZ3VsX0pfTmlldW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX05pZXVuOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfTmlldW5IaWV1aCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgSGFuZ3VsX0pfTmlldW5IaWV1aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX05pZXVuSmll dWoiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX05pZXVuSmlldWo7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9IYW5ndWxfSl9QYW5TaW9zIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxf Sl9QYW5TaW9zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfUGhpZXVmIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBIYW5ndWxfSl9QaGlldWY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9QaWV1 YiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfUGlldWI7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9IYW5ndWxfSl9QaWV1YlNpb3MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX1Bp ZXViU2lvczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX1JpZXVsIildCisrCQlwdWJsaWMgY29u c3QgdWludCBIYW5ndWxfSl9SaWV1bDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX1JpZXVsSGll dWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX1JpZXVsSGlldWg7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9IYW5ndWxfSl9SaWV1bEtpeWVvZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFu Z3VsX0pfUmlldWxLaXllb2c7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9SaWV1bE1pZXVtIild CisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9SaWV1bE1pZXVtOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfSGFuZ3VsX0pfUmlldWxQaGlldWYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9K X1JpZXVsUGhpZXVmOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfUmlldWxQaWV1YiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfUmlldWxQaWV1YjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hh bmd1bF9KX1JpZXVsU2lvcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfUmlldWxT aW9zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfUmlldWxUaWV1dCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgSGFuZ3VsX0pfUmlldWxUaWV1dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX1Np b3MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX1Npb3M7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9IYW5ndWxfSl9Tc2FuZ0tpeWVvZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pf U3NhbmdLaXllb2c7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9Tc2FuZ1Npb3MiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX1NzYW5nU2lvczsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1 bF9KX1RpZXV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9UaWV1dDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0hhbmd1bF9KX1llb3JpbkhpZXVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBI YW5ndWxfSl9ZZW9yaW5IaWV1aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KYW1vIildCisrCQlw dWJsaWMgY29uc3QgdWludCBIYW5ndWxfSmFtbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KZW9u amEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KZW9uamE7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9IYW5ndWxfSmlldWoiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KaWV1ajsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0hhbmd1bF9LaGlldXEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1 bF9LaGlldXE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfS2l5ZW9nIildCisrCQlwdWJsaWMgY29u c3QgdWludCBIYW5ndWxfS2l5ZW9nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0tpeWVvZ1Npb3Mi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9LaXllb2dTaW9zOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfSGFuZ3VsX0trb2dqaURhbHJpbklldW5nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5n dWxfS2tvZ2ppRGFscmluSWV1bmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfTWlldW0iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9NaWV1bTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9N dWx0aXBsZUNhbmRpZGF0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX011bHRpcGxl Q2FuZGlkYXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX05pZXVuIildCisrCQlwdWJsaWMgY29u c3QgdWludCBIYW5ndWxfTmlldW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfTmlldW5IaWV1aCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX05pZXVuSGlldWg7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9IYW5ndWxfTmlldW5KaWV1aiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX05pZXVu SmlldWo7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfTyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg SGFuZ3VsX087CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfT0UiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEhhbmd1bF9PRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9QYW5TaW9zIildCisrCQlwdWJs aWMgY29uc3QgdWludCBIYW5ndWxfUGFuU2lvczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9QaGll dWYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9QaGlldWY7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9IYW5ndWxfUGlldWIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9QaWV1YjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0hhbmd1bF9QaWV1YlNpb3MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhh bmd1bF9QaWV1YlNpb3M7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfUG9zdEhhbmphIildCisrCQlw dWJsaWMgY29uc3QgdWludCBIYW5ndWxfUG9zdEhhbmphOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3Vs X1ByZUhhbmphIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfUHJlSGFuamE7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9IYW5ndWxfUHJldmlvdXNDYW5kaWRhdGUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEhhbmd1bF9QcmV2aW91c0NhbmRpZGF0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9SaWV1 bCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1JpZXVsOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf SGFuZ3VsX1JpZXVsSGlldWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9SaWV1bEhp ZXVoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1JpZXVsS2l5ZW9nIildCisrCQlwdWJsaWMgY29u c3QgdWludCBIYW5ndWxfUmlldWxLaXllb2c7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfUmlldWxN aWV1bSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1JpZXVsTWlldW07CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9IYW5ndWxfUmlldWxQaGlldWYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1 bF9SaWV1bFBoaWV1ZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9SaWV1bFBpZXViIildCisrCQlw dWJsaWMgY29uc3QgdWludCBIYW5ndWxfUmlldWxQaWV1YjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1 bF9SaWV1bFNpb3MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9SaWV1bFNpb3M7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9IYW5ndWxfUmlldWxUaWV1dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg SGFuZ3VsX1JpZXVsVGlldXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfUmlldWxZZW9yaW5IaWV1 aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1JpZXVsWWVvcmluSGlldWg7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9IYW5ndWxfUm9tYWphIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxf Um9tYWphOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1NpbmdsZUNhbmRpZGF0ZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgSGFuZ3VsX1NpbmdsZUNhbmRpZGF0ZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hh bmd1bF9TaW9zIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfU2lvczsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0hhbmd1bF9TcGVjaWFsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfU3Bl Y2lhbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9Tc2FuZ0Rpa2V1ZCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgSGFuZ3VsX1NzYW5nRGlrZXVkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1NzYW5n SmlldWoiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9Tc2FuZ0ppZXVqOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfSGFuZ3VsX1NzYW5nS2l5ZW9nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5n dWxfU3NhbmdLaXllb2c7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfU3NhbmdQaWV1YiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1NzYW5nUGlldWI7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5n dWxfU3NhbmdTaW9zIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfU3NhbmdTaW9zOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1N0YXJ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5n dWxfU3RhcnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfU3Vua3llb25nZXVtTWlldW0iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9TdW5reWVvbmdldW1NaWV1bTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0hhbmd1bF9TdW5reWVvbmdldW1QaGlldWYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhh bmd1bF9TdW5reWVvbmdldW1QaGlldWY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfU3Vua3llb25n ZXVtUGlldWIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9TdW5reWVvbmdldW1QaWV1 YjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9UaWV1dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg SGFuZ3VsX1RpZXV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1UiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEhhbmd1bF9VOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1dBIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBIYW5ndWxfV0E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfV0FFIildCisrCQlw dWJsaWMgY29uc3QgdWludCBIYW5ndWxfV0FFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1dFIild CisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfV0U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxf V0VPIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfV0VPOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf SGFuZ3VsX1dJIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfV0k7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9IYW5ndWxfWUEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9ZQTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0hhbmd1bF9ZQUUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9ZQUU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfWUUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1 bF9ZRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9ZRU8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEhhbmd1bF9ZRU87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfWUkiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEhhbmd1bF9ZSTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9ZTyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgSGFuZ3VsX1lPOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1lVIildCisrCQlw dWJsaWMgY29uc3QgdWludCBIYW5ndWxfWVU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfWWVvcmlu SGlldWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9ZZW9yaW5IaWV1aDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0hhbmd1bF9zd2l0Y2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9z d2l0Y2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5rYWt1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBI YW5rYWt1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGNpcmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEhjaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGVicmV3X3N3aXRjaCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgSGVicmV3X3N3aXRjaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hlbHAiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEhlbHA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IZW5rYW4iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEhlbmthbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hlbmthbl9Nb2RlIildCisr CQlwdWJsaWMgY29uc3QgdWludCBIZW5rYW5fTW9kZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hpYmVybmF0 ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGliZXJuYXRlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGly YWdhbmEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhpcmFnYW5hOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf SGlyYWdhbmFfS2F0YWthbmEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhpcmFnYW5hX0thdGFr YW5hOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfSGlzdG9yeSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGlz dG9yeTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0hvbWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhvbWU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9Ib21lUGFnZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSG9tZVBh Z2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Ib3RMaW5rcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSG90 TGlua3M7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Ic3Ryb2tlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBI c3Ryb2tlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSHlwZXJfTCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg SHlwZXJfTDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0h5cGVyX1IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEh5cGVyX1I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfSVNPX0NlbnRlcl9PYmplY3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IElTT19DZW50ZXJfT2JqZWN0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0NvbnRpbnVvdXNfVW5kZXJs aW5lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fQ29udGludW91c19VbmRlcmxpbmU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9JU09fRGlzY29udGludW91c19VbmRlcmxpbmUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IElTT19EaXNjb250aW51b3VzX1VuZGVybGluZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lT T19FbXBoYXNpemUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19FbXBoYXNpemU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9JU09fRW50ZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19FbnRlcjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0lTT19GYXN0X0N1cnNvcl9Eb3duIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBJU09fRmFzdF9DdXJzb3JfRG93bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19GYXN0X0N1cnNv cl9MZWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fRmFzdF9DdXJzb3JfTGVmdDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0lTT19GYXN0X0N1cnNvcl9SaWdodCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgSVNPX0Zhc3RfQ3Vyc29yX1JpZ2h0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0Zhc3RfQ3Vyc29y X1VwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fRmFzdF9DdXJzb3JfVXA7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9JU09fRmlyc3RfR3JvdXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19GaXJz dF9Hcm91cDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19GaXJzdF9Hcm91cF9Mb2NrIildCisrCQlwdWJs aWMgY29uc3QgdWludCBJU09fRmlyc3RfR3JvdXBfTG9jazsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19H cm91cF9MYXRjaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0dyb3VwX0xhdGNoOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfSVNPX0dyb3VwX0xvY2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19H cm91cF9Mb2NrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0dyb3VwX1NoaWZ0IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBJU09fR3JvdXBfU2hpZnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fTGFzdF9Hcm91 cCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0xhc3RfR3JvdXA7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9JU09fTGFzdF9Hcm91cF9Mb2NrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fTGFzdF9H cm91cF9Mb2NrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0xlZnRfVGFiIildCisrCQlwdWJsaWMgY29u c3QgdWludCBJU09fTGVmdF9UYWI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fTGV2ZWwyX0xhdGNoIild CisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fTGV2ZWwyX0xhdGNoOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf SVNPX0xldmVsM19MYXRjaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0xldmVsM19MYXRj aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0lTT19MZXZlbDNfTG9jayIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgSVNPX0xldmVsM19Mb2NrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0xldmVsM19TaGlmdCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0xldmVsM19TaGlmdDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lT T19MZXZlbDVfTGF0Y2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19MZXZlbDVfTGF0Y2g7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9JU09fTGV2ZWw1X0xvY2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IElTT19MZXZlbDVfTG9jazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19MZXZlbDVfU2hpZnQiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IElTT19MZXZlbDVfU2hpZnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09f TG9jayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0xvY2s7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9J U09fTW92ZV9MaW5lX0Rvd24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19Nb3ZlX0xpbmVf RG93bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19Nb3ZlX0xpbmVfVXAiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IElTT19Nb3ZlX0xpbmVfVXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fTmV4dF9Hcm91cCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX05leHRfR3JvdXA7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9J U09fTmV4dF9Hcm91cF9Mb2NrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fTmV4dF9Hcm91 cF9Mb2NrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX1BhcnRpYWxfTGluZV9Eb3duIildCisrCQlwdWJs aWMgY29uc3QgdWludCBJU09fUGFydGlhbF9MaW5lX0Rvd247CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09f UGFydGlhbF9MaW5lX1VwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fUGFydGlhbF9MaW5l X1VwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX1BhcnRpYWxfU3BhY2VfTGVmdCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgSVNPX1BhcnRpYWxfU3BhY2VfTGVmdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19Q YXJ0aWFsX1NwYWNlX1JpZ2h0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fUGFydGlhbF9T cGFjZV9SaWdodDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19QcmV2X0dyb3VwIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBJU09fUHJldl9Hcm91cDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19QcmV2X0dyb3Vw X0xvY2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19QcmV2X0dyb3VwX0xvY2s7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9JU09fUmVsZWFzZV9Cb3RoX01hcmdpbnMiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IElTT19SZWxlYXNlX0JvdGhfTWFyZ2luczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19SZWxlYXNl X01hcmdpbl9MZWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fUmVsZWFzZV9NYXJnaW5f TGVmdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19SZWxlYXNlX01hcmdpbl9SaWdodCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgSVNPX1JlbGVhc2VfTWFyZ2luX1JpZ2h0OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf SVNPX1NldF9NYXJnaW5fTGVmdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX1NldF9NYXJn aW5fTGVmdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19TZXRfTWFyZ2luX1JpZ2h0IildCisrCQlwdWJs aWMgY29uc3QgdWludCBJU09fU2V0X01hcmdpbl9SaWdodDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lhYm92 ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSWFib3ZlZG90OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf SWFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9J YmVsb3dkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEliZWxvd2RvdDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0licmV2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSWJyZXZlOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfSWNpcmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEljaXJjdW1mbGV4OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfSWRpYWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSWRpYWVyZXNp czsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0lncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSWdyYXZl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfSWhvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElob29rOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfSW1hY3JvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSW1hY3JvbjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0luc2VydCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSW5zZXJ0Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfSW9nb25layIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSW9nb25lazsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0l0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSXRpbGRlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfSiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0pjaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBKY2lyY3VtZmxleDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEs7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9LUF8wIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF8wOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1Bf MSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQXzIiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEtQXzI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF8zIildCisrCQlw dWJsaWMgY29uc3QgdWludCBLUF8zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfNCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgS1BfNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQXzUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEtQXzU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF82IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBLUF82OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfNyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1Bf NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0tQXzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQXzg7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9LUF85IildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF85OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfS1BfQWRkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9BZGQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9LUF9CZWdpbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfQmVnaW47CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9LUF9EZWNpbWFsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9EZWNpbWFs OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfS1BfRGVsZXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9E ZWxldGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9EaXZpZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEtQX0RpdmlkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX0Rvd24iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEtQX0Rvd247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9FbmQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEtQX0VuZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX0VudGVyIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBLUF9FbnRlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX0VxdWFsIildCisrCQlwdWJsaWMgY29u c3QgdWludCBLUF9FcXVhbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX0YxIildCisrCQlwdWJsaWMgY29u c3QgdWludCBLUF9GMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX0YyIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBLUF9GMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX0YzIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBLUF9GMzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX0Y0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBL UF9GNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX0hvbWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQ X0hvbWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9JbnNlcnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEtQX0luc2VydDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX0xlZnQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEtQX0xlZnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9NdWx0aXBseSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgS1BfTXVsdGlwbHk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9OZXh0IildCisrCQlwdWJs aWMgY29uc3QgdWludCBLUF9OZXh0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfUGFnZV9Eb3duIildCisr CQlwdWJsaWMgY29uc3QgdWludCBLUF9QYWdlX0Rvd247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9QYWdl X1VwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9QYWdlX1VwOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf S1BfUHJpb3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX1ByaW9yOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfS1BfUmlnaHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX1JpZ2h0OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfS1BfU2VwYXJhdG9yIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9TZXBhcmF0b3I7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9LUF9TcGFjZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfU3Bh Y2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9TdWJ0cmFjdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg S1BfU3VidHJhY3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9UYWIiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEtQX1RhYjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX1VwIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBLUF9VcDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0thbmFfTG9jayIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgS2FuYV9Mb2NrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS2FuYV9TaGlmdCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgS2FuYV9TaGlmdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0thbmppIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBLYW5qaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0thbmppX0JhbmdvdSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgS2FuamlfQmFuZ291OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS2F0YWthbmEiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEthdGFrYW5hOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS2JkQnJpZ2h0 bmVzc0Rvd24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtiZEJyaWdodG5lc3NEb3duOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfS2JkQnJpZ2h0bmVzc1VwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLYmRC cmlnaHRuZXNzVXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LYmRMaWdodE9uT2ZmIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBLYmRMaWdodE9uT2ZmOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS2NlZGlsbGEiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEtjZWRpbGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS29yZWFuX1dvbiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgS29yZWFuX1dvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0wiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MMSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgTDE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MMTAiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEwxMDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0wyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBMMjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0wzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBMMzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0w0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBMNDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0w1 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBMNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0w2IildCisrCQlw dWJsaWMgY29uc3QgdWludCBMNjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0w3IildCisrCQlwdWJsaWMgY29u c3QgdWludCBMNzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0w4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBM ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0w5IildCisrCQlwdWJsaWMgY29uc3QgdWludCBMOTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0xhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGFjdXRlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfTGFzdF9WaXJ0dWFsX1NjcmVlbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGFz dF9WaXJ0dWFsX1NjcmVlbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xhdW5jaDAiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IExhdW5jaDA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MYXVuY2gxIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBMYXVuY2gxOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGF1bmNoMiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgTGF1bmNoMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xhdW5jaDMiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IExhdW5jaDM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MYXVuY2g0IildCisrCQlwdWJs aWMgY29uc3QgdWludCBMYXVuY2g0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGF1bmNoNSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgTGF1bmNoNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xhdW5jaDYiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IExhdW5jaDY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MYXVuY2g3IildCisrCQlw dWJsaWMgY29uc3QgdWludCBMYXVuY2g3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGF1bmNoOCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgTGF1bmNoODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xhdW5jaDkiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IExhdW5jaDk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MYXVuY2hBIildCisr CQlwdWJsaWMgY29uc3QgdWludCBMYXVuY2hBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGF1bmNoQiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgTGF1bmNoQjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xhdW5jaEMiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IExhdW5jaEM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MYXVuY2hEIild CisrCQlwdWJsaWMgY29uc3QgdWludCBMYXVuY2hEOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGF1bmNoRSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGF1bmNoRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xhdW5jaEYi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExhdW5jaEY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MYmVsb3dk b3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExiZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xj YXJvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGNhcm9uOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGNl ZGlsbGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExjZWRpbGxhOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf TGVmdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGVmdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xpZ2h0 QnVsYiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGlnaHRCdWxiOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf TGluZWZlZWQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExpbmVmZWVkOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfTGlyYVNpZ24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExpcmFTaWduOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfTG9nR3JhYkluZm8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExvZ0dyYWJJbmZvOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfTG9nT2ZmIildCisrCQlwdWJsaWMgY29uc3QgdWludCBMb2dPZmY7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9Mb2dXaW5kb3dUcmVlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBMb2dX aW5kb3dUcmVlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTHN0cm9rZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgTHN0cm9rZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX00iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE07 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9NYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1hYm92 ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX01hY2Vkb25pYV9EU0UiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IE1hY2Vkb25pYV9EU0U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NYWNlZG9uaWFfR0pFIildCisrCQlw dWJsaWMgY29uc3QgdWludCBNYWNlZG9uaWFfR0pFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWFjZWRvbmlh X0tKRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTWFjZWRvbmlhX0tKRTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX01hY2Vkb25pYV9kc2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1hY2Vkb25pYV9kc2U7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9NYWNlZG9uaWFfZ2plIildCisrCQlwdWJsaWMgY29uc3QgdWludCBN YWNlZG9uaWFfZ2plOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWFjZWRvbmlhX2tqZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgTWFjZWRvbmlhX2tqZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01hZV9Lb2hvIildCisr CQlwdWJsaWMgY29uc3QgdWludCBNYWVfS29obzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01haWwiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IE1haWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NYWlsRm9yd2FyZCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgTWFpbEZvcndhcmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NYXJrZXQi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1hcmtldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01hc3N5byIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgTWFzc3lvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWVldGluZyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgTWVldGluZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01lbW8iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IE1lbW87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NZW51IildCisrCQlw dWJsaWMgY29uc3QgdWludCBNZW51OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWVudUtCIildCisrCQlwdWJs aWMgY29uc3QgdWludCBNZW51S0I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NZW51UEIiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IE1lbnVQQjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01lc3NlbmdlciIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgTWVzc2VuZ2VyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWV0YV9MIildCisrCQlw dWJsaWMgY29uc3QgdWludCBNZXRhX0w7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NZXRhX1IiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IE1ldGFfUjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01pbGxTaWduIildCisrCQlw dWJsaWMgY29uc3QgdWludCBNaWxsU2lnbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01vZGVMb2NrIildCisr CQlwdWJsaWMgY29uc3QgdWludCBNb2RlTG9jazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01vZGVfc3dpdGNo IildCisrCQlwdWJsaWMgY29uc3QgdWludCBNb2RlX3N3aXRjaDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01v bkJyaWdodG5lc3NEb3duIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNb25CcmlnaHRuZXNzRG93 bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX01vbkJyaWdodG5lc3NVcCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgTW9uQnJpZ2h0bmVzc1VwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTW91c2VLZXlzX0FjY2VsX0VuYWJs ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTW91c2VLZXlzX0FjY2VsX0VuYWJsZTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX01vdXNlS2V5c19FbmFibGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1vdXNl S2V5c19FbmFibGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NdWhlbmthbiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgTXVoZW5rYW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NdWx0aV9rZXkiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IE11bHRpX2tleTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX011bHRpcGxlQ2FuZGlkYXRlIild CisrCQlwdWJsaWMgY29uc3QgdWludCBNdWx0aXBsZUNhbmRpZGF0ZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X011c2ljIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNdXNpYzsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX015 Q29tcHV0ZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE15Q29tcHV0ZXI7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9NeVNpdGVzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNeVNpdGVzOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfTiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX05hY3V0 ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTmFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTmFpcmFT aWduIildCisrCQlwdWJsaWMgY29uc3QgdWludCBOYWlyYVNpZ247CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9O Y2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE5jYXJvbjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX05j ZWRpbGxhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBOY2VkaWxsYTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X05ldyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTmV3OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTmV3U2hl cWVsU2lnbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTmV3U2hlcWVsU2lnbjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX05ld3MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE5ld3M7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9OZXh0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBOZXh0OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTmV4 dF9WTW9kZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTmV4dF9WTW9kZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX05leHRfVmlydHVhbF9TY3JlZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE5leHRfVmly dHVhbF9TY3JlZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9OdGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IE50aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX051bV9Mb2NrIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBOdW1fTG9jazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX08iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IE87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9PRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT0U7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9PYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9hY3V0ZTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX09iYXJyZWQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9iYXJyZWQ7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9PYmVsb3dkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9iZWxvd2RvdDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX09jYXJvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2Nhcm9uOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfT2NpcmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9jaXJj dW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT2NpcmN1bWZsZXhhY3V0ZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgT2NpcmN1bWZsZXhhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09jaXJjdW1mbGV4YmVs b3dkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9jaXJjdW1mbGV4YmVsb3dkb3Q7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9PY2lyY3VtZmxleGdyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPY2ly Y3VtZmxleGdyYXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT2NpcmN1bWZsZXhob29rIildCisrCQlwdWJs aWMgY29uc3QgdWludCBPY2lyY3VtZmxleGhvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PY2lyY3VtZmxl eHRpbGRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPY2lyY3VtZmxleHRpbGRlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfT2RpYWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2RpYWVyZXNpczsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX09kb3VibGVhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2Rv dWJsZWFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT2ZmaWNlSG9tZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgT2ZmaWNlSG9tZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09ncmF2ZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgT2dyYXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT2hvb2siKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IE9ob29rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT2hvcm4iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IE9ob3JuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT2hvcm5hY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgT2hvcm5hY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09ob3JuYmVsb3dkb3QiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IE9ob3JuYmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PaG9ybmdyYXZl IildCisrCQlwdWJsaWMgY29uc3QgdWludCBPaG9ybmdyYXZlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT2hv cm5ob29rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPaG9ybmhvb2s7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9PaG9ybnRpbGRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPaG9ybnRpbGRlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfT21hY3JvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT21hY3JvbjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX09vYmxpcXVlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPb2JsaXF1ZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX09wZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9wZW47CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9PcGVuVVJMIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPcGVuVVJMOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfT3B0aW9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPcHRpb247CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9Pc2xhc2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9zbGFzaDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX090aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT3RpbGRlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfT3ZlcmxheTFfRW5hYmxlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPdmVybGF5MV9F bmFibGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PdmVybGF5Ml9FbmFibGUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IE92ZXJsYXkyX0VuYWJsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1AiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9QYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFBhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BhZ2VfRG93biIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgUGFnZV9Eb3duOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUGFnZV9VcCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgUGFnZV9VcDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Bhc3RlIildCisrCQlwdWJs aWMgY29uc3QgdWludCBQYXN0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BhdXNlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBQYXVzZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Blc2V0YVNpZ24iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFBlc2V0YVNpZ247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9QaG9uZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgUGhvbmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9QaWN0dXJlcyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgUGljdHVyZXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0FjY2VsZXJh dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfQWNjZWxlcmF0ZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1BvaW50ZXJfQnV0dG9uMSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9C dXR0b24xOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9CdXR0b24yIildCisrCQlwdWJsaWMgY29u c3QgdWludCBQb2ludGVyX0J1dHRvbjI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0J1dHRvbjMi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfQnV0dG9uMzsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1BvaW50ZXJfQnV0dG9uNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9CdXR0b240 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9CdXR0b241IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBQb2ludGVyX0J1dHRvbjU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0J1dHRvbl9EZmx0Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0J1dHRvbl9EZmx0OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfUG9pbnRlcl9EYmxDbGljazEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfRGJs Q2xpY2sxOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9EYmxDbGljazIiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFBvaW50ZXJfRGJsQ2xpY2syOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9EYmxD bGljazMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfRGJsQ2xpY2szOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfUG9pbnRlcl9EYmxDbGljazQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50 ZXJfRGJsQ2xpY2s0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9EYmxDbGljazUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfRGJsQ2xpY2s1OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRl cl9EYmxDbGlja19EZmx0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0RibENsaWNr X0RmbHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0RmbHRCdG5OZXh0IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBQb2ludGVyX0RmbHRCdG5OZXh0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9E Zmx0QnRuUHJldiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9EZmx0QnRuUHJldjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfRG93biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9p bnRlcl9Eb3duOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9Eb3duTGVmdCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgUG9pbnRlcl9Eb3duTGVmdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfRG93 blJpZ2h0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0Rvd25SaWdodDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1BvaW50ZXJfRHJhZzEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJf RHJhZzE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0RyYWcyIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBQb2ludGVyX0RyYWcyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9EcmFnMyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9EcmFnMzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJf RHJhZzQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfRHJhZzQ7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9Qb2ludGVyX0RyYWc1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0RyYWc1 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9EcmFnX0RmbHQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFBvaW50ZXJfRHJhZ19EZmx0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9FbmFibGVLZXlz IildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0VuYWJsZUtleXM7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9Qb2ludGVyX0xlZnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfTGVmdDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfUmlnaHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBv aW50ZXJfUmlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX1VwIildCisrCQlwdWJsaWMgY29u c3QgdWludCBQb2ludGVyX1VwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9VcExlZnQiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfVXBMZWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRl cl9VcFJpZ2h0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX1VwUmlnaHQ7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9Qb3dlckRvd24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvd2VyRG93bjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1Bvd2VyT2ZmIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb3dlck9m ZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1ByZXZfVk1vZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBy ZXZfVk1vZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9QcmV2X1ZpcnR1YWxfU2NyZWVuIildCisrCQlwdWJs aWMgY29uc3QgdWludCBQcmV2X1ZpcnR1YWxfU2NyZWVuOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUHJldmlv dXNDYW5kaWRhdGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFByZXZpb3VzQ2FuZGlkYXRlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfUHJpbnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFByaW50OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfUHJpb3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFByaW9yOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfUSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Ii KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SMSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgUjE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SMTAiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFIxMDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1IxMSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg UjExOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfUjEyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSMTI7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9SMTMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFIxMzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1IxNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUjE0OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf UjE1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBSMTU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SMiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgUjI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SMyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgUjM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SNCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgUjQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUjU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9SNiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUjY7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9SNyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUjc7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SOCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgUjg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SOSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgUjk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SYWN1dGUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFJhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1JjYXJvbiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgUmNhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUmNlZGlsbGEiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFJjZWRpbGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUmVkIildCisrCQlwdWJsaWMgY29u c3QgdWludCBSZWQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SZWRvIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBSZWRvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUmVmcmVzaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg UmVmcmVzaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1JlbG9hZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg UmVsb2FkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUmVwZWF0S2V5c19FbmFibGUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFJlcGVhdEtleXNfRW5hYmxlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUmVwbHkiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFJlcGx5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUmV0dXJuIildCisrCQlw dWJsaWMgY29uc3QgdWludCBSZXR1cm47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SaWdodCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgUmlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Sb2NrZXJEb3duIildCisrCQlw dWJsaWMgY29uc3QgdWludCBSb2NrZXJEb3duOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUm9ja2VyRW50ZXIi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFJvY2tlckVudGVyOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUm9j a2VyVXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFJvY2tlclVwOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf Um9tYWppIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSb21hamk7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9S b3RhdGVXaW5kb3dzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSb3RhdGVXaW5kb3dzOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfUm90YXRpb25LQiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUm90YXRpb25L QjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1JvdGF0aW9uUEIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFJv dGF0aW9uUEI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SdXBlZVNpZ24iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFJ1cGVlU2lnbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9TQ0hXQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU0NIV0E7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9TYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNhYm92 ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1NhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2Fj dXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfU2F2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2F2ZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1NjYXJvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2Nhcm9uOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfU2NlZGlsbGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNjZWRpbGxh OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfU2NpcmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNj aXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2NyZWVuU2F2ZXIiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFNjcmVlblNhdmVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2Nyb2xsQ2xpY2siKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFNjcm9sbENsaWNrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2Nyb2xsRG93biIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2Nyb2xsRG93bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Njcm9s bFVwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTY3JvbGxVcDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Nj cm9sbF9Mb2NrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTY3JvbGxfTG9jazsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1NlYXJjaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2VhcmNoOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfU2VsZWN0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTZWxlY3Q7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9TZWxlY3RCdXR0b24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNlbGVjdEJ1dHRvbjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1NlbmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNlbmQ7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9TZXJiaWFuX0RKRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2VyYmlhbl9E SkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9TZXJiaWFuX0RaRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg U2VyYmlhbl9EWkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TZXJiaWFuX0pFIildCisrCQlwdWJsaWMgY29u c3QgdWludCBTZXJiaWFuX0pFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2VyYmlhbl9MSkUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFNlcmJpYW5fTEpFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2VyYmlhbl9OSkUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNlcmJpYW5fTkpFOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2Vy Ymlhbl9UU0hFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTZXJiaWFuX1RTSEU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9TZXJiaWFuX2RqZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2VyYmlhbl9kamU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9TZXJiaWFuX2R6ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2Vy Ymlhbl9kemU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TZXJiaWFuX2plIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBTZXJiaWFuX2plOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2VyYmlhbl9samUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFNlcmJpYW5fbGplOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2VyYmlhbl9uamUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFNlcmJpYW5fbmplOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2VyYmlh bl90c2hlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTZXJiaWFuX3RzaGU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9TaGlmdF9MIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaGlmdF9MOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfU2hpZnRfTG9jayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2hpZnRfTG9jazsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1NoaWZ0X1IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNoaWZ0X1I7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9TaG9wIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaG9wOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfU2luZ2xlQ2FuZGlkYXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5nbGVD YW5kaWRhdGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFNpbmhfYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfYWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFNpbmhfYWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2FhMiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgU2luaF9hYTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2FlIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBTaW5oX2FlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9hZTIiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFNpbmhfYWUyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9hZWUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFNpbmhfYWVlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9hZWUyIildCisrCQlwdWJs aWMgY29uc3QgdWludCBTaW5oX2FlZTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2FpIildCisrCQlw dWJsaWMgY29uc3QgdWludCBTaW5oX2FpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9haTIiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFNpbmhfYWkyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9hbCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9hbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfYXUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfYXU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2F1MiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9hdTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2Jh IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2JhOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9i aGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfYmhhOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2lu aF9jYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9jYTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Np bmhfY2hhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2NoYTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1NpbmhfZGRhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2RkYTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1NpbmhfZGRoYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9kZGhhOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfU2luaF9kaGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfZGhhOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfU2luaF9kaGhhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2RoaGE7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1NpbmhfZTIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfZTI7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2VlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2Vl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9lZTIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhf ZWUyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9mYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2lu aF9mYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfZ2EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNp bmhfZ2E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2doYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg U2luaF9naGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2gyIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBTaW5oX2gyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9oYSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgU2luaF9oYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfaSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgU2luaF9pOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9pMiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgU2luaF9pMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfaWkiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFNpbmhfaWk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2lpMiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgU2luaF9paTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2phIildCisrCQlwdWJsaWMgY29u c3QgdWludCBTaW5oX2phOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9qaGEiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFNpbmhfamhhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9qbnlhIildCisrCQlwdWJs aWMgY29uc3QgdWludCBTaW5oX2pueWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2thIildCisrCQlw dWJsaWMgY29uc3QgdWludCBTaW5oX2thOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9raGEiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFNpbmhfa2hhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9rdW5kZGFs aXlhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2t1bmRkYWxpeWE7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9TaW5oX2xhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2xhOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfU2luaF9sbGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfbGxhOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfU2luaF9sdSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9sdTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1NpbmhfbHUyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2x1MjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1NpbmhfbHV1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2x1dTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1NpbmhfbHV1MiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9s dXUyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9tYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2lu aF9tYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfbWJhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBT aW5oX21iYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfbmEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFNpbmhfbmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX25kZGEiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFNpbmhfbmRkYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfbmRoYSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgU2luaF9uZGhhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9uZyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgU2luaF9uZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfbmcyIildCisrCQlwdWJs aWMgY29uc3QgdWludCBTaW5oX25nMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfbmdhIildCisrCQlw dWJsaWMgY29uc3QgdWludCBTaW5oX25nYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfbmphIildCisr CQlwdWJsaWMgY29uc3QgdWludCBTaW5oX25qYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Npbmhfbm5hIild CisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX25uYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Npbmhfbnlh IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX255YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Npbmhf byIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9vOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9v MiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9vMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Npbmhf b28iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfb287CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5o X29vMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9vbzI7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9T aW5oX3BhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX3BhOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf U2luaF9waGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfcGhhOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfU2luaF9yYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9yYTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1NpbmhfcmkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfcmk7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9TaW5oX3JpaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9yaWk7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9TaW5oX3J1MiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9ydTI7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9TaW5oX3J1dTIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfcnV1MjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1Npbmhfc2EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfc2E7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9TaW5oX3NoYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9z aGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX3NzaGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNp bmhfc3NoYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfdGhhIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBTaW5oX3RoYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfdGhoYSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgU2luaF90aGhhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF90dGEiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFNpbmhfdHRhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF90dGhhIildCisrCQlwdWJs aWMgY29uc3QgdWludCBTaW5oX3R0aGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX3UiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFNpbmhfdTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfdTIiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFNpbmhfdTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX3V1IildCisrCQlw dWJsaWMgY29uc3QgdWludCBTaW5oX3V1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF91dTIiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFNpbmhfdXUyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF92YSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF92YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfeWEiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfeWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TbGVlcCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgU2xlZXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TbG93S2V5c19FbmFi bGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNsb3dLZXlzX0VuYWJsZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1NwZWxsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTcGVsbDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1NwbGl0U2NyZWVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTcGxpdFNjcmVlbjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1N0YW5kYnkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN0YW5kYnk7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9TdGFydCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU3RhcnQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9TdGlja3lLZXlzX0VuYWJsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU3RpY2t5 S2V5c19FbmFibGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TdG9wIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBTdG9wOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3VidGl0bGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFN1YnRpdGxlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3VwZXJfTCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgU3VwZXJfTDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N1cGVyX1IiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFN1cGVyX1I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TdXBwb3J0IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBTdXBwb3J0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3VzcGVuZCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgU3VzcGVuZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N3aXRjaF9WVF8xIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBTd2l0Y2hfVlRfMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N3aXRjaF9WVF8xMCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgU3dpdGNoX1ZUXzEwOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3dpdGNo X1ZUXzExIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTd2l0Y2hfVlRfMTE7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9Td2l0Y2hfVlRfMTIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN3aXRjaF9WVF8xMjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1N3aXRjaF9WVF8yIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTd2l0 Y2hfVlRfMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N3aXRjaF9WVF8zIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBTd2l0Y2hfVlRfMzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N3aXRjaF9WVF80IildCisrCQlwdWJs aWMgY29uc3QgdWludCBTd2l0Y2hfVlRfNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N3aXRjaF9WVF81Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBTd2l0Y2hfVlRfNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N3aXRj aF9WVF82IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTd2l0Y2hfVlRfNjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1N3aXRjaF9WVF83IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTd2l0Y2hfVlRfNzsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1N3aXRjaF9WVF84IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTd2l0Y2hf VlRfODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1N3aXRjaF9WVF85IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBTd2l0Y2hfVlRfOTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N5c19SZXEiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFN5c19SZXE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBUOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfVEhPUk4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRIT1JO OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfVGFiIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUYWI7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9UYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRhYm92ZWRvdDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1Rhc2tQYW5lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUYXNrUGFu ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1RjYXJvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGNhcm9u OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfVGNlZGlsbGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRjZWRp bGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfVGVybWluYWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRl cm1pbmFsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGVybWluYXRlX1NlcnZlciIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgVGVybWluYXRlX1NlcnZlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfYmFodCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9iYWh0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9ib2Jh aW1haSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9ib2JhaW1haTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1RoYWlfY2hvY2hhbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9jaG9jaGFuOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfVGhhaV9jaG9jaGFuZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhh aV9jaG9jaGFuZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfY2hvY2hpbmciKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFRoYWlfY2hvY2hpbmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2Nob2Nob2UiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfY2hvY2hvZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlf ZG9jaGFkYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9kb2NoYWRhOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfVGhhaV9kb2RlayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9kb2RlazsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1RoYWlfZm9mYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9mb2Zh OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9mb2ZhbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhh aV9mb2ZhbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfaG9oaXAiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFRoYWlfaG9oaXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2hvbm9raHVrIildCisrCQlwdWJs aWMgY29uc3QgdWludCBUaGFpX2hvbm9raHVrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9raG9raGFp IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2tob2toYWk7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9U aGFpX2tob2tob24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfa2hva2hvbjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1RoYWlfa2hva2h1YXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfa2hv a2h1YXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2tob2tod2FpIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBUaGFpX2tob2tod2FpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9raG9yYWtoYW5nIildCisr CQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2tob3Jha2hhbmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFp X2tva2FpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2tva2FpOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfVGhhaV9sYWtraGFuZ3lhbyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9sYWtraGFu Z3lhbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbGVrY2hldCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgVGhhaV9sZWtjaGV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9sZWtoYSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgVGhhaV9sZWtoYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbGVraG9rIildCisr CQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2xla2hvazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbGVr a2FvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2xla2thbzsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1RoYWlfbGVrbnVuZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9sZWtudW5nOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfVGhhaV9sZWtwYWV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2xl a3BhZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2xla3NhbSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgVGhhaV9sZWtzYW07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2xla3NpIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBUaGFpX2xla3NpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9sZWtzb25nIildCisr CQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2xla3Nvbmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2xl a3N1biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9sZWtzdW47CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9UaGFpX2xvY2h1bGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbG9jaHVsYTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1RoYWlfbG9saW5nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2xv bGluZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbHUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRo YWlfbHU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX21haWNoYXR0YXdhIildCisrCQlwdWJsaWMgY29u c3QgdWludCBUaGFpX21haWNoYXR0YXdhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9tYWllayIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9tYWllazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbWFp aGFuYWthdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9tYWloYW5ha2F0OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfVGhhaV9tYWloYW5ha2F0X21haXRobyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg VGhhaV9tYWloYW5ha2F0X21haXRobzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbWFpdGFpa2h1Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX21haXRhaWtodTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Ro YWlfbWFpdGhvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX21haXRobzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1RoYWlfbWFpdHJpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX21haXRyaTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1RoYWlfbWFpeWFtb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRo YWlfbWFpeWFtb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX21vbWEiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFRoYWlfbW9tYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbmdvbmd1IildCisrCQlwdWJs aWMgY29uc3QgdWludCBUaGFpX25nb25ndTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbmlraGFoaXQi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbmlraGFoaXQ7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9U aGFpX25vbmVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX25vbmVuOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfVGhhaV9ub251IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX25vbnU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9UaGFpX29hbmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfb2FuZzsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1RoYWlfcGFpeWFubm9pIildCisrCQlwdWJsaWMgY29uc3QgdWludCBU aGFpX3BhaXlhbm5vaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfcGhpbnRodSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgVGhhaV9waGludGh1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9waG9waGFuIild CisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3Bob3BoYW47CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFp X3Bob3BodW5nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3Bob3BodW5nOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfVGhhaV9waG9zYW1waGFvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3Bo b3NhbXBoYW87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3BvcGxhIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBUaGFpX3BvcGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9yb3J1YSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgVGhhaV9yb3J1YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfcnUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFRoYWlfcnU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3NhcmFhIildCisr CQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3NhcmFhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9zYXJh YWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfc2FyYWFhOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf VGhhaV9zYXJhYWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfc2FyYWFlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfVGhhaV9zYXJhYWltYWltYWxhaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhh aV9zYXJhYWltYWltYWxhaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfc2FyYWFpbWFpbXVhbiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9zYXJhYWltYWltdWFuOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf VGhhaV9zYXJhYW0iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfc2FyYWFtOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfVGhhaV9zYXJhZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9zYXJhZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1RoYWlfc2FyYWkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlf c2FyYWk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3NhcmFpaSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgVGhhaV9zYXJhaWk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3NhcmFvIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBUaGFpX3NhcmFvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9zYXJhdSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgVGhhaV9zYXJhdTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfc2FyYXVl IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3NhcmF1ZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Ro YWlfc2FyYXVlZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9zYXJhdWVlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfVGhhaV9zYXJhdXUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfc2FyYXV1 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9zb3J1c2kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRo YWlfc29ydXNpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9zb3NhbGEiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFRoYWlfc29zYWxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9zb3NvIildCisrCQlwdWJs aWMgY29uc3QgdWludCBUaGFpX3Nvc287CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3Nvc3VhIildCisr CQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3Nvc3VhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV90aGFu dGhha2hhdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV90aGFudGhha2hhdDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1RoYWlfdGhvbmFuZ21vbnRobyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhh aV90aG9uYW5nbW9udGhvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV90aG9waHV0aGFvIildCisrCQlw dWJsaWMgY29uc3QgdWludCBUaGFpX3Rob3BodXRoYW87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3Ro b3RoYWhhbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV90aG90aGFoYW47CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9UaGFpX3Rob3RoYW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfdGhvdGhh bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1RoYWlfdGhvdGhvbmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFRoYWlfdGhvdGhvbmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3Rob3RodW5nIildCisrCQlwdWJs aWMgY29uc3QgdWludCBUaGFpX3Rob3RodW5nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV90b3BhdGFr IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3RvcGF0YWs7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9U aGFpX3RvdGFvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3RvdGFvOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfVGhhaV93b3dhZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfd293YWVuOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfVGhhaV95b3lhayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV95 b3lhazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfeW95aW5nIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBUaGFpX3lveWluZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Rob3JuIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBUaG9ybjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RpbWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFRpbWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Ub0RvTGlzdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg VG9Eb0xpc3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Ub29scyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg VG9vbHM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Ub3BNZW51IildCisrCQlwdWJsaWMgY29uc3QgdWludCBU b3BNZW51OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVG91Y2hwYWRPZmYiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFRvdWNocGFkT2ZmOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVG91Y2hwYWRPbiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgVG91Y2hwYWRPbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RvdWNocGFkVG9nZ2xlIild CisrCQlwdWJsaWMgY29uc3QgdWludCBUb3VjaHBhZFRvZ2dsZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Rv dXJva3UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRvdXJva3U7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9U cmF2ZWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRyYXZlbDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Rz bGFzaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVHNsYXNoOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VXQiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgVVdCOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWFjdXRlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBVYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VYmVsb3dkb3QiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFViZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VicmV2ZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgVWJyZXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWNpcmN1bWZsZXgiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFVjaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWRpYWVyZXNp cyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWRpYWVyZXNpczsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Vk b3VibGVhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWRvdWJsZWFjdXRlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfVWdyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVZ3JhdmU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9VaG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWhvb2s7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9VaG9ybiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWhvcm47CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9VaG9ybmFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVaG9ybmFjdXRlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfVWhvcm5iZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWhvcm5iZWxv d2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1Vob3JuZ3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFVob3JuZ3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VaG9ybmhvb2siKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFVob3JuaG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Vob3JudGlsZGUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFVob3JudGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Va3JhaW5pYW5fR0hFX1dJ VEhfVVBUVVJOIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVa3JhaW5pYW5fR0hFX1dJVEhfVVBU VVJOOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfVWtyYWluaWFuX0kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFVrcmFpbmlhbl9JOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWtyYWluaWFuX0lFIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBVa3JhaW5pYW5fSUU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Va3JhaW5pYW5fWUkiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFVrcmFpbmlhbl9ZSTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VrcmFp bmlhbl9naGVfd2l0aF91cHR1cm4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVrcmFpbmlhbl9n aGVfd2l0aF91cHR1cm47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Va3JhaW5pYW5faSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgVWtyYWluaWFuX2k7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Va3JhaW5pYW5faWUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFVrcmFpbmlhbl9pZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VrcmFp bmlhbl95aSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWtyYWluaWFuX3lpOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfVWtyYW5pYW5fSSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWtyYW5pYW5fSTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1VrcmFuaWFuX0pFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVa3Jhbmlh bl9KRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1VrcmFuaWFuX1lJIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBVa3Jhbmlhbl9ZSTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VrcmFuaWFuX2kiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFVrcmFuaWFuX2k7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Va3Jhbmlhbl9qZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgVWtyYW5pYW5famU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Va3Jhbmlhbl95 aSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWtyYW5pYW5feWk7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9V bWFjcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVbWFjcm9uOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf VW5kbyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVW5kbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VuZ3Jh YiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVW5ncmFiOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVW9nb25l ayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVW9nb25lazsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VwIild CisrCQlwdWJsaWMgY29uc3QgdWludCBVcDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VyaW5nIildCisrCQlw dWJsaWMgY29uc3QgdWludCBVcmluZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VzZXIxS0IiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFVzZXIxS0I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Vc2VyMktCIildCisrCQlw dWJsaWMgY29uc3QgdWludCBVc2VyMktCOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVXNlclBCIildCisrCQlw dWJsaWMgY29uc3QgdWludCBVc2VyUEI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VdGlsZGUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFV0aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1YiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9WZW5kb3JIb21lIildCisrCQlwdWJsaWMgY29u c3QgdWludCBWZW5kb3JIb21lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVmlkZW8iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFZpZGVvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVmlldyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgVmlldzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1ZvaWRTeW1ib2wiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFZvaWRTeW1ib2w7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9XIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBXOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfV0xBTiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgV0xB TjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1dXVyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgV1dXOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfV2FjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBXYWN1dGU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9XYWtlVXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFdha2VVcDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1djaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBXY2lyY3VtZmxl eDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1dkaWFlcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFdk aWFlcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9XZWJDYW0iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFdlYkNhbTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1dncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg V2dyYXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfV2hlZWxCdXR0b24iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFdoZWVsQnV0dG9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfV2luZG93Q2xlYXIiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFdpbmRvd0NsZWFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfV29uU2lnbiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgV29uU2lnbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1dvcmQiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFdvcmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9YIildCisrCQlwdWJsaWMgY29u c3QgdWludCBYOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWGFib3ZlZG90IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBYYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9YZmVyIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBYZmVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgWTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1lhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgWWFjdXRlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfWWJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBZYmVsb3dk b3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9ZY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg WWNpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ZZGlhZXJlc2lzIildCisrCQlwdWJsaWMgY29u c3QgdWludCBZZGlhZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWWVsbG93IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBZZWxsb3c7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ZZ3JhdmUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFlncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1lob29rIildCisrCQlwdWJsaWMgY29u c3QgdWludCBZaG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1l0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgWXRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg WjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1phYm92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgWmFi b3ZlZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWmFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBa YWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9aY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFpj YXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1plbl9Lb2hvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBa ZW5fS29obzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1plbmtha3UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFplbmtha3U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9aZW5rYWt1X0hhbmtha3UiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFplbmtha3VfSGFua2FrdTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1pvb21JbiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgWm9vbUluOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWm9vbU91dCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgWm9vbU91dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1pzdHJva2UiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFpzdHJva2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hIildCisrCQlwdWJs aWMgY29uc3QgdWludCBhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYWFjdXRlIildCisrCQlwdWJsaWMgY29u c3QgdWludCBhYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hYmVsb3dkb3QiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGFiZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Fib3ZlZG90IildCisrCQlwdWJs aWMgY29uc3QgdWludCBhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FicmV2ZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYWJyZXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYWJyZXZlYWN1dGUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGFicmV2ZWFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYWJyZXZlYmVs b3dkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFicmV2ZWJlbG93ZG90OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYWJyZXZlZ3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFicmV2ZWdyYXZlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYWJyZXZlaG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYWJyZXZl aG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2FicmV2ZXRpbGRlIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBhYnJldmV0aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FjaXJjdW1mbGV4IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBhY2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FjaXJjdW1mbGV4YWN1dGUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFjaXJjdW1mbGV4YWN1dGU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9hY2lyY3VtZmxleGJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBhY2lyY3VtZmxl eGJlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYWNpcmN1bWZsZXhncmF2ZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYWNpcmN1bWZsZXhncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FjaXJjdW1mbGV4 aG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYWNpcmN1bWZsZXhob29rOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYWNpcmN1bWZsZXh0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYWNpcmN1bWZs ZXh0aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBh Y3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2FkaWFlcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGFkaWFlcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9hZ3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFncmF2 ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2Fob29rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBhaG9vazsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2FtYWNyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFtYWNyb247 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9hbXBlcnNhbmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFtcGVy c2FuZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2FvZ29uZWsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFv Z29uZWs7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hcG9zdHJvcGhlIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBhcG9zdHJvcGhlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYXBwcm94ZXEiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGFwcHJveGVxOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYXBwcm94aW1hdGUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGFwcHJveGltYXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYXJpbmciKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGFyaW5nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYXNjaWljaXJjdW0iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGFzY2lpY2lyY3VtOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYXNjaWl0aWxk ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYXNjaWl0aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Fz dGVyaXNrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBhc3RlcmlzazsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2F0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBhdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2F0aWxkZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYXRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JhYm92ZWRvdCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYmFib3ZlZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYmFja3NsYXNoIildCisr CQlwdWJsaWMgY29uc3QgdWludCBiYWNrc2xhc2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9iYWxsb3Rjcm9z cyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYmFsbG90Y3Jvc3M7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i YXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JlY2F1c2Ui KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJlY2F1c2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ibGFuayIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYmxhbms7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ib3RpbnRlZ3Jh bCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYm90aW50ZWdyYWw7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i b3RsZWZ0cGFyZW5zIildCisrCQlwdWJsaWMgY29uc3QgdWludCBib3RsZWZ0cGFyZW5zOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYm90bGVmdHNxYnJhY2tldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYm90 bGVmdHNxYnJhY2tldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JvdGxlZnRzdW1tYXRpb24iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJvdGxlZnRzdW1tYXRpb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ib3RyaWdo dHBhcmVucyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYm90cmlnaHRwYXJlbnM7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9ib3RyaWdodHNxYnJhY2tldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYm90cmln aHRzcWJyYWNrZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ib3RyaWdodHN1bW1hdGlvbiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYm90cmlnaHRzdW1tYXRpb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ib3R0Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBib3R0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYm90dmVydHN1bW1h dGlvbmNvbm5lY3RvciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYm90dmVydHN1bW1hdGlvbmNv bm5lY3RvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWNlbGVmdCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhY2VsZWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhY2VyaWdodCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhY2VyaWdodDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWNrZXRsZWZ0IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFja2V0bGVmdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWNrZXRyaWdo dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhY2tldHJpZ2h0OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9ibGFuayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9ibGFuazsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90XzEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90XzE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdF8xMCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RfMTA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdF8yIild CisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdF8yOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RfMyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RfMzsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JyYWlsbGVfZG90XzQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90XzQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdF81IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBicmFpbGxlX2RvdF81OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RfNiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RfNjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90XzciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90Xzc7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdF84IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdF84 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RfOSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RfOTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xIildCisrCQlwdWJs aWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c18xMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzEyMyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzEyMzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM0IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c18xMjM0NSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzQ1OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzQ1NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzEyMzQ1NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM0NTY3 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNDU2NzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c18xMjM0NTY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJh aWxsZV9kb3RzXzEyMzQ1Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzQ1Njgi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM0NTY4OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzEyMzQ1NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RzXzEyMzQ1NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM0NTc4IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNDU3ODsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2JyYWlsbGVfZG90c18xMjM0NTgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18xMjM0NTg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNDYiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM0NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90c18xMjM0NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM0Njc7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNDY3OCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzQ2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf MTIzNDY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNDY4OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzQ3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMTIzNDc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNDc4Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNDc4OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzEyMzQ4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfMTIzNDg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfMTIzNTYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM1NjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM1NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90c18xMjM1Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNTY3 OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzU2Nzg7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNTY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfMTIzNTY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzU3IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNTc7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfMTIzNTc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNf MTIzNTc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzU4IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNTg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfMTIzNiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzY7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c18xMjM2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM2NzgiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM2Nzg7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9icmFpbGxlX2RvdHNfMTIzNjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18xMjM2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM3IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c18xMjM3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzc4OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c18xMjM4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18xMjQ1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI0NTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjQ1NiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzEyNDU2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNDU2 NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNDU2NzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c18xMjQ1Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfMTI0NTY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjQ1NjgiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjQ1Njg7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9icmFpbGxlX2RvdHNfMTI0NTciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18xMjQ1NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjQ1NzgiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjQ1Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxl X2RvdHNfMTI0NTgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjQ1ODsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjQ2IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfMTI0NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjQ2NyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNDY3OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzEyNDY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzEyNDY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjQ2OCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNDY4OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzEyNDciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjQ3Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNDc4IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfMTI0Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI0OCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNDg7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9icmFpbGxlX2RvdHNfMTI1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNf MTI1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNTYiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c18xMjU2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEy NTY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI1Njc7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfMTI1Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfMTI1Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNTY4IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI1Njg7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfMTI1NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEy NTc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI1NzgiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c18xMjU3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18x MjU4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI1ODsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c18xMjYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18xMjY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI2NyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNjc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfMTI2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjY3ODsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMTI2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjciKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjc7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMTI3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNzg7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI4IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfMTI4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzIildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMTM0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM0Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNDUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90c18xMzQ1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNDU2Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM0NTY7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9icmFpbGxlX2RvdHNfMTM0NTY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfMTM0NTY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNDU2NzgiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzQ1Njc4OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzEzNDU2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEz NDU2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzQ1NyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNDU3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzEzNDU3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNDU3ODsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzQ1OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzEzNDU4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNDYiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzQ2OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzEzNDY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNf MTM0Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM0Njc4IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM0Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9k b3RzXzEzNDY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM0Njg7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM0NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzEzNDc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM0NzgiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzQ3ODsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2JyYWlsbGVfZG90c18xMzQ4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNf MTM0ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c18xMzU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM1 NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNTY7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMTM1NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18xMzU2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzU2NzgiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzU2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMTM1NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzU2 ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzU3IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBicmFpbGxlX2RvdHNfMTM1NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzU3 OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNTc4OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzEzNTgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18xMzU4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c18xMzY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM2NzsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJh aWxsZV9kb3RzXzEzNjc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNjgiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzY4OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzEzNyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNzsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzc4IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfMTM3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzgiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzg7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfMTQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNDUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90c18xNDU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTQ1NiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE0NTY7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfMTQ1NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18x NDU2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNDU2NzgiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c18xNDU2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfMTQ1NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNDU2ODsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNDU3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMTQ1NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNDU3OCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE0NTc4OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzE0NTgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18x NDU4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE0NiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzE0NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNDY3 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTQ2NzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c18xNDY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzE0Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE0NjgiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNDY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9k b3RzXzE0NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE0NzsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JyYWlsbGVfZG90c18xNDc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfMTQ3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNDgiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNDg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxl X2RvdHNfMTUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JyYWlsbGVfZG90c18xNTYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18xNTY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTU2NyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE1Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxl X2RvdHNfMTU2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNTY3ODsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNTY4IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfMTU2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNTciKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNTc7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfMTU3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE1 Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTU4IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBicmFpbGxlX2RvdHNfMTU4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE2Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTY7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfMTY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTY3 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyYWlsbGVfZG90c18xNjc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE2OCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE2ODsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2JyYWlsbGVfZG90c18xNyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE3 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE3OCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzE3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xOCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE4OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfMjM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM0IildCisrCQlwdWJs aWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9k b3RzXzIzNDUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzQ1OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNDU2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMjM0NTY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM0NTY3Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM0NTY3OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzIzNDU2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18yMzQ1Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNDU2OCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNDU2ODsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90c18yMzQ1NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIz NDU3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNDU3OCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNDU3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c18yMzQ1OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNDU4OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNDYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c18yMzQ2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNDY3IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM0Njc7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfMjM0Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNf MjM0Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNDY4IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM0Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfMjM0NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNDc7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM0NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c18yMzQ3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzQ4IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM0ODsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90c18yMzUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM1NiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzIzNTY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM1Njci KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzU2NzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c18yMzU2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18yMzU2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM1NjgiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzU2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18yMzU3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM1NzsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzU3OCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzIzNTc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNTgi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzU4OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzIzNiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rz XzIzNjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzY3IildCisrCQlwdWJsaWMgY29u c3QgdWludCBicmFpbGxlX2RvdHNfMjM2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18y MzY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNjc4OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18yMzY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90c18yMzc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM3ODsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c18yMzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjQiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90c18yNDUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNDU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjQ1NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJh aWxsZV9kb3RzXzI0NTY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjQ1NjciKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNDU2NzsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90c18yNDU2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18y NDU2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjQ1NjgiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c18yNDU2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c18yNDU3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjQ1NzsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JyYWlsbGVfZG90c18yNDU3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJh aWxsZV9kb3RzXzI0NTc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI0NTgiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNDU4OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzI0NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI0NjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNDY3IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfMjQ2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNDY3OCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI0Njc4OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzI0NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18yNDY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI0NyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI0NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18y NDc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjQ3ODsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c18yNDgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18yNDg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c18yNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18y NTYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNTY7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMjU2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzI1Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjU2NzgiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNTY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90c18yNTY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjU2ODsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNTciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c18yNTc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjU3OCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI1Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMjU4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjU4Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMjY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjY3IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjY3OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzI2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNjc4Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzI2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI3OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzI3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI3ODsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yOCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJh aWxsZV9kb3RzXzI4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzMiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzM0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzQ7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMzQ1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfMzQ1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM0NTYiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c18zNDU2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzM0NTY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzQ1Njc7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzQ1Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMzQ1Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM0NTY4Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzQ1Njg7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9icmFpbGxlX2RvdHNfMzQ1NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rz XzM0NTc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzQ1NzgiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c18zNDU3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c18zNDU4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzQ1ODsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JyYWlsbGVfZG90c18zNDYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18zNDY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzQ2NyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM0Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxl X2RvdHNfMzQ2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNDY3ODsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNDY4IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfMzQ2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNDciKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNDc7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfMzQ3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM0 Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzQ4IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBicmFpbGxlX2RvdHNfMzQ4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM1Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfMzU2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzU2 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM1NjciKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyYWlsbGVfZG90c18zNTY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM1Njc4 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzU2Nzg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMzU2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzM1Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzU3IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMzU3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzM1NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNTc4OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM1OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RzXzM1ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzM2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM2NzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c18zNjc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxl X2RvdHNfMzY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNjgiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNjg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfMzciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c18zNzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18zNzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzgiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c18zODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c180 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2JyYWlsbGVfZG90c180NSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzQ1 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzQ1NiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzQ1NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c180NTY3Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNDU2NzsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2JyYWlsbGVfZG90c180NTY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rz XzQ1Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzQ1NjgiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c180NTY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzQ1NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzQ1NzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c180NTc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxl X2RvdHNfNDU3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c180NTgiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c180NTg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfNDYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c180NjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c180NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c180Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNDY3OCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzQ2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfNDY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNDY4OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzQ3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxl X2RvdHNfNDc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNDc4IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfNDc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzQ4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNDg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rz XzU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNTYiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyYWlsbGVfZG90c181NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c181NjciKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c181Njc7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfNTY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzU2 Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNTY4IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBicmFpbGxlX2RvdHNfNTY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzU3Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNTc7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfNTc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNTc4 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzU4IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfNTg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxl X2RvdHNfNjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c182NzsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JyYWlsbGVfZG90c182NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c182Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNjgiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c182ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c183IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c183OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rz Xzc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzgiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyYWlsbGVfZG90c184OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJldmUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyZXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJva2VuYmFyIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicm9rZW5iYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jIildCisrCQlwdWJsaWMgY29u c3QgdWludCBjOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY19oIildCisrCQlwdWJsaWMgY29uc3QgdWludCBj X2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9jYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNh Ym92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2NhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg Y2FjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY2FyZW9mIildCisrCQlwdWJsaWMgY29uc3QgdWludCBj YXJlb2Y7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jYXJldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY2Fy ZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9jYXJvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgY2Fyb247 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9jY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNjYXJvbjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2NjZWRpbGxhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBjY2VkaWxs YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2NjaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBj Y2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2NlZGlsbGEiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGNlZGlsbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jZW50IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBjZW50OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNoOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfY2hlY2tlcmJvYXJkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBjaGVj a2VyYm9hcmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jaGVja21hcmsiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGNoZWNrbWFyazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2NpcmNsZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgY2lyY2xlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY2x1YiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgY2x1YjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2NvbG9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBj b2xvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2NvbW1hIildCisrCQlwdWJsaWMgY29uc3QgdWludCBjb21t YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2NvbnRhaW5zYXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNv bnRhaW5zYXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jb3B5cmlnaHQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGNvcHlyaWdodDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2NyIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBjcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2Nyb3NzaW5nbGluZXMiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGNyb3NzaW5nbGluZXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jdWJlcm9vdCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgY3ViZXJvb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jdXJyZW5jeSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgY3VycmVuY3k7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jdXJzb3IiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGN1cnNvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2QiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGRhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RhZ2dlciIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgZGFnZ2VyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGNhcm9uIildCisrCQlwdWJsaWMgY29u c3QgdWludCBkY2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX0EiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGRlYWRfQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfRSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgZGVhZF9FOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9JIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBkZWFkX0k7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX08iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGRlYWRfTzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfVSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgZGVhZF9VOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9hIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBkZWFkX2E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2Fib3ZlY29tbWEiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGRlYWRfYWJvdmVjb21tYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfYWJvdmVkb3Qi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9k ZWFkX2Fib3ZlcmV2ZXJzZWRjb21tYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9hYm92 ZXJldmVyc2VkY29tbWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2Fib3ZlcmluZyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgZGVhZF9hYm92ZXJpbmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2Fib3Zl dmVydGljYWxsaW5lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2Fib3ZldmVydGljYWxs aW5lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9hY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg ZGVhZF9hY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfYmVsb3dicmV2ZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgZGVhZF9iZWxvd2JyZXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9iZWxvd2Np cmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfYmVsb3djaXJjdW1mbGV4Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfZGVhZF9iZWxvd2NvbW1hIildCisrCQlwdWJsaWMgY29uc3QgdWludCBk ZWFkX2JlbG93Y29tbWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2JlbG93ZGlhZXJlc2lzIildCisr CQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2JlbG93ZGlhZXJlc2lzOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf ZGVhZF9iZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9iZWxvd2RvdDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2RlYWRfYmVsb3dtYWNyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRl YWRfYmVsb3dtYWNyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2JlbG93cmluZyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgZGVhZF9iZWxvd3Jpbmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2JlbG93 dGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfYmVsb3d0aWxkZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2RlYWRfYmVsb3d2ZXJ0aWNhbGxpbmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRl YWRfYmVsb3d2ZXJ0aWNhbGxpbmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2JyZXZlIildCisrCQlw dWJsaWMgY29uc3QgdWludCBkZWFkX2JyZXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9jYXBpdGFs X3NjaHdhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2NhcGl0YWxfc2Nod2E7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9kZWFkX2Nhcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2Nhcm9u OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9jZWRpbGxhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBk ZWFkX2NlZGlsbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2NpcmN1bWZsZXgiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGRlYWRfY2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfY3VycmVu Y3kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfY3VycmVuY3k7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9kZWFkX2Rhc2lhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2Rhc2lhOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfZGVhZF9kaWFlcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfZGlh ZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9kb3VibGVhY3V0ZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgZGVhZF9kb3VibGVhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfZG91YmxlZ3Jh dmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfZG91YmxlZ3JhdmU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9kZWFkX2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2RlYWRfZ3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfZ3JhdmU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9kZWFkX2dyZWVrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2dyZWVr OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9ob29rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFk X2hvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2hvcm4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGRlYWRfaG9ybjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfaSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgZGVhZF9pOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9pbnZlcnRlZGJyZXZlIildCisrCQlwdWJs aWMgY29uc3QgdWludCBkZWFkX2ludmVydGVkYnJldmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2lv dGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfaW90YTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Rl YWRfbG9uZ3NvbGlkdXNvdmVybGF5IildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2xvbmdz b2xpZHVzb3ZlcmxheTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfbG93bGluZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgZGVhZF9sb3dsaW5lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9tYWNyb24iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfbWFjcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9v IildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX287CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX29n b25layIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9vZ29uZWs7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9kZWFkX3BlcmlzcG9tZW5pIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX3BlcmlzcG9t ZW5pOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9wc2lsaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg ZGVhZF9wc2lsaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfc2VtaXZvaWNlZF9zb3VuZCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgZGVhZF9zZW1pdm9pY2VkX3NvdW5kOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf ZGVhZF9zbWFsbF9zY2h3YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9zbWFsbF9zY2h3 YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2RlYWRfc3Ryb2tlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBk ZWFkX3N0cm9rZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfdGlsZGUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGRlYWRfdGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX3UiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGRlYWRfdTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfdm9pY2VkX3NvdW5kIildCisr CQlwdWJsaWMgY29uc3QgdWludCBkZWFkX3ZvaWNlZF9zb3VuZDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Rl Y2ltYWxwb2ludCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVjaW1hbHBvaW50OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfZGVncmVlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWdyZWU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9kaWFlcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRpYWVyZXNpczsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2RpYW1vbmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRpYW1vbmQ7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9kaWdpdHNwYWNlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkaWdpdHNw YWNlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfZGludGVncmFsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBk aW50ZWdyYWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kaXZpc2lvbiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgZGl2aXNpb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kb2xsYXIiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGRvbGxhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RvdWJiYXNlbGluZWRvdCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgZG91YmJhc2VsaW5lZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZG91YmxlYWN1dGUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRvdWJsZWFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZG91 YmxlZGFnZ2VyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkb3VibGVkYWdnZXI7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9kb3VibGVsb3dxdW90ZW1hcmsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRvdWJs ZWxvd3F1b3RlbWFyazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Rvd25hcnJvdyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgZG93bmFycm93OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZG93bmNhcmV0IildCisrCQlwdWJs aWMgY29uc3QgdWludCBkb3duY2FyZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kb3duc2hvZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgZG93bnNob2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kb3duc3RpbGUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGRvd25zdGlsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Rvd250YWNr IildCisrCQlwdWJsaWMgY29uc3QgdWludCBkb3dudGFjazsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RzdHJv a2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRzdHJva2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lIild CisrCQlwdWJsaWMgY29uc3QgdWludCBlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZWFib3ZlZG90IildCisr CQlwdWJsaWMgY29uc3QgdWludCBlYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lYWN1dGUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGVhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ViZWxvd2RvdCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgZWJlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZWNhcm9u IildCisrCQlwdWJsaWMgY29uc3QgdWludCBlY2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lY2lyY3Vt ZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZWNpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9lY2lyY3VtZmxleGFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlY2lyY3VtZmxleGFj dXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfZWNpcmN1bWZsZXhiZWxvd2RvdCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgZWNpcmN1bWZsZXhiZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VjaXJjdW1mbGV4 Z3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVjaXJjdW1mbGV4Z3JhdmU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9lY2lyY3VtZmxleGhvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVjaXJjdW1m bGV4aG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VjaXJjdW1mbGV4dGlsZGUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGVjaXJjdW1mbGV4dGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lZGlhZXJlc2lzIild CisrCQlwdWJsaWMgY29uc3QgdWludCBlZGlhZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZWdyYXZl IildCisrCQlwdWJsaWMgY29uc3QgdWludCBlZ3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9laG9vayIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgZWhvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9laWdodHN1YnNj cmlwdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZWlnaHRzdWJzY3JpcHQ7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9laWdodHN1cGVyaW9yIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlaWdodHN1cGVyaW9y OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfZWxlbWVudG9mIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlbGVt ZW50b2Y7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lbGxpcHNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg ZWxsaXBzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lbTNzcGFjZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgZW0zc3BhY2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lbTRzcGFjZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgZW00c3BhY2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lbWFjcm9uIildCisrCQlwdWJsaWMgY29u c3QgdWludCBlbWFjcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW1kYXNoIildCisrCQlwdWJsaWMgY29u c3QgdWludCBlbWRhc2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lbWZpbGxlZGNpcmNsZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgZW1maWxsZWRjaXJjbGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lbWZpbGxlZHJl Y3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVtZmlsbGVkcmVjdDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2Vtb3BlbmNpcmNsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZW1vcGVuY2lyY2xlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfZW1vcGVucmVjdGFuZ2xlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlbW9w ZW5yZWN0YW5nbGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lbXB0eXNldCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgZW1wdHlzZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lbXNwYWNlIildCisrCQlwdWJsaWMgY29u c3QgdWludCBlbXNwYWNlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW5kYXNoIildCisrCQlwdWJsaWMgY29u c3QgdWludCBlbmRhc2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lbmZpbGxlZGNpcmNidWxsZXQiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGVuZmlsbGVkY2lyY2J1bGxldDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Vu ZmlsbGVkc3FidWxsZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVuZmlsbGVkc3FidWxsZXQ7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9lbmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVuZzsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2Vub3BlbmNpcmNidWxsZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVub3Bl bmNpcmNidWxsZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lbm9wZW5zcXVhcmVidWxsZXQiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGVub3BlbnNxdWFyZWJ1bGxldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Vuc3Bh Y2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVuc3BhY2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lb2dv bmVrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlb2dvbmVrOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZXF1 YWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVxdWFsOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZXRoIild CisrCQlwdWJsaWMgY29uc3QgdWludCBldGg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ldGlsZGUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGV0aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2V4Y2xhbSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgZXhjbGFtOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZXhjbGFtZG93biIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgZXhjbGFtZG93bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2V6aCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgZXpoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ZhYm92ZWRvdCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgZmFib3ZlZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZmVtYWxlc3ltYm9sIildCisrCQlw dWJsaWMgY29uc3QgdWludCBmZW1hbGVzeW1ib2w7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9mZiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgZmY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9maWdkYXNoIildCisrCQlwdWJs aWMgY29uc3QgdWludCBmaWdkYXNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZmlsbGVkbGVmdHRyaWJ1bGxl dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZmlsbGVkbGVmdHRyaWJ1bGxldDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2ZpbGxlZHJlY3RidWxsZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGZpbGxlZHJl Y3RidWxsZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9maWxsZWRyaWdodHRyaWJ1bGxldCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgZmlsbGVkcmlnaHR0cmlidWxsZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9maWxs ZWR0cmlidWxsZXRkb3duIildCisrCQlwdWJsaWMgY29uc3QgdWludCBmaWxsZWR0cmlidWxsZXRk b3duOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfZmlsbGVkdHJpYnVsbGV0dXAiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGZpbGxlZHRyaWJ1bGxldHVwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZml2ZWVpZ2h0aHMiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGZpdmVlaWdodGhzOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZml2ZXNp eHRocyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZml2ZXNpeHRoczsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2ZpdmVzdWJzY3JpcHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGZpdmVzdWJzY3JpcHQ7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9maXZlc3VwZXJpb3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGZpdmVz dXBlcmlvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ZvdXJmaWZ0aHMiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGZvdXJmaWZ0aHM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9mb3Vyc3Vic2NyaXB0IildCisrCQlwdWJs aWMgY29uc3QgdWludCBmb3Vyc3Vic2NyaXB0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZm91cnN1cGVyaW9y IildCisrCQlwdWJsaWMgY29uc3QgdWludCBmb3Vyc3VwZXJpb3I7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9m b3VydGhyb290IildCisrCQlwdWJsaWMgY29uc3QgdWludCBmb3VydGhyb290OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfZnVuY3Rpb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGZ1bmN0aW9uOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZzsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2dh Ym92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZ2Fib3ZlZG90OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfZ2JyZXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBnYnJldmU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9nY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGdjYXJvbjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2djZWRpbGxhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBnY2VkaWxsYTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2djaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBnY2lyY3VtZmxleDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2dyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBncmF2ZTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2dyZWF0ZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGdyZWF0ZXI7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9ncmVhdGVydGhhbmVxdWFsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBncmVh dGVydGhhbmVxdWFsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZ3VpbGxlbW90bGVmdCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgZ3VpbGxlbW90bGVmdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2d1aWxsZW1vdHJpZ2h0 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBndWlsbGVtb3RyaWdodDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oYWlyc3BhY2Ui KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhhaXJzcGFjZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hjaXJj dW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBoY2lyY3VtZmxleDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2hlYXJ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWFydDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2hlYnJld19hbGVwaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X2FsZXBoOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfaGVicmV3X2F5aW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19h eWluOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X2JldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg aGVicmV3X2JldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19iZXRoIildCisrCQlwdWJsaWMgY29u c3QgdWludCBoZWJyZXdfYmV0aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19jaGV0IildCisrCQlw dWJsaWMgY29uc3QgdWludCBoZWJyZXdfY2hldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19kYWxl dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X2RhbGV0OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf aGVicmV3X2RhbGV0aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X2RhbGV0aDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2hlYnJld19kb3VibGVsb3dsaW5lIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBoZWJyZXdfZG91YmxlbG93bGluZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19maW5hbGthcGgi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19maW5hbGthcGg7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9oZWJyZXdfZmluYWxtZW0iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19maW5hbG1l bTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19maW5hbG51biIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgaGVicmV3X2ZpbmFsbnVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X2ZpbmFscGUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19maW5hbHBlOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3 X2ZpbmFsemFkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X2ZpbmFsemFkZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2hlYnJld19maW5hbHphZGkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhl YnJld19maW5hbHphZGk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfZ2ltZWwiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGhlYnJld19naW1lbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19naW1tZWwi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19naW1tZWw7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9o ZWJyZXdfaGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19oZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2hlYnJld19oZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19oZXQ7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9oZWJyZXdfa2FwaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X2th cGg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfa3VmIildCisrCQlwdWJsaWMgY29uc3QgdWludCBo ZWJyZXdfa3VmOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X2xhbWVkIildCisrCQlwdWJsaWMgY29u c3QgdWludCBoZWJyZXdfbGFtZWQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfbWVtIildCisrCQlw dWJsaWMgY29uc3QgdWludCBoZWJyZXdfbWVtOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X251biIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X251bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJl d19wZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X3BlOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf aGVicmV3X3FvcGgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19xb3BoOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfaGVicmV3X3Jlc2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19yZXNo OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X3NhbWVjaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg aGVicmV3X3NhbWVjaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19zYW1la2giKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGhlYnJld19zYW1la2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfc2hpbiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X3NoaW47CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJy ZXdfdGFmIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfdGFmOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfaGVicmV3X3RhdyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X3RhdzsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2hlYnJld190ZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld190ZXQ7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfdGV0aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVi cmV3X3RldGg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfd2F3IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBoZWJyZXdfd2F3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X3lvZCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgaGVicmV3X3lvZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld196YWRlIildCisr CQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfemFkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld196 YWRpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfemFkaTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2hlYnJld196YWluIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfemFpbjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2hlYnJld196YXlpbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X3ph eWluOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfaGV4YWdyYW0iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhl eGFncmFtOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaG9yaXpjb25uZWN0b3IiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGhvcml6Y29ubmVjdG9yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaG9yaXpsaW5lc2NhbjEiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGhvcml6bGluZXNjYW4xOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaG9y aXpsaW5lc2NhbjMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhvcml6bGluZXNjYW4zOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfaG9yaXpsaW5lc2NhbjUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhvcml6 bGluZXNjYW41OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaG9yaXpsaW5lc2NhbjciKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGhvcml6bGluZXNjYW43OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaG9yaXpsaW5lc2Nhbjki KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhvcml6bGluZXNjYW45OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf aHN0cm9rZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaHN0cm9rZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2h0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBodDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2h5cGhlbiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgaHlwaGVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2lUb3VjaCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgaVRvdWNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaWFjdXRlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBpYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pYmVsb3dkb3QiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGliZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2licmV2ZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgaWJyZXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaWNpcmN1bWZsZXgiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGljaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaWRlbnRpY2Fs IildCisrCQlwdWJsaWMgY29uc3QgdWludCBpZGVudGljYWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pZGlh ZXJlc2lzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBpZGlhZXJlc2lzOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfaWRvdGxlc3MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGlkb3RsZXNzOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfaWZvbmx5aWYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGlmb25seWlmOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfaWdyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBpZ3JhdmU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9paG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaWhvb2s7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9pbWFjcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBpbWFjcm9uOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfaW1wbGllcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaW1wbGllczsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2luY2x1ZGVkaW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGluY2x1ZGVkaW47Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9pbmNsdWRlcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaW5jbHVkZXM7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9pbmZpbml0eSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaW5maW5p dHk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9pbnRlZ3JhbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaW50 ZWdyYWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pbnRlcnNlY3Rpb24iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGludGVyc2VjdGlvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2lvZ29uZWsiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGlvZ29uZWs7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pdGlsZGUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGl0aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2oiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGo7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9qY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgamNpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9qb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGpvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGs7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9rYW5hX0EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfQTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2thbmFfQ0hJIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX0NISTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2thbmFfRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9FOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfa2FuYV9GVSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9GVTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2thbmFfSEEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfSEE7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9rYW5hX0hFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX0hF OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9ISSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9I STsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2thbmFfSE8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFf SE87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX0hVIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5h X0hVOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9JIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5h X0k7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX0tBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5h X0tBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9LRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2Fu YV9LRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfS0kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGth bmFfS0k7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX0tPIildCisrCQlwdWJsaWMgY29uc3QgdWludCBr YW5hX0tPOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9LVSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg a2FuYV9LVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfTUEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGthbmFfTUE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX01FIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBrYW5hX01FOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9NSSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQga2FuYV9NSTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfTU8iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGthbmFfTU87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX01VIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBrYW5hX01VOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9OIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBrYW5hX047CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX05BIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBrYW5hX05BOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9ORSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQga2FuYV9ORTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfTkkiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGthbmFfTkk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX05PIildCisrCQlwdWJsaWMgY29u c3QgdWludCBrYW5hX05POworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9OVSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQga2FuYV9OVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfTyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQga2FuYV9POworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9SQSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQga2FuYV9SQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfUkUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGthbmFfUkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX1JJIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBrYW5hX1JJOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9STyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQga2FuYV9STzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfUlUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGthbmFfUlU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX1NBIildCisrCQlwdWJs aWMgY29uc3QgdWludCBrYW5hX1NBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9TRSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQga2FuYV9TRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfU0hJIildCisrCQlw dWJsaWMgY29uc3QgdWludCBrYW5hX1NISTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfU08iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGthbmFfU087CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX1NVIildCisr CQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1NVOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9UQSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9UQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfVEUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfVEU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX1RJIild CisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1RJOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9UTyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9UTzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfVFNV IildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1RTVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFf VFUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfVFU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5h X1UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFf V0EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfV0E7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5h X1dPIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1dPOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2Fu YV9ZQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9ZQTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2th bmFfWU8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfWU87CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9r YW5hX1lVIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1lVOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf a2FuYV9hIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX2E7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9r YW5hX2Nsb3NpbmdicmFja2V0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX2Nsb3Npbmdi cmFja2V0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9jb21tYSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQga2FuYV9jb21tYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfY29uanVuY3RpdmUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGthbmFfY29uanVuY3RpdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX2Ui KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfZnVs bHN0b3AiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfZnVsbHN0b3A7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9rYW5hX2kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfaTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2thbmFfbWlkZGxlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX21pZGRsZWRv dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2thbmFfbyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9v OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9vcGVuaW5nYnJhY2tldCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQga2FuYV9vcGVuaW5nYnJhY2tldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfc3dpdGNoIild CisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX3N3aXRjaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFf dHN1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX3RzdTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2th bmFfdHUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfdHU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9r YW5hX3UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfdTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2th bmFfeWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfeWE7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9r YW5hX3lvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX3lvOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf a2FuYV95dSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV95dTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2thcHBhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYXBwYTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2tj ZWRpbGxhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrY2VkaWxsYTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2tyYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga3JhOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xhY3V0ZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgbGFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbGF0aW5jcm9zcyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgbGF0aW5jcm9zczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xiZWxvd2RvdCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgbGJlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbGNhcm9u IildCisrCQlwdWJsaWMgY29uc3QgdWludCBsY2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sY2VkaWxs YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbGNlZGlsbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sZWZ0 YW5nbGVicmFja2V0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBsZWZ0YW5nbGVicmFja2V0Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfbGVmdGFycm93IildCisrCQlwdWJsaWMgY29uc3QgdWludCBsZWZ0YXJy b3c7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9sZWZ0Y2FyZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxl ZnRjYXJldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xlZnRkb3VibGVxdW90ZW1hcmsiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGxlZnRkb3VibGVxdW90ZW1hcms7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sZWZ0bWlk ZGxlY3VybHlicmFjZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbGVmdG1pZGRsZWN1cmx5YnJh Y2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9sZWZ0b3BlbnRyaWFuZ2xlIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBsZWZ0b3BlbnRyaWFuZ2xlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbGVmdHBvaW50ZXIiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGxlZnRwb2ludGVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbGVmdHJhZGlj YWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxlZnRyYWRpY2FsOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf bGVmdHNob2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxlZnRzaG9lOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfbGVmdHNpbmdsZXF1b3RlbWFyayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbGVmdHNpbmds ZXF1b3RlbWFyazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xlZnR0IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBsZWZ0dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xlZnR0YWNrIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBsZWZ0dGFjazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xlc3MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGxlc3M7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sZXNzdGhhbmVxdWFsIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBsZXNzdGhhbmVxdWFsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbGYiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGxmOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbG9naWNhbGFuZCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgbG9naWNhbGFuZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xvZ2ljYWxvciIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgbG9naWNhbG9yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbG93bGVmdGNvcm5lciIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgbG93bGVmdGNvcm5lcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xvd3Jp Z2h0Y29ybmVyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBsb3dyaWdodGNvcm5lcjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2xzdHJva2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxzdHJva2U7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9tIildCisrCQlwdWJsaWMgY29uc3QgdWludCBtOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf bWFib3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBtYWJvdmVkb3Q7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9tYWNyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG1hY3JvbjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX21hbGVzeW1ib2wiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG1hbGVzeW1ib2w7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9tYWx0ZXNlY3Jvc3MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG1hbHRlc2Vj cm9zczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX21hcmtlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbWFy a2VyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfbWFzY3VsaW5lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBt YXNjdWxpbmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9taW51cyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg bWludXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9taW51dGVzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBt aW51dGVzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbXUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG11Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfbXVsdGlwbHkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG11bHRpcGx5 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfbXVzaWNhbGZsYXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG11 c2ljYWxmbGF0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbXVzaWNhbHNoYXJwIildCisrCQlwdWJsaWMgY29u c3QgdWludCBtdXNpY2Fsc2hhcnA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9uIildCisrCQlwdWJsaWMgY29u c3QgdWludCBuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbmFibGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IG5hYmxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbmFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBu YWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9uY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG5j YXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX25jZWRpbGxhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBu Y2VkaWxsYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX25pbmVzdWJzY3JpcHQiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IG5pbmVzdWJzY3JpcHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9uaW5lc3VwZXJpb3IiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IG5pbmVzdXBlcmlvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX25sIildCisr CQlwdWJsaWMgY29uc3QgdWludCBubDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX25vYnJlYWtzcGFjZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgbm9icmVha3NwYWNlOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbm90YXBw cm94ZXEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG5vdGFwcHJveGVxOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfbm90ZWxlbWVudG9mIildCisrCQlwdWJsaWMgY29uc3QgdWludCBub3RlbGVtZW50b2Y7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9ub3RlcXVhbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbm90ZXF1YWw7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9ub3RpZGVudGljYWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG5v dGlkZW50aWNhbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX25vdHNpZ24iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IG5vdHNpZ247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9udGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IG50aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX251bWJlcnNpZ24iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IG51bWJlcnNpZ247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9udW1lcm9zaWduIildCisrCQlwdWJs aWMgY29uc3QgdWludCBudW1lcm9zaWduOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29hY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgb2FjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb2JhcnJlZCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgb2JhcnJlZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29iZWxvd2RvdCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgb2JlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb2Nhcm9uIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBvY2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vY2lyY3VtZmxleCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgb2NpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vY2lyY3VtZmxleGFj dXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvY2lyY3VtZmxleGFjdXRlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfb2NpcmN1bWZsZXhiZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2NpcmN1 bWZsZXhiZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29jaXJjdW1mbGV4Z3JhdmUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IG9jaXJjdW1mbGV4Z3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vY2lyY3Vt ZmxleGhvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9jaXJjdW1mbGV4aG9vazsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX29jaXJjdW1mbGV4dGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9jaXJj dW1mbGV4dGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vZGlhZXJlc2lzIildCisrCQlwdWJsaWMgY29u c3QgdWludCBvZGlhZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb2RvdWJsZWFjdXRlIildCisrCQlw dWJsaWMgY29uc3QgdWludCBvZG91YmxlYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgb2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vZ29uZWsiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IG9nb25lazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29ncmF2ZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgb2dyYXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb2hvb2siKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IG9ob29rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb2hvcm4iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IG9ob3JuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb2hvcm5hY3V0ZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgb2hvcm5hY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29ob3JuYmVsb3dkb3QiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IG9ob3JuYmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vaG9ybmdy YXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvaG9ybmdyYXZlOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf b2hvcm5ob29rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvaG9ybmhvb2s7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9vaG9ybnRpbGRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvaG9ybnRpbGRlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfb21hY3JvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb21hY3JvbjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX29uZWVpZ2h0aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb25lZWlnaHRo OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfb25lZmlmdGgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9uZWZp ZnRoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfb25laGFsZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb25l aGFsZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX29uZXF1YXJ0ZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IG9uZXF1YXJ0ZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vbmVzaXh0aCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgb25lc2l4dGg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vbmVzdWJzY3JpcHQiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IG9uZXN1YnNjcmlwdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29uZXN1cGVyaW9yIild CisrCQlwdWJsaWMgY29uc3QgdWludCBvbmVzdXBlcmlvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29uZXRo aXJkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvbmV0aGlyZDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29v YmxpcXVlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvb2JsaXF1ZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X29wZW5yZWN0YnVsbGV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBvcGVucmVjdGJ1bGxldDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX29wZW5zdGFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvcGVuc3Rh cjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX29wZW50cmlidWxsZXRkb3duIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBvcGVudHJpYnVsbGV0ZG93bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29wZW50cmlidWxsZXR1cCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgb3BlbnRyaWJ1bGxldHVwOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf b3JkZmVtaW5pbmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9yZGZlbWluaW5lOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfb3NsYXNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvc2xhc2g7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9vdGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG90aWxkZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX292ZXJiYXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG92ZXJiYXI7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9vdmVybGluZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb3ZlcmxpbmU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9wIildCisrCQlwdWJsaWMgY29uc3QgdWludCBwOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf cGFib3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBwYWJvdmVkb3Q7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9wYXJhZ3JhcGgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHBhcmFncmFwaDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX3BhcmVubGVmdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcGFyZW5sZWZ0Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfcGFyZW5yaWdodCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcGFyZW5y aWdodDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX3BhcnRkaWZmZXJlbnRpYWwiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IHBhcnRkaWZmZXJlbnRpYWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9wYXJ0aWFsZGVyaXZhdGl2 ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcGFydGlhbGRlcml2YXRpdmU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9wZXJjZW50IildCisrCQlwdWJsaWMgY29uc3QgdWludCBwZXJjZW50OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfcGVyaW9kIildCisrCQlwdWJsaWMgY29uc3QgdWludCBwZXJpb2Q7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9wZXJpb2RjZW50ZXJlZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcGVyaW9kY2VudGVy ZWQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9wZXJtaWxsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcGVy bWlsbGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9waG9ub2dyYXBoY29weXJpZ2h0IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBwaG9ub2dyYXBoY29weXJpZ2h0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcGx1cyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgcGx1czsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3BsdXNtaW51cyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgcGx1c21pbnVzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcHJlc2NyaXB0 aW9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBwcmVzY3JpcHRpb247CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9wcm9sb25nZWRzb3VuZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcHJvbG9uZ2Vkc291bmQ7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9wdW5jdHNwYWNlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBwdW5j dHNwYWNlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX3F1YWQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHF1YWQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9xdWVzdGlvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcXVlc3Rpb247CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9xdWVzdGlvbmRvd24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHF1ZXN0aW9u ZG93bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX3F1b3RlZGJsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBx dW90ZWRibDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3F1b3RlbGVmdCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgcXVvdGVsZWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcXVvdGVyaWdodCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgcXVvdGVyaWdodDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3IiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IHI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9yYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IHJhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3JhZGljYWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IHJhZGljYWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9yY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IHJjYXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3JjZWRpbGxhIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCByY2VkaWxsYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3JlZ2lzdGVyZWQiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IHJlZ2lzdGVyZWQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9yaWdodGFuZ2xlYnJhY2tldCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgcmlnaHRhbmdsZWJyYWNrZXQ7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9y aWdodGFycm93IildCisrCQlwdWJsaWMgY29uc3QgdWludCByaWdodGFycm93OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfcmlnaHRjYXJldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcmlnaHRjYXJldDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX3JpZ2h0ZG91YmxlcXVvdGVtYXJrIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCByaWdodGRvdWJsZXF1b3RlbWFyazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3JpZ2h0bWlkZGxlY3VybHli cmFjZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcmlnaHRtaWRkbGVjdXJseWJyYWNlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfcmlnaHRtaWRkbGVzdW1tYXRpb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IHJpZ2h0bWlkZGxlc3VtbWF0aW9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcmlnaHRvcGVudHJpYW5nbGUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHJpZ2h0b3BlbnRyaWFuZ2xlOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfcmlnaHRwb2ludGVyIildCisrCQlwdWJsaWMgY29uc3QgdWludCByaWdodHBvaW50ZXI7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9yaWdodHNob2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHJpZ2h0c2hv ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX3JpZ2h0c2luZ2xlcXVvdGVtYXJrIildCisrCQlwdWJsaWMgY29u c3QgdWludCByaWdodHNpbmdsZXF1b3RlbWFyazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3JpZ2h0dCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgcmlnaHR0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcmlnaHR0YWNrIild CisrCQlwdWJsaWMgY29uc3QgdWludCByaWdodHRhY2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zIildCisr CQlwdWJsaWMgY29uc3QgdWludCBzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc2Fib3ZlZG90IildCisrCQlw dWJsaWMgY29uc3QgdWludCBzYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zYWN1dGUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IHNhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3NjYXJvbiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgc2Nhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc2NlZGlsbGEiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IHNjZWRpbGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc2Nod2EiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IHNjaHdhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc2NpcmN1bWZsZXgiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IHNjaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc2NyaXB0 X3N3aXRjaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc2NyaXB0X3N3aXRjaDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX3NlY29uZHMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNlY29uZHM7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9zZWN0aW9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBzZWN0aW9uOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfc2VtaWNvbG9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBzZW1pY29sb247Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9zZW1pdm9pY2Vkc291bmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNl bWl2b2ljZWRzb3VuZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3NldmVuZWlnaHRocyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgc2V2ZW5laWdodGhzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc2V2ZW5zdWJzY3JpcHQi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNldmVuc3Vic2NyaXB0OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf c2V2ZW5zdXBlcmlvciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc2V2ZW5zdXBlcmlvcjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX3NpZ25hdHVyZW1hcmsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNpZ25h dHVyZW1hcms7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zaWduaWZibGFuayIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgc2lnbmlmYmxhbms7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zaW1pbGFyZXF1YWwiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IHNpbWlsYXJlcXVhbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3NpbmdsZWxvd3F1 b3RlbWFyayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc2luZ2xlbG93cXVvdGVtYXJrOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfc2l4c3Vic2NyaXB0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBzaXhzdWJz Y3JpcHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zaXhzdXBlcmlvciIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgc2l4c3VwZXJpb3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zbGFzaCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgc2xhc2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zb2xpZGRpYW1vbmQiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IHNvbGlkZGlhbW9uZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3NwYWNlIildCisrCQlwdWJs aWMgY29uc3QgdWludCBzcGFjZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3NxdWFyZXJvb3QiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IHNxdWFyZXJvb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zc2hhcnAiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IHNzaGFycDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3N0ZXJsaW5nIildCisr CQlwdWJsaWMgY29uc3QgdWludCBzdGVybGluZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3N0cmljdGVxIild CisrCQlwdWJsaWMgY29uc3QgdWludCBzdHJpY3RlcTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3QiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90YWJvdmVkb3QiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IHRhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3RjYXJvbiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgdGNhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdGNlZGlsbGEiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IHRjZWRpbGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdGVsZXBob25lIild CisrCQlwdWJsaWMgY29uc3QgdWludCB0ZWxlcGhvbmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90ZWxlcGhv bmVyZWNvcmRlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdGVsZXBob25lcmVjb3JkZXI7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV90aGVyZWZvcmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRoZXJlZm9y ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX3RoaW5zcGFjZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdGhp bnNwYWNlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdGhvcm4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRo b3JuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfdGhyZWVlaWdodGhzIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCB0aHJlZWVpZ2h0aHM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90aHJlZWZpZnRocyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgdGhyZWVmaWZ0aHM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90aHJlZXF1YXJ0ZXJzIild CisrCQlwdWJsaWMgY29uc3QgdWludCB0aHJlZXF1YXJ0ZXJzOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdGhy ZWVzdWJzY3JpcHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRocmVlc3Vic2NyaXB0OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfdGhyZWVzdXBlcmlvciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdGhyZWVz dXBlcmlvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3RpbnRlZ3JhbCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgdGludGVncmFsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdG9waW50ZWdyYWwiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IHRvcGludGVncmFsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdG9wbGVmdHBhcmVucyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgdG9wbGVmdHBhcmVuczsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3RvcGxl ZnRyYWRpY2FsIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0b3BsZWZ0cmFkaWNhbDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX3RvcGxlZnRzcWJyYWNrZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRvcGxl ZnRzcWJyYWNrZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90b3BsZWZ0c3VtbWF0aW9uIildCisrCQlwdWJs aWMgY29uc3QgdWludCB0b3BsZWZ0c3VtbWF0aW9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdG9wcmlnaHRw YXJlbnMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRvcHJpZ2h0cGFyZW5zOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfdG9wcmlnaHRzcWJyYWNrZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRvcHJpZ2h0 c3FicmFja2V0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdG9wcmlnaHRzdW1tYXRpb24iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IHRvcHJpZ2h0c3VtbWF0aW9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdG9wdCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgdG9wdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3RvcHZlcnRzdW1tYXRp b25jb25uZWN0b3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRvcHZlcnRzdW1tYXRpb25jb25u ZWN0b3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90cmFkZW1hcmsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IHRyYWRlbWFyazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3RyYWRlbWFya2luY2lyY2xlIildCisrCQlwdWJs aWMgY29uc3QgdWludCB0cmFkZW1hcmtpbmNpcmNsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3RzbGFzaCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgdHNsYXNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdHdvZmlmdGhz IildCisrCQlwdWJsaWMgY29uc3QgdWludCB0d29maWZ0aHM7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90d29z dWJzY3JpcHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHR3b3N1YnNjcmlwdDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX3R3b3N1cGVyaW9yIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0d29zdXBlcmlvcjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX3R3b3RoaXJkcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdHdvdGhp cmRzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfdSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX3VhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdWFjdXRlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfdWJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCB1YmVsb3dkb3Q7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV91YnJldmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVicmV2ZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX3VjaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCB1Y2lyY3Vt ZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX3VkaWFlcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IHVkaWFlcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91ZG91YmxlYWN1dGUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IHVkb3VibGVhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3VncmF2ZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgdWdyYXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdWhvb2siKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IHVob29rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdWhvcm4iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IHVob3JuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdWhvcm5hY3V0ZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgdWhvcm5hY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Vob3JuYmVsb3dkb3QiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IHVob3JuYmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91aG9y bmdyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCB1aG9ybmdyYXZlOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfdWhvcm5ob29rIildCisrCQlwdWJsaWMgY29uc3QgdWludCB1aG9ybmhvb2s7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV91aG9ybnRpbGRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCB1aG9ybnRpbGRlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfdW1hY3JvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdW1hY3JvbjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX3VuZGVyYmFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCB1bmRlcmJh cjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX3VuZGVyc2NvcmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVu ZGVyc2NvcmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91bmlvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg dW5pb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91b2dvbmVrIildCisrCQlwdWJsaWMgY29uc3QgdWludCB1 b2dvbmVrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdXBhcnJvdyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg dXBhcnJvdzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3VwY2FyZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IHVwY2FyZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91cGxlZnRjb3JuZXIiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IHVwbGVmdGNvcm5lcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3VwcmlnaHRjb3JuZXIiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IHVwcmlnaHRjb3JuZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91cHNob2Ui KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVwc2hvZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Vwc3RpbGUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVwc3RpbGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91cHRhY2si KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVwdGFjazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3VyaW5nIild CisrCQlwdWJsaWMgY29uc3QgdWludCB1cmluZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3V0aWxkZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgdXRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgdjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3ZhcmlhdGlvbiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgdmFyaWF0aW9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdmVydGJhciIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgdmVydGJhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3ZlcnRjb25uZWN0b3IiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IHZlcnRjb25uZWN0b3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV92b2lj ZWRzb3VuZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdm9pY2Vkc291bmQ7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV92dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV93Iild CisrCQlwdWJsaWMgY29uc3QgdWludCB3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfd2FjdXRlIildCisrCQlw dWJsaWMgY29uc3QgdWludCB3YWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV93Y2lyY3VtZmxleCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgd2NpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV93ZGlhZXJl c2lzIildCisrCQlwdWJsaWMgY29uc3QgdWludCB3ZGlhZXJlc2lzOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf d2dyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCB3Z3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV94 IildCisrCQlwdWJsaWMgY29uc3QgdWludCB4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfeGFib3ZlZG90Iild CisrCQlwdWJsaWMgY29uc3QgdWludCB4YWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV95IildCisr CQlwdWJsaWMgY29uc3QgdWludCB5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfeWFjdXRlIildCisrCQlwdWJs aWMgY29uc3QgdWludCB5YWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV95YmVsb3dkb3QiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IHliZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3ljaXJjdW1mbGV4Iild CisrCQlwdWJsaWMgY29uc3QgdWludCB5Y2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3lkaWFl cmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHlkaWFlcmVzaXM7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV95ZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHllbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3lncmF2 ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgeWdyYXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfeWhvb2si KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHlob29rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfeXRpbGRlIild CisrCQlwdWJsaWMgY29uc3QgdWludCB5dGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV96IildCisrCQlw dWJsaWMgY29uc3QgdWludCB6OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfemFib3ZlZG90IildCisrCQlwdWJs aWMgY29uc3QgdWludCB6YWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV96YWN1dGUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IHphY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3pjYXJvbiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgemNhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfemVyb3N1YnNjcmlwdCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgemVyb3N1YnNjcmlwdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3plcm9z dXBlcmlvciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgemVyb3N1cGVyaW9yOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfenN0cm9rZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgenN0cm9rZTsKKysJfQorKwlu YW1lc3BhY2UgVGhyZWFkcyB7CisrCQluYW1lc3BhY2UgSWRsZSB7CisrCQkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiY2x1dHRlcl90aHJl YWRzX2FkZF9pZGxlIildCisrCQkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwkJCXB1Ymxp YyBzdGF0aWMgdWludCBhZGQgKEdMaWIuU291cmNlRnVuYyBmdW5jKTsKKysJCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJjbHV0dGVyX3Ro cmVhZHNfYWRkX2lkbGVfZnVsbCIpXQorKwkJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJ CQlwdWJsaWMgc3RhdGljIHVpbnQgYWRkX2Z1bGwgKGludCBwcmlvcml0eSwgb3duZWQgR0xpYi5T b3VyY2VGdW5jIGZ1bmMpOworKwkJfQorKwkJbmFtZXNwYWNlIFRpbWVvdXQgeworKwkJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gImNsdXR0 ZXJfdGhyZWFkc19hZGRfdGltZW91dCIpXQorKwkJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0K KysJCQlwdWJsaWMgc3RhdGljIHVpbnQgYWRkICh1aW50IGludGVydmFsLCBHTGliLlNvdXJjZUZ1 bmMgZnVuYyk7CisrCQkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiY2x1dHRlcl90aHJlYWRzX2FkZF90aW1lb3V0X2Z1bGwiKV0KKysJCQlb VmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCQkJcHVibGljIHN0YXRpYyB1aW50IGFkZF9mdWxs IChpbnQgcHJpb3JpdHksIHVpbnQgaW50ZXJ2YWwsIG93bmVkIEdMaWIuU291cmNlRnVuYyBmdW5j KTsKKysJCX0KKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyB1aW50 IGFkZF9yZXBhaW50X2Z1bmMgKG93bmVkIEdMaWIuU291cmNlRnVuYyBmdW5jKTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBzdGF0aWMgdWludCBhZGRfcmVwYWludF9mdW5j X2Z1bGwgKENsdXR0ZXIuUmVwYWludEZsYWdzIGZsYWdzLCBvd25lZCBHTGliLlNvdXJjZUZ1bmMg ZnVuYyk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi KV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBy ZW1vdmVfcmVwYWludF9mdW5jICh1aW50IGhhbmRsZV9pZCk7CisrCX0KKysJbmFtZXNwYWNlIFZh bHVlIHsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIp XQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBzdGF0aWMgQ2x1dHRl ci5QYWludE5vZGUgZHVwX3BhaW50X25vZGUgKEdMaWIuVmFsdWUgdmFsdWUpOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgQ2x1dHRlci5Db2xvcj8g Z2V0X2NvbG9yIChHTGliLlZhbHVlIHZhbHVlKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0K KysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLlBhaW50Tm9kZSBnZXRfcGFpbnRfbm9k ZSAoR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlbQ0NvZGUgKGFycmF5X2xlbmd0aF9wb3MgPSAxLjEs IGFycmF5X2xlbmd0aF90eXBlID0gImdzaXplIiwgY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHN0 YXRpYyB1bm93bmVkIGZsb2F0W10gZ2V0X3NoYWRlcl9mbG9hdCAoR0xpYi5WYWx1ZSB2YWx1ZSk7 CisrCQlbQ0NvZGUgKGFycmF5X2xlbmd0aF9wb3MgPSAxLjEsIGFycmF5X2xlbmd0aF90eXBlID0g ImdzaXplIiwgY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwkJW1Zl cnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIGludFtdIGdl dF9zaGFkZXJfaW50IChHTGliLlZhbHVlIHZhbHVlKTsKKysJCVtDQ29kZSAoYXJyYXlfbGVuZ3Ro X3BvcyA9IDEuMSwgYXJyYXlfbGVuZ3RoX3R5cGUgPSAiZ3NpemUiLCBjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisr CQlwdWJsaWMgc3RhdGljIHVub3duZWQgZmxvYXRbXSBnZXRfc2hhZGVyX21hdHJpeCAoR0xpYi5W YWx1ZSB2YWx1ZSk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBzdGF0aWMg dW5vd25lZCBDbHV0dGVyLlVuaXRzPyBnZXRfdW5pdHMgKEdMaWIuVmFsdWUgdmFsdWUpOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQgc2V0X2NvbG9yIChH TGliLlZhbHVlIHZhbHVlLCBDbHV0dGVyLkNvbG9yIGNvbG9yKTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBzZXRfcGFpbnRfbm9kZSAoR0xpYi5WYWx1 ZSB2YWx1ZSwgQ2x1dHRlci5QYWludE5vZGU/IG5vZGUpOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44 IildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQgc2V0X3NoYWRlcl9mbG9hdCAoR0xpYi5WYWx1ZSB2 YWx1ZSwgW0NDb2RlIChhcnJheV9sZW5ndGhfY25hbWUgPSAic2l6ZSIsIGFycmF5X2xlbmd0aF9w b3MgPSAxLjUpXSBmbG9hdFtdIGZsb2F0cyk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJ CXB1YmxpYyBzdGF0aWMgdm9pZCBzZXRfc2hhZGVyX2ludCAoR0xpYi5WYWx1ZSB2YWx1ZSwgW0ND b2RlIChhcnJheV9sZW5ndGhfY25hbWUgPSAic2l6ZSIsIGFycmF5X2xlbmd0aF9wb3MgPSAxLjUp XSBpbnRbXSBpbnRzKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHN0YXRp YyB2b2lkIHNldF9zaGFkZXJfbWF0cml4IChHTGliLlZhbHVlIHZhbHVlLCBbQ0NvZGUgKGFycmF5 X2xlbmd0aF9jbmFtZSA9ICJzaXplIiwgYXJyYXlfbGVuZ3RoX3BvcyA9IDEuNSldIGZsb2F0W10g bWF0cml4KTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHN0YXRpYyB2b2lk IHNldF91bml0cyAoR0xpYi5WYWx1ZSB2YWx1ZSwgQ2x1dHRlci5Vbml0cyB1bml0cyk7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQgdGFrZV9wYWludF9u b2RlIChHTGliLlZhbHVlIHZhbHVlLCBDbHV0dGVyLlBhaW50Tm9kZT8gbm9kZSk7CisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9 ICJjbHV0dGVyX2FjdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40 IildCisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBBY3Rpb24gOiBDbHV0dGVyLkFjdG9yTWV0YSB7 CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0 ZWQgQWN0aW9uICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9hY3Rvcl9nZXRfdHlwZSAoKSIpXQorKwlw dWJsaWMgY2xhc3MgQWN0b3IgOiBHTGliLkluaXRpYWxseVVub3duZWQsIEF0ay5JbXBsZW1lbnRv ciwgQ2x1dHRlci5BbmltYXRhYmxlLCBDbHV0dGVyLkNvbnRhaW5lciwgQ2x1dHRlci5TY3JpcHRh YmxlIHsKKysJCXB1YmxpYyB1aW50MzIgZmxhZ3M7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3Rf ZnVuY3Rpb24gPSBmYWxzZSldCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVi bGljIEFjdG9yICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZv aWQgYWRkX2FjdGlvbiAoQ2x1dHRlci5BY3Rpb24gYWN0aW9uKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIGFkZF9hY3Rpb25fd2l0aF9uYW1lIChzdHJpbmcg bmFtZSwgQ2x1dHRlci5BY3Rpb24gYWN0aW9uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEw IildCisrCQlwdWJsaWMgdm9pZCBhZGRfY2hpbGQgKENsdXR0ZXIuQWN0b3IgY2hpbGQpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgYWRkX2NvbnN0cmFpbnQg KENsdXR0ZXIuQ29uc3RyYWludCBjb25zdHJhaW50KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjQiKV0KKysJCXB1YmxpYyB2b2lkIGFkZF9jb25zdHJhaW50X3dpdGhfbmFtZSAoc3RyaW5nIG5h bWUsIENsdXR0ZXIuQ29uc3RyYWludCBjb25zdHJhaW50KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIGFkZF9lZmZlY3QgKENsdXR0ZXIuRWZmZWN0IGVmZmVj dCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBhZGRfZWZm ZWN0X3dpdGhfbmFtZSAoc3RyaW5nIG5hbWUsIENsdXR0ZXIuRWZmZWN0IGVmZmVjdCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgYWRkX3RyYW5zaXRpb24g KHN0cmluZyBuYW1lLCBDbHV0dGVyLlRyYW5zaXRpb24gdHJhbnNpdGlvbik7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGFsbG9jYXRlIChDbHV0 dGVyLkFjdG9yQm94IGJveCwgQ2x1dHRlci5BbGxvY2F0aW9uRmxhZ3MgZmxhZ3MpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgYWxsb2NhdGVfYWxpZ25fZmls bCAoQ2x1dHRlci5BY3RvckJveCBib3gsIGRvdWJsZSB4X2FsaWduLCBkb3VibGUgeV9hbGlnbiwg Ym9vbCB4X2ZpbGwsIGJvb2wgeV9maWxsLCBDbHV0dGVyLkFsbG9jYXRpb25GbGFncyBmbGFncyk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCBhbGxvY2F0ZV9h dmFpbGFibGVfc2l6ZSAoZmxvYXQgeCwgZmxvYXQgeSwgZmxvYXQgYXZhaWxhYmxlX3dpZHRoLCBm bG9hdCBhdmFpbGFibGVfaGVpZ2h0LCBDbHV0dGVyLkFsbG9jYXRpb25GbGFncyBmbGFncyk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdm9pZCBhbGxvY2F0ZV9wcmVm ZXJyZWRfc2l6ZSAoQ2x1dHRlci5BbGxvY2F0aW9uRmxhZ3MgZmxhZ3MpOworKwkJW1ZlcnNpb24g KGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIx LjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQW5pbWF0aW9uIGFuaW1hdGUgKHVsb25n IG1vZGUsIHVpbnQgZHVyYXRpb24sIC4uLik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRy dWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGlj IHVub3duZWQgQ2x1dHRlci5BbmltYXRpb24gYW5pbWF0ZV93aXRoX3RpbWVsaW5lICh1bG9uZyBt b2RlLCBDbHV0dGVyLlRpbWVsaW5lIHRpbWVsaW5lLCAuLi4pOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjAuNiIpXQorKwkJcHVibGljIHZvaWQgYXBwbHlfcmVsYXRpdmVfdHJhbnNmb3JtX3RvX3Bv aW50IChDbHV0dGVyLkFjdG9yPyBhbmNlc3RvciwgR3JhcGhlbmUuUG9pbnQzRCBwb2ludCwgb3V0 IHVub3duZWQgR3JhcGhlbmUuUG9pbnQzRCB2ZXJ0ZXgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1 YmxpYyB2aXJ0dWFsIHZvaWQgYXBwbHlfdHJhbnNmb3JtIChyZWYgQ2x1dHRlci5NYXRyaXggbWF0 cml4KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJCXB1YmxpYyB2b2lkIGFwcGx5 X3RyYW5zZm9ybV90b19wb2ludCAoR3JhcGhlbmUuUG9pbnQzRCBwb2ludCwgb3V0IHVub3duZWQg R3JhcGhlbmUuUG9pbnQzRCB2ZXJ0ZXgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjQiKV0K KysJCXB1YmxpYyB2b2lkIGJpbmRfbW9kZWwgKEdMaWIuTGlzdE1vZGVsPyBtb2RlbCwgb3duZWQg Q2x1dHRlci5BY3RvckNyZWF0ZUNoaWxkRnVuYyBjcmVhdGVfY2hpbGRfZnVuYyk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBjbGVhcl9hY3Rpb25zICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgY2xlYXJfY29uc3Ry YWludHMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBj bGVhcl9lZmZlY3RzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGlj IGJvb2wgY29udGFpbnMgKENsdXR0ZXIuQWN0b3IgZGVzY2VuZGFudCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBjb250aW51ZV9wYWludCAoQ2x1dHRlci5Q YWludENvbnRleHQgcGFpbnRfY29udGV4dCk7CisrCQlwdWJsaWMgdm9pZCBjb250aW51ZV9waWNr IChDbHV0dGVyLlBpY2tDb250ZXh0IHBpY2tfY29udGV4dCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgUGFuZ28uQ29udGV4dCBjcmVhdGVfcGFuZ29fY29udGV4dCAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBQYW5nby5MYXlvdXQg Y3JlYXRlX3BhbmdvX2xheW91dCAoc3RyaW5nPyB0ZXh0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBkZXN0cm95X2FsbF9jaGlsZHJlbiAoKTsKKysJCVtD Q29kZSAoY25hbWUgPSAiY2x1dHRlcl9hY3Rvcl9ldmVudCIpXQorKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjAuNiIpXQorKwkJcHVibGljIGJvb2wgZW1pdF9ldmVudCAoQ2x1dHRlci5FdmVudCBldmVu dCwgYm9vbCBjYXB0dXJlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJCXB1Ymxp YyB2b2lkIGdldF9hYnNfYWxsb2NhdGlvbl92ZXJ0aWNlcyAoW0NDb2RlIChhcnJheV9sZW5ndGgg PSBmYWxzZSldIEdyYXBoZW5lLlBvaW50M0QgdmVydHNbNF0pOworKwkJcHVibGljIHZpcnR1YWwg dW5vd25lZCBBdGsuT2JqZWN0IGdldF9hY2Nlc3NpYmxlICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuNCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3Rpb24gZ2V0X2FjdGlvbiAo c3RyaW5nIG5hbWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIEdM aWIuTGlzdDx3ZWFrIENsdXR0ZXIuQWN0aW9uPiBnZXRfYWN0aW9ucyAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFjdG9yQm94IGdldF9hbGxvY2F0 aW9uX2JveCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2b2lk IGdldF9hbGxvY2F0aW9uX3ZlcnRpY2VzIChDbHV0dGVyLkFjdG9yPyBhbmNlc3RvciwgW0NDb2Rl IChhcnJheV9sZW5ndGggPSBmYWxzZSldIEdyYXBoZW5lLlBvaW50M0QgdmVydHNbNF0pOworKwkJ W1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBz aW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkdyYXZpdHkgZ2V0X2FuY2hvcl9wb2lu dF9ncmF2aXR5ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBD bHV0dGVyLkNvbG9yIGdldF9iYWNrZ3JvdW5kX2NvbG9yICgpOworKwkJW0NDb2RlIChjbmFtZSA9 ICJjbHV0dGVyX2dldF9hY3Rvcl9ieV9naWQiKV0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0g dHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjgiLCBzaW5jZSA9ICIwLjYiKV0KKysJCXB1Ymxp YyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF9ieV9naWQgKHVpbnQzMiBpZF8pOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIu QWN0b3IgZ2V0X2NoaWxkX2F0X2luZGV4IChpbnQgaW5kZXhfKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEyIildCisrCQlwdWJsaWMgQ2x1dHRlci5NYXRyaXggZ2V0X2NoaWxkX3RyYW5zZm9y bSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgR0xpYi5MaXN0 PHdlYWsgQ2x1dHRlci5BY3Rvcj4gZ2V0X2NoaWxkcmVuICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjAuNiIpXQorKwkJcHVibGljIHZvaWQgZ2V0X2NsaXAgKG91dCBmbG9hdCB4b2ZmLCBvdXQg ZmxvYXQgeW9mZiwgb3V0IGZsb2F0IHdpZHRoLCBvdXQgZmxvYXQgaGVpZ2h0KTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBib29sIGdldF9jbGlwX3RvX2FsbG9jYXRp b24gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdW5vd25lZCBD bHV0dGVyLkNvbnN0cmFpbnQgZ2V0X2NvbnN0cmFpbnQgKHN0cmluZyBuYW1lKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBHTGliLkxpc3Q8d2VhayBDbHV0dGVyLkNv bnN0cmFpbnQ+IGdldF9jb25zdHJhaW50cyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEw IildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkNvbnRlbnQgZ2V0X2NvbnRlbnQgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENsdXR0ZXIuQWN0b3JCb3gg Z2V0X2NvbnRlbnRfYm94ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1 YmxpYyBDbHV0dGVyLkNvbnRlbnRHcmF2aXR5IGdldF9jb250ZW50X2dyYXZpdHkgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIENsdXR0ZXIuQ29udGVudFJlcGVh dCBnZXRfY29udGVudF9yZXBlYXQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQor KwkJcHVibGljIHZvaWQgZ2V0X2NvbnRlbnRfc2NhbGluZ19maWx0ZXJzIChvdXQgQ2x1dHRlci5T Y2FsaW5nRmlsdGVyIG1pbl9maWx0ZXIsIG91dCBDbHV0dGVyLlNjYWxpbmdGaWx0ZXIgbWFnX2Zp bHRlcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHVub3duZWQg Q2x1dHRlci5QYWludFZvbHVtZSBnZXRfZGVmYXVsdF9wYWludF92b2x1bWUgKCk7CisrCQlbVmVy c2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIpXQorKwkJ cHVibGljIGZsb2F0IGdldF9kZXB0aCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIild CisrCQlwdWJsaWMgdWludCBnZXRfZWFzaW5nX2RlbGF5ICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1aW50IGdldF9lYXNpbmdfZHVyYXRpb24gKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENsdXR0ZXIuQW5pbWF0aW9uTW9k ZSBnZXRfZWFzaW5nX21vZGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlw dWJsaWMgdW5vd25lZCBDbHV0dGVyLkVmZmVjdCBnZXRfZWZmZWN0IChzdHJpbmcgbmFtZSk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgR0xpYi5MaXN0PHdlYWsgQ2x1 dHRlci5FZmZlY3Q+IGdldF9lZmZlY3RzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAi KV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X2ZpcnN0X2NoaWxkICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIGJvb2wgZ2V0X2ZpeGVkX3Bv c2l0aW9uX3NldCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBD bHV0dGVyLkFjdG9yRmxhZ3MgZ2V0X2ZsYWdzICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0 dGVyX2FjdG9yX2hhc19wb2ludGVyIildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisr CQlwdWJsaWMgYm9vbCBnZXRfaGFzX3BvaW50ZXIgKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X2hl aWdodCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdW5vd25l ZCBDbHV0dGVyLkFjdG9yIGdldF9sYXN0X2NoaWxkICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuTGF5b3V0TWFuYWdlciBnZXRfbGF5 b3V0X21hbmFnZXIgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IHZvaWQgZ2V0X21hcmdpbiAoQ2x1dHRlci5NYXJnaW4gbWFyZ2luKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X21hcmdpbl9ib3R0b20gKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF9tYXJnaW5f bGVmdCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgZmxvYXQg Z2V0X21hcmdpbl9yaWdodCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlw dWJsaWMgZmxvYXQgZ2V0X21hcmdpbl90b3AgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MCIpXQorKwkJcHVibGljIGludCBnZXRfbl9jaGlsZHJlbiAoKTsKKysJCXB1YmxpYyB1bm93bmVk IHN0cmluZyBnZXRfbmFtZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlw dWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF9uZXh0X3NpYmxpbmcgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgQ2x1dHRlci5PZmZzY3JlZW5SZWRpcmVj dCBnZXRfb2Zmc2NyZWVuX3JlZGlyZWN0ICgpOworKwkJcHVibGljIHVpbnQ4IGdldF9vcGFjaXR5 ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjIiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X29w YWNpdHlfb3ZlcnJpZGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJs aWMgYm9vbCBnZXRfcGFpbnRfYm94IChvdXQgQ2x1dHRlci5BY3RvckJveCBib3gpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHVpbnQ4IGdldF9wYWludF9vcGFjaXR5 ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIGJvb2wgZ2V0X3Bh aW50X3Zpc2liaWxpdHkgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgYm9v bCBnZXRfcGFpbnRfdm9sdW1lIChDbHV0dGVyLlBhaW50Vm9sdW1lIHZvbHVtZSk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBQYW5nby5Db250ZXh0IGdl dF9wYW5nb19jb250ZXh0ICgpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3Rvcj8gZ2V0 X3BhcmVudCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9p ZCBnZXRfcGl2b3RfcG9pbnQgKG91dCBmbG9hdCBwaXZvdF94LCBvdXQgZmxvYXQgcGl2b3RfeSk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGZsb2F0IGdldF9waXZv dF9wb2ludF96ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZv aWQgZ2V0X3Bvc2l0aW9uIChvdXQgZmxvYXQgeCwgb3V0IGZsb2F0IHkpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBnZXRfcHJlZmVycmVkX2hl aWdodCAoZmxvYXQgZm9yX3dpZHRoLCBvdXQgZmxvYXQgbWluX2hlaWdodF9wLCBvdXQgZmxvYXQg bmF0dXJhbF9oZWlnaHRfcCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJs aWMgdm9pZCBnZXRfcHJlZmVycmVkX3NpemUgKG91dCBmbG9hdCBtaW5fd2lkdGhfcCwgb3V0IGZs b2F0IG1pbl9oZWlnaHRfcCwgb3V0IGZsb2F0IG5hdHVyYWxfd2lkdGhfcCwgb3V0IGZsb2F0IG5h dHVyYWxfaGVpZ2h0X3ApOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGlj IHZpcnR1YWwgdm9pZCBnZXRfcHJlZmVycmVkX3dpZHRoIChmbG9hdCBmb3JfaGVpZ2h0LCBvdXQg ZmxvYXQgbWluX3dpZHRoX3AsIG91dCBmbG9hdCBuYXR1cmFsX3dpZHRoX3ApOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0 X3ByZXZpb3VzX3NpYmxpbmcgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlw dWJsaWMgYm9vbCBnZXRfcmVhY3RpdmUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIild CisrCQlwdWJsaWMgQ2x1dHRlci5SZXF1ZXN0TW9kZSBnZXRfcmVxdWVzdF9tb2RlICgpOworKwkJ cHVibGljIGJvb2wgZ2V0X3Jlc291cmNlX3NjYWxlIChvdXQgZmxvYXQgcmVzb3VyY2Vfc2NhbGUp OworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEu MTIiLCBzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBkb3VibGUgZ2V0X3JvdGF0aW9uIChDbHV0 dGVyLlJvdGF0ZUF4aXMgYXhpcywgb3V0IGZsb2F0IHgsIG91dCBmbG9hdCB5LCBvdXQgZmxvYXQg eik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGRvdWJsZSBnZXRf cm90YXRpb25fYW5nbGUgKENsdXR0ZXIuUm90YXRlQXhpcyBheGlzKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9zY2FsZSAob3V0IGRvdWJsZSBzY2Fs ZV94LCBvdXQgZG91YmxlIHNjYWxlX3kpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVl LCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2 b2lkIGdldF9zY2FsZV9jZW50ZXIgKG91dCBmbG9hdCBjZW50ZXJfeCwgb3V0IGZsb2F0IGNlbnRl cl95KTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9 ICIxLjEyIiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgQ2x1dHRlci5HcmF2aXR5IGdldF9z Y2FsZV9ncmF2aXR5ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1Ymxp YyBkb3VibGUgZ2V0X3NjYWxlX3ogKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisr CQlwdWJsaWMgdm9pZCBnZXRfc2l6ZSAob3V0IGZsb2F0IHdpZHRoLCBvdXQgZmxvYXQgaGVpZ2h0 KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0 ZXIuU3RhZ2UgZ2V0X3N0YWdlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJ cHVibGljIENsdXR0ZXIuVGV4dERpcmVjdGlvbiBnZXRfdGV4dF9kaXJlY3Rpb24gKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIENsdXR0ZXIuTWF0cml4IGdldF90 cmFuc2Zvcm0gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgdW5v d25lZCBDbHV0dGVyLlBhaW50Vm9sdW1lIGdldF90cmFuc2Zvcm1lZF9wYWludF92b2x1bWUgKENs dXR0ZXIuQWN0b3IgcmVsYXRpdmVfdG9fYW5jZXN0b3IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjAuOCIpXQorKwkJcHVibGljIHZvaWQgZ2V0X3RyYW5zZm9ybWVkX3Bvc2l0aW9uIChvdXQgZmxv YXQgeCwgb3V0IGZsb2F0IHkpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVi bGljIHZvaWQgZ2V0X3RyYW5zZm9ybWVkX3NpemUgKG91dCBmbG9hdCB3aWR0aCwgb3V0IGZsb2F0 IGhlaWdodCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHVub3du ZWQgQ2x1dHRlci5UcmFuc2l0aW9uIGdldF90cmFuc2l0aW9uIChzdHJpbmcgbmFtZSk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQgZ2V0X3RyYW5zbGF0aW9u IChvdXQgZmxvYXQgdHJhbnNsYXRlX3gsIG91dCBmbG9hdCB0cmFuc2xhdGVfeSwgb3V0IGZsb2F0 IHRyYW5zbGF0ZV96KTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfd2lkdGggKCk7CisrCQlwdWJsaWMg ZmxvYXQgZ2V0X3ggKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IENsdXR0ZXIuQWN0b3JBbGlnbiBnZXRfeF9hbGlnbiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEyIildCisrCQlwdWJsaWMgYm9vbCBnZXRfeF9leHBhbmQgKCk7CisrCQlwdWJsaWMgZmxv YXQgZ2V0X3kgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENs dXR0ZXIuQWN0b3JBbGlnbiBnZXRfeV9hbGlnbiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEyIildCisrCQlwdWJsaWMgYm9vbCBnZXRfeV9leHBhbmQgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGZsb2F0IGdldF96X3Bvc2l0aW9uICgpOworKwkJW1Zl cnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5j ZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkdyYXZpdHkgZ2V0X3pfcm90YXRpb25fZ3Jh dml0eSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIGdy YWJfa2V5X2ZvY3VzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1Ymxp YyBib29sIGhhc19hY3Rpb25zICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJ cHVibGljIGJvb2wgaGFzX2FsbG9jYXRpb24gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MCIpXQorKwkJcHVibGljIGJvb2wgaGFzX2NvbnN0cmFpbnRzICgpOworKwkJcHVibGljIGJvb2wg aGFzX2RhbWFnZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMg Ym9vbCBoYXNfZWZmZWN0cyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1 YmxpYyBib29sIGhhc19rZXlfZm9jdXMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNiIp XQorKwkJcHVibGljIGJvb2wgaGFzX21hcHBlZF9jbG9uZXMgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS44IildCisrCQlwdWJsaWMgdmlydHVhbCBib29sIGhhc19vdmVybGFwcyAoKTsKKysJ CVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGhpZGVfYWxsICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIGluc2VydF9jaGlsZF9hYm92 ZSAoQ2x1dHRlci5BY3RvciBjaGlsZCwgQ2x1dHRlci5BY3Rvcj8gc2libGluZyk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgaW5zZXJ0X2NoaWxkX2F0X2lu ZGV4IChDbHV0dGVyLkFjdG9yIGNoaWxkLCBpbnQgaW5kZXhfKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBpbnNlcnRfY2hpbGRfYmVsb3cgKENsdXR0ZXIu QWN0b3IgY2hpbGQsIENsdXR0ZXIuQWN0b3I/IHNpYmxpbmcpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMCIpXQorKwkJcHVibGljIGJvb2wgaXNfaW5fY2xvbmVfcGFpbnQgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4yNCIpXQorKwkJcHVibGljIGJvb2wgaXNfbWFwcGVkICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMjQiKV0KKysJCXB1YmxpYyBib29sIGlzX3JlYWxpemVkICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIGJvb2wgaXNfcm90YXRl ZCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBib29sIGlzX3Nj YWxlZCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjI0IildCisrCQlwdWJsaWMgYm9vbCBp c192aXNpYmxlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZp cnR1YWwgdm9pZCBtYXAgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJl Y2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZvaWQgbW92 ZV9hbmNob3JfcG9pbnQgKGZsb2F0IGFuY2hvcl94LCBmbG9hdCBhbmNob3JfeSk7CisrCQlbVmVy c2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNl ID0gIjAuNiIpXQorKwkJcHVibGljIHZvaWQgbW92ZV9hbmNob3JfcG9pbnRfZnJvbV9ncmF2aXR5 IChDbHV0dGVyLkdyYXZpdHkgZ3Jhdml0eSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIild CisrCQlwdWJsaWMgdm9pZCBtb3ZlX2J5IChmbG9hdCBkeCwgZmxvYXQgZHkpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBib29sIG5lZWRzX2V4cGFuZCAoQ2x1dHRl ci5PcmllbnRhdGlvbiBvcmllbnRhdGlvbik7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZp cnR1YWwgdm9pZCBwYWludF9ub2RlIChDbHV0dGVyLlBhaW50Tm9kZSByb290KTsKKysJCXB1Ymxp YyB2b2lkIHBpY2tfYm94IChDbHV0dGVyLlBpY2tDb250ZXh0IHBpY2tfY29udGV4dCwgQ2x1dHRl ci5BY3RvckJveCBib3gpOworKwkJcHVibGljIHZvaWQgcG9wX2ludGVybmFsICgpOworKwkJcHVi bGljIHZvaWQgcHVzaF9pbnRlcm5hbCAoKTsKKysJCXB1YmxpYyB2b2lkIHF1ZXVlX3JlZHJhdyAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBxdWV1ZV9y ZWRyYXdfd2l0aF9jbGlwIChDYWlyby5SZWN0YW5nbGVJbnQ/IGNsaXApOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgcmVtb3ZlX2FjdGlvbiAoQ2x1dHRlci5B Y3Rpb24gYWN0aW9uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2 b2lkIHJlbW92ZV9hY3Rpb25fYnlfbmFtZSAoc3RyaW5nIG5hbWUpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHJlbW92ZV9hbGxfY2hpbGRyZW4gKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgcmVtb3ZlX2FsbF90 cmFuc2l0aW9ucyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMg dm9pZCByZW1vdmVfY2hpbGQgKENsdXR0ZXIuQWN0b3IgY2hpbGQpOworKwkJcHVibGljIHZvaWQg cmVtb3ZlX2NsaXAgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMg dm9pZCByZW1vdmVfY29uc3RyYWludCAoQ2x1dHRlci5Db25zdHJhaW50IGNvbnN0cmFpbnQpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgcmVtb3ZlX2NvbnN0 cmFpbnRfYnlfbmFtZSAoc3RyaW5nIG5hbWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIp XQorKwkJcHVibGljIHZvaWQgcmVtb3ZlX2VmZmVjdCAoQ2x1dHRlci5FZmZlY3QgZWZmZWN0KTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHJlbW92ZV9lZmZl Y3RfYnlfbmFtZSAoc3RyaW5nIG5hbWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0K KysJCXB1YmxpYyB2b2lkIHJlbW92ZV90cmFuc2l0aW9uIChzdHJpbmcgbmFtZSk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgcmVwbGFjZV9jaGlsZCAoQ2x1 dHRlci5BY3RvciBvbGRfY2hpbGQsIENsdXR0ZXIuQWN0b3IgbmV3X2NoaWxkKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCByZXN0b3JlX2Vhc2luZ19zdGF0 ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzYXZl X2Vhc2luZ19zdGF0ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJs aWMgdm9pZCBzZXRfYWxsb2NhdGlvbiAoQ2x1dHRlci5BY3RvckJveCBib3gsIENsdXR0ZXIuQWxs b2NhdGlvbkZsYWdzIGZsYWdzKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVw cmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdm9pZCBz ZXRfYW5jaG9yX3BvaW50IChmbG9hdCBhbmNob3JfeCwgZmxvYXQgYW5jaG9yX3kpOworKwkJW1Zl cnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5j ZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9hbmNob3JfcG9pbnRfZnJvbV9ncmF2aXR5 IChDbHV0dGVyLkdyYXZpdHkgZ3Jhdml0eSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIp XQorKwkJcHVibGljIHZvaWQgc2V0X2JhY2tncm91bmRfY29sb3IgKENsdXR0ZXIuQ29sb3I/IGNv bG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRf Y2hpbGRfYWJvdmVfc2libGluZyAoQ2x1dHRlci5BY3RvciBjaGlsZCwgQ2x1dHRlci5BY3Rvcj8g c2libGluZyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQg c2V0X2NoaWxkX2F0X2luZGV4IChDbHV0dGVyLkFjdG9yIGNoaWxkLCBpbnQgaW5kZXhfKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfY2hpbGRfYmVs b3dfc2libGluZyAoQ2x1dHRlci5BY3RvciBjaGlsZCwgQ2x1dHRlci5BY3Rvcj8gc2libGluZyk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2NoaWxk X3RyYW5zZm9ybSAoQ2x1dHRlci5NYXRyaXg/IHRyYW5zZm9ybSk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMC42IildCisrCQlwdWJsaWMgdm9pZCBzZXRfY2xpcCAoZmxvYXQgeG9mZiwgZmxvYXQg eW9mZiwgZmxvYXQgd2lkdGgsIGZsb2F0IGhlaWdodCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS40IildCisrCQlwdWJsaWMgdm9pZCBzZXRfY2xpcF90b19hbGxvY2F0aW9uIChib29sIGNsaXBf c2V0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRf Y29udGVudCAoQ2x1dHRlci5Db250ZW50PyBjb250ZW50KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfY29udGVudF9ncmF2aXR5IChDbHV0dGVyLkNv bnRlbnRHcmF2aXR5IGdyYXZpdHkpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJ CXB1YmxpYyB2b2lkIHNldF9jb250ZW50X3JlcGVhdCAoQ2x1dHRlci5Db250ZW50UmVwZWF0IHJl cGVhdCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0 X2NvbnRlbnRfc2NhbGluZ19maWx0ZXJzIChDbHV0dGVyLlNjYWxpbmdGaWx0ZXIgbWluX2ZpbHRl ciwgQ2x1dHRlci5TY2FsaW5nRmlsdGVyIG1hZ19maWx0ZXIpOworKwkJW1ZlcnNpb24gKGRlcHJl Y2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lk IHNldF9kZXB0aCAoZmxvYXQgZGVwdGgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0K KysJCXB1YmxpYyB2b2lkIHNldF9lYXNpbmdfZGVsYXkgKHVpbnQgbXNlY3MpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9lYXNpbmdfZHVyYXRpb24g KHVpbnQgbXNlY3MpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2 b2lkIHNldF9lYXNpbmdfbW9kZSAoQ2x1dHRlci5BbmltYXRpb25Nb2RlIG1vZGUpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2ZpeGVkX3Bvc2l0aW9u X3NldCAoYm9vbCBpc19zZXQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVi bGljIHZvaWQgc2V0X2ZsYWdzIChDbHV0dGVyLkFjdG9yRmxhZ3MgZmxhZ3MpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2hlaWdodCAoZmxvYXQgaGVp Z2h0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRf bGF5b3V0X21hbmFnZXIgKENsdXR0ZXIuTGF5b3V0TWFuYWdlcj8gbWFuYWdlcik7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X21hcmdpbiAoQ2x1dHRl ci5NYXJnaW4gbWFyZ2luKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJs aWMgdm9pZCBzZXRfbWFyZ2luX2JvdHRvbSAoZmxvYXQgbWFyZ2luKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbWFyZ2luX2xlZnQgKGZsb2F0IG1h cmdpbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0 X21hcmdpbl9yaWdodCAoZmxvYXQgbWFyZ2luKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEw IildCisrCQlwdWJsaWMgdm9pZCBzZXRfbWFyZ2luX3RvcCAoZmxvYXQgbWFyZ2luKTsKKysJCXB1 YmxpYyB2b2lkIHNldF9uYW1lIChzdHJpbmcgbmFtZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS44IildCisrCQlwdWJsaWMgdm9pZCBzZXRfb2Zmc2NyZWVuX3JlZGlyZWN0IChDbHV0dGVyLk9m ZnNjcmVlblJlZGlyZWN0IHJlZGlyZWN0KTsKKysJCXB1YmxpYyB2b2lkIHNldF9vcGFjaXR5ICh1 aW50OCBvcGFjaXR5KTsKKysJCXB1YmxpYyB2b2lkIHNldF9vcGFjaXR5X292ZXJyaWRlIChpbnQg b3BhY2l0eSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2lu Y2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3BhcmVudCAoQ2x1dHRlci5BY3RvciBw YXJlbnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIHNl dF9waXZvdF9wb2ludCAoZmxvYXQgcGl2b3RfeCwgZmxvYXQgcGl2b3RfeSk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3Bpdm90X3BvaW50X3ogKGZs b2F0IHBpdm90X3opOworKwkJcHVibGljIHZvaWQgc2V0X3Bvc2l0aW9uIChmbG9hdCB4LCBmbG9h dCB5KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9y ZWFjdGl2ZSAoYm9vbCByZWFjdGl2ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisr CQlwdWJsaWMgdm9pZCBzZXRfcmVxdWVzdF9tb2RlIChDbHV0dGVyLlJlcXVlc3RNb2RlIG1vZGUp OworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEu MTIiLCBzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9yb3RhdGlvbiAoQ2x1dHRl ci5Sb3RhdGVBeGlzIGF4aXMsIGRvdWJsZSBhbmdsZSwgZmxvYXQgeCwgZmxvYXQgeSwgZmxvYXQg eik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3Jv dGF0aW9uX2FuZ2xlIChDbHV0dGVyLlJvdGF0ZUF4aXMgYXhpcywgZG91YmxlIGFuZ2xlKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9zY2FsZSAoZG91 YmxlIHNjYWxlX3gsIGRvdWJsZSBzY2FsZV95KTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0g dHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJs aWMgdm9pZCBzZXRfc2NhbGVfZnVsbCAoZG91YmxlIHNjYWxlX3gsIGRvdWJsZSBzY2FsZV95LCBm bG9hdCBjZW50ZXJfeCwgZmxvYXQgY2VudGVyX3kpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9zY2FsZV96IChkb3VibGUgc2NhbGVfeik7CisrCQlw dWJsaWMgdm9pZCBzZXRfc2l6ZSAoZmxvYXQgd2lkdGgsIGZsb2F0IGhlaWdodCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBzZXRfdGV4dF9kaXJlY3Rpb24g KENsdXR0ZXIuVGV4dERpcmVjdGlvbiB0ZXh0X2Rpcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3RyYW5zZm9ybSAoQ2x1dHRlci5NYXRyaXg/IHRy YW5zZm9ybSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQg c2V0X3RyYW5zbGF0aW9uIChmbG9hdCB0cmFuc2xhdGVfeCwgZmxvYXQgdHJhbnNsYXRlX3ksIGZs b2F0IHRyYW5zbGF0ZV96KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJCXB1Ymxp YyB2b2lkIHNldF93aWR0aCAoZmxvYXQgd2lkdGgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAu NiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3ggKGZsb2F0IHgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF94X2FsaWduIChDbHV0dGVyLkFjdG9yQWxp Z24geF9hbGlnbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZv aWQgc2V0X3hfZXhwYW5kIChib29sIGV4cGFuZCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42 IildCisrCQlwdWJsaWMgdm9pZCBzZXRfeSAoZmxvYXQgeSk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3lfYWxpZ24gKENsdXR0ZXIuQWN0b3JBbGln biB5X2FsaWduKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9p ZCBzZXRfeV9leHBhbmQgKGJvb2wgZXhwYW5kKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEy IildCisrCQlwdWJsaWMgdm9pZCBzZXRfel9wb3NpdGlvbiAoZmxvYXQgel9wb3NpdGlvbik7Cisr CQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIs IHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3pfcm90YXRpb25fZnJvbV9ncmF2 aXR5IChkb3VibGUgYW5nbGUsIENsdXR0ZXIuR3Jhdml0eSBncmF2aXR5KTsKKysJCXB1YmxpYyBi b29sIHNob3VsZF9waWNrX3BhaW50ICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVl LCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyB2 aXJ0dWFsIHZvaWQgc2hvd19hbGwgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisr CQlwdWJsaWMgYm9vbCB0cmFuc2Zvcm1fc3RhZ2VfcG9pbnQgKGZsb2F0IHgsIGZsb2F0IHksIG91 dCBmbG9hdCB4X291dCwgb3V0IGZsb2F0IHlfb3V0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjAiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgdW5tYXAgKCk7CisrCQlbVmVyc2lvbiAoZGVw cmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjAuMiIp XQorKwkJcHVibGljIHZvaWQgdW5wYXJlbnQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgdm9pZCB1bnNldF9mbGFncyAoQ2x1dHRlci5BY3RvckZsYWdzIGZsYWdz KTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQor KwkJcHVibGljIENsdXR0ZXIuQWN0aW9uIGFjdGlvbnMgeyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29y TWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIENsdXR0ZXIu QWN0b3JCb3ggYWxsb2NhdGlvbiB7IG93bmVkIGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2Rd CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4x MiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIENsdXR0ZXIuR3Jhdml0eSBhbmNob3JfZ3Jh dml0eSB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChk ZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMC44 IildCisrCQlwdWJsaWMgZmxvYXQgYW5jaG9yX3ggeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNz b3JNZXRob2RdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2lu Y2UgPSAiMS4xMiIsIHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIGZsb2F0IGFuY2hvcl95IHsg Z2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ2x1 dHRlci5Db2xvciBiYWNrZ3JvdW5kX2NvbG9yIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29y TWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBib29sIGJh Y2tncm91bmRfY29sb3Jfc2V0IHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgYm9vbCBjaGlsZF90cmFuc2Zvcm1f c2V0IHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEyIildCisrCQlwdWJsaWMgR3JhcGhlbmUuUmVjdCBjbGlwX3JlY3QgeyBvd25lZCBnZXQ7 IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGJvb2wgY2xp cF90b19hbGxvY2F0aW9uIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIENsdXR0ZXIuQ29uc3RyYWludCBj b25zdHJhaW50cyB7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1 YmxpYyBDbHV0dGVyLkNvbnRlbnQgY29udGVudCB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENsdXR0ZXIuQWN0b3JCb3ggY29udGVudF9ib3gg eyBnZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ2x1dHRl ci5Db250ZW50R3Jhdml0eSBjb250ZW50X2dyYXZpdHkgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbnRlbnRSZXBlYXQgY29u dGVudF9yZXBlYXQgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVl LCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBm bG9hdCBkZXB0aCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkVmZmVjdCBlZmZlY3QgeyBz ZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ2x1dHRlci5B Y3RvciBmaXJzdF9jaGlsZCB7IGdldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQor KwkJcHVibGljIGJvb2wgZml4ZWRfcG9zaXRpb25fc2V0IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0Fj Y2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIGZs b2F0IGZpeGVkX3ggeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgZmxvYXQgZml4ZWRfeSB7IGdldDsgc2V0 OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIGhhc19jbGlwIHsgZ2V0 OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0K KysJCXB1YmxpYyBib29sIGhhc19wb2ludGVyIHsgZ2V0OyB9CisrCQlwdWJsaWMgZmxvYXQgaGVp Z2h0IHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJs aWMgQ2x1dHRlci5BY3RvciBsYXN0X2NoaWxkIHsgZ2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMCIpXQorKwkJcHVibGljIENsdXR0ZXIuTGF5b3V0TWFuYWdlciBsYXlvdXRfbWFuYWdl ciB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBDbHV0dGVy LlNjYWxpbmdGaWx0ZXIgbWFnbmlmaWNhdGlvbl9maWx0ZXIgeyBnZXQ7IHNldDsgfQorKwkJW05v QWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg Ym9vbCBtYXBwZWQgeyBnZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlw dWJsaWMgZmxvYXQgbWFyZ2luX2JvdHRvbSB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGZsb2F0IG1hcmdpbl9sZWZ0IHsgZ2V0OyBzZXQ7IH0K KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgZmxvYXQgbWFyZ2luX3Jp Z2h0IHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJs aWMgZmxvYXQgbWFyZ2luX3RvcCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0K KysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBmbG9hdCBtaW5faGVpZ2h0 IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjAuOCIpXQorKwkJcHVibGljIGJvb2wgbWluX2hlaWdodF9zZXQgeyBnZXQ7IHNldDsgfQor KwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlw dWJsaWMgZmxvYXQgbWluX3dpZHRoIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9k XQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIGJvb2wgbWluX3dpZHRo X3NldCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBDbHV0 dGVyLlNjYWxpbmdGaWx0ZXIgbWluaWZpY2F0aW9uX2ZpbHRlciB7IGdldDsgc2V0OyB9CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCQlwdWJsaWMgc3RyaW5nIG5hbWUgeyBnZXQ7IHNl dDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44Iild CisrCQlwdWJsaWMgZmxvYXQgbmF0dXJhbF9oZWlnaHQgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNj ZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgYm9v bCBuYXR1cmFsX2hlaWdodF9zZXQgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2Rd CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgZmxvYXQgbmF0dXJhbF93 aWR0aCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChz aW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBib29sIG5hdHVyYWxfd2lkdGhfc2V0IHsgZ2V0OyBz ZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBDbHV0dGVyLk9m ZnNjcmVlblJlZGlyZWN0IG9mZnNjcmVlbl9yZWRpcmVjdCB7IGdldDsgc2V0OyB9CisrCQlwdWJs aWMgdWludCBvcGFjaXR5IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludCBwaXZv dF9wb2ludCB7IG93bmVkIGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIp XQorKwkJcHVibGljIGZsb2F0IHBpdm90X3BvaW50X3ogeyBnZXQ7IHNldDsgfQorKwkJW05vQWNj ZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIEdy YXBoZW5lLlBvaW50IHBvc2l0aW9uIHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChz aW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBib29sIHJlYWN0aXZlIHsgZ2V0OyBzZXQ7IH0KKysJ CVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVi bGljIGJvb2wgcmVhbGl6ZWQgeyBnZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0K KysJCXB1YmxpYyBDbHV0dGVyLlJlcXVlc3RNb2RlIHJlcXVlc3RfbW9kZSB7IGdldDsgc2V0OyB9 CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBmbG9hdCByZXNvdXJjZV9zY2FsZSB7 IGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42 IildCisrCQlwdWJsaWMgZG91YmxlIHJvdGF0aW9uX2FuZ2xlX3ggeyBnZXQ7IHNldDsgfQorKwkJ W05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJs aWMgZG91YmxlIHJvdGF0aW9uX2FuZ2xlX3kgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JN ZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgZG91YmxlIHJv dGF0aW9uX2FuZ2xlX3ogeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlb VmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNp bmNlID0gIjAuNiIpXQorKwkJcHVibGljIEdyYXBoZW5lLlBvaW50M0Qgcm90YXRpb25fY2VudGVy X3ggeyBvd25lZCBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lv biAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0g IjAuNiIpXQorKwkJcHVibGljIEdyYXBoZW5lLlBvaW50M0Qgcm90YXRpb25fY2VudGVyX3kgeyBv d25lZCBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoZGVw cmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjAuNiIp XQorKwkJcHVibGljIEdyYXBoZW5lLlBvaW50M0Qgcm90YXRpb25fY2VudGVyX3ogeyBvd25lZCBn ZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRl ZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMCIpXQorKwkJ cHVibGljIENsdXR0ZXIuR3Jhdml0eSByb3RhdGlvbl9jZW50ZXJfel9ncmF2aXR5IHsgZ2V0OyBz ZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0 cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1Ymxp YyBmbG9hdCBzY2FsZV9jZW50ZXJfeCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhv ZF0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIx LjEyIiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgc2NhbGVfY2VudGVyX3kgeyBn ZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRl ZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMCIpXQorKwkJ cHVibGljIENsdXR0ZXIuR3Jhdml0eSBzY2FsZV9ncmF2aXR5IHsgZ2V0OyBzZXQ7IH0KKysJCVtO b0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGlj IGRvdWJsZSBzY2FsZV94IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIGRvdWJsZSBzY2FsZV95IHsgZ2V0 OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgZG91Ymxl IHNjYWxlX3ogeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lv biAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgYm9vbCBzaG93X29uX3NldF9wYXJlbnQgeyBn ZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMiIpXQorKwkJcHVibGljIEdyYXBoZW5lLlNpemUgc2l6ZSB7IG93bmVkIGdldDsgc2V0OyB9 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgQ2x1dHRlci5UZXh0RGly ZWN0aW9uIHRleHRfZGlyZWN0aW9uIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9k XQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBib29sIHRyYW5zZm9y bV9zZXQgeyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTIiKV0KKysJCXB1YmxpYyBmbG9hdCB0cmFuc2xhdGlvbl94IHsgZ2V0OyBzZXQ7IH0K KysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJ CXB1YmxpYyBmbG9hdCB0cmFuc2xhdGlvbl95IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29y TWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBmbG9hdCB0 cmFuc2xhdGlvbl96IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVi bGljIGJvb2wgdmlzaWJsZSB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgZmxvYXQgd2lkdGggeyBn ZXQ7IHNldDsgfQorKwkJcHVibGljIGZsb2F0IHggeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFjdG9yQWxpZ24geF9hbGlnbiB7 IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGJv b2wgeF9leHBhbmQgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIGZsb2F0IHkgeyBnZXQ7IHNldDsg fQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFjdG9y QWxpZ24geV9hbGlnbiB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIp XQorKwkJcHVibGljIGJvb2wgeV9leHBhbmQgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBmbG9hdCB6X3Bvc2l0aW9uIHsgZ2V0OyBzZXQ7IH0K KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCBhbGxv Y2F0aW9uX2NoYW5nZWQgKENsdXR0ZXIuQWN0b3JCb3ggYm94LCBDbHV0dGVyLkFsbG9jYXRpb25G bGFncyBmbGFncyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdmly dHVhbCBzaWduYWwgYm9vbCBidXR0b25fcHJlc3NfZXZlbnQgKENsdXR0ZXIuQnV0dG9uRXZlbnQg ZXZlbnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZpcnR1YWwg c2lnbmFsIGJvb2wgYnV0dG9uX3JlbGVhc2VfZXZlbnQgKENsdXR0ZXIuQnV0dG9uRXZlbnQgZXZl bnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2ln bmFsIGJvb2wgY2FwdHVyZWRfZXZlbnQgKENsdXR0ZXIuRXZlbnQgZXZlbnQpOworKwkJW0hhc0Vt aXR0ZXJdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCQlwdWJsaWMgdmlydHVhbCBz aWduYWwgdm9pZCBkZXN0cm95ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJ cHVibGljIHZpcnR1YWwgc2lnbmFsIGJvb2wgZW50ZXJfZXZlbnQgKENsdXR0ZXIuQ3Jvc3NpbmdF dmVudCBldmVudCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdmly dHVhbCBzaWduYWwgYm9vbCBldmVudCAoQ2x1dHRlci5FdmVudCBldmVudCk7CisrCQlbSGFzRW1p dHRlcl0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNp Z25hbCB2b2lkIGhpZGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJs aWMgdmlydHVhbCBzaWduYWwgdm9pZCBrZXlfZm9jdXNfaW4gKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMC42IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBrZXlfZm9jdXNfb3V0 ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2ln bmFsIGJvb2wga2V5X3ByZXNzX2V2ZW50IChDbHV0dGVyLktleUV2ZW50IGV2ZW50KTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCBib29sIGtl eV9yZWxlYXNlX2V2ZW50IChDbHV0dGVyLktleUV2ZW50IGV2ZW50KTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCBib29sIGxlYXZlX2V2ZW50 IChDbHV0dGVyLkNyb3NzaW5nRXZlbnQgZXZlbnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAu NiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIGJvb2wgbW90aW9uX2V2ZW50IChDbHV0dGVy Lk1vdGlvbkV2ZW50IGV2ZW50KTsKKysJCVtIYXNFbWl0dGVyXQorKwkJW1ZlcnNpb24gKGRlcHJl Y2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIwLjgiKV0K KysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIHBhaW50IChDbHV0dGVyLlBhaW50Q29udGV4 dCBwYWludF9jb250ZXh0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJCXB1Ymxp YyB2aXJ0dWFsIHNpZ25hbCB2b2lkIHBhcmVudF9zZXQgKENsdXR0ZXIuQWN0b3I/IG9sZF9wYXJl bnQpOworKwkJW0hhc0VtaXR0ZXJdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlw dWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBwaWNrIChDbHV0dGVyLlBpY2tDb250ZXh0IHBpY2tf Y29udGV4dCk7CisrCQlbSGFzRW1pdHRlcl0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0K KysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIHF1ZXVlX3JlbGF5b3V0ICgpOworKwkJW0hh c0VtaXR0ZXJdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2lu Y2UgPSAiMS4xNiIsIHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZv aWQgcmVhbGl6ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2 aXJ0dWFsIHNpZ25hbCBib29sIHNjcm9sbF9ldmVudCAoQ2x1dHRlci5TY3JvbGxFdmVudCBldmVu dCk7CisrCQlbSGFzRW1pdHRlcl0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJCXB1 YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIHNob3cgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIGJvb2wgdG91Y2hfZXZlbnQgKENsdXR0 ZXIuRXZlbnQgZXZlbnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1Ymxp YyBzaWduYWwgdm9pZCB0cmFuc2l0aW9uX3N0b3BwZWQgKHN0cmluZyBuYW1lLCBib29sIGlzX2Zp bmlzaGVkKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgc2lnbmFs IHZvaWQgdHJhbnNpdGlvbnNfY29tcGxldGVkICgpOworKwkJW0hhc0VtaXR0ZXJdCisrCQlbVmVy c2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIsIHNpbmNl ID0gIjAuOCIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgdW5yZWFsaXplICgpOwor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5 cGVfaWQgPSAiY2x1dHRlcl9hY3Rvcl9tZXRhX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChz aW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGFic3RyYWN0IGNsYXNzIEFjdG9yTWV0YSA6IEdMaWIu SW5pdGlhbGx5VW5vd25lZCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBm YWxzZSldCisrCQlwcm90ZWN0ZWQgQWN0b3JNZXRhICgpOworKwkJcHVibGljIHVub3duZWQgQ2x1 dHRlci5BY3RvciBnZXRfYWN0b3IgKCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfZW5hYmxlZCAoKTsK KysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfbmFtZSAoKTsKKysJCVtOb1dyYXBwZXJdCisr CQlwdWJsaWMgdmlydHVhbCB2b2lkIHNldF9hY3RvciAoQ2x1dHRlci5BY3Rvcj8gYWN0b3IpOwor KwkJcHVibGljIHZvaWQgc2V0X2VuYWJsZWQgKGJvb2wgaXNfZW5hYmxlZCk7CisrCQlwdWJsaWMg dm9pZCBzZXRfbmFtZSAoc3RyaW5nIG5hbWUpOworKwkJcHVibGljIENsdXR0ZXIuQWN0b3IgYWN0 b3IgeyBnZXQ7IH0KKysJCXB1YmxpYyBib29sIGVuYWJsZWQgeyBnZXQ7IHNldDsgfQorKwkJcHVi bGljIHN0cmluZyBuYW1lIHsgZ2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfYWN0b3Jfbm9k ZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgQWN0b3JOb2RlIDogQ2x1dHRlci5QYWlu dE5vZGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUg PSAiQ2x1dHRlclBhaW50Tm9kZSoiKV0KKysJCXB1YmxpYyBBY3Rvck5vZGUgKENsdXR0ZXIuQWN0 b3IgYWN0b3IpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9hbGlnbl9jb25zdHJhaW50X2dldF90eXBlICgp IildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGNsYXNzIEFsaWduQ29u c3RyYWludCA6IENsdXR0ZXIuQ29uc3RyYWludCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3Rf ZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQ29uc3RyYWludCoiKV0KKysJCXB1Ymxp YyBBbGlnbkNvbnN0cmFpbnQgKENsdXR0ZXIuQWN0b3I/IHNvdXJjZSwgQ2x1dHRlci5BbGlnbkF4 aXMgYXhpcywgZmxvYXQgZmFjdG9yKTsKKysJCXB1YmxpYyBDbHV0dGVyLkFsaWduQXhpcyBnZXRf YWxpZ25fYXhpcyAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfZmFjdG9yICgpOworKwkJcHVibGlj IHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfc291cmNlICgpOworKwkJcHVibGljIHZvaWQgc2V0 X2FsaWduX2F4aXMgKENsdXR0ZXIuQWxpZ25BeGlzIGF4aXMpOworKwkJcHVibGljIHZvaWQgc2V0 X2ZhY3RvciAoZmxvYXQgZmFjdG9yKTsKKysJCXB1YmxpYyB2b2lkIHNldF9zb3VyY2UgKENsdXR0 ZXIuQWN0b3I/IHNvdXJjZSk7CisrCQlwdWJsaWMgQ2x1dHRlci5BbGlnbkF4aXMgYWxpZ25fYXhp cyB7IGdldDsgc2V0IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIGZsb2F0IGZhY3RvciB7IGdldDsg c2V0IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIENsdXR0ZXIuQWN0b3Igc291cmNlIHsgZ2V0OyBz ZXQgY29uc3RydWN0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2FscGhhX2dldF90eXBlICgpIildCisr CVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwg c2luY2UgPSAiMC4yIildCisrCXB1YmxpYyBjbGFzcyBBbHBoYSA6IEdMaWIuSW5pdGlhbGx5VW5v d25lZCwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5j dGlvbiA9IGZhbHNlKV0KKysJCXB1YmxpYyBBbHBoYSAoKTsKKysJCVtDQ29kZSAoaGFzX2NvbnN0 cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJ CXB1YmxpYyBBbHBoYS5mdWxsIChDbHV0dGVyLlRpbWVsaW5lIHRpbWVsaW5lLCB1bG9uZyBtb2Rl KTsKKysJCXB1YmxpYyBkb3VibGUgZ2V0X2FscGhhICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMCIpXQorKwkJcHVibGljIHVsb25nIGdldF9tb2RlICgpOworKwkJcHVibGljIHVub3duZWQg Q2x1dHRlci5UaW1lbGluZSBnZXRfdGltZWxpbmUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MC44IildCisrCQlwdWJsaWMgdm9pZCBzZXRfY2xvc3VyZSAoR0xpYi5DbG9zdXJlIGNsb3N1cmUp OworKwkJcHVibGljIHZvaWQgc2V0X2Z1bmMgKG93bmVkIENsdXR0ZXIuQWxwaGFGdW5jIGZ1bmMp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X21vZGUg KHVsb25nIG1vZGUpOworKwkJcHVibGljIHZvaWQgc2V0X3RpbWVsaW5lIChDbHV0dGVyLlRpbWVs aW5lIHRpbWVsaW5lKTsKKysJCXB1YmxpYyBkb3VibGUgYWxwaGEgeyBnZXQ7IH0KKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bG9uZyBtb2RlIHsgZ2V0OyBzZXQgY29u c3RydWN0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5UaW1lbGluZSB0aW1lbGluZSB7IGdldDsgc2V0 OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgdHlwZV9pZCA9ICJjbHV0dGVyX2FuaW1hdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lv biAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0g IjEuMCIpXQorKwlwdWJsaWMgY2xhc3MgQW5pbWF0aW9uIDogR0xpYi5PYmplY3QsIENsdXR0ZXIu U2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSld CisrCQlwdWJsaWMgQW5pbWF0aW9uICgpOworKwkJcHVibGljIHVpbnQgZ2V0X2R1cmF0aW9uICgp OworKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5JbnRlcnZhbCBnZXRfaW50ZXJ2YWwgKHN0cmlu ZyBwcm9wZXJ0eV9uYW1lKTsKKysJCXB1YmxpYyBib29sIGdldF9sb29wICgpOworKwkJcHVibGlj IHVsb25nIGdldF9tb2RlICgpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5UaW1lbGluZSBn ZXRfdGltZWxpbmUgKCk7CisrCQlwdWJsaWMgYm9vbCBoYXNfcHJvcGVydHkgKHN0cmluZyBwcm9w ZXJ0eV9uYW1lKTsKKysJCXB1YmxpYyB2b2lkIHNldF9kdXJhdGlvbiAodWludCBtc2Vjcyk7Cisr CQlwdWJsaWMgdm9pZCBzZXRfbG9vcCAoYm9vbCBsb29wKTsKKysJCXB1YmxpYyB2b2lkIHNldF9t b2RlICh1bG9uZyBtb2RlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9vYmplY3QgKEdMaWIuT2JqZWN0 IG9iamVjdCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfdGltZWxpbmUgKENsdXR0ZXIuVGltZWxpbmU/ IHRpbWVsaW5lKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0 ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIxLjAiKV0KKysJ CXB1YmxpYyBDbHV0dGVyLkFscGhhIGFscGhhIHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJCXB1Ymxp YyB1aW50IGR1cmF0aW9uIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBib29sIGxvb3AgeyBnZXQ7 IHNldDsgfQorKwkJcHVibGljIHVsb25nIG1vZGUgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNz b3JNZXRob2RdCisrCQlwdWJsaWMgR0xpYi5PYmplY3Qgb2JqZWN0IHsgb3duZWQgZ2V0OyBzZXQ7 IH0KKysJCXB1YmxpYyBDbHV0dGVyLlRpbWVsaW5lIHRpbWVsaW5lIHsgZ2V0OyBzZXQ7IH0KKysJ CXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGNvbXBsZXRlZCAoKTsKKysJCXB1YmxpYyB2aXJ0 dWFsIHNpZ25hbCB2b2lkIHN0YXJ0ZWQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtDb21w YWN0XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCXB1YmxpYyBjbGFzcyBBbnlFdmVu dCA6IENsdXR0ZXIuRXZlbnQgeworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRGbGFncyBmbGFnczsK KysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuQWN0b3Igc291cmNlOworKwkJcHVibGljIHdlYWsgQ2x1 dHRlci5TdGFnZSBzdGFnZTsKKysJCXB1YmxpYyB1aW50MzIgdGltZTsKKysJCXB1YmxpYyBDbHV0 dGVyLkV2ZW50VHlwZSB0eXBlOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9iYWNrZW5kX2dldF90eXBlICgp IildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJcHVibGljIGNsYXNzIEJhY2tlbmQg OiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxz ZSldCisrCQlwcm90ZWN0ZWQgQmFja2VuZCAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMg dmlydHVhbCB2b2lkIGFkZF9vcHRpb25zIChHTGliLk9wdGlvbkdyb3VwIGdyb3VwKTsKKysJCVtO b1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCBib29sIGNyZWF0ZV9jb250ZXh0ICgpIHRocm93 cyBHTGliLkVycm9yOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHVub3duZWQg Q2x1dHRlci5TdGFnZVdpbmRvdyBjcmVhdGVfc3RhZ2UgKENsdXR0ZXIuU3RhZ2Ugd3JhcHBlcikg dGhyb3dzIEdMaWIuRXJyb3I7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9p ZCBlbnN1cmVfY29udGV4dCAoQ2x1dHRlci5TdGFnZSBzdGFnZSk7CisrCQlwdWJsaWMgdW5vd25l ZCBDbHV0dGVyLlNlYXQgZ2V0X2RlZmF1bHRfc2VhdCAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlw dWJsaWMgdmlydHVhbCBDbHV0dGVyLkZlYXR1cmVGbGFncyBnZXRfZmVhdHVyZXMgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdW5vd25lZCBDYWlyby5Gb250T3B0 aW9ucyBnZXRfZm9udF9vcHRpb25zICgpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5JbnB1 dE1ldGhvZCBnZXRfaW5wdXRfbWV0aG9kICgpOworKwkJcHVibGljIGRvdWJsZSBnZXRfcmVzb2x1 dGlvbiAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGluaXRfZXZl bnRzICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgaW5pdF9mZWF0 dXJlcyAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCBib29sIHBvc3RfcGFy c2UgKCkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1 YWwgYm9vbCBwcmVfcGFyc2UgKCkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlbTm9XcmFwcGVyXQor KwkJcHVibGljIHZpcnR1YWwgdm9pZCByZWRyYXcgKENsdXR0ZXIuU3RhZ2Ugc3RhZ2UpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2ZvbnRfb3B0aW9u cyAoQ2Fpcm8uRm9udE9wdGlvbnMgb3B0aW9ucyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfaW5wdXRf bWV0aG9kIChDbHV0dGVyLklucHV0TWV0aG9kIG1ldGhvZCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgZm9udF9jaGFuZ2VkICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHNpZ25hbCB2b2lkIHJlc29sdXRpb25f Y2hhbmdlZCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBzaWdu YWwgdm9pZCBzZXR0aW5nc19jaGFuZ2VkICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9iaW5fbGF5b3V0 X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJcHVibGljIGNs YXNzIEJpbkxheW91dCA6IENsdXR0ZXIuTGF5b3V0TWFuYWdlciB7CisrCQlbQ0NvZGUgKGhhc19j b25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyTGF5b3V0TWFuYWdlcioi KV0KKysJCXB1YmxpYyBCaW5MYXlvdXQgKENsdXR0ZXIuQmluQWxpZ25tZW50IHhfYWxpZ24gPSBD bHV0dGVyLkJpbkFsaWdubWVudC5TVEFSVCwgQ2x1dHRlci5CaW5BbGlnbm1lbnQgeV9hbGlnbiA9 IENsdXR0ZXIuQmluQWxpZ25tZW50LlNUQVJUKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJ W1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBz aW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkJpbkFsaWdubWVudCB4X2FsaWduIHsg Z2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0 ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJ CXB1YmxpYyBDbHV0dGVyLkJpbkFsaWdubWVudCB5X2FsaWduIHsgZ2V0OyBzZXQ7IH0KKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lk ID0gImNsdXR0ZXJfYmluZF9jb25zdHJhaW50X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChz aW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGNsYXNzIEJpbmRDb25zdHJhaW50IDogQ2x1dHRlci5D b25zdHJhaW50IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0 eXBlID0gIkNsdXR0ZXJDb25zdHJhaW50KiIpXQorKwkJcHVibGljIEJpbmRDb25zdHJhaW50IChD bHV0dGVyLkFjdG9yPyBzb3VyY2UsIENsdXR0ZXIuQmluZENvb3JkaW5hdGUgY29vcmRpbmF0ZSwg ZmxvYXQgb2Zmc2V0KTsKKysJCXB1YmxpYyBDbHV0dGVyLkJpbmRDb29yZGluYXRlIGdldF9jb29y ZGluYXRlICgpOworKwkJcHVibGljIGZsb2F0IGdldF9vZmZzZXQgKCk7CisrCQlwdWJsaWMgdW5v d25lZCBDbHV0dGVyLkFjdG9yIGdldF9zb3VyY2UgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfY29v cmRpbmF0ZSAoQ2x1dHRlci5CaW5kQ29vcmRpbmF0ZSBjb29yZGluYXRlKTsKKysJCXB1YmxpYyB2 b2lkIHNldF9vZmZzZXQgKGZsb2F0IG9mZnNldCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfc291cmNl IChDbHV0dGVyLkFjdG9yPyBzb3VyY2UpOworKwkJcHVibGljIENsdXR0ZXIuQmluZENvb3JkaW5h dGUgY29vcmRpbmF0ZSB7IGdldDsgc2V0IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIGZsb2F0IG9m ZnNldCB7IGdldDsgc2V0IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIENsdXR0ZXIuQWN0b3Igc291 cmNlIHsgZ2V0OyBzZXQgY29uc3RydWN0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2JpbmRpbmdfcG9v bF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBj bGFzcyBCaW5kaW5nUG9vbCA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVj dF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1YmxpYyBCaW5kaW5nUG9vbCAoc3RyaW5nIG5hbWUp OworKwkJcHVibGljIGJvb2wgYWN0aXZhdGUgKHVpbnQga2V5X3ZhbCwgQ2x1dHRlci5Nb2RpZmll clR5cGUgbW9kaWZpZXJzLCBHTGliLk9iamVjdCBnb2JqZWN0KTsKKysJCXB1YmxpYyB2b2lkIGJs b2NrX2FjdGlvbiAoc3RyaW5nIGFjdGlvbl9uYW1lKTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25l ZCBDbHV0dGVyLkJpbmRpbmdQb29sIGZpbmQgKHN0cmluZyBuYW1lKTsKKysJCXB1YmxpYyB1bm93 bmVkIHN0cmluZyBmaW5kX2FjdGlvbiAodWludCBrZXlfdmFsLCBDbHV0dGVyLk1vZGlmaWVyVHlw ZSBtb2RpZmllcnMpOworKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIENsdXR0ZXIuQmluZGluZ1Bv b2wgZ2V0X2Zvcl9jbGFzcyAodm9pZCoga2xhc3MpOworKwkJcHVibGljIHZvaWQgaW5zdGFsbF9h Y3Rpb24gKHN0cmluZyBhY3Rpb25fbmFtZSwgdWludCBrZXlfdmFsLCBDbHV0dGVyLk1vZGlmaWVy VHlwZSBtb2RpZmllcnMsIG93bmVkIENsdXR0ZXIuQmluZGluZ0FjdGlvbkZ1bmMgY2FsbGJhY2sp OworKwkJcHVibGljIHZvaWQgaW5zdGFsbF9jbG9zdXJlIChzdHJpbmcgYWN0aW9uX25hbWUsIHVp bnQga2V5X3ZhbCwgQ2x1dHRlci5Nb2RpZmllclR5cGUgbW9kaWZpZXJzLCBHTGliLkNsb3N1cmUg Y2xvc3VyZSk7CisrCQlwdWJsaWMgdm9pZCBvdmVycmlkZV9hY3Rpb24gKHVpbnQga2V5X3ZhbCwg Q2x1dHRlci5Nb2RpZmllclR5cGUgbW9kaWZpZXJzLCBvd25lZCBHTGliLkNhbGxiYWNrIGNhbGxi YWNrKTsKKysJCXB1YmxpYyB2b2lkIG92ZXJyaWRlX2Nsb3N1cmUgKHVpbnQga2V5X3ZhbCwgQ2x1 dHRlci5Nb2RpZmllclR5cGUgbW9kaWZpZXJzLCBHTGliLkNsb3N1cmUgY2xvc3VyZSk7CisrCQlw dWJsaWMgdm9pZCByZW1vdmVfYWN0aW9uICh1aW50IGtleV92YWwsIENsdXR0ZXIuTW9kaWZpZXJU eXBlIG1vZGlmaWVycyk7CisrCQlwdWJsaWMgdm9pZCB1bmJsb2NrX2FjdGlvbiAoc3RyaW5nIGFj dGlvbl9uYW1lKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIHN0cmluZyBuYW1l IHsgb3duZWQgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfYmx1cl9lZmZlY3Rf Z2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgY2xh c3MgQmx1ckVmZmVjdCA6IENsdXR0ZXIuT2Zmc2NyZWVuRWZmZWN0IHsKKysJCVtDQ29kZSAoaGFz X2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJFZmZlY3QqIildCisr CQlwdWJsaWMgQmx1ckVmZmVjdCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfYm94X2dldF90eXBlICgp IildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJcHVibGljIGNsYXNzIEJveCA6IENs dXR0ZXIuQWN0b3IsIEF0ay5JbXBsZW1lbnRvciwgQ2x1dHRlci5BbmltYXRhYmxlLCBDbHV0dGVy LkNvbnRhaW5lciwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVj dF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3RvcioiKV0KKysJCVtWZXJzaW9u IChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAi MS4yIildCisrCQlwdWJsaWMgQm94IChDbHV0dGVyLkxheW91dE1hbmFnZXIgbWFuYWdlcik7Cisr CQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIs IHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIENsdXR0ZXIuQ29sb3IgZ2V0X2NvbG9yICgpOwor KwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAi LCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuTGF5b3V0TWFuYWdl ciBnZXRfbGF5b3V0X21hbmFnZXIgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUs IGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZv aWQgcGFjayAoQ2x1dHRlci5BY3RvciBhY3RvciwgLi4uKTsKKysJCVtWZXJzaW9uIChkZXByZWNh dGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMS4yIildCisr CQlwdWJsaWMgdm9pZCBwYWNrX2FmdGVyIChDbHV0dGVyLkFjdG9yIGFjdG9yLCBDbHV0dGVyLkFj dG9yPyBzaWJsaW5nLCAuLi4pOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXBy ZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHBh Y2tfYXQgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIGludCBwb3NpdGlvbiwgLi4uKTsKKysJCVtWZXJz aW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2Ug PSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBwYWNrX2JlZm9yZSAoQ2x1dHRlci5BY3RvciBhY3Rv ciwgQ2x1dHRlci5BY3Rvcj8gc2libGluZywgLi4uKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVk ID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMS4yIildCisrCQlw dWJsaWMgdm9pZCBwYWNrdiAoQ2x1dHRlci5BY3RvciBhY3RvciwgW0NDb2RlIChhcnJheV9sZW5n dGhfY25hbWUgPSAibl9wcm9wZXJ0aWVzIiwgYXJyYXlfbGVuZ3RoX3BvcyA9IDEuNSwgYXJyYXlf bGVuZ3RoX3R5cGUgPSAiZ3VpbnQiKV0gc3RyaW5nW10gcHJvcGVydGllcywgW0NDb2RlIChhcnJh eV9sZW5ndGhfY25hbWUgPSAibl9wcm9wZXJ0aWVzIiwgYXJyYXlfbGVuZ3RoX3BvcyA9IDEuNSwg YXJyYXlfbGVuZ3RoX3R5cGUgPSAiZ3VpbnQiKV0gR0xpYi5WYWx1ZVtdIHZhbHVlcyk7CisrCQlb VmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNp bmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2NvbG9yIChDbHV0dGVyLkNvbG9yPyBj b2xvcik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2Ug PSAiMS4xMCIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2xheW91dF9tYW5h Z2VyIChDbHV0dGVyLkxheW91dE1hbmFnZXIgbWFuYWdlcik7CisrCQlbVmVyc2lvbiAoZGVwcmVj YXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjEuMiIpXQor KwkJcHVibGljIENsdXR0ZXIuQ29sb3IgY29sb3IgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNz b3JNZXRob2RdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2lu Y2UgPSAiMS4xMCIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIGJvb2wgY29sb3Jfc2V0IHsg Z2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLkxheW91dE1hbmFnZXIgbGF5b3V0X21hbmFn ZXIgeyBnZXQ7IHNldDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9ib3hfbGF5b3V0X2dldF90eXBlICgp IildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJcHVibGljIGNsYXNzIEJveExheW91 dCA6IENsdXR0ZXIuTGF5b3V0TWFuYWdlciB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVu Y3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyTGF5b3V0TWFuYWdlcioiKV0KKysJCXB1Ymxp YyBCb3hMYXlvdXQgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0 ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgZ2V0X2Fs aWdubWVudCAoQ2x1dHRlci5BY3RvciBhY3Rvciwgb3V0IENsdXR0ZXIuQm94QWxpZ25tZW50IHhf YWxpZ24sIG91dCBDbHV0dGVyLkJveEFsaWdubWVudCB5X2FsaWduKTsKKysJCVtWZXJzaW9uIChk ZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4y IildCisrCQlwdWJsaWMgdWludCBnZXRfZWFzaW5nX2R1cmF0aW9uICgpOworKwkJW1ZlcnNpb24g KGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIx LjIiKV0KKysJCXB1YmxpYyB1bG9uZyBnZXRfZWFzaW5nX21vZGUgKCk7CisrCQlbVmVyc2lvbiAo ZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEu MiIpXQorKwkJcHVibGljIGJvb2wgZ2V0X2V4cGFuZCAoQ2x1dHRlci5BY3RvciBhY3Rvcik7Cisr CQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIs IHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgZ2V0X2ZpbGwgKENsdXR0ZXIuQWN0b3Ig YWN0b3IsIG91dCBib29sIHhfZmlsbCwgb3V0IGJvb2wgeV9maWxsKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBib29sIGdldF9ob21vZ2VuZW91cyAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgQ2x1dHRlci5PcmllbnRhdGlvbiBn ZXRfb3JpZW50YXRpb24gKCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfcGFja19zdGFydCAoKTsKKysJ CXB1YmxpYyB1aW50IGdldF9zcGFjaW5nICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0 cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1Ymxp YyBib29sIGdldF91c2VfYW5pbWF0aW9ucyAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0g dHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJs aWMgYm9vbCBnZXRfdmVydGljYWwgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUs IGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZv aWQgcGFjayAoQ2x1dHRlci5BY3RvciBhY3RvciwgYm9vbCBleHBhbmQsIGJvb2wgeF9maWxsLCBi b29sIHlfZmlsbCwgQ2x1dHRlci5Cb3hBbGlnbm1lbnQgeF9hbGlnbiwgQ2x1dHRlci5Cb3hBbGln bm1lbnQgeV9hbGlnbik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0 ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2Fs aWdubWVudCAoQ2x1dHRlci5BY3RvciBhY3RvciwgQ2x1dHRlci5Cb3hBbGlnbm1lbnQgeF9hbGln biwgQ2x1dHRlci5Cb3hBbGlnbm1lbnQgeV9hbGlnbik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRl ZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJ cHVibGljIHZvaWQgc2V0X2Vhc2luZ19kdXJhdGlvbiAodWludCBtc2Vjcyk7CisrCQlbVmVyc2lv biAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0g IjEuMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2Vhc2luZ19tb2RlICh1bG9uZyBtb2RlKTsKKysJ CVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwg c2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBzZXRfZXhwYW5kIChDbHV0dGVyLkFjdG9y IGFjdG9yLCBib29sIGV4cGFuZCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRl cHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQg c2V0X2ZpbGwgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIGJvb2wgeF9maWxsLCBib29sIHlfZmlsbCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBzZXRfaG9tb2dl bmVvdXMgKGJvb2wgaG9tb2dlbmVvdXMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0K KysJCXB1YmxpYyB2b2lkIHNldF9vcmllbnRhdGlvbiAoQ2x1dHRlci5PcmllbnRhdGlvbiBvcmll bnRhdGlvbik7CisrCQlwdWJsaWMgdm9pZCBzZXRfcGFja19zdGFydCAoYm9vbCBwYWNrX3N0YXJ0 KTsKKysJCXB1YmxpYyB2b2lkIHNldF9zcGFjaW5nICh1aW50IHNwYWNpbmcpOworKwkJW1ZlcnNp b24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9 ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF91c2VfYW5pbWF0aW9ucyAoYm9vbCBhbmltYXRl KTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIx LjEyIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBzZXRfdmVydGljYWwgKGJvb2wg dmVydGljYWwpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3Np bmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB1aW50IGVhc2luZ19kdXJh dGlvbiB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJl Y2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHVsb25nIGVh c2luZ19tb2RlIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJ CXB1YmxpYyBib29sIGhvbW9nZW5lb3VzIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEyIildCisrCQlwdWJsaWMgQ2x1dHRlci5PcmllbnRhdGlvbiBvcmllbnRhdGlvbiB7 IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgYm9vbCBwYWNrX3N0YXJ0IHsgZ2V0OyBzZXQ7IH0KKysJ CXB1YmxpYyB1aW50IHNwYWNpbmcgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0 ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJ CXB1YmxpYyBib29sIHVzZV9hbmltYXRpb25zIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChk ZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4y IildCisrCQlwdWJsaWMgYm9vbCB2ZXJ0aWNhbCB7IGdldDsgc2V0OyB9CisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0 dGVyX2JyaWdodG5lc3NfY29udHJhc3RfZWZmZWN0X2dldF90eXBlICgpIildCisrCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBjbGFzcyBCcmlnaHRuZXNzQ29udHJhc3RFZmZl Y3QgOiBDbHV0dGVyLk9mZnNjcmVlbkVmZmVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3Rf ZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyRWZmZWN0KiIpXQorKwkJcHVibGljIEJy aWdodG5lc3NDb250cmFzdEVmZmVjdCAoKTsKKysJCXB1YmxpYyB2b2lkIGdldF9icmlnaHRuZXNz IChvdXQgZmxvYXQgcmVkLCBvdXQgZmxvYXQgZ3JlZW4sIG91dCBmbG9hdCBibHVlKTsKKysJCXB1 YmxpYyB2b2lkIGdldF9jb250cmFzdCAob3V0IGZsb2F0IHJlZCwgb3V0IGZsb2F0IGdyZWVuLCBv dXQgZmxvYXQgYmx1ZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfYnJpZ2h0bmVzcyAoZmxvYXQgYnJp Z2h0bmVzcyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfYnJpZ2h0bmVzc19mdWxsIChmbG9hdCByZWQs IGZsb2F0IGdyZWVuLCBmbG9hdCBibHVlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9jb250cmFzdCAo ZmxvYXQgY29udHJhc3QpOworKwkJcHVibGljIHZvaWQgc2V0X2NvbnRyYXN0X2Z1bGwgKGZsb2F0 IHJlZCwgZmxvYXQgZ3JlZW4sIGZsb2F0IGJsdWUpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisr CQlwdWJsaWMgQ2x1dHRlci5Db2xvciBicmlnaHRuZXNzIHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJ CVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIENsdXR0ZXIuQ29sb3IgY29udHJhc3QgeyBv d25lZCBnZXQ7IHNldDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbQ29tcGFjdF0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwlwdWJsaWMgY2xhc3MgQnV0dG9uRXZlbnQgOiBDbHV0 dGVyLkV2ZW50IHsKKysJCXB1YmxpYyBkb3VibGUgYXhlczsKKysJCXB1YmxpYyB1aW50MzIgYnV0 dG9uOworKwkJcHVibGljIHVpbnQgY2xpY2tfY291bnQ7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVy LklucHV0RGV2aWNlIGRldmljZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50RmxhZ3MgZmxhZ3M7 CisrCQlwdWJsaWMgQ2x1dHRlci5Nb2RpZmllclR5cGUgbW9kaWZpZXJfc3RhdGU7CisrCQlwdWJs aWMgd2VhayBDbHV0dGVyLkFjdG9yIHNvdXJjZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuU3Rh Z2Ugc3RhZ2U7CisrCQlwdWJsaWMgdWludDMyIHRpbWU7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVu dFR5cGUgdHlwZTsKKysJCXB1YmxpYyBmbG9hdCB4OworKwkJcHVibGljIGZsb2F0IHk7CisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9p ZCA9ICJjbHV0dGVyX2NhbnZhc19nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMCIpXQorKwlwdWJsaWMgY2xhc3MgQ2FudmFzIDogR0xpYi5PYmplY3QsIENsdXR0ZXIuQ29u dGVudCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9 ICJDbHV0dGVyQ29udGVudCoiKV0KKysJCXB1YmxpYyBDYW52YXMgKCk7CisrCQlwdWJsaWMgZmxv YXQgZ2V0X3NjYWxlX2ZhY3RvciAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9zY2FsZV9mYWN0b3Ig KGZsb2F0IHNjYWxlKTsKKysJCXB1YmxpYyBib29sIHNldF9zaXplIChpbnQgd2lkdGgsIGludCBo ZWlnaHQpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgaW50IGhlaWdodCB7IGdl dDsgc2V0OyB9CisrCQlwdWJsaWMgZmxvYXQgc2NhbGVfZmFjdG9yIHsgZ2V0OyBzZXQ7IH0KKysJ CVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGludCB3aWR0aCB7IGdldDsgc2V0OyB9Cisr CQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCBkcmF3IChDYWlyby5Db250ZXh0IGNyLCBpbnQg d2lkdGgsIGludCBoZWlnaHQpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9jaGlsZF9tZXRhX2dldF90eXBl ICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJcHVibGljIGFic3RyYWN0IGNs YXNzIENoaWxkTWV0YSA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9m dW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBDaGlsZE1ldGEgKCk7CisrCQlwdWJsaWMg dW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF9hY3RvciAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENs dXR0ZXIuQ29udGFpbmVyIGdldF9jb250YWluZXIgKCk7CisrCQlwdWJsaWMgQ2x1dHRlci5BY3Rv ciBhY3RvciB7IGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5Db250YWluZXIg Y29udGFpbmVyIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfY2xpY2tfYWN0 aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGlj IGNsYXNzIENsaWNrQWN0aW9uIDogQ2x1dHRlci5BY3Rpb24geworKwkJW0NDb2RlIChoYXNfY29u c3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFjdGlvbioiKV0KKysJCXB1 YmxpYyBDbGlja0FjdGlvbiAoKTsKKysJCXB1YmxpYyB1aW50IGdldF9idXR0b24gKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBnZXRfY29vcmRzIChvdXQg ZmxvYXQgcHJlc3NfeCwgb3V0IGZsb2F0IHByZXNzX3kpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuNiIpXQorKwkJcHVibGljIENsdXR0ZXIuTW9kaWZpZXJUeXBlIGdldF9zdGF0ZSAoKTsKKysJ CXB1YmxpYyB2b2lkIHJlbGVhc2UgKCk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1Ymxp YyBib29sIGhlbGQgeyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIGludCBsb25nX3ByZXNzX2R1cmF0aW9uIHsgZ2V0 OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu OCIpXQorKwkJcHVibGljIGludCBsb25nX3ByZXNzX3RocmVzaG9sZCB7IGdldDsgc2V0OyB9Cisr CQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIHByZXNzZWQgeyBnZXQ7IH0KKysJ CXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGNsaWNrZWQgKENsdXR0ZXIuQWN0b3IgYWN0b3Ip OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFs IGJvb2wgbG9uZ19wcmVzcyAoQ2x1dHRlci5BY3RvciBhY3RvciwgQ2x1dHRlci5Mb25nUHJlc3NT dGF0ZSBzdGF0ZSk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2NsaXBfbm9kZV9nZXRfdHlwZSAoKSIpXQor KwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgY2xhc3MgQ2xpcE5vZGUgOiBD bHV0dGVyLlBhaW50Tm9kZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBm YWxzZSwgdHlwZSA9ICJDbHV0dGVyUGFpbnROb2RlKiIpXQorKwkJcHVibGljIENsaXBOb2RlICgp OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IHR5cGVfaWQgPSAiY2x1dHRlcl9jbG9uZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCXB1YmxpYyBjbGFzcyBDbG9uZSA6IENsdXR0ZXIuQWN0b3IsIEF0ay5J bXBsZW1lbnRvciwgQ2x1dHRlci5BbmltYXRhYmxlLCBDbHV0dGVyLkNvbnRhaW5lciwgQ2x1dHRl ci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNl LCB0eXBlID0gIkNsdXR0ZXJBY3RvcioiKV0KKysJCXB1YmxpYyBDbG9uZSAoQ2x1dHRlci5BY3Rv ciBzb3VyY2UpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfc291cmNlICgp OworKwkJcHVibGljIHZvaWQgc2V0X3NvdXJjZSAoQ2x1dHRlci5BY3Rvcj8gc291cmNlKTsKKysJ CXB1YmxpYyBDbHV0dGVyLkFjdG9yIHNvdXJjZSB7IGdldDsgc2V0IGNvbnN0cnVjdDsgfQorKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVf aWQgPSAiY2x1dHRlcl9jb2xvcl9ub2RlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEwIildCisrCXB1YmxpYyBjbGFzcyBDb2xvck5vZGUgOiBDbHV0dGVyLlBpcGVsaW5l Tm9kZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9 ICJDbHV0dGVyUGFpbnROb2RlKiIpXQorKwkJcHVibGljIENvbG9yTm9kZSAoQ2x1dHRlci5Db2xv cj8gY29sb3IpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9jb2xvcml6ZV9lZmZlY3RfZ2V0X3R5cGUgKCki KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgY2xhc3MgQ29sb3JpemVF ZmZlY3QgOiBDbHV0dGVyLk9mZnNjcmVlbkVmZmVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1 Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyRWZmZWN0KiIpXQorKwkJcHVibGlj IENvbG9yaXplRWZmZWN0IChDbHV0dGVyLkNvbG9yIHRpbnQpOworKwkJcHVibGljIENsdXR0ZXIu Q29sb3IgZ2V0X3RpbnQgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfdGludCAoQ2x1dHRlci5Db2xv ciB0aW50KTsKKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIHRpbnQgeyBnZXQ7IHNldDsgfQorKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVf aWQgPSAiY2x1dHRlcl9jb25zdHJhaW50X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjQiKV0KKysJcHVibGljIGFic3RyYWN0IGNsYXNzIENvbnN0cmFpbnQgOiBDbHV0dGVy LkFjdG9yTWV0YSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSld CisrCQlwcm90ZWN0ZWQgQ29uc3RyYWludCAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMg dmlydHVhbCB2b2lkIHVwZGF0ZV9hbGxvY2F0aW9uIChDbHV0dGVyLkFjdG9yIGFjdG9yLCBDbHV0 dGVyLkFjdG9yQm94IGFsbG9jYXRpb24pOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0 dWFsIHZvaWQgdXBkYXRlX3ByZWZlcnJlZF9zaXplIChDbHV0dGVyLkFjdG9yIGFjdG9yLCBDbHV0 dGVyLk9yaWVudGF0aW9uIGRpcmVjdGlvbiwgZmxvYXQgZm9yX3NpemUsIGZsb2F0IG1pbmltdW1f c2l6ZSwgZmxvYXQgbmF0dXJhbF9zaXplKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0NvbXBh Y3RdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJcHVibGljIGNsYXNzIENyb3NzaW5n RXZlbnQgOiBDbHV0dGVyLkV2ZW50IHsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuSW5wdXREZXZp Y2UgZGV2aWNlOworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRGbGFncyBmbGFnczsKKysJCXB1Ymxp YyB3ZWFrIENsdXR0ZXIuQWN0b3IgcmVsYXRlZDsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuRXZl bnRTZXF1ZW5jZSBzZXF1ZW5jZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuQWN0b3Igc291cmNl OworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5TdGFnZSBzdGFnZTsKKysJCXB1YmxpYyB1aW50MzIg dGltZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50VHlwZSB0eXBlOworKwkJcHVibGljIGZsb2F0 IHg7CisrCQlwdWJsaWMgZmxvYXQgeTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfZGVmb3JtX2VmZmVjdF9n ZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBhYnN0 cmFjdCBjbGFzcyBEZWZvcm1FZmZlY3QgOiBDbHV0dGVyLk9mZnNjcmVlbkVmZmVjdCB7CisrCQlb Q0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgRGVm b3JtRWZmZWN0ICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgZGVm b3JtX3ZlcnRleCAoZmxvYXQgd2lkdGgsIGZsb2F0IGhlaWdodCwgQ29nbC5UZXh0dXJlVmVydGV4 IHZlcnRleCk7CisrCQlwdWJsaWMgdW5vd25lZCBDb2dsLkhhbmRsZSBnZXRfYmFja19tYXRlcmlh bCAoKTsKKysJCXB1YmxpYyB2b2lkIGdldF9uX3RpbGVzIChvdXQgdWludCB4X3RpbGVzLCBvdXQg dWludCB5X3RpbGVzKTsKKysJCXB1YmxpYyB2b2lkIGludmFsaWRhdGUgKCk7CisrCQlwdWJsaWMg dm9pZCBzZXRfYmFja19tYXRlcmlhbCAoQ29nbC5IYW5kbGU/IG1hdGVyaWFsKTsKKysJCXB1Ymxp YyB2b2lkIHNldF9uX3RpbGVzICh1aW50IHhfdGlsZXMsIHVpbnQgeV90aWxlcyk7CisrCQlbTm9B Y2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyB1aW50IHhfdGlsZXMgeyBnZXQ7IHNldDsgfQorKwkJ W05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgdWludCB5X3RpbGVzIHsgZ2V0OyBzZXQ7IH0K KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0 eXBlX2lkID0gImNsdXR0ZXJfZGVzYXR1cmF0ZV9lZmZlY3RfZ2V0X3R5cGUgKCkiKV0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgY2xhc3MgRGVzYXR1cmF0ZUVmZmVjdCA6 IENsdXR0ZXIuT2Zmc2NyZWVuRWZmZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5j dGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJFZmZlY3QqIildCisrCQlwdWJsaWMgRGVzYXR1 cmF0ZUVmZmVjdCAoZG91YmxlIGZhY3Rvcik7CisrCQlwdWJsaWMgZG91YmxlIGdldF9mYWN0b3Ig KCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfZmFjdG9yIChkb3VibGUgZmFjdG9yKTsKKysJCXB1Ymxp YyBkb3VibGUgZmFjdG9yIHsgZ2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfZHJhZ19hY3Rp b25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMg Y2xhc3MgRHJhZ0FjdGlvbiA6IENsdXR0ZXIuQWN0aW9uIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0 cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3Rpb24qIildCisrCQlwdWJs aWMgRHJhZ0FjdGlvbiAoKTsKKysJCXB1YmxpYyBib29sIGdldF9kcmFnX2FyZWEgKEdyYXBoZW5l LlJlY3QgZHJhZ19hcmVhKTsKKysJCXB1YmxpYyBDbHV0dGVyLkRyYWdBeGlzIGdldF9kcmFnX2F4 aXMgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF9kcmFnX2hhbmRsZSAo KTsKKysJCXB1YmxpYyB2b2lkIGdldF9kcmFnX3RocmVzaG9sZCAob3V0IHVpbnQgeF90aHJlc2hv bGQsIG91dCB1aW50IHlfdGhyZXNob2xkKTsKKysJCXB1YmxpYyB2b2lkIGdldF9tb3Rpb25fY29v cmRzIChvdXQgZmxvYXQgbW90aW9uX3gsIG91dCBmbG9hdCBtb3Rpb25feSk7CisrCQlwdWJsaWMg dm9pZCBnZXRfcHJlc3NfY29vcmRzIChvdXQgZmxvYXQgcHJlc3NfeCwgb3V0IGZsb2F0IHByZXNz X3kpOworKwkJcHVibGljIHZvaWQgc2V0X2RyYWdfYXJlYSAoR3JhcGhlbmUuUmVjdD8gZHJhZ19h cmVhKTsKKysJCXB1YmxpYyB2b2lkIHNldF9kcmFnX2F4aXMgKENsdXR0ZXIuRHJhZ0F4aXMgYXhp cyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfZHJhZ19oYW5kbGUgKENsdXR0ZXIuQWN0b3I/IGhhbmRs ZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfZHJhZ190aHJlc2hvbGQgKGludCB4X3RocmVzaG9sZCwg aW50IHlfdGhyZXNob2xkKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5SZWN0IGRyYWdfYXJlYSB7IG93bmVk IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEyIildCisrCQlwdWJsaWMgYm9vbCBkcmFnX2FyZWFfc2V0IHsgZ2V0OyB9CisrCQlwdWJs aWMgQ2x1dHRlci5EcmFnQXhpcyBkcmFnX2F4aXMgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIENs dXR0ZXIuQWN0b3IgZHJhZ19oYW5kbGUgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRo b2RdCisrCQlwdWJsaWMgaW50IHhfZHJhZ190aHJlc2hvbGQgeyBnZXQ7IHNldDsgfQorKwkJW05v QWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgaW50IHlfZHJhZ190aHJlc2hvbGQgeyBnZXQ7IHNl dDsgfQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgZHJhZ19iZWdpbiAoQ2x1dHRlci5B Y3RvciBhY3RvciwgZmxvYXQgZXZlbnRfeCwgZmxvYXQgZXZlbnRfeSwgQ2x1dHRlci5Nb2RpZmll clR5cGUgbW9kaWZpZXJzKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGRyYWdfZW5k IChDbHV0dGVyLkFjdG9yIGFjdG9yLCBmbG9hdCBldmVudF94LCBmbG9hdCBldmVudF95LCBDbHV0 dGVyLk1vZGlmaWVyVHlwZSBtb2RpZmllcnMpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZv aWQgZHJhZ19tb3Rpb24gKENsdXR0ZXIuQWN0b3IgYWN0b3IsIGZsb2F0IGRlbHRhX3gsIGZsb2F0 IGRlbHRhX3kpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2aXJ0 dWFsIHNpZ25hbCBib29sIGRyYWdfcHJvZ3Jlc3MgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIGZsb2F0 IGRlbHRhX3gsIGZsb2F0IGRlbHRhX3kpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9kcm9wX2FjdGlvbl9n ZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCXB1YmxpYyBjbGFz cyBEcm9wQWN0aW9uIDogQ2x1dHRlci5BY3Rpb24geworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0 X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFjdGlvbioiKV0KKysJCXB1YmxpYyBE cm9wQWN0aW9uICgpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIGJvb2wgY2FuX2Ryb3AgKENs dXR0ZXIuQWN0b3IgYWN0b3IsIGZsb2F0IGV2ZW50X3gsIGZsb2F0IGV2ZW50X3kpOworKwkJcHVi bGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgZHJvcCAoQ2x1dHRlci5BY3RvciBhY3RvciwgZmxvYXQg ZXZlbnRfeCwgZmxvYXQgZXZlbnRfeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQor KwkJcHVibGljIHNpZ25hbCB2b2lkIGRyb3BfY2FuY2VsIChDbHV0dGVyLkFjdG9yIGFjdG9yLCBm bG9hdCBldmVudF94LCBmbG9hdCBldmVudF95KTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2 b2lkIG92ZXJfaW4gKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwkJcHVibGljIHZpcnR1YWwgc2ln bmFsIHZvaWQgb3Zlcl9vdXQgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRl cl9lZmZlY3RfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlw dWJsaWMgYWJzdHJhY3QgY2xhc3MgRWZmZWN0IDogQ2x1dHRlci5BY3Rvck1ldGEgeworKwkJW0ND b2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIEVmZmVj dCAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCBib29sIG1vZGlmeV9wYWlu dF92b2x1bWUgKENsdXR0ZXIuUGFpbnRWb2x1bWUgdm9sdW1lKTsKKysJCVtOb1dyYXBwZXJdCisr CQlwdWJsaWMgdmlydHVhbCB2b2lkIHBhaW50IChDbHV0dGVyLlBhaW50Q29udGV4dCBwYWludF9j b250ZXh0LCBDbHV0dGVyLkVmZmVjdFBhaW50RmxhZ3MgZmxhZ3MpOworKwkJW05vV3JhcHBlcl0K KysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgcGljayAoQ2x1dHRlci5QaWNrQ29udGV4dCBwaWNrX2Nv bnRleHQpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgcG9zdF9wYWlu dCAoQ2x1dHRlci5QYWludENvbnRleHQgcGFpbnRfY29udGV4dCk7CisrCQlbTm9XcmFwcGVyXQor KwkJcHVibGljIHZpcnR1YWwgYm9vbCBwcmVfcGFpbnQgKENsdXR0ZXIuUGFpbnRDb250ZXh0IHBh aW50X2NvbnRleHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZv aWQgcXVldWVfcmVwYWludCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVf ZnVuY3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2V2ZW50X2dldF90 eXBlICgpIildCisrCVtDb21wYWN0XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCXB1 YmxpYyBjbGFzcyBFdmVudCB7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudFR5cGUgdHlwZTsKKysJ CVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1YmxpYyBFdmVu dCAoQ2x1dHRlci5FdmVudFR5cGUgdHlwZSk7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudCBjb3B5 ICgpOworKwkJcHVibGljIHZvaWQgZnJlZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEy IildCisrCQlwdWJsaWMgZG91YmxlIGdldF9hbmdsZSAoQ2x1dHRlci5FdmVudCB0YXJnZXQpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIGRvdWJsZSBnZXRfYXhlcyAo b3V0IHVpbnQgbl9heGVzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1Ymxp YyB1aW50MzIgZ2V0X2J1dHRvbiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJ CXB1YmxpYyB1aW50IGdldF9jbGlja19jb3VudCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIw LjQiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9jb29yZHMgKG91dCBmbG9hdCB4LCBvdXQgZmxvYXQg eSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0 dGVyLklucHV0RGV2aWNlIGdldF9kZXZpY2UgKCk7CisrCQlwdWJsaWMgaW50IGdldF9kZXZpY2Vf aWQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yOCIpXQorKwkJcHVibGljIHVub3duZWQg Q2x1dHRlci5JbnB1dERldmljZVRvb2wgZ2V0X2RldmljZV90b29sICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIENsdXR0ZXIuSW5wdXREZXZpY2VUeXBlIGdldF9k ZXZpY2VfdHlwZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMg ZmxvYXQgZ2V0X2Rpc3RhbmNlIChDbHV0dGVyLkV2ZW50IHRhcmdldCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5FdmVudFNlcXVlbmNl IGdldF9ldmVudF9zZXF1ZW5jZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJ CXB1YmxpYyBDbHV0dGVyLkV2ZW50RmxhZ3MgZ2V0X2ZsYWdzICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMjQiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9nZXN0dXJlX21vdGlvbl9kZWx0YSAo b3V0IGRvdWJsZSBkeCwgb3V0IGRvdWJsZSBkeSk7CisrCQlwdWJsaWMgQ2x1dHRlci5Ub3VjaHBh ZEdlc3R1cmVQaGFzZSBnZXRfZ2VzdHVyZV9waGFzZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjI0IildCisrCQlwdWJsaWMgZG91YmxlIGdldF9nZXN0dXJlX3BpbmNoX2FuZ2xlX2RlbHRh ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjQiKV0KKysJCXB1YmxpYyBkb3VibGUgZ2V0 X2dlc3R1cmVfcGluY2hfc2NhbGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisr CQlwdWJsaWMgdWludDE2IGdldF9rZXlfY29kZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjAiKV0KKysJCXB1YmxpYyB1aW50IGdldF9rZXlfc3ltYm9sICgpOworKwkJcHVibGljIHVuaWNo YXIgZ2V0X2tleV91bmljb2RlICgpOworKwkJcHVibGljIHVpbnQgZ2V0X21vZGVfZ3JvdXAgKCk7 CisrCQlwdWJsaWMgYm9vbCBnZXRfcGFkX2V2ZW50X2RldGFpbHMgKG91dCB1aW50IG51bWJlciwg b3V0IHVpbnQgbW9kZSwgb3V0IGRvdWJsZSB2YWx1ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMiIpXQorKwkJcHVibGljIHZvaWQgZ2V0X3Bvc2l0aW9uIChHcmFwaGVuZS5Qb2ludCBwb3Np dGlvbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBD bHV0dGVyLkFjdG9yIGdldF9yZWxhdGVkICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAi KV0KKysJCXB1YmxpYyB2b2lkIGdldF9zY3JvbGxfZGVsdGEgKG91dCBkb3VibGUgZHgsIG91dCBk b3VibGUgZHkpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIENsdXR0 ZXIuU2Nyb2xsRGlyZWN0aW9uIGdldF9zY3JvbGxfZGlyZWN0aW9uICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMjYiKV0KKysJCXB1YmxpYyBDbHV0dGVyLlNjcm9sbEZpbmlzaEZsYWdzIGdl dF9zY3JvbGxfZmluaXNoX2ZsYWdzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjYiKV0K KysJCXB1YmxpYyBDbHV0dGVyLlNjcm9sbFNvdXJjZSBnZXRfc2Nyb2xsX3NvdXJjZSAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0 b3IgZ2V0X3NvdXJjZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1Ymxp YyB1bm93bmVkIENsdXR0ZXIuSW5wdXREZXZpY2UgZ2V0X3NvdXJjZV9kZXZpY2UgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLlN0YWdl IGdldF9zdGFnZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJCXB1YmxpYyBD bHV0dGVyLk1vZGlmaWVyVHlwZSBnZXRfc3RhdGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xNiIpXQorKwkJcHVibGljIHZvaWQgZ2V0X3N0YXRlX2Z1bGwgKG91dCBDbHV0dGVyLk1vZGlm aWVyVHlwZSBidXR0b25fc3RhdGUsIG91dCBDbHV0dGVyLk1vZGlmaWVyVHlwZSBiYXNlX3N0YXRl LCBvdXQgQ2x1dHRlci5Nb2RpZmllclR5cGUgbGF0Y2hlZF9zdGF0ZSwgb3V0IENsdXR0ZXIuTW9k aWZpZXJUeXBlIGxvY2tlZF9zdGF0ZSwgb3V0IENsdXR0ZXIuTW9kaWZpZXJUeXBlIGVmZmVjdGl2 ZV9zdGF0ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCQlwdWJsaWMgdWludDMy IGdldF90aW1lICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjQiKV0KKysJCXB1YmxpYyB1 aW50IGdldF90b3VjaHBhZF9nZXN0dXJlX2Zpbmdlcl9jb3VudCAoKTsKKysJCVtDQ29kZSAoY25h bWUgPSAiY2x1dHRlcl9ldmVudF90eXBlIildCisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudFR5cGUg Z2V0X3R5cGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGJv b2wgaGFzX2NvbnRyb2xfbW9kaWZpZXIgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIp XQorKwkJcHVibGljIGJvb2wgaGFzX3NoaWZ0X21vZGlmaWVyICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBib29sIGlzX3BvaW50ZXJfZW11bGF0ZWQgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdm9pZCBwdXQgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBzZXRfYnV0dG9uICh1aW50 MzIgYnV0dG9uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lk IHNldF9jb29yZHMgKGZsb2F0IHgsIGZsb2F0IHkpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu NiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2RldmljZSAoQ2x1dHRlci5JbnB1dERldmljZT8gZGV2 aWNlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjI4IildCisrCQlwdWJsaWMgdm9pZCBzZXRf ZGV2aWNlX3Rvb2wgKENsdXR0ZXIuSW5wdXREZXZpY2VUb29sPyB0b29sKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9mbGFncyAoQ2x1dHRlci5FdmVu dEZsYWdzIGZsYWdzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2 b2lkIHNldF9rZXlfY29kZSAodWludDE2IGtleV9jb2RlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9rZXlfc3ltYm9sICh1aW50IGtleV9zeW0pOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2tleV91bmlj b2RlICh1bmljaGFyIGtleV91bmljb2RlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0K KysJCXB1YmxpYyB2b2lkIHNldF9yZWxhdGVkIChDbHV0dGVyLkFjdG9yPyBhY3Rvcik7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3Njcm9sbF9kZWx0 YSAoZG91YmxlIGR4LCBkb3VibGUgZHkpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQor KwkJcHVibGljIHZvaWQgc2V0X3Njcm9sbF9kaXJlY3Rpb24gKENsdXR0ZXIuU2Nyb2xsRGlyZWN0 aW9uIGRpcmVjdGlvbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMg dm9pZCBzZXRfc291cmNlIChDbHV0dGVyLkFjdG9yPyBhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBzZXRfc291cmNlX2RldmljZSAoQ2x1dHRlci5J bnB1dERldmljZT8gZGV2aWNlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1 YmxpYyB2b2lkIHNldF9zdGFnZSAoQ2x1dHRlci5TdGFnZT8gc3RhZ2UpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3N0YXRlIChDbHV0dGVyLk1vZGlm aWVyVHlwZSBzdGF0ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMg dm9pZCBzZXRfdGltZSAodWludDMyIHRpbWVfKTsKKysJCXB1YmxpYyBDbHV0dGVyLkFueUV2ZW50 IGFueSB7W0NDb2RlIChjbmFtZSA9ICIoQ2x1dHRlckFueUV2ZW50ICopIildICBnZXQ7IH0KKysJ CXB1YmxpYyBDbHV0dGVyLkJ1dHRvbkV2ZW50IGJ1dHRvbiB7W0NDb2RlIChjbmFtZSA9ICIoQ2x1 dHRlckJ1dHRvbkV2ZW50ICopIildICBnZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLkNyb3NzaW5n RXZlbnQgY3Jvc3Npbmcge1tDQ29kZSAoY25hbWUgPSAiKENsdXR0ZXJDcm9zc2luZ0V2ZW50ICop IildICBnZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLktleUV2ZW50IGtleSB7W0NDb2RlIChjbmFt ZSA9ICIoQ2x1dHRlcktleUV2ZW50ICopIildICBnZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLk1v dGlvbkV2ZW50IG1vdGlvbiB7W0NDb2RlIChjbmFtZSA9ICIoQ2x1dHRlck1vdGlvbkV2ZW50ICop IildICBnZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLlNjcm9sbEV2ZW50IHNjcm9sbCB7W0NDb2Rl IChjbmFtZSA9ICIoQ2x1dHRlclNjcm9sbEV2ZW50ICopIildICBnZXQ7IH0KKysJCXB1YmxpYyBD bHV0dGVyLlN0YWdlU3RhdGVFdmVudCBzdGFnZV9zdGF0ZSB7W0NDb2RlIChjbmFtZSA9ICIoQ2x1 dHRlclN0YWdlU3RhdGVFdmVudCAqKSIpXSAgZ2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5Ub3Vj aEV2ZW50IHRvdWNoIHtbQ0NvZGUgKGNuYW1lID0gIihDbHV0dGVyVG91Y2hFdmVudCAqKSIpXSAg Z2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5Ub3VjaHBhZFBpbmNoRXZlbnQgdG91Y2hwYWRfcGlu Y2gge1tDQ29kZSAoY25hbWUgPSAiKENsdXR0ZXJUb3VjaHBhZFBpbmNoRXZlbnQgKikiKV0gIGdl dDsgfQorKwkJcHVibGljIENsdXR0ZXIuVG91Y2hwYWRTd2lwZUV2ZW50IHRvdWNocGFkX3N3aXBl IHtbQ0NvZGUgKGNuYW1lID0gIihDbHV0dGVyVG91Y2hwYWRTd2lwZUV2ZW50ICopIildICBnZXQ7 IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24gPSAiZ19ib3hl ZF9mcmVlIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2V2ZW50X3NlcXVlbmNlX2dldF90eXBlICgpIild CisrCVtDb21wYWN0XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwlwdWJsaWMgY2xh c3MgRXZlbnRTZXF1ZW5jZSB7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2ZpeGVkX2xheW91dF9nZXRfdHlw ZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBjbGFzcyBGaXhl ZExheW91dCA6IENsdXR0ZXIuTGF5b3V0TWFuYWdlciB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1 Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyTGF5b3V0TWFuYWdlcioiKV0KKysJ CXB1YmxpYyBGaXhlZExheW91dCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfZmxvd19sYXlvdXRfZ2V0 X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwlwdWJsaWMgY2xhc3Mg Rmxvd0xheW91dCA6IENsdXR0ZXIuTGF5b3V0TWFuYWdlciB7CisrCQlbQ0NvZGUgKGhhc19jb25z dHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyTGF5b3V0TWFuYWdlcioiKV0K KysJCXB1YmxpYyBGbG93TGF5b3V0IChDbHV0dGVyLkZsb3dPcmllbnRhdGlvbiBvcmllbnRhdGlv bik7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X2NvbHVtbl9zcGFjaW5nICgpOworKwkJcHVibGljIHZv aWQgZ2V0X2NvbHVtbl93aWR0aCAob3V0IGZsb2F0IG1pbl93aWR0aCwgb3V0IGZsb2F0IG1heF93 aWR0aCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfaG9tb2dlbmVvdXMgKCk7CisrCQlwdWJsaWMgQ2x1 dHRlci5GbG93T3JpZW50YXRpb24gZ2V0X29yaWVudGF0aW9uICgpOworKwkJcHVibGljIHZvaWQg Z2V0X3Jvd19oZWlnaHQgKG91dCBmbG9hdCBtaW5faGVpZ2h0LCBvdXQgZmxvYXQgbWF4X2hlaWdo dCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X3Jvd19zcGFjaW5nICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTYiKV0KKysJCXB1YmxpYyBib29sIGdldF9zbmFwX3RvX2dyaWQgKCk7CisrCQlw dWJsaWMgdm9pZCBzZXRfY29sdW1uX3NwYWNpbmcgKGZsb2F0IHNwYWNpbmcpOworKwkJcHVibGlj IHZvaWQgc2V0X2NvbHVtbl93aWR0aCAoZmxvYXQgbWluX3dpZHRoLCBmbG9hdCBtYXhfd2lkdGgp OworKwkJcHVibGljIHZvaWQgc2V0X2hvbW9nZW5lb3VzIChib29sIGhvbW9nZW5lb3VzKTsKKysJ CXB1YmxpYyB2b2lkIHNldF9vcmllbnRhdGlvbiAoQ2x1dHRlci5GbG93T3JpZW50YXRpb24gb3Jp ZW50YXRpb24pOworKwkJcHVibGljIHZvaWQgc2V0X3Jvd19oZWlnaHQgKGZsb2F0IG1pbl9oZWln aHQsIGZsb2F0IG1heF9oZWlnaHQpOworKwkJcHVibGljIHZvaWQgc2V0X3Jvd19zcGFjaW5nIChm bG9hdCBzcGFjaW5nKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2IildCisrCQlwdWJsaWMg dm9pZCBzZXRfc25hcF90b19ncmlkIChib29sIHNuYXBfdG9fZ3JpZCk7CisrCQlwdWJsaWMgZmxv YXQgY29sdW1uX3NwYWNpbmcgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIGJvb2wgaG9tb2dlbmVv dXMgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgZmxvYXQg bWF4X2NvbHVtbl93aWR0aCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJ CXB1YmxpYyBmbG9hdCBtYXhfcm93X2hlaWdodCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nv ck1ldGhvZF0KKysJCXB1YmxpYyBmbG9hdCBtaW5fY29sdW1uX3dpZHRoIHsgZ2V0OyBzZXQ7IH0K KysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGZsb2F0IG1pbl9yb3dfaGVpZ2h0IHsg Z2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLkZsb3dPcmllbnRhdGlvbiBvcmllbnRhdGlv biB7IGdldDsgc2V0IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIGZsb2F0IHJvd19zcGFjaW5nIHsg Z2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2IildCisrCQlwdWJsaWMgYm9v bCBzbmFwX3RvX2dyaWQgeyBnZXQ7IHNldDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9nZXN0dXJlX2Fj dGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCXB1Ymxp YyBjbGFzcyBHZXN0dXJlQWN0aW9uIDogQ2x1dHRlci5BY3Rpb24geworKwkJW0NDb2RlIChoYXNf Y29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFjdGlvbioiKV0KKysJ CXB1YmxpYyBHZXN0dXJlQWN0aW9uICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0K KysJCXB1YmxpYyB2b2lkIGNhbmNlbCAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmly dHVhbCBib29sIGdlc3R1cmVfcHJlcGFyZSAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5JbnB1dERl dmljZSBnZXRfZGV2aWNlICh1aW50IHBvaW50KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE0 IildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkV2ZW50IGdldF9sYXN0X2V2ZW50ICh1aW50 IHBvaW50KTsKKysJCXB1YmxpYyB2b2lkIGdldF9tb3Rpb25fY29vcmRzICh1aW50IHBvaW50LCBv dXQgZmxvYXQgbW90aW9uX3gsIG91dCBmbG9hdCBtb3Rpb25feSk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGZsb2F0IGdldF9tb3Rpb25fZGVsdGEgKHVpbnQgcG9p bnQsIG91dCBmbG9hdCBkZWx0YV94LCBvdXQgZmxvYXQgZGVsdGFfeSk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHVpbnQgZ2V0X25fY3VycmVudF9wb2ludHMgKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGludCBnZXRfbl90b3Vj aF9wb2ludHMgKCk7CisrCQlwdWJsaWMgdm9pZCBnZXRfcHJlc3NfY29vcmRzICh1aW50IHBvaW50 LCBvdXQgZmxvYXQgcHJlc3NfeCwgb3V0IGZsb2F0IHByZXNzX3kpOworKwkJcHVibGljIHZvaWQg Z2V0X3JlbGVhc2VfY29vcmRzICh1aW50IHBvaW50LCBvdXQgZmxvYXQgcmVsZWFzZV94LCBvdXQg ZmxvYXQgcmVsZWFzZV95KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJs aWMgdW5vd25lZCBDbHV0dGVyLkV2ZW50U2VxdWVuY2UgZ2V0X3NlcXVlbmNlICh1aW50IHBvaW50 KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE4IildCisrCQlwdWJsaWMgdm9pZCBnZXRfdGhy ZXNob2xkX3RyaWdnZXJfZGlzdGFuY2UgKG91dCBmbG9hdCB4LCBvdXQgZmxvYXQgeSk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4yMCIpXQorKwkJcHVibGljIENsdXR0ZXIuR2VzdHVyZVRyaWdn ZXJFZGdlIGdldF90aHJlc2hvbGRfdHJpZ2dlcl9lZGdlICgpOworKwkJW1ZlcnNpb24gKGRlcHJl Y2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMjAiLCBzaW5jZSA9ICIxLjE4Iild CisrCQlwdWJsaWMgQ2x1dHRlci5HZXN0dXJlVHJpZ2dlckVkZ2UgZ2V0X3RocmVzaG9sZF90cmln Z2VyX2VnZGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGZs b2F0IGdldF92ZWxvY2l0eSAodWludCBwb2ludCwgb3V0IGZsb2F0IHZlbG9jaXR5X3gsIG91dCBm bG9hdCB2ZWxvY2l0eV95KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJs aWMgdm9pZCBzZXRfbl90b3VjaF9wb2ludHMgKGludCBuYl9wb2ludHMpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF90aHJlc2hvbGRfdHJpZ2dlcl9k aXN0YW5jZSAoZmxvYXQgeCwgZmxvYXQgeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xOCIp XQorKwkJcHVibGljIHZvaWQgc2V0X3RocmVzaG9sZF90cmlnZ2VyX2VkZ2UgKENsdXR0ZXIuR2Vz dHVyZVRyaWdnZXJFZGdlIGVkZ2UpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTYiKV0KKysJ CXB1YmxpYyBpbnQgbl90b3VjaF9wb2ludHMgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JN ZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xOCIpXQorKwkJcHVibGljIGZsb2F0IHRo cmVzaG9sZF90cmlnZ2VyX2Rpc3RhbmNlX3ggeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJW05vQWNj ZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xOCIpXQorKwkJcHVibGljIGZs b2F0IHRocmVzaG9sZF90cmlnZ2VyX2Rpc3RhbmNlX3kgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTgiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkdlc3R1cmVUcmln Z2VyRWRnZSB0aHJlc2hvbGRfdHJpZ2dlcl9lZGdlIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCXB1 YmxpYyB2aXJ0dWFsIHNpZ25hbCBib29sIGdlc3R1cmVfYmVnaW4gKENsdXR0ZXIuQWN0b3IgYWN0 b3IpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgZ2VzdHVyZV9jYW5jZWwgKENsdXR0 ZXIuQWN0b3IgYWN0b3IpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgZ2VzdHVyZV9l bmQgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIGJvb2wg Z2VzdHVyZV9wcm9ncmVzcyAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVy X2dyaWRfbGF5b3V0X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIild CisrCXB1YmxpYyBjbGFzcyBHcmlkTGF5b3V0IDogQ2x1dHRlci5MYXlvdXRNYW5hZ2VyIHsKKysJ CVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJM YXlvdXRNYW5hZ2VyKiIpXQorKwkJcHVibGljIEdyaWRMYXlvdXQgKCk7CisrCQlwdWJsaWMgdm9p ZCBhdHRhY2ggKENsdXR0ZXIuQWN0b3IgY2hpbGQsIGludCBsZWZ0LCBpbnQgdG9wLCBpbnQgd2lk dGgsIGludCBoZWlnaHQpOworKwkJcHVibGljIHZvaWQgYXR0YWNoX25leHRfdG8gKENsdXR0ZXIu QWN0b3IgY2hpbGQsIENsdXR0ZXIuQWN0b3I/IHNpYmxpbmcsIENsdXR0ZXIuR3JpZFBvc2l0aW9u IHNpZGUsIGludCB3aWR0aCwgaW50IGhlaWdodCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVy LkFjdG9yIGdldF9jaGlsZF9hdCAoaW50IGxlZnQsIGludCB0b3ApOworKwkJcHVibGljIGJvb2wg Z2V0X2NvbHVtbl9ob21vZ2VuZW91cyAoKTsKKysJCXB1YmxpYyB1aW50IGdldF9jb2x1bW5fc3Bh Y2luZyAoKTsKKysJCXB1YmxpYyBDbHV0dGVyLk9yaWVudGF0aW9uIGdldF9vcmllbnRhdGlvbiAo KTsKKysJCXB1YmxpYyBib29sIGdldF9yb3dfaG9tb2dlbmVvdXMgKCk7CisrCQlwdWJsaWMgdWlu dCBnZXRfcm93X3NwYWNpbmcgKCk7CisrCQlwdWJsaWMgdm9pZCBpbnNlcnRfY29sdW1uIChpbnQg cG9zaXRpb24pOworKwkJcHVibGljIHZvaWQgaW5zZXJ0X25leHRfdG8gKENsdXR0ZXIuQWN0b3Ig c2libGluZywgQ2x1dHRlci5HcmlkUG9zaXRpb24gc2lkZSk7CisrCQlwdWJsaWMgdm9pZCBpbnNl cnRfcm93IChpbnQgcG9zaXRpb24pOworKwkJcHVibGljIHZvaWQgc2V0X2NvbHVtbl9ob21vZ2Vu ZW91cyAoYm9vbCBob21vZ2VuZW91cyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfY29sdW1uX3NwYWNp bmcgKHVpbnQgc3BhY2luZyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfb3JpZW50YXRpb24gKENsdXR0 ZXIuT3JpZW50YXRpb24gb3JpZW50YXRpb24pOworKwkJcHVibGljIHZvaWQgc2V0X3Jvd19ob21v Z2VuZW91cyAoYm9vbCBob21vZ2VuZW91cyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfcm93X3NwYWNp bmcgKHVpbnQgc3BhY2luZyk7CisrCQlwdWJsaWMgYm9vbCBjb2x1bW5faG9tb2dlbmVvdXMgeyBn ZXQ7IHNldDsgfQorKwkJcHVibGljIHVpbnQgY29sdW1uX3NwYWNpbmcgeyBnZXQ7IHNldDsgfQor KwkJcHVibGljIENsdXR0ZXIuT3JpZW50YXRpb24gb3JpZW50YXRpb24geyBnZXQ7IHNldDsgfQor KwkJcHVibGljIGJvb2wgcm93X2hvbW9nZW5lb3VzIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyB1 aW50IHJvd19zcGFjaW5nIHsgZ2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfZ3JvdXBfZ2V0 X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwlwdWJsaWMgY2xhc3Mg R3JvdXAgOiBDbHV0dGVyLkFjdG9yLCBBdGsuSW1wbGVtZW50b3IsIENsdXR0ZXIuQW5pbWF0YWJs ZSwgQ2x1dHRlci5Db250YWluZXIsIENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUgKGhh c19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0b3IqIildCisr CQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIp XQorKwkJcHVibGljIEdyb3VwICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBk ZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyBpbnQg Z2V0X25fY2hpbGRyZW4gKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJl Y2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIHVub3duZWQg Q2x1dHRlci5BY3RvciBnZXRfbnRoX2NoaWxkIChpbnQgaW5kZXhfKTsKKysJCVtWZXJzaW9uIChk ZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMg dm9pZCByZW1vdmVfYWxsICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9pbWFnZV9nZXRfdHlwZSAoKSIp XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgY2xhc3MgSW1hZ2UgOiBH TGliLk9iamVjdCwgQ2x1dHRlci5Db250ZW50IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9m dW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJDb250ZW50KiIpXQorKwkJcHVibGljIElt YWdlICgpOworKwkJcHVibGljIHVub3duZWQgQ29nbC5UZXh0dXJlIGdldF90ZXh0dXJlICgpOwor KwkJcHVibGljIGJvb2wgc2V0X2FyZWEgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSB1 aW50OFtdIGRhdGEsIENvZ2wuUGl4ZWxGb3JtYXQgcGl4ZWxfZm9ybWF0LCBDYWlyby5SZWN0YW5n bGVJbnQgcmVjdCwgdWludCByb3dfc3RyaWRlKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgYm9vbCBzZXRfYnl0ZXMgKEdMaWIuQnl0 ZXMgZGF0YSwgQ29nbC5QaXhlbEZvcm1hdCBwaXhlbF9mb3JtYXQsIHVpbnQgd2lkdGgsIHVpbnQg aGVpZ2h0LCB1aW50IHJvd19zdHJpZGUpIHRocm93cyBHTGliLkVycm9yOworKwkJcHVibGljIGJv b2wgc2V0X2RhdGEgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSB1aW50OFtdIGRhdGEs IENvZ2wuUGl4ZWxGb3JtYXQgcGl4ZWxfZm9ybWF0LCB1aW50IHdpZHRoLCB1aW50IGhlaWdodCwg dWludCByb3dfc3RyaWRlKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfaW5w dXRfZGV2aWNlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBJbnB1dERldmljZSA6IEdM aWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0K KysJCXByb3RlY3RlZCBJbnB1dERldmljZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYi KV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuSW5wdXREZXZpY2UgZ2V0X2Fzc29jaWF0ZWRf ZGV2aWNlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIENsdXR0 ZXIuSW5wdXRBeGlzIGdldF9heGlzICh1aW50IGluZGV4Xyk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS42IildCisrCQlwdWJsaWMgYm9vbCBnZXRfYXhpc192YWx1ZSAoW0NDb2RlIChhcnJheV9s ZW5ndGggPSBmYWxzZSldIGRvdWJsZVtdIGF4ZXMsIENsdXR0ZXIuSW5wdXRBeGlzIGF4aXMsIG91 dCBkb3VibGUgdmFsdWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1Ymxp YyBib29sIGdldF9jb29yZHMgKENsdXR0ZXIuRXZlbnRTZXF1ZW5jZT8gc2VxdWVuY2UsIEdyYXBo ZW5lLlBvaW50IHBvaW50KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1Ymxp YyBpbnQgZ2V0X2RldmljZV9pZCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJ CXB1YmxpYyBDbHV0dGVyLklucHV0TW9kZSBnZXRfZGV2aWNlX21vZGUgKCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X2RldmljZV9u YW1lICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9kZXZpY2Vfbm9kZSAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLklucHV0RGV2aWNl VHlwZSBnZXRfZGV2aWNlX3R5cGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisr CQlwdWJsaWMgYm9vbCBnZXRfZW5hYmxlZCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEw IildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF9ncmFiYmVkX2FjdG9yICgp OworKwkJcHVibGljIHZpcnR1YWwgaW50IGdldF9ncm91cF9uX21vZGVzIChpbnQgZ3JvdXApOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIGJvb2wgZ2V0X2hhc19jdXJz b3IgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgYm9vbCBnZXRf a2V5ICh1aW50IGluZGV4Xywgb3V0IHVpbnQga2V5dmFsLCBvdXQgQ2x1dHRlci5Nb2RpZmllclR5 cGUgbW9kaWZpZXJzKTsKKysJCXB1YmxpYyBDbHV0dGVyLklucHV0RGV2aWNlTWFwcGluZyBnZXRf bWFwcGluZ19tb2RlICgpOworKwkJcHVibGljIGludCBnZXRfbW9kZV9zd2l0Y2hfYnV0dG9uX2dy b3VwICh1aW50IGJ1dHRvbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNiIpXQorKwkJcHVi bGljIENsdXR0ZXIuTW9kaWZpZXJUeXBlIGdldF9tb2RpZmllcl9zdGF0ZSAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB1aW50IGdldF9uX2F4ZXMgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgdWludCBnZXRfbl9rZXlzICgpOwor KwkJcHVibGljIGludCBnZXRfbl9tb2RlX2dyb3VwcyAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0X25f cmluZ3MgKCk7CisrCQlwdWJsaWMgaW50IGdldF9uX3N0cmlwcyAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X3BvaW50 ZXJfYWN0b3IgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdW5v d25lZCBDbHV0dGVyLlN0YWdlIGdldF9wb2ludGVyX3N0YWdlICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMjIiKV0KKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfcHJvZHVjdF9pZCAo KTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuU2VhdCBnZXRfc2VhdCAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBHTGliLkxpc3Q8d2VhayBDbHV0dGVyLklu cHV0RGV2aWNlPiBnZXRfc2xhdmVfZGV2aWNlcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjIyIildCisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X3ZlbmRvcl9pZCAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBncmFiIChDbHV0dGVyLkFj dG9yIGFjdG9yKTsKKysJCXB1YmxpYyB2aXJ0dWFsIGJvb2wgaXNfZ3JvdXBlZCAoQ2x1dHRlci5J bnB1dERldmljZSBvdGhlcl9kZXZpY2UpOworKwkJcHVibGljIHZpcnR1YWwgYm9vbCBpc19tb2Rl X3N3aXRjaF9idXR0b24gKHVpbnQgZ3JvdXAsIHVpbnQgYnV0dG9uKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdmlydHVhbCBib29sIGtleWNvZGVfdG9fZXZkZXYg KHVpbnQgaGFyZHdhcmVfa2V5Y29kZSwgdWludCBldmRldl9rZXljb2RlKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIHNlcXVl bmNlX2dldF9ncmFiYmVkX2FjdG9yIChDbHV0dGVyLkV2ZW50U2VxdWVuY2Ugc2VxdWVuY2UpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIHNlcXVlbmNlX2dy YWIgKENsdXR0ZXIuRXZlbnRTZXF1ZW5jZSBzZXF1ZW5jZSwgQ2x1dHRlci5BY3RvciBhY3Rvcik7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQgc2VxdWVuY2Vf dW5ncmFiIChDbHV0dGVyLkV2ZW50U2VxdWVuY2Ugc2VxdWVuY2UpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuNiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2VuYWJsZWQgKGJvb2wgZW5hYmxlZCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgdm9pZCBzZXRfa2V5ICh1 aW50IGluZGV4XywgdWludCBrZXl2YWwsIENsdXR0ZXIuTW9kaWZpZXJUeXBlIG1vZGlmaWVycyk7 CisrCQlwdWJsaWMgdm9pZCBzZXRfbWFwcGluZ19tb2RlIChDbHV0dGVyLklucHV0RGV2aWNlTWFw cGluZyBtYXBwaW5nKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMg dm9pZCB1bmdyYWIgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMg dm9pZCB1cGRhdGVfZnJvbV9ldmVudCAoQ2x1dHRlci5FdmVudCBldmVudCwgYm9vbCB1cGRhdGVf c3RhZ2UpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgdXBkYXRlX2Zy b21fdG9vbCAoQ2x1dHRlci5JbnB1dERldmljZVRvb2wgdG9vbCk7CisrCQlbTm9BY2Nlc3Nvck1l dGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkJh Y2tlbmQgYmFja2VuZCB7IG93bmVkIGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgQ2x1dHRl ci5JbnB1dE1vZGUgZGV2aWNlX21vZGUgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIHN0 cmluZyBkZXZpY2Vfbm9kZSB7IGdldDsgY29uc3RydWN0OyB9CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4yIildCisrCQlwdWJsaWMgQ2x1dHRlci5JbnB1dERldmljZVR5cGUgZGV2aWNlX3R5cGUg eyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVi bGljIGJvb2wgZW5hYmxlZCB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42 IildCisrCQlwdWJsaWMgYm9vbCBoYXNfY3Vyc29yIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtO b0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGlj IGludCBpZCB7IGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5JbnB1dERldmlj ZU1hcHBpbmcgbWFwcGluZ19tb2RlIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjYiKV0KKysJCXB1YmxpYyB1aW50IG5fYXhlcyB7IGdldDsgfQorKwkJcHVibGljIGludCBu X21vZGVfZ3JvdXBzIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBpbnQgbl9yaW5ncyB7 IGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgaW50IG5fc3RyaXBzIHsgZ2V0OyBjb25zdHJ1 Y3Q7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIp XQorKwkJcHVibGljIHN0cmluZyBuYW1lIHsgb3duZWQgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjIyIildCisrCQlwdWJsaWMgc3RyaW5nIHByb2R1Y3RfaWQgeyBn ZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIENsdXR0ZXIuU2VhdCBzZWF0IHsgZ2V0OyBjb25z dHJ1Y3Q7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIyIildCisrCQlwdWJsaWMgc3RyaW5n IHZlbmRvcl9pZCB7IGdldDsgY29uc3RydWN0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2lucHV0X2Rl dmljZV90b29sX2dldF90eXBlICgpIildCisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBJbnB1dERl dmljZVRvb2wgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rp b24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgSW5wdXREZXZpY2VUb29sICgpOworKwkJcHVibGlj IHVpbnQ2NCBnZXRfaWQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yOCIpXQorKwkJcHVi bGljIHVpbnQ2NCBnZXRfc2VyaWFsICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjgiKV0K KysJCXB1YmxpYyBDbHV0dGVyLklucHV0RGV2aWNlVG9vbFR5cGUgZ2V0X3Rvb2xfdHlwZSAoKTsK KysJCXB1YmxpYyB1aW50NjQgaWQgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIHVpbnQ2 NCBzZXJpYWwgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlw dWJsaWMgQ2x1dHRlci5JbnB1dERldmljZVRvb2xUeXBlIHR5cGUgeyBnZXQ7IGNvbnN0cnVjdDsg fQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IHR5cGVfaWQgPSAiY2x1dHRlcl9pbnB1dF9mb2N1c19nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMg YWJzdHJhY3QgY2xhc3MgSW5wdXRGb2N1cyA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFz X2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBJbnB1dEZvY3VzICgp OworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgY29tbWl0X3RleHQgKHN0 cmluZyB0ZXh0KTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGRlbGV0 ZV9zdXJyb3VuZGluZyAodWludCBvZmZzZXQsIHVpbnQgbGVuKTsKKysJCXB1YmxpYyBib29sIGZp bHRlcl9rZXlfZXZlbnQgKENsdXR0ZXIuS2V5RXZlbnQga2V5KTsKKysJCVtOb1dyYXBwZXJdCisr CQlwdWJsaWMgdmlydHVhbCB2b2lkIGZvY3VzX2luIChDbHV0dGVyLklucHV0TWV0aG9kIGlucHV0 X21ldGhvZCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBmb2N1c19v dXQgKCk7CisrCQlwdWJsaWMgYm9vbCBpc19mb2N1c2VkICgpOworKwkJW05vV3JhcHBlcl0KKysJ CXB1YmxpYyB2aXJ0dWFsIHZvaWQgcmVxdWVzdF9zdXJyb3VuZGluZyAoKTsKKysJCXB1YmxpYyB2 b2lkIHJlc2V0ICgpOworKwkJcHVibGljIHZvaWQgc2V0X2Nhbl9zaG93X3ByZWVkaXQgKGJvb2wg Y2FuX3Nob3dfcHJlZWRpdCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfY29udGVudF9oaW50cyAoQ2x1 dHRlci5JbnB1dENvbnRlbnRIaW50RmxhZ3MgaGludCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfY29u dGVudF9wdXJwb3NlIChDbHV0dGVyLklucHV0Q29udGVudFB1cnBvc2UgcHVycG9zZSk7CisrCQlw dWJsaWMgdm9pZCBzZXRfY3Vyc29yX2xvY2F0aW9uIChHcmFwaGVuZS5SZWN0IHJlY3QpOworKwkJ cHVibGljIHZvaWQgc2V0X2lucHV0X3BhbmVsX3N0YXRlIChDbHV0dGVyLklucHV0UGFuZWxTdGF0 ZSBzdGF0ZSk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBzZXRfcHJl ZWRpdF90ZXh0IChzdHJpbmcgcHJlZWRpdCwgdWludCBjdXJzb3IpOworKwkJcHVibGljIHZvaWQg c2V0X3N1cnJvdW5kaW5nIChzdHJpbmcgdGV4dCwgdWludCBjdXJzb3IsIHVpbnQgYW5jaG9yKTsK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0 eXBlX2lkID0gImNsdXR0ZXJfaW5wdXRfbWV0aG9kX2dldF90eXBlICgpIildCisrCXB1YmxpYyBh YnN0cmFjdCBjbGFzcyBJbnB1dE1ldGhvZCA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFz X2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBJbnB1dE1ldGhvZCAo KTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCBib29sIGZpbHRlcl9rZXlfZXZl bnQgKENsdXR0ZXIuRXZlbnQga2V5KTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgZm9jdXNfaW4g KENsdXR0ZXIuSW5wdXRGb2N1cyBhY3Rvcik7CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGZvY3Vz X291dCAoKTsKKysJCXB1YmxpYyB2b2lkIGZvcndhcmRfa2V5ICh1aW50MzIga2V5dmFsLCB1aW50 MzIga2V5Y29kZSwgdWludDMyIHN0YXRlLCB1aW50NjQgdGltZV8sIGJvb2wgcHJlc3MpOworKwkJ cHVibGljIHZvaWQgbm90aWZ5X2tleV9ldmVudCAoQ2x1dHRlci5FdmVudCBldmVudCwgYm9vbCBm aWx0ZXJlZCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCByZXNldCAo KTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHNldF9jdXJzb3JfbG9j YXRpb24gKEdyYXBoZW5lLlJlY3QgcmVjdCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfaW5wdXRfcGFu ZWxfc3RhdGUgKENsdXR0ZXIuSW5wdXRQYW5lbFN0YXRlIHN0YXRlKTsKKysJCXB1YmxpYyB2b2lk IHNldF9wcmVlZGl0X3RleHQgKHN0cmluZz8gcHJlZWRpdCwgdWludCBjdXJzb3IpOworKwkJW05v V3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgc2V0X3N1cnJvdW5kaW5nIChzdHJpbmcg dGV4dCwgdWludCBjdXJzb3IsIHVpbnQgYW5jaG9yKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJs aWMgdmlydHVhbCB2b2lkIHVwZGF0ZV9jb250ZW50X2hpbnRzIChDbHV0dGVyLklucHV0Q29udGVu dEhpbnRGbGFncyBoaW50KTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lk IHVwZGF0ZV9jb250ZW50X3B1cnBvc2UgKENsdXR0ZXIuSW5wdXRDb250ZW50UHVycG9zZSBwdXJw b3NlKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wgY2FuX3Nob3dfcHJl ZWRpdCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBDbHV0 dGVyLklucHV0Q29udGVudEhpbnRGbGFncyBjb250ZW50X2hpbnRzIHsgZ2V0OyBzZXQ7IH0KKysJ CVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIENsdXR0ZXIuSW5wdXRDb250ZW50UHVycG9z ZSBjb250ZW50X3B1cnBvc2UgeyBnZXQ7IHNldDsgfQorKwkJW0hhc0VtaXR0ZXJdCisrCQlwdWJs aWMgc2lnbmFsIHZvaWQgY29tbWl0IChzdHJpbmcgdGV4dCk7CisrCQlwdWJsaWMgc2lnbmFsIHZv aWQgY3Vyc29yX2xvY2F0aW9uX2NoYW5nZWQgKEdyYXBoZW5lLlJlY3Qgb2JqZWN0KTsKKysJCVtI YXNFbWl0dGVyXQorKwkJcHVibGljIHNpZ25hbCB2b2lkIGRlbGV0ZV9zdXJyb3VuZGluZyAodWlu dCBvZmZzZXQsIHVpbnQgbGVuKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBpbnB1dF9wYW5lbF9z dGF0ZSAoQ2x1dHRlci5JbnB1dFBhbmVsU3RhdGUgb2JqZWN0KTsKKysJCVtIYXNFbWl0dGVyXQor KwkJcHVibGljIHNpZ25hbCB2b2lkIHJlcXVlc3Rfc3Vycm91bmRpbmcgKCk7CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJj bHV0dGVyX2ludGVydmFsX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJcHVibGljIGNsYXNzIEludGVydmFsIDogR0xpYi5Jbml0aWFsbHlVbm93bmVkLCBDbHV0 dGVyLlNjcmlwdGFibGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFs c2UpXQorKwkJcHVibGljIEludGVydmFsIChHTGliLlR5cGUgZ3R5cGUsIC4uLik7CisrCQlwdWJs aWMgQ2x1dHRlci5JbnRlcnZhbCBjbG9uZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQi KV0KKysJCXB1YmxpYyB1bm93bmVkIEdMaWIuVmFsdWU/IGNvbXB1dGUgKGRvdWJsZSBmYWN0b3Ip OworKwkJcHVibGljIHZpcnR1YWwgYm9vbCBjb21wdXRlX3ZhbHVlIChkb3VibGUgZmFjdG9yLCBv dXQgR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlwdWJsaWMgR0xpYi5WYWx1ZSBnZXRfZmluYWxfdmFs dWUgKCk7CisrCQlwdWJsaWMgR0xpYi5WYWx1ZSBnZXRfaW5pdGlhbF92YWx1ZSAoKTsKKysJCXB1 YmxpYyB2b2lkIGdldF9pbnRlcnZhbCAoLi4uKTsKKysJCXB1YmxpYyBHTGliLlR5cGUgZ2V0X3Zh bHVlX3R5cGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGJv b2wgaXNfdmFsaWQgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBHTGliLlZhbHVlPyBwZWVrX2ZpbmFs X3ZhbHVlICgpOworKwkJcHVibGljIHVub3duZWQgR0xpYi5WYWx1ZT8gcGVla19pbml0aWFsX3Zh bHVlICgpOworKwkJcHVibGljIHN0YXRpYyB2b2lkIHJlZ2lzdGVyX3Byb2dyZXNzX2Z1bmMgKEdM aWIuVHlwZSB2YWx1ZV90eXBlLCBDbHV0dGVyLlByb2dyZXNzRnVuYyBmdW5jKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfZmluYWwgKC4uLik7Cisr CQlwdWJsaWMgdm9pZCBzZXRfZmluYWxfdmFsdWUgKEdMaWIuVmFsdWUgdmFsdWUpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9pbml0aWFsICguLi4p OworKwkJcHVibGljIHZvaWQgc2V0X2luaXRpYWxfdmFsdWUgKEdMaWIuVmFsdWUgdmFsdWUpOwor KwkJcHVibGljIHZvaWQgc2V0X2ludGVydmFsICguLi4pOworKwkJcHVibGljIHZpcnR1YWwgYm9v bCB2YWxpZGF0ZSAoR0xpYi5QYXJhbVNwZWMgcHNwZWMpOworKwkJW0NDb2RlIChoYXNfY29uc3Ry dWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHVibGljIEludGVydmFsLndpdGhfdmFsdWVzIChH TGliLlR5cGUgZ3R5cGUsIEdMaWIuVmFsdWU/IGluaXRpYWwsIEdMaWIuVmFsdWU/IGZpbmFsKTsK KysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJ CXB1YmxpYyBHTGliLlZhbHVlIGZpbmFsIHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vz c29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBHTGli LlZhbHVlIGluaXRpYWwgeyBvd25lZCBnZXQ7IHNldDsgfQorKwkJcHVibGljIEdMaWIuVHlwZSB2 YWx1ZV90eXBlIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0Nv bXBhY3RdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJcHVibGljIGNsYXNzIEtleUV2 ZW50IDogQ2x1dHRlci5FdmVudCB7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLklucHV0RGV2aWNl IGRldmljZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50RmxhZ3MgZmxhZ3M7CisrCQlwdWJsaWMg dWludDE2IGhhcmR3YXJlX2tleWNvZGU7CisrCQlwdWJsaWMgdWludCBrZXl2YWw7CisrCQlwdWJs aWMgQ2x1dHRlci5Nb2RpZmllclR5cGUgbW9kaWZpZXJfc3RhdGU7CisrCQlwdWJsaWMgd2VhayBD bHV0dGVyLkFjdG9yIHNvdXJjZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuU3RhZ2Ugc3RhZ2U7 CisrCQlwdWJsaWMgdWludDMyIHRpbWU7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudFR5cGUgdHlw ZTsKKysJCXB1YmxpYyB1bmljaGFyIHVuaWNvZGVfdmFsdWU7CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2tl eWZyYW1lX3RyYW5zaXRpb25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTIiKV0KKysJcHVibGljIGNsYXNzIEtleWZyYW1lVHJhbnNpdGlvbiA6IENsdXR0ZXIuUHJvcGVy dHlUcmFuc2l0aW9uLCBDbHV0dGVyLlNjcmlwdGFibGUgeworKwkJW0NDb2RlIChoYXNfY29uc3Ry dWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlclRyYW5zaXRpb24qIildCisrCQlw dWJsaWMgS2V5ZnJhbWVUcmFuc2l0aW9uIChzdHJpbmcgcHJvcGVydHlfbmFtZSk7CisrCQlwdWJs aWMgdm9pZCBjbGVhciAoKTsKKysJCXB1YmxpYyB2b2lkIGdldF9rZXlfZnJhbWUgKHVpbnQgaW5k ZXhfLCBvdXQgZG91YmxlIGtleSwgb3V0IENsdXR0ZXIuQW5pbWF0aW9uTW9kZSBtb2RlLCBvdXQg R0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlwdWJsaWMgdWludCBnZXRfbl9rZXlfZnJhbWVzICgpOwor KwkJcHVibGljIHZvaWQgc2V0X2tleV9mcmFtZSAodWludCBpbmRleF8sIGRvdWJsZSBrZXksIENs dXR0ZXIuQW5pbWF0aW9uTW9kZSBtb2RlLCBHTGliLlZhbHVlIHZhbHVlKTsKKysJCXB1YmxpYyB2 b2lkIHNldF9rZXlfZnJhbWVzIChbQ0NvZGUgKGFycmF5X2xlbmd0aF9jbmFtZSA9ICJuX2tleV9m cmFtZXMiLCBhcnJheV9sZW5ndGhfcG9zID0gMC41LCBhcnJheV9sZW5ndGhfdHlwZSA9ICJndWlu dCIpXSBkb3VibGVbXSBrZXlfZnJhbWVzKTsKKysJCXB1YmxpYyB2b2lkIHNldF9tb2RlcyAoW0ND b2RlIChhcnJheV9sZW5ndGhfY25hbWUgPSAibl9tb2RlcyIsIGFycmF5X2xlbmd0aF9wb3MgPSAw LjUsIGFycmF5X2xlbmd0aF90eXBlID0gImd1aW50IildIENsdXR0ZXIuQW5pbWF0aW9uTW9kZVtd IG1vZGVzKTsKKysJCXB1YmxpYyB2b2lkIHNldF92YWx1ZXMgKFtDQ29kZSAoYXJyYXlfbGVuZ3Ro X2NuYW1lID0gIm5fdmFsdWVzIiwgYXJyYXlfbGVuZ3RoX3BvcyA9IDAuNSwgYXJyYXlfbGVuZ3Ro X3R5cGUgPSAiZ3VpbnQiKV0gR0xpYi5WYWx1ZVtdIHZhbHVlcyk7CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVy X2tleW1hcF9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgYWJzdHJhY3QgY2xhc3MgS2V5bWFwIDog R0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2Up XQorKwkJcHJvdGVjdGVkIEtleW1hcCAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIGJvb2wgZ2V0X2Nh cHNfbG9ja19zdGF0ZSAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIFBhbmdvLkRpcmVjdGlvbiBnZXRf ZGlyZWN0aW9uICgpOworKwkJcHVibGljIHZpcnR1YWwgYm9vbCBnZXRfbnVtX2xvY2tfc3RhdGUg KCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgc3RhdGVfY2hhbmdlZCAoKTsKKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNs dXR0ZXJfbGF5ZXJfbm9kZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgTGF5ZXJOb2Rl IDogQ2x1dHRlci5QYWludE5vZGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9u ID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlclBhaW50Tm9kZSoiKV0KKysJCXB1YmxpYyBMYXllck5v ZGUgKENvZ2wuTWF0cml4IHByb2plY3Rpb24sIENhaXJvLlJlY3RhbmdsZSB2aWV3cG9ydCwgZmxv YXQgd2lkdGgsIGZsb2F0IGhlaWdodCwgdWludDggb3BhY2l0eSk7CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVy X2xheW91dF9tYW5hZ2VyX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIi KV0KKysJcHVibGljIGFic3RyYWN0IGNsYXNzIExheW91dE1hbmFnZXIgOiBHTGliLkluaXRpYWxs eVVub3duZWQgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQor KwkJcHJvdGVjdGVkIExheW91dE1hbmFnZXIgKCk7CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGFs bG9jYXRlIChDbHV0dGVyLkNvbnRhaW5lciBjb250YWluZXIsIENsdXR0ZXIuQWN0b3JCb3ggYWxs b2NhdGlvbiwgQ2x1dHRlci5BbGxvY2F0aW9uRmxhZ3MgZmxhZ3MpOworKwkJcHVibGljIHZvaWQg Y2hpbGRfZ2V0IChDbHV0dGVyLkNvbnRhaW5lciBjb250YWluZXIsIENsdXR0ZXIuQWN0b3IgYWN0 b3IsIC4uLik7CisrCQlwdWJsaWMgdm9pZCBjaGlsZF9nZXRfcHJvcGVydHkgKENsdXR0ZXIuQ29u dGFpbmVyIGNvbnRhaW5lciwgQ2x1dHRlci5BY3RvciBhY3Rvciwgc3RyaW5nIHByb3BlcnR5X25h bWUsIEdMaWIuVmFsdWUgdmFsdWUpOworKwkJcHVibGljIHZvaWQgY2hpbGRfc2V0IChDbHV0dGVy LkNvbnRhaW5lciBjb250YWluZXIsIENsdXR0ZXIuQWN0b3IgYWN0b3IsIC4uLik7CisrCQlwdWJs aWMgdm9pZCBjaGlsZF9zZXRfcHJvcGVydHkgKENsdXR0ZXIuQ29udGFpbmVyIGNvbnRhaW5lciwg Q2x1dHRlci5BY3RvciBhY3Rvciwgc3RyaW5nIHByb3BlcnR5X25hbWUsIEdMaWIuVmFsdWUgdmFs dWUpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHVub3duZWQgQ2x1dHRlci5M YXlvdXRNZXRhIGNyZWF0ZV9jaGlsZF9tZXRhIChDbHV0dGVyLkNvbnRhaW5lciBjb250YWluZXIs IENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFs IHZvaWQgZW5kX2FuaW1hdGlvbiAoKTsKKysJCXB1YmxpYyB1bm93bmVkIEdMaWIuUGFyYW1TcGVj IGZpbmRfY2hpbGRfcHJvcGVydHkgKHN0cmluZyBuYW1lKTsKKysJCVtOb1dyYXBwZXJdCisrCQlw dWJsaWMgdmlydHVhbCBkb3VibGUgZ2V0X2FuaW1hdGlvbl9wcm9ncmVzcyAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuTGF5b3V0TWV0 YSBnZXRfY2hpbGRfbWV0YSAoQ2x1dHRlci5Db250YWluZXIgY29udGFpbmVyLCBDbHV0dGVyLkFj dG9yIGFjdG9yKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCBHTGliLlR5cGUg Z2V0X2NoaWxkX21ldGFfdHlwZSAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgZ2V0X3ByZWZl cnJlZF9oZWlnaHQgKENsdXR0ZXIuQ29udGFpbmVyIGNvbnRhaW5lciwgZmxvYXQgZm9yX3dpZHRo LCBvdXQgZmxvYXQgbWluX2hlaWdodF9wLCBvdXQgZmxvYXQgbmF0X2hlaWdodF9wKTsKKysJCXB1 YmxpYyB2aXJ0dWFsIHZvaWQgZ2V0X3ByZWZlcnJlZF93aWR0aCAoQ2x1dHRlci5Db250YWluZXIg Y29udGFpbmVyLCBmbG9hdCBmb3JfaGVpZ2h0LCBvdXQgZmxvYXQgbWluX3dpZHRoX3AsIG91dCBm bG9hdCBuYXRfd2lkdGhfcCk7CisrCQlbQ0NvZGUgKGFycmF5X2xlbmd0aF9wb3MgPSAwLjEsIGFy cmF5X2xlbmd0aF90eXBlID0gImd1aW50IildCisrCQlwdWJsaWMgR0xpYi5QYXJhbVNwZWNbXSBs aXN0X2NoaWxkX3Byb3BlcnRpZXMgKCk7CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHNldF9jb250 YWluZXIgKENsdXR0ZXIuQ29udGFpbmVyPyBjb250YWluZXIpOworKwkJW0hhc0VtaXR0ZXJdCisr CQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBsYXlvdXRfY2hhbmdlZCAoKTsKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0g ImNsdXR0ZXJfbGF5b3V0X21ldGFfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0g IjEuMiIpXQorKwlwdWJsaWMgYWJzdHJhY3QgY2xhc3MgTGF5b3V0TWV0YSA6IENsdXR0ZXIuQ2hp bGRNZXRhIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJ CXByb3RlY3RlZCBMYXlvdXRNZXRhICgpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5MYXlv dXRNYW5hZ2VyIGdldF9tYW5hZ2VyICgpOworKwkJcHVibGljIENsdXR0ZXIuTGF5b3V0TWFuYWdl ciBtYW5hZ2VyIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29w eSIsIGZyZWVfZnVuY3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJjbHV0dGVyX21h cmdpbl9nZXRfdHlwZSAoKSIpXQorKwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTAiKV0KKysJcHVibGljIGNsYXNzIE1hcmdpbiB7CisrCQlwdWJsaWMgZmxvYXQgYm90dG9tOwor KwkJcHVibGljIGZsb2F0IGxlZnQ7CisrCQlwdWJsaWMgZmxvYXQgcmlnaHQ7CisrCQlwdWJsaWMg ZmxvYXQgdG9wOworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQor KwkJcHVibGljIE1hcmdpbiAoKTsKKysJCXB1YmxpYyBDbHV0dGVyLk1hcmdpbiBjb3B5ICgpOwor KwkJcHVibGljIHZvaWQgZnJlZSAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0NvbXBhY3Rd CisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJcHVibGljIGNsYXNzIE1vdGlvbkV2ZW50 IDogQ2x1dHRlci5FdmVudCB7CisrCQlwdWJsaWMgZG91YmxlIGF4ZXM7CisrCQlwdWJsaWMgd2Vh ayBDbHV0dGVyLklucHV0RGV2aWNlIGRldmljZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50Rmxh Z3MgZmxhZ3M7CisrCQlwdWJsaWMgQ2x1dHRlci5Nb2RpZmllclR5cGUgbW9kaWZpZXJfc3RhdGU7 CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLkFjdG9yIHNvdXJjZTsKKysJCXB1YmxpYyB3ZWFrIENs dXR0ZXIuU3RhZ2Ugc3RhZ2U7CisrCQlwdWJsaWMgdWludDMyIHRpbWU7CisrCQlwdWJsaWMgQ2x1 dHRlci5FdmVudFR5cGUgdHlwZTsKKysJCXB1YmxpYyBmbG9hdCB4OworKwkJcHVibGljIGZsb2F0 IHk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgdHlwZV9pZCA9ICJjbHV0dGVyX29mZnNjcmVlbl9lZmZlY3RfZ2V0X3R5cGUgKCkiKV0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgYWJzdHJhY3QgY2xhc3MgT2Zmc2Ny ZWVuRWZmZWN0IDogQ2x1dHRlci5FZmZlY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1 bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIE9mZnNjcmVlbkVmZmVjdCAoKTsKKysJCXB1 YmxpYyB2aXJ0dWFsIENvZ2wuSGFuZGxlIGNyZWF0ZV90ZXh0dXJlIChmbG9hdCB3aWR0aCwgZmxv YXQgaGVpZ2h0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE0IildCisrCQlwdWJsaWMgYm9v bCBnZXRfdGFyZ2V0X3JlY3QgKG91dCB1bm93bmVkIEdyYXBoZW5lLlJlY3QgcmVjdCk7CisrCQlb VmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNCIsIHNp bmNlID0gIjEuOCIpXQorKwkJcHVibGljIGJvb2wgZ2V0X3RhcmdldF9zaXplIChvdXQgZmxvYXQg d2lkdGgsIG91dCBmbG9hdCBoZWlnaHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0K KysJCXB1YmxpYyB1bm93bmVkIENvZ2wuSGFuZGxlIGdldF90ZXh0dXJlICgpOworKwkJcHVibGlj IHZpcnR1YWwgdm9pZCBwYWludF90YXJnZXQgKENsdXR0ZXIuUGFpbnRDb250ZXh0IHBhaW50X2Nv bnRleHQpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9wYWdlX3R1cm5fZWZmZWN0X2dldF90eXBlICgpIild CisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGNsYXNzIFBhZ2VUdXJuRWZm ZWN0IDogQ2x1dHRlci5EZWZvcm1FZmZlY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1 bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckVmZmVjdCoiKV0KKysJCXB1YmxpYyBQYWdl VHVybkVmZmVjdCAoZG91YmxlIHBlcmlvZCwgZG91YmxlIGFuZ2xlLCBmbG9hdCByYWRpdXMpOwor KwkJcHVibGljIGRvdWJsZSBnZXRfYW5nbGUgKCk7CisrCQlwdWJsaWMgZG91YmxlIGdldF9wZXJp b2QgKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X3JhZGl1cyAoKTsKKysJCXB1YmxpYyB2b2lkIHNl dF9hbmdsZSAoZG91YmxlIGFuZ2xlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9wZXJpb2QgKGRvdWJs ZSBwZXJpb2QpOworKwkJcHVibGljIHZvaWQgc2V0X3JhZGl1cyAoZmxvYXQgcmFkaXVzKTsKKysJ CXB1YmxpYyBkb3VibGUgYW5nbGUgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIGRvdWJsZSBwZXJp b2QgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIGZsb2F0IHJhZGl1cyB7IGdldDsgc2V0OyB9Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgcmVm X2Z1bmN0aW9uID0gImNsdXR0ZXJfcGFpbnRfY29udGV4dF9yZWYiLCB0eXBlX2lkID0gImNsdXR0 ZXJfcGFpbnRfY29udGV4dF9nZXRfdHlwZSAoKSIsIHVucmVmX2Z1bmN0aW9uID0gImNsdXR0ZXJf cGFpbnRfY29udGV4dF91bnJlZiIpXQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIFBhaW50 Q29udGV4dCB7CisrCQlwdWJsaWMgdm9pZCBkZXN0cm95ICgpOworKwkJcHVibGljIHVub3duZWQg Q29nbC5GcmFtZWJ1ZmZlciBnZXRfZnJhbWVidWZmZXIgKCk7CisrCQlwdWJsaWMgdm9pZCBwb3Bf ZnJhbWVidWZmZXIgKCk7CisrCQlwdWJsaWMgdm9pZCBwdXNoX2ZyYW1lYnVmZmVyIChDb2dsLkZy YW1lYnVmZmVyIGZyYW1lYnVmZmVyKTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuUGFpbnRD b250ZXh0IEByZWYgKCk7CisrCQlwdWJsaWMgdm9pZCB1bnJlZiAoKTsKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0 ZXJfcGFpbnRfbm9kZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIp XQorKwlwdWJsaWMgYWJzdHJhY3QgY2xhc3MgUGFpbnROb2RlIHsKKysJCVtDQ29kZSAoaGFzX2Nv bnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBQYWludE5vZGUgKCk7Cisr CQlwdWJsaWMgdm9pZCBhZGRfY2hpbGQgKENsdXR0ZXIuUGFpbnROb2RlIGNoaWxkKTsKKysJCXB1 YmxpYyB2b2lkIGFkZF9tdWx0aXRleHR1cmVfcmVjdGFuZ2xlIChDbHV0dGVyLkFjdG9yQm94IHJl Y3QsIGZsb2F0IHRleHRfY29vcmRzLCB1aW50IHRleHRfY29vcmRzX2xlbik7CisrCQlwdWJsaWMg dm9pZCBhZGRfcmVjdGFuZ2xlIChDbHV0dGVyLkFjdG9yQm94IHJlY3QpOworKwkJcHVibGljIHZv aWQgYWRkX3RleHR1cmVfcmVjdGFuZ2xlIChDbHV0dGVyLkFjdG9yQm94IHJlY3QsIGZsb2F0IHhf MSwgZmxvYXQgeV8xLCBmbG9hdCB4XzIsIGZsb2F0IHlfMik7CisrCQlwdWJsaWMgdW5vd25lZCBD b2dsLkZyYW1lYnVmZmVyIGdldF9mcmFtZWJ1ZmZlciAoKTsKKysJCXB1YmxpYyB2b2lkIHBhaW50 IChDbHV0dGVyLlBhaW50Q29udGV4dCBwYWludF9jb250ZXh0KTsKKysJCXB1YmxpYyB1bm93bmVk IENsdXR0ZXIuUGFpbnROb2RlIEByZWYgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfbmFtZSAoc3Ry aW5nIG5hbWUpOworKwkJcHVibGljIHZvaWQgdW5yZWYgKCk7CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY29weV9mdW5jdGlvbiA9ICJnX2Jv eGVkX2NvcHkiLCBmcmVlX2Z1bmN0aW9uID0gImdfYm94ZWRfZnJlZSIsIHR5cGVfaWQgPSAiY2x1 dHRlcl9wYWludF92b2x1bWVfZ2V0X3R5cGUgKCkiKV0KKysJW0NvbXBhY3RdCisrCVtWZXJzaW9u IChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGNsYXNzIFBhaW50Vm9sdW1lIHsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBDbHV0dGVyLlBhaW50Vm9sdW1lIGNvcHkg KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgdm9pZCBmcmVlICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIGZsb2F0IGdldF9kZXB0 aCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRf aGVpZ2h0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIHZvaWQg Z2V0X29yaWdpbiAob3V0IHVub3duZWQgR3JhcGhlbmUuUG9pbnQzRCB2ZXJ0ZXgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIGZsb2F0IGdldF93aWR0aCAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9kZXB0aCAoZmxv YXQgZGVwdGgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIGJvb2wg c2V0X2Zyb21fYWxsb2NhdGlvbiAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgdm9pZCBzZXRfaGVpZ2h0IChmbG9hdCBoZWlnaHQp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIHZvaWQgc2V0X29yaWdp biAoR3JhcGhlbmUuUG9pbnQzRCBvcmlnaW4pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIp XQorKwkJcHVibGljIHZvaWQgc2V0X3dpZHRoIChmbG9hdCB3aWR0aCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgdm9pZCB1bmlvbiAoQ2x1dHRlci5QYWludFZvbHVt ZSBhbm90aGVyX3B2KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMg dm9pZCB1bmlvbl9ib3ggKENsdXR0ZXIuQWN0b3JCb3ggYm94KTsKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJf cGFuX2FjdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQor KwlwdWJsaWMgY2xhc3MgUGFuQWN0aW9uIDogQ2x1dHRlci5HZXN0dXJlQWN0aW9uIHsKKysJCVtD Q29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3Rp b24qIildCisrCQlwdWJsaWMgUGFuQWN0aW9uICgpOworKwkJcHVibGljIGRvdWJsZSBnZXRfYWNj ZWxlcmF0aW9uX2ZhY3RvciAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjI0IildCisrCQlw dWJsaWMgZmxvYXQgZ2V0X2NvbnN0cmFpbmVkX21vdGlvbl9kZWx0YSAodWludCBwb2ludCwgb3V0 IGZsb2F0IGRlbHRhX3gsIG91dCBmbG9hdCBkZWx0YV95KTsKKysJCXB1YmxpYyBkb3VibGUgZ2V0 X2RlY2VsZXJhdGlvbiAoKTsKKysJCXB1YmxpYyBib29sIGdldF9pbnRlcnBvbGF0ZSAoKTsKKysJ CXB1YmxpYyB2b2lkIGdldF9pbnRlcnBvbGF0ZWRfY29vcmRzIChvdXQgZmxvYXQgaW50ZXJwb2xh dGVkX3gsIG91dCBmbG9hdCBpbnRlcnBvbGF0ZWRfeSk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X2lu dGVycG9sYXRlZF9kZWx0YSAob3V0IGZsb2F0IGRlbHRhX3gsIG91dCBmbG9hdCBkZWx0YV95KTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE0IildCisrCQlwdWJsaWMgdm9pZCBnZXRfbW90aW9u X2Nvb3JkcyAodWludCBwb2ludCwgb3V0IGZsb2F0IG1vdGlvbl94LCBvdXQgZmxvYXQgbW90aW9u X3kpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTQiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRf bW90aW9uX2RlbHRhICh1aW50IHBvaW50LCBvdXQgZmxvYXQgZGVsdGFfeCwgb3V0IGZsb2F0IGRl bHRhX3kpOworKwkJcHVibGljIENsdXR0ZXIuUGFuQXhpcyBnZXRfcGFuX2F4aXMgKCk7CisrCQlw dWJsaWMgdm9pZCBzZXRfYWNjZWxlcmF0aW9uX2ZhY3RvciAoZG91YmxlIGZhY3Rvcik7CisrCQlw dWJsaWMgdm9pZCBzZXRfZGVjZWxlcmF0aW9uIChkb3VibGUgcmF0ZSk7CisrCQlwdWJsaWMgdm9p ZCBzZXRfaW50ZXJwb2xhdGUgKGJvb2wgc2hvdWxkX2ludGVycG9sYXRlKTsKKysJCXB1YmxpYyB2 b2lkIHNldF9wYW5fYXhpcyAoQ2x1dHRlci5QYW5BeGlzIGF4aXMpOworKwkJcHVibGljIGRvdWJs ZSBhY2NlbGVyYXRpb25fZmFjdG9yIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBkb3VibGUgZGVj ZWxlcmF0aW9uIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBib29sIGludGVycG9sYXRlIHsgZ2V0 OyBzZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLlBhbkF4aXMgcGFuX2F4aXMgeyBnZXQ7IHNldDsg fQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIGJvb2wgcGFuIChDbHV0dGVyLkFjdG9yIGFjdG9y LCBib29sIGlzX2ludGVycG9sYXRlZCk7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBw YW5fc3RvcHBlZCAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgbG93ZXJfY2FzZV9jc3VmZml4ID0gInBh cmFtX3VuaXRzIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3BhcmFtX3VuaXRzX2dldF90eXBlICgpIild CisrCXB1YmxpYyBjbGFzcyBQYXJhbVNwZWNVbml0IDogR0xpYi5QYXJhbVNwZWMgeworKwkJW0ND b2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFBhcmFt U3BlY1VuaXQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3BhdGhfZ2V0X3R5cGUgKCkiKV0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgY2xhc3MgUGF0aCA6IEdMaWIuSW5pdGlh bGx5VW5vd25lZCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSld CisrCQlwdWJsaWMgUGF0aCAoKTsKKysJCXB1YmxpYyB2b2lkIGFkZF9jYWlyb19wYXRoIChDYWly by5QYXRoIGNwYXRoKTsKKysJCXB1YmxpYyB2b2lkIGFkZF9jbG9zZSAoKTsKKysJCXB1YmxpYyB2 b2lkIGFkZF9jdXJ2ZV90byAoaW50IHhfMSwgaW50IHlfMSwgaW50IHhfMiwgaW50IHlfMiwgaW50 IHhfMywgaW50IHlfMyk7CisrCQlwdWJsaWMgdm9pZCBhZGRfbGluZV90byAoaW50IHgsIGludCB5 KTsKKysJCXB1YmxpYyB2b2lkIGFkZF9tb3ZlX3RvIChpbnQgeCwgaW50IHkpOworKwkJcHVibGlj IHZvaWQgYWRkX25vZGUgKENsdXR0ZXIuUGF0aE5vZGUgbm9kZSk7CisrCQlwdWJsaWMgdm9pZCBh ZGRfcmVsX2N1cnZlX3RvIChpbnQgeF8xLCBpbnQgeV8xLCBpbnQgeF8yLCBpbnQgeV8yLCBpbnQg eF8zLCBpbnQgeV8zKTsKKysJCXB1YmxpYyB2b2lkIGFkZF9yZWxfbGluZV90byAoaW50IHgsIGlu dCB5KTsKKysJCXB1YmxpYyB2b2lkIGFkZF9yZWxfbW92ZV90byAoaW50IHgsIGludCB5KTsKKysJ CXB1YmxpYyBib29sIGFkZF9zdHJpbmcgKHN0cmluZyBzdHIpOworKwkJcHVibGljIHZvaWQgY2xl YXIgKCk7CisrCQlwdWJsaWMgdm9pZCBAZm9yZWFjaCAoQ2x1dHRlci5QYXRoQ2FsbGJhY2sgY2Fs bGJhY2spOworKwkJcHVibGljIHN0cmluZyBnZXRfZGVzY3JpcHRpb24gKCk7CisrCQlwdWJsaWMg dWludCBnZXRfbGVuZ3RoICgpOworKwkJcHVibGljIHVpbnQgZ2V0X25fbm9kZXMgKCk7CisrCQlw dWJsaWMgQ2x1dHRlci5QYXRoTm9kZSBnZXRfbm9kZSAodWludCBpbmRleF8pOworKwkJcHVibGlj IEdMaWIuU0xpc3Q8d2VhayBDbHV0dGVyLlBhdGhOb2RlPz4gZ2V0X25vZGVzICgpOworKwkJcHVi bGljIHVpbnQgZ2V0X3Bvc2l0aW9uIChkb3VibGUgcHJvZ3Jlc3MsIG91dCBDbHV0dGVyLktub3Qg cG9zaXRpb24pOworKwkJcHVibGljIHZvaWQgaW5zZXJ0X25vZGUgKGludCBpbmRleF8sIENsdXR0 ZXIuUGF0aE5vZGUgbm9kZSk7CisrCQlwdWJsaWMgdm9pZCByZW1vdmVfbm9kZSAodWludCBpbmRl eF8pOworKwkJcHVibGljIHZvaWQgcmVwbGFjZV9ub2RlICh1aW50IGluZGV4XywgQ2x1dHRlci5Q YXRoTm9kZSBub2RlKTsKKysJCXB1YmxpYyBib29sIHNldF9kZXNjcmlwdGlvbiAoc3RyaW5nIHN0 cik7CisrCQlwdWJsaWMgdm9pZCB0b19jYWlyb19wYXRoIChDYWlyby5Db250ZXh0IGNyKTsKKysJ CVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1YmxpYyBQYXRo LndpdGhfZGVzY3JpcHRpb24gKHN0cmluZyBkZXNjKTsKKysJCXB1YmxpYyBzdHJpbmcgZGVzY3Jp cHRpb24geyBvd25lZCBnZXQ7IHNldDsgfQorKwkJcHVibGljIHVpbnQgbGVuZ3RoIHsgZ2V0OyB9 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg dHlwZV9pZCA9ICJjbHV0dGVyX3BhdGhfY29uc3RyYWludF9nZXRfdHlwZSAoKSIpXQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMS42IildCisrCXB1YmxpYyBjbGFzcyBQYXRoQ29uc3RyYWludCA6IENs dXR0ZXIuQ29uc3RyYWludCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBm YWxzZSwgdHlwZSA9ICJDbHV0dGVyQ29uc3RyYWludCoiKV0KKysJCXB1YmxpYyBQYXRoQ29uc3Ry YWludCAoQ2x1dHRlci5QYXRoPyBwYXRoLCBmbG9hdCBvZmZzZXQpOworKwkJcHVibGljIGZsb2F0 IGdldF9vZmZzZXQgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLlBhdGggZ2V0X3BhdGgg KCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfb2Zmc2V0IChmbG9hdCBvZmZzZXQpOworKwkJcHVibGlj IHZvaWQgc2V0X3BhdGggKENsdXR0ZXIuUGF0aD8gcGF0aCk7CisrCQlwdWJsaWMgZmxvYXQgb2Zm c2V0IHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLlBhdGggcGF0aCB7IGdldDsgc2V0 OyB9CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgbm9kZV9yZWFjaGVkIChDbHV0dGVyLkFjdG9yIGFj dG9yLCB1aW50IGluZGV4KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCByZWZfZnVuY3Rpb24gPSAiY2x1dHRlcl9waWNrX2NvbnRleHRfcmVm IiwgdHlwZV9pZCA9ICJjbHV0dGVyX3BpY2tfY29udGV4dF9nZXRfdHlwZSAoKSIsIHVucmVmX2Z1 bmN0aW9uID0gImNsdXR0ZXJfcGlja19jb250ZXh0X3VucmVmIildCisrCVtDb21wYWN0XQorKwlw dWJsaWMgY2xhc3MgUGlja0NvbnRleHQgeworKwkJcHVibGljIHZvaWQgZGVzdHJveSAoKTsKKysJ CXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuUGlja0NvbnRleHQgQHJlZiAoKTsKKysJCXB1YmxpYyB2 b2lkIHVucmVmICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9waXBlbGluZV9ub2RlX2dldF90eXBlICgp IildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBjbGFzcyBQaXBlbGlu ZU5vZGUgOiBDbHV0dGVyLlBhaW50Tm9kZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVu Y3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgUGlwZWxpbmVOb2RlICgpOworKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAi Y2x1dHRlcl9wcm9wZXJ0eV90cmFuc2l0aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBjbGFzcyBQcm9wZXJ0eVRyYW5zaXRpb24gOiBDbHV0 dGVyLlRyYW5zaXRpb24sIENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25z dHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyVHJhbnNpdGlvbioiKV0KKysJ CXB1YmxpYyBQcm9wZXJ0eVRyYW5zaXRpb24gKHN0cmluZz8gcHJvcGVydHlfbmFtZSk7CisrCQlw dWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X3Byb3BlcnR5X25hbWUgKCk7CisrCQlwdWJsaWMgdm9p ZCBzZXRfcHJvcGVydHlfbmFtZSAoc3RyaW5nPyBwcm9wZXJ0eV9uYW1lKTsKKysJCXB1YmxpYyBz dHJpbmcgcHJvcGVydHlfbmFtZSB7IGdldDsgc2V0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3JlY3Rh bmdsZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCXB1Ymxp YyBjbGFzcyBSZWN0YW5nbGUgOiBDbHV0dGVyLkFjdG9yLCBBdGsuSW1wbGVtZW50b3IsIENsdXR0 ZXIuQW5pbWF0YWJsZSwgQ2x1dHRlci5Db250YWluZXIsIENsdXR0ZXIuU2NyaXB0YWJsZSB7Cisr CQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVy QWN0b3IqIildCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2lu Y2UgPSAiMS4xMCIpXQorKwkJcHVibGljIFJlY3RhbmdsZSAoKTsKKysJCVtWZXJzaW9uIChkZXBy ZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMC4yIild CisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBnZXRfYm9yZGVyX2NvbG9yICgpOworKwkJW1ZlcnNp b24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9 ICIwLjIiKV0KKysJCXB1YmxpYyB1aW50IGdldF9ib3JkZXJfd2lkdGggKCk7CisrCQlbVmVyc2lv biAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIpXQorKwkJcHVi bGljIENsdXR0ZXIuQ29sb3IgZ2V0X2NvbG9yICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQg PSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9i b3JkZXJfY29sb3IgKENsdXR0ZXIuQ29sb3IgY29sb3IpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0 ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIwLjIiKV0KKysJ CXB1YmxpYyB2b2lkIHNldF9ib3JkZXJfd2lkdGggKHVpbnQgd2lkdGgpOworKwkJW1ZlcnNpb24g KGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiKV0KKysJCXB1Ymxp YyB2b2lkIHNldF9jb2xvciAoQ2x1dHRlci5Db2xvciBjb2xvcik7CisrCQlbQ0NvZGUgKGhhc19j b25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0b3IqIildCisrCQlb VmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIpXQor KwkJcHVibGljIFJlY3RhbmdsZS53aXRoX2NvbG9yIChDbHV0dGVyLkNvbG9yIGNvbG9yKTsKKysJ CXB1YmxpYyBDbHV0dGVyLkNvbG9yIGJvcmRlcl9jb2xvciB7IGdldDsgc2V0OyB9CisrCQlwdWJs aWMgdWludCBib3JkZXJfd2lkdGggeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIENsdXR0ZXIuQ29s b3IgY29sb3IgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMg Ym9vbCBoYXNfYm9yZGVyIHsgZ2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfcm9vdF9ub2Rl X2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBSb290Tm9kZSA6IENsdXR0ZXIuUGFpbnRO b2RlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0g IkNsdXR0ZXJQYWludE5vZGUqIildCisrCQlwdWJsaWMgUm9vdE5vZGUgKENvZ2wuRnJhbWVidWZm ZXIgZnJhbWVidWZmZXIsIENsdXR0ZXIuQ29sb3IgY2xlYXJfY29sb3IsIENvZ2wuQnVmZmVyQml0 IGNsZWFyX2ZsYWdzKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfcm90YXRlX2FjdGlvbl9nZXRfdHlwZSAo KSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwlwdWJsaWMgY2xhc3MgUm90YXRl QWN0aW9uIDogQ2x1dHRlci5HZXN0dXJlQWN0aW9uIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVj dF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3Rpb24qIildCisrCQlwdWJsaWMg Um90YXRlQWN0aW9uICgpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIGJvb2wgcm90YXRlIChD bHV0dGVyLkFjdG9yIGFjdG9yLCBkb3VibGUgYW5nbGUpOworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zY3Jp cHRfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwlwdWJsaWMg Y2xhc3MgU2NyaXB0IDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1 bmN0aW9uID0gZmFsc2UpXQorKwkJcHVibGljIFNjcmlwdCAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2b2lkIGFkZF9zZWFyY2hfcGF0aHMgKFtDQ29kZSAoYXJy YXlfbGVuZ3RoX2NuYW1lID0gIm5fcGF0aHMiLCBhcnJheV9sZW5ndGhfcG9zID0gMS4xLCBhcnJh eV9sZW5ndGhfdHlwZSA9ICJnc2l6ZSIpXSBzdHJpbmdbXSBwYXRocyk7CisrCQlbVmVyc2lvbiAo ZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEu OCIpXQorKwkJcHVibGljIHZvaWQgYWRkX3N0YXRlcyAoc3RyaW5nPyBuYW1lLCBDbHV0dGVyLlN0 YXRlIHN0YXRlKTsKKysJCXB1YmxpYyB2b2lkIGNvbm5lY3Rfc2lnbmFscyAodm9pZCogdXNlcl9k YXRhKTsKKysJCXB1YmxpYyB2b2lkIGNvbm5lY3Rfc2lnbmFsc19mdWxsIChDbHV0dGVyLlNjcmlw dENvbm5lY3RGdW5jIGZ1bmMpOworKwkJcHVibGljIHZvaWQgZW5zdXJlX29iamVjdHMgKCk7Cisr CQlwdWJsaWMgdW5vd25lZCBHTGliLk9iamVjdCBnZXRfb2JqZWN0IChzdHJpbmcgbmFtZSk7Cisr CQlwdWJsaWMgaW50IGdldF9vYmplY3RzICguLi4pOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQg PSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjgiKV0KKysJCXB1 YmxpYyB1bm93bmVkIENsdXR0ZXIuU3RhdGUgZ2V0X3N0YXRlcyAoc3RyaW5nPyBuYW1lKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0 X3RyYW5zbGF0aW9uX2RvbWFpbiAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIEdMaWIuVHlwZSBnZXRf dHlwZV9mcm9tX25hbWUgKHN0cmluZyB0eXBlX25hbWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjAuOCIpXQorKwkJcHVibGljIEdMaWIuTGlzdDx3ZWFrIEdMaWIuT2JqZWN0PiBsaXN0X29iamVj dHMgKCk7CisrCQlwdWJsaWMgdWludCBsb2FkX2Zyb21fZGF0YSAoc3RyaW5nIGRhdGEsIHNzaXpl X3QgbGVuZ3RoKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJCXB1YmxpYyB1aW50IGxvYWRfZnJvbV9m aWxlIChzdHJpbmcgZmlsZW5hbWUpIHRocm93cyBHTGliLkVycm9yOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1aW50IGxvYWRfZnJvbV9yZXNvdXJjZSAoc3RyaW5n IHJlc291cmNlX3BhdGgpIHRocm93cyBHTGliLkVycm9yOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjAuOCIpXQorKwkJcHVibGljIHN0cmluZyBsb29rdXBfZmlsZW5hbWUgKHN0cmluZyBmaWxlbmFt ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3Ry YW5zbGF0aW9uX2RvbWFpbiAoc3RyaW5nPyBkb21haW4pOworKwkJcHVibGljIHZvaWQgdW5tZXJn ZV9vYmplY3RzICh1aW50IG1lcmdlX2lkKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVi bGljIHN0cmluZyBmaWxlbmFtZSB7IG93bmVkIGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2Rd CisrCQlwdWJsaWMgYm9vbCBmaWxlbmFtZV9zZXQgeyBnZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEwIildCisrCQlwdWJsaWMgc3RyaW5nIHRyYW5zbGF0aW9uX2RvbWFpbiB7IGdldDsg c2V0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3Njcm9sbF9hY3Rvcl9nZXRfdHlwZSAoKSIpXQorKwlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwlwdWJsaWMgY2xhc3MgU2Nyb2xsQWN0b3IgOiBD bHV0dGVyLkFjdG9yLCBBdGsuSW1wbGVtZW50b3IsIENsdXR0ZXIuQW5pbWF0YWJsZSwgQ2x1dHRl ci5Db250YWluZXIsIENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1 Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0b3IqIildCisrCQlwdWJsaWMg U2Nyb2xsQWN0b3IgKCk7CisrCQlwdWJsaWMgQ2x1dHRlci5TY3JvbGxNb2RlIGdldF9zY3JvbGxf bW9kZSAoKTsKKysJCXB1YmxpYyB2b2lkIHNjcm9sbF90b19wb2ludCAoR3JhcGhlbmUuUG9pbnQg cG9pbnQpOworKwkJcHVibGljIHZvaWQgc2Nyb2xsX3RvX3JlY3QgKEdyYXBoZW5lLlJlY3QgcmVj dCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfc2Nyb2xsX21vZGUgKENsdXR0ZXIuU2Nyb2xsTW9kZSBt b2RlKTsKKysJCXB1YmxpYyBDbHV0dGVyLlNjcm9sbE1vZGUgc2Nyb2xsX21vZGUgeyBnZXQ7IHNl dDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNpbmNl ID0gIjAuMiIpXQorKwlwdWJsaWMgY2xhc3MgU2Nyb2xsRXZlbnQgOiBDbHV0dGVyLkV2ZW50IHsK KysJCXB1YmxpYyBkb3VibGUgYXhlczsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuSW5wdXREZXZp Y2UgZGV2aWNlOworKwkJcHVibGljIENsdXR0ZXIuU2Nyb2xsRGlyZWN0aW9uIGRpcmVjdGlvbjsK KysJCXB1YmxpYyBDbHV0dGVyLlNjcm9sbEZpbmlzaEZsYWdzIGZpbmlzaF9mbGFnczsKKysJCXB1 YmxpYyBDbHV0dGVyLkV2ZW50RmxhZ3MgZmxhZ3M7CisrCQlwdWJsaWMgQ2x1dHRlci5Nb2RpZmll clR5cGUgbW9kaWZpZXJfc3RhdGU7CisrCQlwdWJsaWMgQ2x1dHRlci5TY3JvbGxTb3VyY2Ugc2Ny b2xsX3NvdXJjZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuQWN0b3Igc291cmNlOworKwkJcHVi bGljIHdlYWsgQ2x1dHRlci5TdGFnZSBzdGFnZTsKKysJCXB1YmxpYyB1aW50MzIgdGltZTsKKysJ CXB1YmxpYyBDbHV0dGVyLkV2ZW50VHlwZSB0eXBlOworKwkJcHVibGljIGZsb2F0IHg7CisrCQlw dWJsaWMgZmxvYXQgeTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfc2VhdF9nZXRfdHlwZSAoKSIpXQorKwlw dWJsaWMgYWJzdHJhY3QgY2xhc3MgU2VhdCA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFz X2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBTZWF0ICgpOworKwkJ W05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgYXBwbHlfa2JkX2ExMXlfc2V0dGlu Z3MgKENsdXR0ZXIuS2JkQTExeVNldHRpbmdzIHNldHRpbmdzKTsKKysJCXB1YmxpYyB2aXJ0dWFs IHZvaWQgYmVsbF9ub3RpZnkgKCk7CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGNvbXByZXNzX21v dGlvbiAoQ2x1dHRlci5FdmVudCBldmVudCwgQ2x1dHRlci5FdmVudCB0b19kaXNjYXJkKTsKKysJ CVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGNvcHlfZXZlbnRfZGF0YSAoQ2x1 dHRlci5FdmVudCBzcmMsIENsdXR0ZXIuRXZlbnQgZGVzdCk7CisrCQlwdWJsaWMgdmlydHVhbCBD bHV0dGVyLlZpcnR1YWxJbnB1dERldmljZSBjcmVhdGVfdmlydHVhbF9kZXZpY2UgKENsdXR0ZXIu SW5wdXREZXZpY2VUeXBlIGRldmljZV90eXBlKTsKKysJCXB1YmxpYyB2b2lkIGVuc3VyZV9hMTF5 X3N0YXRlICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgZnJlZV9l dmVudF9kYXRhIChDbHV0dGVyLkV2ZW50IGV2ZW50KTsKKysJCXB1YmxpYyB2b2lkIGdldF9rYmRf YTExeV9zZXR0aW5ncyAoQ2x1dHRlci5LYmRBMTF5U2V0dGluZ3Mgc2V0dGluZ3MpOworKwkJcHVi bGljIHZpcnR1YWwgdW5vd25lZCBDbHV0dGVyLklucHV0RGV2aWNlIGdldF9rZXlib2FyZCAoKTsK KysJCXB1YmxpYyB2aXJ0dWFsIHVub3duZWQgQ2x1dHRlci5LZXltYXAgZ2V0X2tleW1hcCAoKTsK KysJCXB1YmxpYyB2aXJ0dWFsIHVub3duZWQgQ2x1dHRlci5JbnB1dERldmljZSBnZXRfcG9pbnRl ciAoKTsKKysJCXB1YmxpYyB2b2lkIGdldF9wb2ludGVyX2ExMXlfc2V0dGluZ3MgKENsdXR0ZXIu UG9pbnRlckExMXlTZXR0aW5ncyBzZXR0aW5ncyk7CisrCQlwdWJsaWMgdmlydHVhbCBDbHV0dGVy LlZpcnR1YWxEZXZpY2VUeXBlIGdldF9zdXBwb3J0ZWRfdmlydHVhbF9kZXZpY2VfdHlwZXMgKCk7 CisrCQlwdWJsaWMgdmlydHVhbCBHTGliLkxpc3Q8d2VhayBDbHV0dGVyLklucHV0RGV2aWNlPiBs aXN0X2RldmljZXMgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfa2JkX2ExMXlfc2V0dGluZ3MgKENs dXR0ZXIuS2JkQTExeVNldHRpbmdzIHNldHRpbmdzKTsKKysJCXB1YmxpYyB2b2lkIHNldF9wb2lu dGVyX2ExMXlfZHdlbGxfY2xpY2tfdHlwZSAoQ2x1dHRlci5Qb2ludGVyQTExeUR3ZWxsQ2xpY2tU eXBlIGNsaWNrX3R5cGUpOworKwkJcHVibGljIHZvaWQgc2V0X3BvaW50ZXJfYTExeV9zZXR0aW5n cyAoQ2x1dHRlci5Qb2ludGVyQTExeVNldHRpbmdzIHNldHRpbmdzKTsKKysJCXB1YmxpYyB2aXJ0 dWFsIHZvaWQgd2FycF9wb2ludGVyIChpbnQgeCwgaW50IHkpOworKwkJW05vQWNjZXNzb3JNZXRo b2RdCisrCQlwdWJsaWMgQ2x1dHRlci5CYWNrZW5kIGJhY2tlbmQgeyBvd25lZCBnZXQ7IGNvbnN0 cnVjdDsgfQorKwkJcHVibGljIHNpZ25hbCB2b2lkIGRldmljZV9hZGRlZCAoQ2x1dHRlci5JbnB1 dERldmljZSBvYmplY3QpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGRldmljZV9yZW1vdmVkIChD bHV0dGVyLklucHV0RGV2aWNlIG9iamVjdCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQga2JkX2Ex MXlfZmxhZ3NfY2hhbmdlZCAodWludCBzZXR0aW5nc19mbGFncywgdWludCBjaGFuZ2VkX21hc2sp OworKwkJcHVibGljIHNpZ25hbCB2b2lkIGtiZF9hMTF5X21vZHNfc3RhdGVfY2hhbmdlZCAodWlu dCBsYXRjaGVkX21hc2ssIHVpbnQgbG9ja2VkX21hc2spOworKwkJcHVibGljIHNpZ25hbCB2b2lk IHB0cl9hMTF5X2R3ZWxsX2NsaWNrX3R5cGVfY2hhbmdlZCAoQ2x1dHRlci5Qb2ludGVyQTExeUR3 ZWxsQ2xpY2tUeXBlIGNsaWNrX3R5cGUpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHB0cl9hMTF5 X3RpbWVvdXRfc3RhcnRlZCAoQ2x1dHRlci5JbnB1dERldmljZSBkZXZpY2UsIENsdXR0ZXIuUG9p bnRlckExMXlUaW1lb3V0VHlwZSB0aW1lb3V0X3R5cGUsIHVpbnQgZGVsYXkpOworKwkJcHVibGlj IHNpZ25hbCB2b2lkIHB0cl9hMTF5X3RpbWVvdXRfc3RvcHBlZCAoQ2x1dHRlci5JbnB1dERldmlj ZSBkZXZpY2UsIENsdXR0ZXIuUG9pbnRlckExMXlUaW1lb3V0VHlwZSB0aW1lb3V0X3R5cGUsIGJv b2wgY2xpY2tlZCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgdG9vbF9jaGFuZ2VkIChDbHV0dGVy LklucHV0RGV2aWNlIG9iamVjdCwgQ2x1dHRlci5JbnB1dERldmljZVRvb2wgcDApOworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQg PSAiY2x1dHRlcl9zZXR0aW5nc19nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAi MS40IildCisrCXB1YmxpYyBjbGFzcyBTZXR0aW5ncyA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29k ZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBTZXR0aW5n cyAoKTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLlNldHRpbmdzIGdldF9kZWZh dWx0ICgpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9 IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjEuNCIpXQorKwkJcHVi bGljIENsdXR0ZXIuQmFja2VuZCBiYWNrZW5kIHsgY29uc3RydWN0OyB9CisrCQlbTm9BY2Nlc3Nv ck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBpbnQgZG5k X2RyYWdfdGhyZXNob2xkIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJ cHVibGljIGludCBkb3VibGVfY2xpY2tfZGlzdGFuY2UgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNj ZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgaW50IGRvdWJsZV9jbGlja190aW1lIHsgZ2V0OyBzZXQ7 IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGludCBmb250X2FudGlhbGlhcyB7 IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBpbnQgZm9udF9k cGkgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgc3RyaW5n IGZvbnRfaGludF9zdHlsZSB7IG93bmVkIGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhv ZF0KKysJCXB1YmxpYyBpbnQgZm9udF9oaW50aW5nIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vz c29yTWV0aG9kXQorKwkJcHVibGljIHN0cmluZyBmb250X25hbWUgeyBvd25lZCBnZXQ7IHNldDsg fQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgc3RyaW5nIGZvbnRfc3VicGl4ZWxf b3JkZXIgeyBvd25lZCBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJs aWMgdWludCBmb250Y29uZmlnX3RpbWVzdGFtcCB7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRo b2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgaW50IGxvbmdfcHJl c3NfZHVyYXRpb24geyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJs aWMgdWludCBwYXNzd29yZF9oaW50X3RpbWUgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JN ZXRob2RdCisrCQlwdWJsaWMgaW50IHVuc2NhbGVkX2ZvbnRfZHBpIHsgc2V0OyB9CisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVf aWQgPSBmYWxzZSldCisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3MgU2hhZGVyIHsKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lk ID0gImNsdXR0ZXJfc2hhZGVyX2VmZmVjdF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMS40IildCisrCXB1YmxpYyBjbGFzcyBTaGFkZXJFZmZlY3QgOiBDbHV0dGVyLk9mZnNj cmVlbkVmZmVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwg dHlwZSA9ICJDbHV0dGVyRWZmZWN0KiIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQor KwkJcHVibGljIFNoYWRlckVmZmVjdCAoQ2x1dHRlci5TaGFkZXJUeXBlIHNoYWRlcl90eXBlKTsK KysJCXB1YmxpYyB1bm93bmVkIENvZ2wuSGFuZGxlIGdldF9wcm9ncmFtICgpOworKwkJcHVibGlj IHVub3duZWQgQ29nbC5IYW5kbGUgZ2V0X3NoYWRlciAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlw dWJsaWMgdmlydHVhbCBzdHJpbmcgZ2V0X3N0YXRpY19zaGFkZXJfc291cmNlICgpOworKwkJcHVi bGljIGJvb2wgc2V0X3NoYWRlcl9zb3VyY2UgKHN0cmluZyBzb3VyY2UpOworKwkJcHVibGljIHZv aWQgc2V0X3VuaWZvcm1fdmFsdWUgKHN0cmluZyBuYW1lLCBHTGliLlZhbHVlIHZhbHVlKTsKKysJ CVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIENsdXR0ZXIuU2hhZGVyVHlwZSBzaGFkZXJf dHlwZSB7IGNvbnN0cnVjdDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zaGFkZXJfZmxvYXRfZ2V0X3R5 cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFNoYWRlckZsb2F0IHsKKysJCVtDQ29kZSAoaGFzX2Nv bnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBTaGFkZXJGbG9hdCAoKTsK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0 eXBlX2lkID0gImNsdXR0ZXJfc2hhZGVyX2ludF9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xh c3MgU2hhZGVySW50IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNl KV0KKysJCXByb3RlY3RlZCBTaGFkZXJJbnQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3NoYWRlcl9t YXRyaXhfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFNoYWRlck1hdHJpeCB7CisrCQlb Q0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgU2hh ZGVyTWF0cml4ICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zbmFwX2NvbnN0cmFpbnRfZ2V0X3R5cGUg KCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwlwdWJsaWMgY2xhc3MgU25hcENv bnN0cmFpbnQgOiBDbHV0dGVyLkNvbnN0cmFpbnQgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0 X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckNvbnN0cmFpbnQqIildCisrCQlwdWJs aWMgU25hcENvbnN0cmFpbnQgKENsdXR0ZXIuQWN0b3I/IHNvdXJjZSwgQ2x1dHRlci5TbmFwRWRn ZSBmcm9tX2VkZ2UsIENsdXR0ZXIuU25hcEVkZ2UgdG9fZWRnZSwgZmxvYXQgb2Zmc2V0KTsKKysJ CXB1YmxpYyB2b2lkIGdldF9lZGdlcyAob3V0IENsdXR0ZXIuU25hcEVkZ2UgZnJvbV9lZGdlLCBv dXQgQ2x1dHRlci5TbmFwRWRnZSB0b19lZGdlKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfb2Zmc2V0 ICgpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfc291cmNlICgpOworKwkJ cHVibGljIHZvaWQgc2V0X2VkZ2VzIChDbHV0dGVyLlNuYXBFZGdlIGZyb21fZWRnZSwgQ2x1dHRl ci5TbmFwRWRnZSB0b19lZGdlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9vZmZzZXQgKGZsb2F0IG9m ZnNldCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfc291cmNlIChDbHV0dGVyLkFjdG9yPyBzb3VyY2Up OworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgQ2x1dHRlci5TbmFwRWRnZSBmcm9t X2VkZ2UgeyBnZXQ7IHNldCBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBmbG9hdCBvZmZzZXQgeyBn ZXQ7IHNldCBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBDbHV0dGVyLkFjdG9yIHNvdXJjZSB7IGdl dDsgc2V0IGNvbnN0cnVjdDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgQ2x1 dHRlci5TbmFwRWRnZSB0b19lZGdlIHsgZ2V0OyBzZXQgY29uc3RydWN0OyB9CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJj bHV0dGVyX3N0YWdlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0K KysJcHVibGljIGNsYXNzIFN0YWdlIDogQ2x1dHRlci5Hcm91cCwgQXRrLkltcGxlbWVudG9yLCBD bHV0dGVyLkFuaW1hdGFibGUsIENsdXR0ZXIuQ29udGFpbmVyLCBDbHV0dGVyLlNjcmlwdGFibGUg eworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1 dHRlckFjdG9yKiIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIFN0 YWdlICgpOworKwkJcHVibGljIGJvb2wgY2FwdHVyZSAoYm9vbCBwYWludCwgQ2Fpcm8uUmVjdGFu Z2xlSW50IHJlY3QsIENsdXR0ZXIuQ2FwdHVyZSBjYXB0dXJlcywgaW50IG5fY2FwdHVyZXMpOwor KwkJcHVibGljIHZvaWQgY2FwdHVyZV9pbnRvIChib29sIHBhaW50LCBDYWlyby5SZWN0YW5nbGVJ bnQgcmVjdCwgdWludDggZGF0YSk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfc3RhZ2Vf ZXZlbnQiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJCXB1YmxpYyBib29sIGVt aXRfZXZlbnQgKENsdXR0ZXIuRXZlbnQgZXZlbnQpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQg PSB0cnVlLCBzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2b2lkIGVuc3VyZV9jdXJyZW50ICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgZW5zdXJlX3Jl ZHJhdyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIGVu c3VyZV92aWV3cG9ydCAoKTsKKysJCXB1YmxpYyB2b2lkIGZyZWV6ZV91cGRhdGVzICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIGJvb2wgZ2V0X2FjY2VwdF9mb2N1 cyAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X2FjdG9yX2F0X3BvcyAo Q2x1dHRlci5QaWNrTW9kZSBwaWNrX21vZGUsIGZsb2F0IHgsIGZsb2F0IHkpOworKwkJcHVibGlj IGJvb2wgZ2V0X2NhcHR1cmVfZmluYWxfc2l6ZSAoQ2Fpcm8uUmVjdGFuZ2xlSW50IHJlY3QsIGlu dCB3aWR0aCwgaW50IGhlaWdodCwgZmxvYXQgc2NhbGUpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0 ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVy LkNvbG9yIGdldF9jb2xvciAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVw cmVjYXRlZF9zaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgQ2x1dHRl ci5TdGFnZSBnZXRfZGVmYXVsdCAoKTsKKysJCXB1YmxpYyBpbnQ2NCBnZXRfZnJhbWVfY291bnRl ciAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB1bm93bmVkIENs dXR0ZXIuQWN0b3IgZ2V0X2tleV9mb2N1cyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIi KV0KKysJCXB1YmxpYyB2b2lkIGdldF9taW5pbXVtX3NpemUgKG91dCB1aW50IHdpZHRoLCBvdXQg dWludCBoZWlnaHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIGJv b2wgZ2V0X21vdGlvbl9ldmVudHNfZW5hYmxlZCAoKTsKKysJCXB1YmxpYyBDbHV0dGVyLlBlcnNw ZWN0aXZlIGdldF9wZXJzcGVjdGl2ZSAoKTsKKysJCXB1YmxpYyBDYWlyby5SZWdpb24gZ2V0X3Jl ZHJhd19jbGlwICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGJv b2wgZ2V0X3Rocm90dGxlX21vdGlvbl9ldmVudHMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MC40IildCisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X3RpdGxlICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIGJvb2wgZ2V0X3VzZV9hbHBoYSAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJCXB1YmxpYyB2b2lkIGhpZGVfY3Vyc29yICgp OworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEu MTAiLCBzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBib29sIGlzX2RlZmF1bHQgKCk7CisrCQlb VmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNp bmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZvaWQgcXVldWVfcmVkcmF3ICgpOworKwkJW0NDb2Rl IChhcnJheV9sZW5ndGggPSBmYWxzZSldCisrCQlwdWJsaWMgdWludDhbXSByZWFkX3BpeGVscyAo aW50IHgsIGludCB5LCBpbnQgd2lkdGggPSAtMSwgaW50IGhlaWdodCA9IC0xKTsKKysJCVtDQ29k ZSAoY25hbWUgPSAiY2x1dHRlcl9yZWRyYXciKV0KKysJCXB1YmxpYyB2b2lkIHJlZHJhdyAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9hY2NlcHRf Zm9jdXMgKGJvb2wgYWNjZXB0X2ZvY3VzKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1 ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfY29sb3Ig KENsdXR0ZXIuQ29sb3IgY29sb3IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJ cHVibGljIHZvaWQgc2V0X2tleV9mb2N1cyAoQ2x1dHRlci5BY3Rvcj8gYWN0b3IpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X21pbmltdW1fc2l6ZSAo dWludCB3aWR0aCwgdWludCBoZWlnaHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQor KwkJcHVibGljIHZvaWQgc2V0X21vdGlvbl9ldmVudHNfZW5hYmxlZCAoYm9vbCBlbmFibGVkKTsK KysJCXB1YmxpYyB2b2lkIHNldF9wZXJzcGVjdGl2ZSAoQ2x1dHRlci5QZXJzcGVjdGl2ZSBwZXJz cGVjdGl2ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCBz ZXRfdGhyb3R0bGVfbW90aW9uX2V2ZW50cyAoYm9vbCB0aHJvdHRsZSk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMC40IildCisrCQlwdWJsaWMgdm9pZCBzZXRfdGl0bGUgKHN0cmluZyB0aXRsZSk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBzZXRfdXNlX2Fs cGhhIChib29sIHVzZV9hbHBoYSk7CisrCQlwdWJsaWMgdm9pZCBzaG93X2N1cnNvciAoKTsKKysJ CXB1YmxpYyB2b2lkIHRoYXdfdXBkYXRlcyAoKTsKKysJCXB1YmxpYyB2b2lkIHVwZGF0ZV9yZXNv dXJjZV9zY2FsZXMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMg Ym9vbCBhY2NlcHRfZm9jdXMgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQg PSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkNv bG9yIGNvbG9yIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGlj IGJvb2wgY3Vyc29yX3Zpc2libGUgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMiIpXQorKwkJcHVibGljIENsdXR0ZXIuQWN0b3Iga2V5X2ZvY3VzIHsgZ2V0OyBzZXQ7IH0K KysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBDbHV0dGVyLlBlcnNwZWN0 aXZlIHBlcnNwZWN0aXZlIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQi KV0KKysJCXB1YmxpYyBzdHJpbmcgdGl0bGUgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMiIpXQorKwkJcHVibGljIGJvb2wgdXNlX2FscGhhIHsgZ2V0OyBzZXQ7IH0KKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lk IGFjdGl2YXRlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjAiKV0KKysJCXB1YmxpYyBz aWduYWwgdm9pZCBhZnRlcl9wYWludCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0K KysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGRlYWN0aXZhdGUgKCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCBkZWxldGVf ZXZlbnQgKENsdXR0ZXIuRXZlbnQgZXZlbnQpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZv aWQgcGFpbnRfdmlldyAoQ2x1dHRlci5TdGFnZVZpZXcgdmlldyk7CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVy X3N0YWdlX21hbmFnZXJfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIp XQorKwlwdWJsaWMgY2xhc3MgU3RhZ2VNYW5hZ2VyIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2Rl IChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFN0YWdlTWFu YWdlciAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBzdGF0aWMg dW5vd25lZCBDbHV0dGVyLlN0YWdlTWFuYWdlciBnZXRfZGVmYXVsdCAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuU3RhZ2UgZ2V0X2Rl ZmF1bHRfc3RhZ2UgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMg R0xpYi5TTGlzdDx3ZWFrIENsdXR0ZXIuU3RhZ2U+IGxpc3Rfc3RhZ2VzICgpOworKwkJcHVibGlj IHVub3duZWQgR0xpYi5TTGlzdDxDbHV0dGVyLlN0YWdlPiBwZWVrX3N0YWdlcyAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBDbHV0dGVyLlN0YWdlIGRlZmF1bHRf c3RhZ2UgeyBnZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2 aXJ0dWFsIHNpZ25hbCB2b2lkIHN0YWdlX2FkZGVkIChDbHV0dGVyLlN0YWdlIHN0YWdlKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lk IHN0YWdlX3JlbW92ZWQgKENsdXR0ZXIuU3RhZ2Ugc3RhZ2UpOworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGhhc190eXBlX2lkID0gZmFsc2Up XQorKwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwlwdWJsaWMgY2xh c3MgU3RhZ2VTdGF0ZUV2ZW50IDogQ2x1dHRlci5FdmVudCB7CisrCQlwdWJsaWMgQ2x1dHRlci5T dGFnZVN0YXRlIGNoYW5nZWRfbWFzazsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50RmxhZ3MgZmxh Z3M7CisrCQlwdWJsaWMgQ2x1dHRlci5TdGFnZVN0YXRlIG5ld19zdGF0ZTsKKysJCXB1YmxpYyB3 ZWFrIENsdXR0ZXIuQWN0b3Igc291cmNlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5TdGFnZSBz dGFnZTsKKysJCXB1YmxpYyB1aW50MzIgdGltZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50VHlw ZSB0eXBlOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zdGFnZV92aWV3X2dldF90eXBlICgpIildCisrCXB1 YmxpYyBjbGFzcyBTdGFnZVZpZXcgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25z dHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgU3RhZ2VWaWV3ICgpOworKwkJ cHVibGljIHVub3duZWQgQ29nbC5GcmFtZWJ1ZmZlciBnZXRfZnJhbWVidWZmZXIgKCk7CisrCQlw dWJsaWMgdm9pZCBnZXRfbGF5b3V0IChDYWlyby5SZWN0YW5nbGVJbnQgcmVjdCk7CisrCQlwdWJs aWMgdmlydHVhbCB2b2lkIGdldF9vZmZzY3JlZW5fdHJhbnNmb3JtYXRpb25fbWF0cml4IChDb2ds Lk1hdHJpeCBtYXRyaXgpOworKwkJcHVibGljIHVub3duZWQgQ29nbC5GcmFtZWJ1ZmZlciBnZXRf b25zY3JlZW4gKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X3NjYWxlICgpOworKwkJcHVibGljIHZv aWQgaW52YWxpZGF0ZV9vZmZzY3JlZW5fYmxpdF9waXBlbGluZSAoKTsKKysJCVtOb1dyYXBwZXJd CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHNldHVwX29mZnNjcmVlbl9ibGl0X3BpcGVsaW5lIChD b2dsLlBpcGVsaW5lIHBpcGVsaW5lKTsKKysJCXB1YmxpYyB2b2lkIHRyYW5zZm9ybV90b19vbnNj cmVlbiAoZmxvYXQgeCwgZmxvYXQgeSk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1Ymxp YyBDYWlyby5SZWN0YW5nbGVJbnQgbGF5b3V0IHsgb3duZWQgZ2V0OyBzZXQgY29uc3RydWN0OyB9 CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBmbG9hdCBzY2FsZSB7IGdldDsgc2V0 IGNvbnN0cnVjdDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zdGF0ZV9nZXRfdHlwZSAoKSIpXQorKwlb VmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBjbGFzcyBTdGF0ZSA6IEdMaWIuT2Jq ZWN0LCBDbHV0dGVyLlNjcmlwdGFibGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0 aW9uID0gZmFsc2UpXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVk X3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBTdGF0ZSAoKTsKKysJ CVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwg c2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdWludCBnZXRfZHVyYXRpb24gKHN0cmluZz8gc291 cmNlX3N0YXRlX25hbWUsIHN0cmluZz8gdGFyZ2V0X3N0YXRlX25hbWUpOworKwkJW1ZlcnNpb24g KGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIx LjQiKV0KKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfc3RhdGUgKCk7CisrCQlbVmVyc2lv biAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0g IjEuNCIpXQorKwkJcHVibGljIEdMaWIuTGlzdDx3ZWFrIHN0cmluZz4gZ2V0X3N0YXRlcyAoKTsK KysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEy Iiwgc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBzZXRfZHVyYXRpb24gKHN0cmluZz8g c291cmNlX3N0YXRlX25hbWUsIHN0cmluZz8gdGFyZ2V0X3N0YXRlX25hbWUsIHVpbnQgZHVyYXRp b24pOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0g IjEuMTIiLCBzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuU3RhdGUg c2V0X2tleSAoc3RyaW5nPyBzb3VyY2Vfc3RhdGVfbmFtZSwgc3RyaW5nIHRhcmdldF9zdGF0ZV9u YW1lLCBHTGliLk9iamVjdCBvYmplY3QsIHN0cmluZyBwcm9wZXJ0eV9uYW1lLCB1aW50IG1vZGUs IEdMaWIuVmFsdWUgdmFsdWUsIGRvdWJsZSBwcmVfZGVsYXksIGRvdWJsZSBwb3N0X2RlbGF5KTsK KysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEy Iiwgc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLlRpbWVsaW5lIHNl dF9zdGF0ZSAoc3RyaW5nIHRhcmdldF9zdGF0ZV9uYW1lKTsKKysJCVtWZXJzaW9uIChkZXByZWNh dGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS40IildCisr CQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLlRpbWVsaW5lIHdhcnBfdG9fc3RhdGUgKHN0cmluZyB0 YXJnZXRfc3RhdGVfbmFtZSk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChk ZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS40 IildCisrCQlwdWJsaWMgdWludCBkdXJhdGlvbiB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nv ck1ldGhvZF0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5j ZSA9ICIxLjEyIiwgc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgc3RyaW5nIHN0YXRlIHsgb3du ZWQgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRl ZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWdu YWwgdm9pZCBjb21wbGV0ZWQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY29weV9mdW5jdGlvbiA9ICJnX2JveGVkX2NvcHkiLCBmcmVl X2Z1bmN0aW9uID0gImdfYm94ZWRfZnJlZSIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zdGF0ZV9rZXlf Z2V0X3R5cGUgKCkiKV0KKysJW0NvbXBhY3RdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0K KysJcHVibGljIGNsYXNzIFN0YXRlS2V5IHsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1 ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMg R0xpYi5UeXBlIGdldF9wcm9wZXJ0eV90eXBlICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zd2lwZV9h Y3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwlwdWJs aWMgY2xhc3MgU3dpcGVBY3Rpb24gOiBDbHV0dGVyLkdlc3R1cmVBY3Rpb24geworKwkJW0NDb2Rl IChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFjdGlvbioi KV0KKysJCXB1YmxpYyBTd2lwZUFjdGlvbiAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0g dHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE0Iiwgc2luY2UgPSAiMS44IildCisrCQlwdWJs aWMgdmlydHVhbCBzaWduYWwgdm9pZCBzd2VwdCAoQ2x1dHRlci5BY3RvciBhY3RvciwgQ2x1dHRl ci5Td2lwZURpcmVjdGlvbiBkaXJlY3Rpb24pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTQi KV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCBib29sIHN3aXBlIChDbHV0dGVyLkFjdG9yIGFj dG9yLCBDbHV0dGVyLlN3aXBlRGlyZWN0aW9uIGRpcmVjdGlvbik7CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVy X3RhcF9hY3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTQiKV0K KysJcHVibGljIGNsYXNzIFRhcEFjdGlvbiA6IENsdXR0ZXIuR2VzdHVyZUFjdGlvbiB7CisrCQlb Q0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0 aW9uKiIpXQorKwkJcHVibGljIFRhcEFjdGlvbiAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25h bCB2b2lkIHRhcCAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3RleHRf Z2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgY2xh c3MgVGV4dCA6IENsdXR0ZXIuQWN0b3IsIEF0ay5JbXBsZW1lbnRvciwgQ2x1dHRlci5BbmltYXRh YmxlLCBDbHV0dGVyLkNvbnRhaW5lciwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAo aGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3RvcioiKV0K KysJCXB1YmxpYyBUZXh0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1 YmxpYyBpbnQgY29vcmRzX3RvX3Bvc2l0aW9uIChmbG9hdCB4LCBmbG9hdCB5KTsKKysJCXB1Ymxp YyB2b2lkIGRlbGV0ZV9jaGFycyAodWludCBuX2NoYXJzKTsKKysJCXB1YmxpYyBib29sIGRlbGV0 ZV9zZWxlY3Rpb24gKCk7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxz ZSwgdHlwZSA9ICJDbHV0dGVyQWN0b3IqIildCisrCQlwdWJsaWMgVGV4dC5mdWxsIChzdHJpbmcg Zm9udF9uYW1lLCBzdHJpbmcgdGV4dCwgQ2x1dHRlci5Db2xvciBjb2xvcik7CisrCQlwdWJsaWMg Ym9vbCBnZXRfYWN0aXZhdGFibGUgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBQYW5nby5BdHRyTGlz dCBnZXRfYXR0cmlidXRlcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlw dWJsaWMgdW5vd25lZCBDbHV0dGVyLlRleHRCdWZmZXIgZ2V0X2J1ZmZlciAoKTsKKysJCXB1Ymxp YyBzdHJpbmcgZ2V0X2NoYXJzIChzc2l6ZV90IHN0YXJ0X3Bvcywgc3NpemVfdCBlbmRfcG9zKTsK KysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIGdldF9jb2xvciAoKTsKKysJCXB1YmxpYyBDbHV0dGVy LkNvbG9yIGdldF9jdXJzb3JfY29sb3IgKCk7CisrCQlwdWJsaWMgaW50IGdldF9jdXJzb3JfcG9z aXRpb24gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNiIpXQorKwkJcHVibGljIHZvaWQg Z2V0X2N1cnNvcl9yZWN0IChvdXQgdW5vd25lZCBHcmFwaGVuZS5SZWN0IHJlY3QpOworKwkJcHVi bGljIHVpbnQgZ2V0X2N1cnNvcl9zaXplICgpOworKwkJcHVibGljIGJvb2wgZ2V0X2N1cnNvcl92 aXNpYmxlICgpOworKwkJcHVibGljIGJvb2wgZ2V0X2VkaXRhYmxlICgpOworKwkJcHVibGljIFBh bmdvLkVsbGlwc2l6ZU1vZGUgZ2V0X2VsbGlwc2l6ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjIiKV0KKysJCXB1YmxpYyBQYW5nby5Gb250RGVzY3JpcHRpb24gZ2V0X2ZvbnRfZGVzY3Jp cHRpb24gKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X2ZvbnRfbmFtZSAoKTsKKysJ CXB1YmxpYyBDbHV0dGVyLklucHV0Q29udGVudEhpbnRGbGFncyBnZXRfaW5wdXRfaGludHMgKCk7 CisrCQlwdWJsaWMgQ2x1dHRlci5JbnB1dENvbnRlbnRQdXJwb3NlIGdldF9pbnB1dF9wdXJwb3Nl ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIGJvb2wgZ2V0X2p1 c3RpZnkgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBQYW5nby5MYXlvdXQgZ2V0X2xheW91dCAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9sYXlvdXRf b2Zmc2V0cyAob3V0IGludCB4LCBvdXQgaW50IHkpOworKwkJcHVibGljIFBhbmdvLkFsaWdubWVu dCBnZXRfbGluZV9hbGlnbm1lbnQgKCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfbGluZV93cmFwICgp OworKwkJcHVibGljIFBhbmdvLldyYXBNb2RlIGdldF9saW5lX3dyYXBfbW9kZSAoKTsKKysJCXB1 YmxpYyBpbnQgZ2V0X21heF9sZW5ndGggKCk7CisrCQlwdWJsaWMgdW5pY2hhciBnZXRfcGFzc3dv cmRfY2hhciAoKTsKKysJCXB1YmxpYyBib29sIGdldF9zZWxlY3RhYmxlICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIENsdXR0ZXIuQ29sb3IgZ2V0X3NlbGVjdGVk X3RleHRfY29sb3IgKCk7CisrCQlwdWJsaWMgc3RyaW5nIGdldF9zZWxlY3Rpb24gKCk7CisrCQlw dWJsaWMgaW50IGdldF9zZWxlY3Rpb25fYm91bmQgKCk7CisrCQlwdWJsaWMgQ2x1dHRlci5Db2xv ciBnZXRfc2VsZWN0aW9uX2NvbG9yICgpOworKwkJcHVibGljIGJvb2wgZ2V0X3NpbmdsZV9saW5l X21vZGUgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X3RleHQgKCk7CisrCQlwdWJs aWMgYm9vbCBnZXRfdXNlX21hcmt1cCAoKTsKKysJCXB1YmxpYyBib29sIGhhc19wcmVlZGl0ICgp OworKwkJcHVibGljIHZvaWQgaW5zZXJ0X3RleHQgKHN0cmluZyB0ZXh0LCBzc2l6ZV90IHBvc2l0 aW9uKTsKKysJCXB1YmxpYyB2b2lkIGluc2VydF91bmljaGFyICh1bmljaGFyIHdjKTsKKysJCXB1 YmxpYyBib29sIHBvc2l0aW9uX3RvX2Nvb3JkcyAoaW50IHBvc2l0aW9uLCBvdXQgZmxvYXQgeCwg b3V0IGZsb2F0IHksIG91dCBmbG9hdCBsaW5lX2hlaWdodCA9IG51bGwpOworKwkJcHVibGljIHZv aWQgc2V0X2FjdGl2YXRhYmxlIChib29sIGFjdGl2YXRhYmxlKTsKKysJCXB1YmxpYyB2b2lkIHNl dF9hdHRyaWJ1dGVzIChQYW5nby5BdHRyTGlzdD8gYXR0cnMpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9idWZmZXIgKENsdXR0ZXIuVGV4dEJ1ZmZl ciBidWZmZXIpOworKwkJcHVibGljIHZvaWQgc2V0X2NvbG9yIChDbHV0dGVyLkNvbG9yIGNvbG9y KTsKKysJCXB1YmxpYyB2b2lkIHNldF9jdXJzb3JfY29sb3IgKENsdXR0ZXIuQ29sb3I/IGNvbG9y KTsKKysJCXB1YmxpYyB2b2lkIHNldF9jdXJzb3JfcG9zaXRpb24gKGludCBwb3NpdGlvbik7Cisr CQlwdWJsaWMgdm9pZCBzZXRfY3Vyc29yX3NpemUgKGludCBzaXplKTsKKysJCXB1YmxpYyB2b2lk IHNldF9jdXJzb3JfdmlzaWJsZSAoYm9vbCBjdXJzb3JfdmlzaWJsZSk7CisrCQlwdWJsaWMgdm9p ZCBzZXRfZWRpdGFibGUgKGJvb2wgZWRpdGFibGUpOworKwkJcHVibGljIHZvaWQgc2V0X2VsbGlw c2l6ZSAoUGFuZ28uRWxsaXBzaXplTW9kZSBtb2RlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9mb250X2Rlc2NyaXB0aW9uIChQYW5nby5Gb250RGVz Y3JpcHRpb24gZm9udF9kZXNjKTsKKysJCXB1YmxpYyB2b2lkIHNldF9mb250X25hbWUgKHN0cmlu Zz8gZm9udF9uYW1lKTsKKysJCXB1YmxpYyB2b2lkIHNldF9pbnB1dF9oaW50cyAoQ2x1dHRlci5J bnB1dENvbnRlbnRIaW50RmxhZ3MgaGludHMpOworKwkJcHVibGljIHZvaWQgc2V0X2lucHV0X3B1 cnBvc2UgKENsdXR0ZXIuSW5wdXRDb250ZW50UHVycG9zZSBwdXJwb3NlKTsKKysJCXB1YmxpYyB2 b2lkIHNldF9qdXN0aWZ5IChib29sIGp1c3RpZnkpOworKwkJcHVibGljIHZvaWQgc2V0X2xpbmVf YWxpZ25tZW50IChQYW5nby5BbGlnbm1lbnQgYWxpZ25tZW50KTsKKysJCXB1YmxpYyB2b2lkIHNl dF9saW5lX3dyYXAgKGJvb2wgbGluZV93cmFwKTsKKysJCXB1YmxpYyB2b2lkIHNldF9saW5lX3dy YXBfbW9kZSAoUGFuZ28uV3JhcE1vZGUgd3JhcF9tb2RlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9t YXJrdXAgKHN0cmluZz8gbWFya3VwKTsKKysJCXB1YmxpYyB2b2lkIHNldF9tYXhfbGVuZ3RoIChp bnQgbWF4KTsKKysJCXB1YmxpYyB2b2lkIHNldF9wYXNzd29yZF9jaGFyICh1bmljaGFyIHdjKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9wcmVlZGl0 X3N0cmluZyAoc3RyaW5nPyBwcmVlZGl0X3N0ciwgUGFuZ28uQXR0ckxpc3Q/IHByZWVkaXRfYXR0 cnMsIHVpbnQgY3Vyc29yX3Bvcyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfc2VsZWN0YWJsZSAoYm9v bCBzZWxlY3RhYmxlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2 b2lkIHNldF9zZWxlY3RlZF90ZXh0X2NvbG9yIChDbHV0dGVyLkNvbG9yPyBjb2xvcik7CisrCQlw dWJsaWMgdm9pZCBzZXRfc2VsZWN0aW9uIChzc2l6ZV90IHN0YXJ0X3Bvcywgc3NpemVfdCBlbmRf cG9zKTsKKysJCXB1YmxpYyB2b2lkIHNldF9zZWxlY3Rpb25fYm91bmQgKGludCBzZWxlY3Rpb25f Ym91bmQpOworKwkJcHVibGljIHZvaWQgc2V0X3NlbGVjdGlvbl9jb2xvciAoQ2x1dHRlci5Db2xv cj8gY29sb3IpOworKwkJcHVibGljIHZvaWQgc2V0X3NpbmdsZV9saW5lX21vZGUgKGJvb2wgc2lu Z2xlX2xpbmUpOworKwkJcHVibGljIHZvaWQgc2V0X3RleHQgKHN0cmluZz8gdGV4dCk7CisrCQlw dWJsaWMgdm9pZCBzZXRfdXNlX21hcmt1cCAoYm9vbCBzZXR0aW5nKTsKKysJCVtDQ29kZSAoY25h bWUgPSAiY2x1dHRlcl90ZXh0X2FjdGl2YXRlIildCisrCQlwdWJsaWMgYm9vbCB0cnlfYWN0aXZh dGUgKCk7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9 ICJDbHV0dGVyQWN0b3IqIildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVi bGljIFRleHQud2l0aF9idWZmZXIgKENsdXR0ZXIuVGV4dEJ1ZmZlciBidWZmZXIpOworKwkJW0ND b2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFjdG9y KiIpXQorKwkJcHVibGljIFRleHQud2l0aF90ZXh0IChzdHJpbmc/IGZvbnRfbmFtZSwgc3RyaW5n IHRleHQpOworKwkJcHVibGljIGJvb2wgYWN0aXZhdGFibGUgeyBnZXQ7IHNldDsgfQorKwkJcHVi bGljIFBhbmdvLkF0dHJMaXN0IGF0dHJpYnV0ZXMgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIENsdXR0ZXIuVGV4dEJ1ZmZlciBidWZmZXIgeyBn ZXQ7IHNldDsgfQorKwkJcHVibGljIENsdXR0ZXIuQ29sb3IgY29sb3IgeyBnZXQ7IHNldDsgfQor KwkJcHVibGljIENsdXR0ZXIuQ29sb3IgY3Vyc29yX2NvbG9yIHsgZ2V0OyBzZXQ7IH0KKysJCVtO b0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wgY3Vyc29yX2NvbG9yX3NldCB7IGdldDsg fQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBpbnQgY3Vyc29yX3Bv c2l0aW9uIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBpbnQgY3Vyc29yX3NpemUgeyBnZXQ7IHNl dDsgfQorKwkJcHVibGljIGJvb2wgY3Vyc29yX3Zpc2libGUgeyBnZXQ7IHNldDsgfQorKwkJcHVi bGljIGJvb2wgZWRpdGFibGUgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIFBhbmdvLkVsbGlwc2l6 ZU1vZGUgZWxsaXBzaXplIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIi KV0KKysJCXB1YmxpYyBQYW5nby5Gb250RGVzY3JpcHRpb24gZm9udF9kZXNjcmlwdGlvbiB7IG93 bmVkIGdldDsgc2V0OyB9CisrCQlwdWJsaWMgc3RyaW5nIGZvbnRfbmFtZSB7IGdldDsgc2V0OyB9 CisrCQlwdWJsaWMgQ2x1dHRlci5JbnB1dENvbnRlbnRIaW50RmxhZ3MgaW5wdXRfaGludHMgeyBn ZXQ7IHNldDsgfQorKwkJcHVibGljIENsdXR0ZXIuSW5wdXRDb250ZW50UHVycG9zZSBpbnB1dF9w dXJwb3NlIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBib29sIGp1c3RpZnkgeyBnZXQ7IHNldDsg fQorKwkJcHVibGljIFBhbmdvLkFsaWdubWVudCBsaW5lX2FsaWdubWVudCB7IGdldDsgc2V0OyB9 CisrCQlwdWJsaWMgYm9vbCBsaW5lX3dyYXAgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIFBhbmdv LldyYXBNb2RlIGxpbmVfd3JhcF9tb2RlIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBpbnQgbWF4 X2xlbmd0aCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgdWludCBwYXNzd29yZF9jaGFyIHsgZ2V0 OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQg PSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyBpbnQgcG9zaXRpb24geyBnZXQ7IHNldDsgfQorKwkJcHVibGljIGJvb2wgc2VsZWN0YWJs ZSB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMg Q2x1dHRlci5Db2xvciBzZWxlY3RlZF90ZXh0X2NvbG9yIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0Fj Y2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIGJv b2wgc2VsZWN0ZWRfdGV4dF9jb2xvcl9zZXQgeyBnZXQ7IH0KKysJCXB1YmxpYyBpbnQgc2VsZWN0 aW9uX2JvdW5kIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIHNlbGVjdGlv bl9jb2xvciB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBi b29sIHNlbGVjdGlvbl9jb2xvcl9zZXQgeyBnZXQ7IH0KKysJCXB1YmxpYyBib29sIHNpbmdsZV9s aW5lX21vZGUgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIHN0cmluZyB0ZXh0IHsgZ2V0OyBzZXQ7 IH0KKysJCXB1YmxpYyBib29sIHVzZV9tYXJrdXAgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIHZp cnR1YWwgc2lnbmFsIHZvaWQgYWN0aXZhdGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x NiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgY3Vyc29yX2NoYW5nZWQgKCk7Cisr CQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIs IHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgY3Vyc29yX2V2 ZW50IChHcmFwaGVuZS5SZWN0IHJlY3QpOworKwkJW0hhc0VtaXR0ZXJdCisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgZGVsZXRlX3RleHQgKGludCBz dGFydF9wb3MsIGludCBlbmRfcG9zKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIHRl eHRfY2hhbmdlZCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfdGV4dF9idWZmZXJfZ2V0X3R5cGUgKCki KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGNsYXNzIFRleHRCdWZm ZXIgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBm YWxzZSldCisrCQlwdWJsaWMgVGV4dEJ1ZmZlciAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHVpbnQg ZGVsZXRlX3RleHQgKHVpbnQgcG9zaXRpb24sIHVpbnQgbl9jaGFycyk7CisrCQlwdWJsaWMgdm9p ZCBlbWl0X2RlbGV0ZWRfdGV4dCAodWludCBwb3NpdGlvbiwgdWludCBuX2NoYXJzKTsKKysJCXB1 YmxpYyB2b2lkIGVtaXRfaW5zZXJ0ZWRfdGV4dCAodWludCBwb3NpdGlvbiwgc3RyaW5nIGNoYXJz LCB1aW50IG5fY2hhcnMpOworKwkJcHVibGljIHNpemVfdCBnZXRfYnl0ZXMgKCk7CisrCQlwdWJs aWMgdmlydHVhbCB1aW50IGdldF9sZW5ndGggKCk7CisrCQlwdWJsaWMgaW50IGdldF9tYXhfbGVu Z3RoICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF90ZXh0ICgpOworKwkJW0NDb2Rl ICh2ZnVuY19uYW1lID0gImdldF90ZXh0IildCisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZp cnR1YWwgdW5vd25lZCBzdHJpbmcgZ2V0X3RleHRfd2l0aF9sZW5ndGggKHNpemVfdCBuX2J5dGVz KTsKKysJCXB1YmxpYyB2aXJ0dWFsIHVpbnQgaW5zZXJ0X3RleHQgKHVpbnQgcG9zaXRpb24sIHN0 cmluZyBjaGFycywgdWludCBuX2NoYXJzKTsKKysJCXB1YmxpYyB2b2lkIHNldF9tYXhfbGVuZ3Ro IChpbnQgbWF4X2xlbmd0aCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfdGV4dCAoc3RyaW5nIGNoYXJz LCBpbnQgbl9jaGFycyk7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxz ZSldCisrCQlwdWJsaWMgVGV4dEJ1ZmZlci53aXRoX3RleHQgKHN0cmluZz8gdGV4dCwgc3NpemVf dCB0ZXh0X2xlbik7CisrCQlwdWJsaWMgdWludCBsZW5ndGggeyBnZXQ7IH0KKysJCXB1YmxpYyBp bnQgbWF4X2xlbmd0aCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgc3RyaW5nIHRleHQgeyBnZXQ7 IH0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGRlbGV0ZWRfdGV4dCAodWludCBwb3Np dGlvbiwgdWludCBuX2NoYXJzKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGluc2Vy dGVkX3RleHQgKHVpbnQgcG9zaXRpb24sIHN0cmluZyBjaGFycywgdWludCBuX2NoYXJzKTsKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBl X2lkID0gImNsdXR0ZXJfdGV4dF9ub2RlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEwIildCisrCXB1YmxpYyBjbGFzcyBUZXh0Tm9kZSA6IENsdXR0ZXIuUGFpbnROb2Rl IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNs dXR0ZXJQYWludE5vZGUqIildCisrCQlwdWJsaWMgVGV4dE5vZGUgKFBhbmdvLkxheW91dD8gbGF5 b3V0LCBDbHV0dGVyLkNvbG9yPyBjb2xvcik7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3RleHR1cmVfZ2V0 X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFRleHR1cmUgOiBDbHV0dGVyLkFjdG9yIHsKKysJ CXB1YmxpYyBDb2dsLk1hdGVyaWFsIGNvZ2xfbWF0ZXJpYWwgeyBnZXQ7IHNldDsgfQorKwkJcHVi bGljIENvZ2wuVGV4dHVyZSBjb2dsX3RleHR1cmUgeyBnZXQ7IHNldDsgfQorKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1 dHRlcl90ZXh0dXJlX25vZGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTAiKV0KKysJcHVibGljIGNsYXNzIFRleHR1cmVOb2RlIDogQ2x1dHRlci5QaXBlbGluZU5vZGUg eworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1 dHRlclBhaW50Tm9kZSoiKV0KKysJCXB1YmxpYyBUZXh0dXJlTm9kZSAoQ29nbC5UZXh0dXJlIHRl eHR1cmUsIENsdXR0ZXIuQ29sb3I/IGNvbG9yLCBDbHV0dGVyLlNjYWxpbmdGaWx0ZXIgbWluX2Zp bHRlciwgQ2x1dHRlci5TY2FsaW5nRmlsdGVyIG1hZ19maWx0ZXIpOworKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRl cl90aW1lbGluZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisr CXB1YmxpYyBjbGFzcyBUaW1lbGluZSA6IEdMaWIuT2JqZWN0LCBDbHV0dGVyLlNjcmlwdGFibGUg eworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJW1ZlcnNp b24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIFRpbWVsaW5lICh1aW50IG1zZWNzKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjE0IildCisrCQlwdWJsaWMgdm9pZCBhZGRfbWFya2VyIChz dHJpbmcgbWFya2VyX25hbWUsIGRvdWJsZSBwcm9ncmVzcyk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMC44IildCisrCQlwdWJsaWMgdm9pZCBhZGRfbWFya2VyX2F0X3RpbWUgKHN0cmluZyBtYXJr ZXJfbmFtZSwgdWludCBtc2Vjcyk7CisrCQlwdWJsaWMgdm9pZCBhZHZhbmNlICh1aW50IG1zZWNz KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2b2lkIGFkdmFuY2Vf dG9fbWFya2VyIChzdHJpbmcgbWFya2VyX25hbWUpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQg PSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIwLjQiKV0KKysJCXB1 YmxpYyBDbHV0dGVyLlRpbWVsaW5lIGNsb25lICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu NiIpXQorKwkJcHVibGljIGJvb2wgZ2V0X2F1dG9fcmV2ZXJzZSAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgYm9vbCBnZXRfY3ViaWNfYmV6aWVyX3Byb2dyZXNz IChHcmFwaGVuZS5Qb2ludCBjXzEsIEdyYXBoZW5lLlBvaW50IGNfMik7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGludCBnZXRfY3VycmVudF9yZXBlYXQgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCQlwdWJsaWMgdWludCBnZXRfZGVsYXkgKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdWludCBnZXRfZGVsdGEg KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgQ2x1dHRlci5UaW1l bGluZURpcmVjdGlvbiBnZXRfZGlyZWN0aW9uICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAu NiIpXQorKwkJcHVibGljIHVpbnQgZ2V0X2R1cmF0aW9uICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTAiKV0KKysJCXB1YmxpYyBpbnQ2NCBnZXRfZHVyYXRpb25faGludCAoKTsKKysJCXB1 YmxpYyB1aW50IGdldF9lbGFwc2VkX3RpbWUgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9 IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGJvb2wgZ2V0X2xv b3AgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgZG91YmxlIGdl dF9wcm9ncmVzcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMg Q2x1dHRlci5BbmltYXRpb25Nb2RlIGdldF9wcm9ncmVzc19tb2RlICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X3JlcGVhdF9jb3VudCAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgYm9vbCBnZXRfc3RlcF9wcm9n cmVzcyAob3V0IGludCBuX3N0ZXBzLCBvdXQgQ2x1dHRlci5TdGVwTW9kZSBzdGVwX21vZGUpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIGJvb2wgaGFzX21hcmtlciAo c3RyaW5nIG1hcmtlcl9uYW1lKTsKKysJCXB1YmxpYyBib29sIGlzX3BsYXlpbmcgKCk7CisrCQlb Q0NvZGUgKGFycmF5X2xlbmd0aCA9IHRydWUsIGFycmF5X2xlbmd0aF9wb3MgPSAxLjEsIGFycmF5 X2xlbmd0aF90eXBlID0gImdzaXplIiwgYXJyYXlfbnVsbF90ZXJtaW5hdGVkID0gdHJ1ZSldCisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgc3RyaW5nW10gbGlzdF9tYXJr ZXJzIChpbnQgbXNlY3MpOworKwkJcHVibGljIHZvaWQgcGF1c2UgKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdm9pZCByZW1vdmVfbWFya2VyIChzdHJpbmcgbWFy a2VyX25hbWUpOworKwkJcHVibGljIHZvaWQgcmV3aW5kICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuNiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2F1dG9fcmV2ZXJzZSAoYm9vbCByZXZlcnNl KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBzZXRfY3Vi aWNfYmV6aWVyX3Byb2dyZXNzIChHcmFwaGVuZS5Qb2ludCBjXzEsIEdyYXBoZW5lLlBvaW50IGNf Mik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCQlwdWJsaWMgdm9pZCBzZXRfZGVs YXkgKHVpbnQgbXNlY3MpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGlj IHZvaWQgc2V0X2RpcmVjdGlvbiAoQ2x1dHRlci5UaW1lbGluZURpcmVjdGlvbiBkaXJlY3Rpb24p OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2R1cmF0 aW9uICh1aW50IG1zZWNzKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVj YXRlZF9zaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbG9vcCAoYm9vbCBsb29w KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfcHJv Z3Jlc3NfZnVuYyAob3duZWQgQ2x1dHRlci5UaW1lbGluZVByb2dyZXNzRnVuYz8gZnVuYyk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3Byb2dyZXNz X21vZGUgKENsdXR0ZXIuQW5pbWF0aW9uTW9kZSBtb2RlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfcmVwZWF0X2NvdW50IChpbnQgY291bnQpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9zdGVwX3By b2dyZXNzIChpbnQgbl9zdGVwcywgQ2x1dHRlci5TdGVwTW9kZSBzdGVwX21vZGUpOworKwkJcHVi bGljIHZvaWQgc2tpcCAodWludCBtc2Vjcyk7CisrCQlwdWJsaWMgdm9pZCBzdGFydCAoKTsKKysJ CXB1YmxpYyB2b2lkIHN0b3AgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlw dWJsaWMgYm9vbCBhdXRvX3JldmVyc2UgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjAuNCIpXQorKwkJcHVibGljIHVpbnQgZGVsYXkgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNp b24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIENsdXR0ZXIuVGltZWxpbmVEaXJlY3Rpb24g ZGlyZWN0aW9uIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJ CXB1YmxpYyB1aW50IGR1cmF0aW9uIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChkZXByZWNh dGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgYm9vbCBs b29wIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJs aWMgQ2x1dHRlci5BbmltYXRpb25Nb2RlIHByb2dyZXNzX21vZGUgeyBnZXQ7IHNldDsgfQorKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBpbnQgcmVwZWF0X2NvdW50IHsg Z2V0OyBzZXQ7IH0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGNvbXBsZXRlZCAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2 b2lkIG1hcmtlcl9yZWFjaGVkIChzdHJpbmcgbWFya2VyX25hbWUsIGludCBtc2Vjcyk7CisrCQlw dWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBuZXdfZnJhbWUgKGludCBtc2Vjcyk7CisrCQlwdWJs aWMgdmlydHVhbCBzaWduYWwgdm9pZCBwYXVzZWQgKCk7CisrCQlwdWJsaWMgdmlydHVhbCBzaWdu YWwgdm9pZCBzdGFydGVkICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1 YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIHN0b3BwZWQgKGJvb2wgaXNfZmluaXNoZWQpOworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlb Q29tcGFjdF0KKysJcHVibGljIGNsYXNzIFRpbWVvdXRQb29sIHsKKysJCVtDQ29kZSAoaGFzX2Nv bnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1YmxpYyBUaW1lb3V0UG9vbCAoaW50IHBy aW9yaXR5KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0NvbXBhY3RdCisrCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBjbGFzcyBUb3VjaEV2ZW50IDogQ2x1dHRlci5FdmVu dCB7CisrCQlwdWJsaWMgZG91YmxlIGF4ZXM7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLklucHV0 RGV2aWNlIGRldmljZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50RmxhZ3MgZmxhZ3M7CisrCQlw dWJsaWMgQ2x1dHRlci5Nb2RpZmllclR5cGUgbW9kaWZpZXJfc3RhdGU7CisrCQlwdWJsaWMgd2Vh ayBDbHV0dGVyLkV2ZW50U2VxdWVuY2Ugc2VxdWVuY2U7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVy LkFjdG9yIHNvdXJjZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuU3RhZ2Ugc3RhZ2U7CisrCQlw dWJsaWMgdWludDMyIHRpbWU7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudFR5cGUgdHlwZTsKKysJ CXB1YmxpYyBmbG9hdCB4OworKwkJcHVibGljIGZsb2F0IHk7CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSld CisrCVtDb21wYWN0XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yNCIpXQorKwlwdWJsaWMgY2xh c3MgVG91Y2hwYWRQaW5jaEV2ZW50IDogQ2x1dHRlci5FdmVudCB7CisrCQlwdWJsaWMgZmxvYXQg YW5nbGVfZGVsdGE7CisrCQlwdWJsaWMgZmxvYXQgZHg7CisrCQlwdWJsaWMgZmxvYXQgZHk7Cisr CQlwdWJsaWMgQ2x1dHRlci5FdmVudEZsYWdzIGZsYWdzOworKwkJcHVibGljIHVpbnQgbl9maW5n ZXJzOworKwkJcHVibGljIENsdXR0ZXIuVG91Y2hwYWRHZXN0dXJlUGhhc2UgcGhhc2U7CisrCQlw dWJsaWMgZmxvYXQgc2NhbGU7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLkFjdG9yIHNvdXJjZTsK KysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuU3RhZ2Ugc3RhZ2U7CisrCQlwdWJsaWMgdWludDMyIHRp bWU7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudFR5cGUgdHlwZTsKKysJCXB1YmxpYyBmbG9hdCB4 OworKwkJcHVibGljIGZsb2F0IHk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtDb21wYWN0XQor KwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yNCIpXQorKwlwdWJsaWMgY2xhc3MgVG91Y2hwYWRTd2lw ZUV2ZW50IDogQ2x1dHRlci5FdmVudCB7CisrCQlwdWJsaWMgZmxvYXQgZHg7CisrCQlwdWJsaWMg ZmxvYXQgZHk7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudEZsYWdzIGZsYWdzOworKwkJcHVibGlj IHVpbnQgbl9maW5nZXJzOworKwkJcHVibGljIENsdXR0ZXIuVG91Y2hwYWRHZXN0dXJlUGhhc2Ug cGhhc2U7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLkFjdG9yIHNvdXJjZTsKKysJCXB1YmxpYyB3 ZWFrIENsdXR0ZXIuU3RhZ2Ugc3RhZ2U7CisrCQlwdWJsaWMgdWludDMyIHRpbWU7CisrCQlwdWJs aWMgQ2x1dHRlci5FdmVudFR5cGUgdHlwZTsKKysJCXB1YmxpYyBmbG9hdCB4OworKwkJcHVibGlj IGZsb2F0IHk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3RyYW5zZm9ybV9ub2RlX2dldF90eXBlICgpIild CisrCXB1YmxpYyBjbGFzcyBUcmFuc2Zvcm1Ob2RlIDogQ2x1dHRlci5QYWludE5vZGUgeworKwkJ W0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlclBh aW50Tm9kZSoiKV0KKysJCXB1YmxpYyBUcmFuc2Zvcm1Ob2RlIChDb2dsLk1hdHJpeCBwcm9qZWN0 aW9uKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfdHJhbnNpdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgYWJzdHJhY3QgY2xhc3MgVHJhbnNpdGlv biA6IENsdXR0ZXIuVGltZWxpbmUsIENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUgKGhh c19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgVHJhbnNpdGlvbiAo KTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGF0dGFjaGVkIChDbHV0 dGVyLkFuaW1hdGFibGUgYW5pbWF0YWJsZSk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZp cnR1YWwgdm9pZCBjb21wdXRlX3ZhbHVlIChDbHV0dGVyLkFuaW1hdGFibGUgYW5pbWF0YWJsZSwg Q2x1dHRlci5JbnRlcnZhbCBpbnRlcnZhbCwgZG91YmxlIHByb2dyZXNzKTsKKysJCVtOb1dyYXBw ZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGRldGFjaGVkIChDbHV0dGVyLkFuaW1hdGFibGUg YW5pbWF0YWJsZSk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFuaW1hdGFibGUgZ2V0X2Fu aW1hdGFibGUgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkludGVydmFsIGdldF9pbnRl cnZhbCAoKTsKKysJCXB1YmxpYyBib29sIGdldF9yZW1vdmVfb25fY29tcGxldGUgKCk7CisrCQlw dWJsaWMgdm9pZCBzZXRfYW5pbWF0YWJsZSAoQ2x1dHRlci5BbmltYXRhYmxlPyBhbmltYXRhYmxl KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBzZXRfZnJv bV92YWx1ZSAoR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfaW50ZXJ2YWwg KENsdXR0ZXIuSW50ZXJ2YWw/IGludGVydmFsKTsKKysJCXB1YmxpYyB2b2lkIHNldF9yZW1vdmVf b25fY29tcGxldGUgKGJvb2wgcmVtb3ZlX2NvbXBsZXRlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBzZXRfdG9fdmFsdWUgKEdMaWIuVmFsdWUgdmFsdWUp OworKwkJcHVibGljIENsdXR0ZXIuQW5pbWF0YWJsZSBhbmltYXRhYmxlIHsgZ2V0OyBzZXQ7IH0K KysJCXB1YmxpYyBDbHV0dGVyLkludGVydmFsIGludGVydmFsIHsgZ2V0OyBzZXQ7IH0KKysJCXB1 YmxpYyBib29sIHJlbW92ZV9vbl9jb21wbGV0ZSB7IGdldDsgc2V0OyB9CisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0 dGVyX3RyYW5zaXRpb25fZ3JvdXBfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTIiKV0KKysJcHVibGljIGNsYXNzIFRyYW5zaXRpb25Hcm91cCA6IENsdXR0ZXIuVHJhbnNp dGlvbiwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5j dGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJUcmFuc2l0aW9uKiIpXQorKwkJcHVibGljIFRy YW5zaXRpb25Hcm91cCAoKTsKKysJCXB1YmxpYyB2b2lkIGFkZF90cmFuc2l0aW9uIChDbHV0dGVy LlRyYW5zaXRpb24gdHJhbnNpdGlvbik7CisrCQlwdWJsaWMgdm9pZCByZW1vdmVfYWxsICgpOwor KwkJcHVibGljIHZvaWQgcmVtb3ZlX3RyYW5zaXRpb24gKENsdXR0ZXIuVHJhbnNpdGlvbiB0cmFu c2l0aW9uKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfdmlydHVhbF9pbnB1dF9kZXZpY2VfZ2V0X3R5cGUg KCkiKV0KKysJcHVibGljIGNsYXNzIFZpcnR1YWxJbnB1dERldmljZSA6IEdMaWIuT2JqZWN0IHsK KysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3Rl ZCBWaXJ0dWFsSW5wdXREZXZpY2UgKCk7CisrCQlwdWJsaWMgaW50IGdldF9kZXZpY2VfdHlwZSAo KTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgbm90aWZ5X2Fic29sdXRlX21vdGlvbiAodWludDY0 IHRpbWVfdXMsIGRvdWJsZSB4LCBkb3VibGUgeSk7CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIG5v dGlmeV9idXR0b24gKHVpbnQ2NCB0aW1lX3VzLCB1aW50MzIgYnV0dG9uLCBDbHV0dGVyLkJ1dHRv blN0YXRlIGJ1dHRvbl9zdGF0ZSk7CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIG5vdGlmeV9kaXNj cmV0ZV9zY3JvbGwgKHVpbnQ2NCB0aW1lX3VzLCBDbHV0dGVyLlNjcm9sbERpcmVjdGlvbiBkaXJl Y3Rpb24sIENsdXR0ZXIuU2Nyb2xsU291cmNlIHNjcm9sbF9zb3VyY2UpOworKwkJcHVibGljIHZp cnR1YWwgdm9pZCBub3RpZnlfa2V5ICh1aW50NjQgdGltZV91cywgdWludDMyIGtleSwgQ2x1dHRl ci5LZXlTdGF0ZSBrZXlfc3RhdGUpOworKwkJcHVibGljIHZpcnR1YWwgdm9pZCBub3RpZnlfa2V5 dmFsICh1aW50NjQgdGltZV91cywgdWludDMyIGtleXZhbCwgQ2x1dHRlci5LZXlTdGF0ZSBrZXlf c3RhdGUpOworKwkJcHVibGljIHZpcnR1YWwgdm9pZCBub3RpZnlfcmVsYXRpdmVfbW90aW9uICh1 aW50NjQgdGltZV91cywgZG91YmxlIGR4LCBkb3VibGUgZHkpOworKwkJcHVibGljIHZpcnR1YWwg dm9pZCBub3RpZnlfc2Nyb2xsX2NvbnRpbnVvdXMgKHVpbnQ2NCB0aW1lX3VzLCBkb3VibGUgZHgs IGRvdWJsZSBkeSwgQ2x1dHRlci5TY3JvbGxTb3VyY2Ugc2Nyb2xsX3NvdXJjZSwgQ2x1dHRlci5T Y3JvbGxGaW5pc2hGbGFncyBmaW5pc2hfZmxhZ3MpOworKwkJcHVibGljIHZpcnR1YWwgdm9pZCBu b3RpZnlfdG91Y2hfZG93biAodWludDY0IHRpbWVfdXMsIGludCBzbG90LCBkb3VibGUgeCwgZG91 YmxlIHkpOworKwkJcHVibGljIHZpcnR1YWwgdm9pZCBub3RpZnlfdG91Y2hfbW90aW9uICh1aW50 NjQgdGltZV91cywgaW50IHNsb3QsIGRvdWJsZSB4LCBkb3VibGUgeSk7CisrCQlwdWJsaWMgdmly dHVhbCB2b2lkIG5vdGlmeV90b3VjaF91cCAodWludDY0IHRpbWVfdXMsIGludCBzbG90KTsKKysJ CXB1YmxpYyBDbHV0dGVyLklucHV0RGV2aWNlVHlwZSBkZXZpY2VfdHlwZSB7IGdldDsgY29uc3Ry dWN0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBDbHV0dGVyLlNlYXQgc2Vh dCB7IG93bmVkIGdldDsgY29uc3RydWN0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3pvb21fYWN0aW9u X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCXB1YmxpYyBj bGFzcyBab29tQWN0aW9uIDogQ2x1dHRlci5HZXN0dXJlQWN0aW9uIHsKKysJCVtDQ29kZSAoaGFz X2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3Rpb24qIildCisr CQlwdWJsaWMgWm9vbUFjdGlvbiAoKTsKKysJCXB1YmxpYyB2b2lkIGdldF9mb2NhbF9wb2ludCAo R3JhcGhlbmUuUG9pbnQgcG9pbnQpOworKwkJcHVibGljIHZvaWQgZ2V0X3RyYW5zZm9ybWVkX2Zv Y2FsX3BvaW50IChHcmFwaGVuZS5Qb2ludCBwb2ludCk7CisrCQlwdWJsaWMgQ2x1dHRlci5ab29t QXhpcyBnZXRfem9vbV9heGlzICgpOworKwkJcHVibGljIHZvaWQgc2V0X3pvb21fYXhpcyAoQ2x1 dHRlci5ab29tQXhpcyBheGlzKTsKKysJCXB1YmxpYyBDbHV0dGVyLlpvb21BeGlzIHpvb21fYXhp cyB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCB6b29tIChDbHV0 dGVyLkFjdG9yIGFjdG9yLCBHcmFwaGVuZS5Qb2ludCBmb2NhbF9wb2ludCwgZG91YmxlIGZhY3Rv cik7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgdHlwZV9jbmFtZSA9ICJDbHV0dGVyQW5pbWF0YWJsZUludGVyZmFjZSIsIHR5cGVfaWQgPSAi Y2x1dHRlcl9hbmltYXRhYmxlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBpbnRlcmZhY2UgQW5p bWF0YWJsZSA6IEdMaWIuT2JqZWN0IHsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgYWJzdHJh Y3QgYm9vbCBhbmltYXRlX3Byb3BlcnR5IChDbHV0dGVyLkFuaW1hdGlvbiBhbmltYXRpb24sIHN0 cmluZyBwcm9wZXJ0eV9uYW1lLCBHTGliLlZhbHVlIGluaXRpYWxfdmFsdWUsIEdMaWIuVmFsdWUg ZmluYWxfdmFsdWUsIGRvdWJsZSBwcm9ncmVzcywgR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgYWJzdHJhY3QgdW5vd25lZCBHTGliLlBh cmFtU3BlYyBmaW5kX3Byb3BlcnR5IChzdHJpbmcgcHJvcGVydHlfbmFtZSk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBnZXRfaW5pdGlhbF9z dGF0ZSAoc3RyaW5nIHByb3BlcnR5X25hbWUsIEdMaWIuVmFsdWUgdmFsdWUpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIGFic3RyYWN0IGJvb2wgaW50ZXJwb2xhdGVf dmFsdWUgKHN0cmluZyBwcm9wZXJ0eV9uYW1lLCBDbHV0dGVyLkludGVydmFsIGludGVydmFsLCBk b3VibGUgcHJvZ3Jlc3MsIG91dCBHTGliLlZhbHVlIHZhbHVlKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lkIHNldF9maW5hbF9zdGF0ZSAoc3Ry aW5nIHByb3BlcnR5X25hbWUsIEdMaWIuVmFsdWUgdmFsdWUpOworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9j b250YWluZXJfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwlw dWJsaWMgaW50ZXJmYWNlIENvbnRhaW5lciA6IEdMaWIuT2JqZWN0IHsKKysJCXB1YmxpYyB2b2lk IGFkZCAocGFyYW1zIENsdXR0ZXIuQWN0b3JbXSBhY3RvcnMpOworKwkJW0NDb2RlICh2ZnVuY19u YW1lID0gImFkZCIpXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVk X3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIwLjQiKV0KKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lk IGFkZF9hY3RvciAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MC44IildCisrCQlwdWJsaWMgdm9pZCBjaGlsZF9nZXQgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIC4u Lik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdm9pZCBjaGlsZF9n ZXRfcHJvcGVydHkgKENsdXR0ZXIuQWN0b3IgY2hpbGQsIHN0cmluZyBwcm9wZXJ0eSwgR0xpYi5W YWx1ZSB2YWx1ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdm9p ZCBjaGlsZF9zZXQgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIC4uLik7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMC44IildCisrCQlwdWJsaWMgdm9pZCBjaGlsZF9zZXRfcHJvcGVydHkgKENsdXR0ZXIu QWN0b3IgY2hpbGQsIHN0cmluZyBwcm9wZXJ0eSwgR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR0xpYi5QYXJh bVNwZWMgY2xhc3NfZmluZF9jaGlsZF9wcm9wZXJ0eSAoR0xpYi5PYmplY3RDbGFzcyBrbGFzcywg c3RyaW5nIHByb3BlcnR5X25hbWUpOworKwkJW0NDb2RlIChhcnJheV9sZW5ndGhfcG9zID0gMS4x LCBhcnJheV9sZW5ndGhfdHlwZSA9ICJndWludCIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAu OCIpXQorKwkJcHVibGljIHN0YXRpYyBHTGliLlBhcmFtU3BlY1tdIGNsYXNzX2xpc3RfY2hpbGRf cHJvcGVydGllcyAoR0xpYi5PYmplY3RDbGFzcyBrbGFzcyk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4yIildCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGNyZWF0ZV9jaGlsZF9tZXRhIChDbHV0 dGVyLkFjdG9yIGFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1Ymxp YyB2aXJ0dWFsIHZvaWQgZGVzdHJveV9jaGlsZF9tZXRhIChDbHV0dGVyLkFjdG9yIGFjdG9yKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIu QWN0b3IgZmluZF9jaGlsZF9ieV9uYW1lIChzdHJpbmcgY2hpbGRfbmFtZSk7CisrCQlbQ0NvZGUg KGNuYW1lID0gImNsdXR0ZXJfY29udGFpbmVyX2NsYXNzX2ZpbmRfY2hpbGRfcHJvcGVydHkiKV0K KysJCXB1YmxpYyBjbGFzcyB1bm93bmVkIEdMaWIuUGFyYW1TcGVjIGZpbmRfY2hpbGRfcHJvcGVy dHkgKHN0cmluZyBwcm9wZXJ0eV9uYW1lKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0K KysJCXB1YmxpYyB2aXJ0dWFsIHVub3duZWQgQ2x1dHRlci5DaGlsZE1ldGEgZ2V0X2NoaWxkX21l dGEgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVl LCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIwLjQiKV0KKysJCXB1YmxpYyBH TGliLkxpc3Q8d2VhayBDbHV0dGVyLkFjdG9yPiBnZXRfY2hpbGRyZW4gKCk7CisrCQlbQ0NvZGUg KGNuYW1lID0gImNsdXR0ZXJfY29udGFpbmVyX2NsYXNzX2xpc3RfY2hpbGRfcHJvcGVydGllcyIp XQorKwkJcHVibGljIGNsYXNzIHVub3duZWQgR0xpYi5QYXJhbVNwZWNbXSBsaXN0X2NoaWxkX3By b3BlcnRpZXMgKCk7CisrCQlbQ0NvZGUgKHZmdW5jX25hbWUgPSAibG93ZXIiKV0KKysJCVtWZXJz aW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2Ug PSAiMC42IildCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGxvd2VyX2NoaWxkIChDbHV0dGVyLkFj dG9yIGFjdG9yLCBDbHV0dGVyLkFjdG9yPyBzaWJsaW5nID0gbnVsbCk7CisrCQlbQ0NvZGUgKHZm dW5jX25hbWUgPSAicmFpc2UiKV0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVw cmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdmlydHVh bCB2b2lkIHJhaXNlX2NoaWxkIChDbHV0dGVyLkFjdG9yIGFjdG9yLCBDbHV0dGVyLkFjdG9yPyBz aWJsaW5nID0gbnVsbCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0 ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjAuNCIpXQorKwkJcHVibGljIHZvaWQgcmVtb3Zl ICguLi4pOworKwkJW0NDb2RlICh2ZnVuY19uYW1lID0gInJlbW92ZSIpXQorKwkJW1ZlcnNpb24g KGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIw LjQiKV0KKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lkIHJlbW92ZV9hY3RvciAoQ2x1dHRlci5BY3Rv ciBhY3Rvcik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2lu Y2UgPSAiMS4xMCIsIHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIGFic3RyYWN0IHZvaWQgc29y dF9kZXB0aF9vcmRlciAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGFjdG9yX2Fk ZGVkIChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lk IGFjdG9yX3JlbW92ZWQgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwkJW0hhc0VtaXR0ZXJdCisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9p ZCBjaGlsZF9ub3RpZnkgKENsdXR0ZXIuQWN0b3IgY2hpbGQsIEdMaWIuUGFyYW1TcGVjIHBzcGVj KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCB0eXBlX2NuYW1lID0gIkNsdXR0ZXJDb250ZW50SW50ZXJmYWNlIiwgdHlwZV9pZCA9ICJjbHV0 dGVyX2NvbnRlbnRfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGludGVyZmFjZSBDb250ZW50IDog R0xpYi5PYmplY3QgeworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBh YnN0cmFjdCBib29sIGdldF9wcmVmZXJyZWRfc2l6ZSAob3V0IGZsb2F0IHdpZHRoLCBvdXQgZmxv YXQgaGVpZ2h0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgYWJz dHJhY3Qgdm9pZCBpbnZhbGlkYXRlICgpOworKwkJcHVibGljIGFic3RyYWN0IHZvaWQgaW52YWxp ZGF0ZV9zaXplICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lkIHBh aW50X2NvbnRlbnQgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIENsdXR0ZXIuUGFpbnROb2RlIG5vZGUs IENsdXR0ZXIuUGFpbnRDb250ZXh0IHBhaW50X2NvbnRleHQpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGF0dGFjaGVkIChDbHV0 dGVyLkFjdG9yIGFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJs aWMgdmlydHVhbCBzaWduYWwgdm9pZCBkZXRhY2hlZCAoQ2x1dHRlci5BY3RvciBhY3Rvcik7Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlw ZV9pZCA9ICJjbHV0dGVyX3NjcmlwdGFibGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNp bmNlID0gIjAuNiIpXQorKwlwdWJsaWMgaW50ZXJmYWNlIFNjcmlwdGFibGUgOiBHTGliLk9iamVj dCB7CisrCQlwdWJsaWMgYWJzdHJhY3QgdW5vd25lZCBzdHJpbmcgZ2V0X2lkICgpOworKwkJcHVi bGljIGFic3RyYWN0IGJvb2wgcGFyc2VfY3VzdG9tX25vZGUgKENsdXR0ZXIuU2NyaXB0IHNjcmlw dCwgR0xpYi5WYWx1ZSB2YWx1ZSwgc3RyaW5nIG5hbWUsIEpzb24uTm9kZSBub2RlKTsKKysJCXB1 YmxpYyBhYnN0cmFjdCB2b2lkIHNldF9jdXN0b21fcHJvcGVydHkgKENsdXR0ZXIuU2NyaXB0IHNj cmlwdCwgc3RyaW5nIG5hbWUsIEdMaWIuVmFsdWUgdmFsdWUpOworKwkJcHVibGljIGFic3RyYWN0 IHZvaWQgc2V0X2lkIChzdHJpbmcgaWRfKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJcHVibGljIGludGVyZmFjZSBTdGFnZVdpbmRv dyA6IEdMaWIuT2JqZWN0IHsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgYWJzdHJhY3QgaW50 IGdldF9wZW5kaW5nX3N3YXBzICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyBhYnN0cmFj dCB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X3dyYXBwZXIgKCk7CisrCQlbTm9XcmFwcGVyXQor KwkJcHVibGljIGFic3RyYWN0IGJvb2wgaGFzX3JlZHJhd19jbGlwcyAoKTsKKysJCVtOb1dyYXBw ZXJdCisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBoaWRlICgpOworKwkJW05vV3JhcHBlcl0KKysJ CXB1YmxpYyBhYnN0cmFjdCBib29sIGlnbm9yaW5nX3JlZHJhd19jbGlwcyAoKTsKKysJCVtOb1dy YXBwZXJdCisrCQlwdWJsaWMgYWJzdHJhY3QgYm9vbCByZWFsaXplICgpOworKwkJW05vV3JhcHBl cl0KKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lkIHJlc2l6ZSAoaW50IHdpZHRoLCBpbnQgaGVpZ2h0 KTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBzZXRfY3Vyc29yX3Zp c2libGUgKGJvb2wgY3Vyc29yX3Zpc2libGUpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyBh YnN0cmFjdCB2b2lkIHNldF9mdWxsc2NyZWVuIChib29sIGlzX2Z1bGxzY3JlZW4pOworKwkJW05v V3JhcHBlcl0KKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lkIHNldF90aXRsZSAoc3RyaW5nIHRpdGxl KTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBzZXRfdXNlcl9yZXNp emFibGUgKGJvb2wgaXNfcmVzaXphYmxlKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgYWJz dHJhY3Qgdm9pZCBzaG93IChib29sIGRvX3JhaXNlKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJs aWMgYWJzdHJhY3Qgdm9pZCB1bnJlYWxpemUgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY29weV9mdW5jdGlvbiA9ICJnX2JveGVkX2Nv cHkiLCBmcmVlX2Z1bmN0aW9uID0gImdfYm94ZWRfZnJlZSIsIHR5cGVfaWQgPSAiY2x1dHRlcl9h Y3Rvcl9ib3hfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIHN0cnVjdCBBY3RvckJveCB7CisrCQlw dWJsaWMgZmxvYXQgeDE7CisrCQlwdWJsaWMgZmxvYXQgeTE7CisrCQlwdWJsaWMgZmxvYXQgeDI7 CisrCQlwdWJsaWMgZmxvYXQgeTI7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJ cHVibGljIHN0YXRpYyBDbHV0dGVyLkFjdG9yQm94PyBhbGxvYyAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBjbGFtcF90b19waXhlbCAocmVm IENsdXR0ZXIuQWN0b3JCb3ggYm94KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJ CXB1YmxpYyBib29sIGNvbnRhaW5zIChmbG9hdCB4LCBmbG9hdCB5KTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFjdG9yQm94PyBjb3B5ICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGJvb2wgZXF1YWwgKENsdXR0ZXIu QWN0b3JCb3ggYm94X2IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGlj IHZvaWQgZnJlZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBm bG9hdCBnZXRfYXJlYSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1Ymxp YyBmbG9hdCBnZXRfaGVpZ2h0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJ cHVibGljIHZvaWQgZ2V0X29yaWdpbiAob3V0IGZsb2F0IHgsIG91dCBmbG9hdCB5KTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9zaXplIChvdXQgZmxv YXQgd2lkdGgsIG91dCBmbG9hdCBoZWlnaHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIp XQorKwkJcHVibGljIGZsb2F0IGdldF93aWR0aCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfeCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfeSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEwIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yQm94PyBpbml0IChmbG9hdCB4 XzEsIGZsb2F0IHlfMSwgZmxvYXQgeF8yLCBmbG9hdCB5XzIpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIGluaXRfcmVjdCAoZmxvYXQgeCwgZmxvYXQgeSwg ZmxvYXQgd2lkdGgsIGZsb2F0IGhlaWdodCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIild CisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvckJveCBpbnRlcnBvbGF0ZSAoQ2x1dHRlci5BY3RvckJv eCBmaW5hbCwgZG91YmxlIHByb2dyZXNzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0K KysJCXB1YmxpYyB2b2lkIHNjYWxlIChmbG9hdCBzY2FsZSk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS42IildCisrCQlwdWJsaWMgdm9pZCBzZXRfb3JpZ2luIChmbG9hdCB4LCBmbG9hdCB5KTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9zaXplIChm bG9hdCB3aWR0aCwgZmxvYXQgaGVpZ2h0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0K KysJCXB1YmxpYyBDbHV0dGVyLkFjdG9yQm94IHVuaW9uIChDbHV0dGVyLkFjdG9yQm94IGIpOwor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGhh c190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJs aWMgc3RydWN0IEFjdG9ySXRlciB7CisrCQlwdWJsaWMgdm9pZCBkZXN0cm95ICgpOworKwkJcHVi bGljIHZvaWQgaW5pdCAoQ2x1dHRlci5BY3RvciByb290KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEyIildCisrCQlwdWJsaWMgYm9vbCBpc192YWxpZCAoKTsKKysJCXB1YmxpYyBib29sIG5l eHQgKG91dCB1bm93bmVkIENsdXR0ZXIuQWN0b3IgY2hpbGQpOworKwkJcHVibGljIGJvb2wgcHJl diAob3V0IHVub3duZWQgQ2x1dHRlci5BY3RvciBjaGlsZCk7CisrCQlwdWJsaWMgdm9pZCByZW1v dmUgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgQ2FwdHVyZSB7Cisr CQlwdWJsaWMgd2VhayBDYWlyby5TdXJmYWNlIGltYWdlOworKwkJcHVibGljIENhaXJvLlJlY3Rh bmdsZUludCByZWN0OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNvcHlfZnVuY3Rpb24gPSAiZ19ib3hlZF9jb3B5IiwgZnJlZV9mdW5jdGlv biA9ICJnX2JveGVkX2ZyZWUiLCB0eXBlX2lkID0gIkNMVVRURVJfVFlQRV9DT0xPUiIpXQorKwlw dWJsaWMgc3RydWN0IENvbG9yIHsKKysJCXB1YmxpYyB1aW50OCByZWQ7CisrCQlwdWJsaWMgdWlu dDggZ3JlZW47CisrCQlwdWJsaWMgdWludDggYmx1ZTsKKysJCXB1YmxpYyB1aW50OCBhbHBoYTsK KysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIGFkZCAoQ2x1dHRlci5Db2xvciBiKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgc3RhdGljIENsdXR0ZXIuQ29sb3I/IGFs bG9jICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIENsdXR0ZXIu Q29sb3I/IGNvcHkgKCk7CisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBkYXJrZW4gKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCQlwdWJsaWMgYm9vbCBlcXVhbCAoQ2x1dHRlci5D b2xvciB2Mik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCQlwdWJsaWMgdm9pZCBm cmVlICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX2NvbG9yX2Zyb21faGxzIildCisr CQlwdWJsaWMgQ29sb3IuZnJvbV9obHMgKGZsb2F0IGh1ZSwgZmxvYXQgbHVtaW5hbmNlLCBmbG9h dCBzYXR1cmF0aW9uKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl9jb2xvcl9mcm9tX3Bp eGVsIildCisrCQlwdWJsaWMgQ29sb3IuZnJvbV9waXhlbCAodWludDMyIHBpeGVsKTsKKysJCVtD Q29kZSAoY25hbWUgPSAiY2x1dHRlcl9jb2xvcl9mcm9tX3N0cmluZyIpXQorKwkJcHVibGljIENv bG9yLmZyb21fc3RyaW5nIChzdHJpbmcgc3RyKTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBD bHV0dGVyLkNvbG9yPyBnZXRfc3RhdGljIChDbHV0dGVyLlN0YXRpY0NvbG9yIGNvbG9yKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1aW50IGhhc2ggKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5Db2xv cj8gaW5pdCAodWludDggcmVkLCB1aW50OCBncmVlbiwgdWludDggYmx1ZSwgdWludDggYWxwaGEp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIENsdXR0ZXIuQ29sb3Ig aW50ZXJwb2xhdGUgKENsdXR0ZXIuQ29sb3IgZmluYWwsIGRvdWJsZSBwcm9ncmVzcyk7CisrCQlw dWJsaWMgQ2x1dHRlci5Db2xvciBsaWdodGVuICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0 dGVyX2NvbG9yX2Zyb21fc3RyaW5nIildCisrCQlwdWJsaWMgYm9vbCBwYXJzZV9zdHJpbmcgKHN0 cmluZyBzdHIpOworKwkJcHVibGljIENsdXR0ZXIuQ29sb3Igc2hhZGUgKGRvdWJsZSBmYWN0b3Ip OworKwkJcHVibGljIENsdXR0ZXIuQ29sb3Igc3VidHJhY3QgKENsdXR0ZXIuQ29sb3IgYik7Cisr CQlwdWJsaWMgdm9pZCB0b19obHMgKG91dCBmbG9hdCBodWUsIG91dCBmbG9hdCBsdW1pbmFuY2Us IG91dCBmbG9hdCBzYXR1cmF0aW9uKTsKKysJCXB1YmxpYyB1aW50MzIgdG9fcGl4ZWwgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCQlwdWJsaWMgc3RyaW5nIHRvX3N0cmluZyAo KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBLYmRBMTF5U2V0dGluZ3Mg eworKwkJcHVibGljIENsdXR0ZXIuS2V5Ym9hcmRBMTF5RmxhZ3MgY29udHJvbHM7CisrCQlwdWJs aWMgaW50IHNsb3drZXlzX2RlbGF5OworKwkJcHVibGljIGludCBkZWJvdW5jZV9kZWxheTsKKysJ CXB1YmxpYyBpbnQgdGltZW91dF9kZWxheTsKKysJCXB1YmxpYyBpbnQgbW91c2VrZXlzX2luaXRf ZGVsYXk7CisrCQlwdWJsaWMgaW50IG1vdXNla2V5c19tYXhfc3BlZWQ7CisrCQlwdWJsaWMgaW50 IG1vdXNla2V5c19hY2NlbF90aW1lOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNvcHlfZnVuY3Rpb24gPSAiZ19ib3hlZF9jb3B5IiwgZnJl ZV9mdW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0eXBlX2lkID0gImNsdXR0ZXJfa25vdF9nZXRf dHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCXB1YmxpYyBzdHJ1Y3Qg S25vdCB7CisrCQlwdWJsaWMgaW50IHg7CisrCQlwdWJsaWMgaW50IHk7CisrCQlwdWJsaWMgQ2x1 dHRlci5Lbm90PyBjb3B5ICgpOworKwkJcHVibGljIGJvb2wgZXF1YWwgKENsdXR0ZXIuS25vdCBr bm90X2IpOworKwkJcHVibGljIHZvaWQgZnJlZSAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJcHVibGljIHN0cnVjdCBNYXRyaXgg OiBDb2dsLk1hdHJpeCB7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgUGFk QnV0dG9uRXZlbnQgeworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRUeXBlIHR5cGU7CisrCQlwdWJs aWMgdWludDMyIHRpbWU7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudEZsYWdzIGZsYWdzOworKwkJ cHVibGljIHdlYWsgQ2x1dHRlci5TdGFnZSBzdGFnZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIu QWN0b3Igc291cmNlOworKwkJcHVibGljIHVpbnQzMiBidXR0b247CisrCQlwdWJsaWMgdWludDMy IGdyb3VwOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5JbnB1dERldmljZSBkZXZpY2U7CisrCQlw dWJsaWMgdWludDMyIG1vZGU7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3Qg UGFkUmluZ0V2ZW50IHsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50VHlwZSB0eXBlOworKwkJcHVi bGljIHVpbnQzMiB0aW1lOworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRGbGFncyBmbGFnczsKKysJ CXB1YmxpYyB3ZWFrIENsdXR0ZXIuU3RhZ2Ugc3RhZ2U7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVy LkFjdG9yIHNvdXJjZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuSW5wdXREZXZpY2UgZGV2aWNl OworKwkJcHVibGljIENsdXR0ZXIuSW5wdXREZXZpY2VQYWRTb3VyY2UgcmluZ19zb3VyY2U7Cisr CQlwdWJsaWMgdWludDMyIHJpbmdfbnVtYmVyOworKwkJcHVibGljIHVpbnQzMiBncm91cDsKKysJ CXB1YmxpYyBkb3VibGUgYW5nbGU7CisrCQlwdWJsaWMgdWludDMyIG1vZGU7CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQg PSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgUGFkU3RyaXBFdmVudCB7CisrCQlwdWJsaWMgQ2x1 dHRlci5FdmVudFR5cGUgdHlwZTsKKysJCXB1YmxpYyB1aW50MzIgdGltZTsKKysJCXB1YmxpYyBD bHV0dGVyLkV2ZW50RmxhZ3MgZmxhZ3M7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLlN0YWdlIHN0 YWdlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5BY3RvciBzb3VyY2U7CisrCQlwdWJsaWMgd2Vh ayBDbHV0dGVyLklucHV0RGV2aWNlIGRldmljZTsKKysJCXB1YmxpYyBDbHV0dGVyLklucHV0RGV2 aWNlUGFkU291cmNlIHN0cmlwX3NvdXJjZTsKKysJCXB1YmxpYyB1aW50MzIgc3RyaXBfbnVtYmVy OworKwkJcHVibGljIHVpbnQzMiBncm91cDsKKysJCXB1YmxpYyBkb3VibGUgdmFsdWU7CisrCQlw dWJsaWMgdWludDMyIG1vZGU7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY29weV9mdW5jdGlvbiA9ICJnX2JveGVkX2NvcHkiLCBmcmVlX2Z1 bmN0aW9uID0gImdfYm94ZWRfZnJlZSIsIHR5cGVfaWQgPSAiY2x1dHRlcl9wYXRoX25vZGVfZ2V0 X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgc3RydWN0 IFBhdGhOb2RlIHsKKysJCXB1YmxpYyBDbHV0dGVyLlBhdGhOb2RlVHlwZSB0eXBlOworKwkJW0ND b2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldCisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLktub3Qg cG9pbnRzWzNdOworKwkJcHVibGljIENsdXR0ZXIuUGF0aE5vZGU/IGNvcHkgKCk7CisrCQlwdWJs aWMgYm9vbCBlcXVhbCAoQ2x1dHRlci5QYXRoTm9kZSBub2RlX2IpOworKwkJcHVibGljIHZvaWQg ZnJlZSAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24gPSAi Z19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3BlcnNwZWN0aXZlX2dldF90eXBlICgp IildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJcHVibGljIHN0cnVjdCBQZXJzcGVj dGl2ZSB7CisrCQlwdWJsaWMgZmxvYXQgZm92eTsKKysJCXB1YmxpYyBmbG9hdCBhc3BlY3Q7Cisr CQlwdWJsaWMgZmxvYXQgel9uZWFyOworKwkJcHVibGljIGZsb2F0IHpfZmFyOworKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGhhc190eXBlX2lk ID0gZmFsc2UpXQorKwlwdWJsaWMgc3RydWN0IFBvaW50ZXJBMTF5U2V0dGluZ3MgeworKwkJcHVi bGljIENsdXR0ZXIuUG9pbnRlckExMXlGbGFncyBjb250cm9sczsKKysJCXB1YmxpYyBDbHV0dGVy LlBvaW50ZXJBMTF5RHdlbGxDbGlja1R5cGUgZHdlbGxfY2xpY2tfdHlwZTsKKysJCXB1YmxpYyBD bHV0dGVyLlBvaW50ZXJBMTF5RHdlbGxNb2RlIGR3ZWxsX21vZGU7CisrCQlwdWJsaWMgQ2x1dHRl ci5Qb2ludGVyQTExeUR3ZWxsRGlyZWN0aW9uIGR3ZWxsX2dlc3R1cmVfc2luZ2xlOworKwkJcHVi bGljIENsdXR0ZXIuUG9pbnRlckExMXlEd2VsbERpcmVjdGlvbiBkd2VsbF9nZXN0dXJlX2RvdWJs ZTsKKysJCXB1YmxpYyBDbHV0dGVyLlBvaW50ZXJBMTF5RHdlbGxEaXJlY3Rpb24gZHdlbGxfZ2Vz dHVyZV9kcmFnOworKwkJcHVibGljIENsdXR0ZXIuUG9pbnRlckExMXlEd2VsbERpcmVjdGlvbiBk d2VsbF9nZXN0dXJlX3NlY29uZGFyeTsKKysJCXB1YmxpYyBpbnQgc2Vjb25kYXJ5X2NsaWNrX2Rl bGF5OworKwkJcHVibGljIGludCBkd2VsbF9kZWxheTsKKysJCXB1YmxpYyBpbnQgZHdlbGxfdGhy ZXNob2xkOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yOCIp XQorKwlwdWJsaWMgc3RydWN0IFByb3hpbWl0eUV2ZW50IHsKKysJCXB1YmxpYyBDbHV0dGVyLkV2 ZW50VHlwZSB0eXBlOworKwkJcHVibGljIHVpbnQzMiB0aW1lOworKwkJcHVibGljIENsdXR0ZXIu RXZlbnRGbGFncyBmbGFnczsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuU3RhZ2Ugc3RhZ2U7Cisr CQlwdWJsaWMgd2VhayBDbHV0dGVyLkFjdG9yIHNvdXJjZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0 ZXIuSW5wdXREZXZpY2UgZGV2aWNlOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNvcHlfZnVuY3Rpb24gPSAiZ19ib3hlZF9jb3B5IiwgZnJl ZV9mdW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0eXBlX2lkID0gIkNMVVRURVJfVFlQRV9VTklU UyIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBzdHJ1Y3QgVW5pdHMg eworKwkJcHVibGljIENsdXR0ZXIuVW5pdHM/IGNvcHkgKCk7CisrCQlwdWJsaWMgdm9pZCBmcmVl ICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX3VuaXRzX2Zyb21fY20iKV0KKysJCXB1 YmxpYyBVbml0cy5mcm9tX2NtIChmbG9hdCBjbSk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0 ZXJfdW5pdHNfZnJvbV9lbSIpXQorKwkJcHVibGljIFVuaXRzLmZyb21fZW0gKGZsb2F0IGVtKTsK KysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl91bml0c19mcm9tX2VtX2Zvcl9mb250IildCisr CQlwdWJsaWMgVW5pdHMuZnJvbV9lbV9mb3JfZm9udCAoc3RyaW5nIGZvbnRfbmFtZSwgZmxvYXQg ZW0pOworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX3VuaXRzX2Zyb21fbW0iKV0KKysJCXB1 YmxpYyBVbml0cy5mcm9tX21tIChmbG9hdCBtbSk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0 ZXJfdW5pdHNfZnJvbV9waXhlbHMiKV0KKysJCXB1YmxpYyBVbml0cy5mcm9tX3BpeGVscyAoaW50 IHB4KTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl91bml0c19mcm9tX3B0IildCisrCQlw dWJsaWMgVW5pdHMuZnJvbV9wdCAoZmxvYXQgcHQpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0 dGVyX3VuaXRzX2Zyb21fc3RyaW5nIildCisrCQlwdWJsaWMgVW5pdHMuZnJvbV9zdHJpbmcgKHN0 cmluZyBzdHIpOworKwkJcHVibGljIENsdXR0ZXIuVW5pdFR5cGUgZ2V0X3VuaXRfdHlwZSAoKTsK KysJCXB1YmxpYyBmbG9hdCBnZXRfdW5pdF92YWx1ZSAoKTsKKysJCXB1YmxpYyBmbG9hdCB0b19w aXhlbHMgKCk7CisrCQlwdWJsaWMgc3RyaW5nIHRvX3N0cmluZyAoKTsKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRU RVJfQUNUT1JfQUxJR05fIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2FjdG9yX2FsaWduX2dldF90eXBl ICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBlbnVtIEFjdG9y QWxpZ24geworKwkJRklMTCwKKysJCVNUQVJULAorKwkJQ0VOVEVSLAorKwkJRU5ECisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9 ICJDTFVUVEVSX0FDVE9SXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9hY3Rvcl9mbGFnc19nZXRfdHlw ZSAoKSIpXQorKwlbRmxhZ3NdCisrCXB1YmxpYyBlbnVtIEFjdG9yRmxhZ3MgeworKwkJTUFQUEVE LAorKwkJUkVBTElaRUQsCisrCQlSRUFDVElWRSwKKysJCVZJU0lCTEUsCisrCQlOT19MQVlPVVQK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj cHJlZml4ID0gIkNMVVRURVJfQUxJR05fIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2FsaWduX2F4aXNf Z2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgZW51 bSBBbGlnbkF4aXMgeworKwkJWF9BWElTLAorKwkJWV9BWElTLAorKwkJQk9USAorKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAi Q0xVVFRFUl8iLCB0eXBlX2lkID0gImNsdXR0ZXJfYWxsb2NhdGlvbl9mbGFnc19nZXRfdHlwZSAo KSIpXQorKwlbRmxhZ3NdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGVu dW0gQWxsb2NhdGlvbkZsYWdzIHsKKysJCUFMTE9DQVRJT05fTk9ORSwKKysJCUFCU09MVVRFX09S SUdJTl9DSEFOR0VELAorKwkJREVMRUdBVEVfTEFZT1VUCisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSXyIsIHR5 cGVfaWQgPSAiY2x1dHRlcl9hbmltYXRpb25fbW9kZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBlbnVtIEFuaW1hdGlvbk1vZGUgeworKwkJQ1VT VE9NX01PREUsCisrCQlMSU5FQVIsCisrCQlFQVNFX0lOX1FVQUQsCisrCQlFQVNFX09VVF9RVUFE LAorKwkJRUFTRV9JTl9PVVRfUVVBRCwKKysJCUVBU0VfSU5fQ1VCSUMsCisrCQlFQVNFX09VVF9D VUJJQywKKysJCUVBU0VfSU5fT1VUX0NVQklDLAorKwkJRUFTRV9JTl9RVUFSVCwKKysJCUVBU0Vf T1VUX1FVQVJULAorKwkJRUFTRV9JTl9PVVRfUVVBUlQsCisrCQlFQVNFX0lOX1FVSU5ULAorKwkJ RUFTRV9PVVRfUVVJTlQsCisrCQlFQVNFX0lOX09VVF9RVUlOVCwKKysJCUVBU0VfSU5fU0lORSwK KysJCUVBU0VfT1VUX1NJTkUsCisrCQlFQVNFX0lOX09VVF9TSU5FLAorKwkJRUFTRV9JTl9FWFBP LAorKwkJRUFTRV9PVVRfRVhQTywKKysJCUVBU0VfSU5fT1VUX0VYUE8sCisrCQlFQVNFX0lOX0NJ UkMsCisrCQlFQVNFX09VVF9DSVJDLAorKwkJRUFTRV9JTl9PVVRfQ0lSQywKKysJCUVBU0VfSU5f RUxBU1RJQywKKysJCUVBU0VfT1VUX0VMQVNUSUMsCisrCQlFQVNFX0lOX09VVF9FTEFTVElDLAor KwkJRUFTRV9JTl9CQUNLLAorKwkJRUFTRV9PVVRfQkFDSywKKysJCUVBU0VfSU5fT1VUX0JBQ0ss CisrCQlFQVNFX0lOX0JPVU5DRSwKKysJCUVBU0VfT1VUX0JPVU5DRSwKKysJCUVBU0VfSU5fT1VU X0JPVU5DRSwKKysJCVNURVBTLAorKwkJU1RFUF9TVEFSVCwKKysJCVNURVBfRU5ELAorKwkJQ1VC SUNfQkVaSUVSLAorKwkJRUFTRSwKKysJCUVBU0VfSU4sCisrCQlFQVNFX09VVCwKKysJCUVBU0Vf SU5fT1VULAorKwkJQU5JTUFUSU9OX0xBU1QKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfQklOX0FMSUdOTUVO VF8iLCB0eXBlX2lkID0gImNsdXR0ZXJfYmluX2FsaWdubWVudF9nZXRfdHlwZSAoKSIpXQorKwlb VmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBlbnVtIEJpbkFsaWdubWVudCB7Cisr CQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUpXQorKwkJRklYRUQsCisrCQlbVmVyc2lvbiAo ZGVwcmVjYXRlZCA9IHRydWUpXQorKwkJRklMTCwKKysJCVNUQVJULAorKwkJW1ZlcnNpb24gKGRl cHJlY2F0ZWQgPSB0cnVlKV0KKysJCUVORCwKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1 ZSldCisrCQlDRU5URVIKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfQklORF8iLCB0eXBlX2lkID0gImNsdXR0 ZXJfYmluZF9jb29yZGluYXRlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIx LjQiKV0KKysJcHVibGljIGVudW0gQmluZENvb3JkaW5hdGUgeworKwkJWCwKKysJCVksCisrCQlX SURUSCwKKysJCUhFSUdIVCwKKysJCVBPU0lUSU9OLAorKwkJU0laRSwKKysJCUFMTAorKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXgg PSAiQ0xVVFRFUl9CT1hfQUxJR05NRU5UXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9ib3hfYWxpZ25t ZW50X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJcHVibGlj IGVudW0gQm94QWxpZ25tZW50IHsKKysJCVNUQVJULAorKwkJRU5ELAorKwkJQ0VOVEVSCisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZp eCA9ICJDTFVUVEVSX0JVVFRPTl9TVEFURV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfYnV0dG9uX3N0 YXRlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIEJ1dHRvblN0YXRlIHsKKysJCVJFTEVB U0VELAorKwkJUFJFU1NFRAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9DT05URU5UX0dSQVZJVFlfIiwgdHlw ZV9pZCA9ICJjbHV0dGVyX2NvbnRlbnRfZ3Jhdml0eV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgZW51bSBDb250ZW50R3Jhdml0eSB7CisrCQlU T1BfTEVGVCwKKysJCVRPUCwKKysJCVRPUF9SSUdIVCwKKysJCUxFRlQsCisrCQlDRU5URVIsCisr CQlSSUdIVCwKKysJCUJPVFRPTV9MRUZULAorKwkJQk9UVE9NLAorKwkJQk9UVE9NX1JJR0hULAor KwkJUkVTSVpFX0ZJTEwsCisrCQlSRVNJWkVfQVNQRUNUCisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1JFUEVB VF8iLCB0eXBlX2lkID0gImNsdXR0ZXJfY29udGVudF9yZXBlYXRfZ2V0X3R5cGUgKCkiKV0KKysJ W0ZsYWdzXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwlwdWJsaWMgZW51bSBDb250 ZW50UmVwZWF0IHsKKysJCU5PTkUsCisrCQlYX0FYSVMsCisrCQlZX0FYSVMsCisrCQlCT1RICisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3By ZWZpeCA9ICJDTFVUVEVSX0RFQlVHXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9kZWJ1Z19mbGFnX2dl dF90eXBlICgpIildCisrCVtGbGFnc10KKysJcHVibGljIGVudW0gRGVidWdGbGFnIHsKKysJCU1J U0MsCisrCQlBQ1RPUiwKKysJCVRFWFRVUkUsCisrCQlFVkVOVCwKKysJCVBBSU5ULAorKwkJUEFO R08sCisrCQlCQUNLRU5ELAorKwkJU0NIRURVTEVSLAorKwkJU0NSSVBULAorKwkJU0hBREVSLAor KwkJTVVMVElTVEFHRSwKKysJCUFOSU1BVElPTiwKKysJCUxBWU9VVCwKKysJCVBJQ0ssCisrCQlF VkVOVExPT1AsCisrCQlDTElQUElORywKKysJCU9PQl9UUkFOU0ZPUk1TCisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVU VEVSX0RSQUdfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2RyYWdfYXhpc19nZXRfdHlwZSAoKSIpXQor KwlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBlbnVtIERyYWdBeGlzIHsKKysJ CUFYSVNfTk9ORSwKKysJCVhfQVhJUywKKysJCVlfQVhJUworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9ERUJV R18iLCB0eXBlX2lkID0gImNsdXR0ZXJfZHJhd19kZWJ1Z19mbGFnX2dldF90eXBlICgpIildCisr CVtGbGFnc10KKysJcHVibGljIGVudW0gRHJhd0RlYnVnRmxhZyB7CisrCQlESVNBQkxFX1NXQVBf RVZFTlRTLAorKwkJRElTQUJMRV9DTElQUEVEX1JFRFJBV1MsCisrCQlSRURSQVdTLAorKwkJUEFJ TlRfVk9MVU1FUywKKysJCURJU0FCTEVfQ1VMTElORywKKysJCURJU0FCTEVfT0ZGU0NSRUVOX1JF RElSRUNULAorKwkJQ09OVElOVU9VU19SRURSQVcsCisrCQlQQUlOVF9ERUZPUk1fVElMRVMsCisr CQlQQUlOVF9EQU1BR0VfUkVHSU9OCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0VGRkVDVF9QQUlOVF9BQ1RP Ul8iLCB0eXBlX2lkID0gImNsdXR0ZXJfZWZmZWN0X3BhaW50X2ZsYWdzX2dldF90eXBlICgpIild CisrCVtGbGFnc10KKysJcHVibGljIGVudW0gRWZmZWN0UGFpbnRGbGFncyB7CisrCQlbQ0NvZGUg KGNuYW1lID0gIkNMVVRURVJfRUZGRUNUX1BBSU5UX0FDVE9SX0RJUlRZIildCisrCQlBQ1RPUl9E SVJUWQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9FVkVOVF8iLCB0eXBlX2lkID0gImNsdXR0ZXJfZXZlbnRf ZmxhZ3NfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC42 IildCisrCXB1YmxpYyBlbnVtIEV2ZW50RmxhZ3MgeworKwkJTk9ORSwKKysJCUZMQUdfU1lOVEhF VElDLAorKwkJRkxBR19JTlBVVF9NRVRIT0QsCisrCQlGTEFHX1JFUEVBVEVECisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJD TFVUVEVSXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9ldmVudF90eXBlX2dldF90eXBlICgpIildCisr CVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJcHVibGljIGVudW0gRXZlbnRUeXBlIHsKKysJ CU5PVEhJTkcsCisrCQlLRVlfUFJFU1MsCisrCQlLRVlfUkVMRUFTRSwKKysJCU1PVElPTiwKKysJ CUVOVEVSLAorKwkJTEVBVkUsCisrCQlCVVRUT05fUFJFU1MsCisrCQlCVVRUT05fUkVMRUFTRSwK KysJCVNDUk9MTCwKKysJCVNUQUdFX1NUQVRFLAorKwkJREVTVFJPWV9OT1RJRlksCisrCQlDTElF TlRfTUVTU0FHRSwKKysJCURFTEVURSwKKysJCVRPVUNIX0JFR0lOLAorKwkJVE9VQ0hfVVBEQVRF LAorKwkJVE9VQ0hfRU5ELAorKwkJVE9VQ0hfQ0FOQ0VMLAorKwkJVE9VQ0hQQURfUElOQ0gsCisr CQlUT1VDSFBBRF9TV0lQRSwKKysJCVBST1hJTUlUWV9JTiwKKysJCVBST1hJTUlUWV9PVVQsCisr CQlQQURfQlVUVE9OX1BSRVNTLAorKwkJUEFEX0JVVFRPTl9SRUxFQVNFLAorKwkJUEFEX1NUUklQ LAorKwkJUEFEX1JJTkcsCisrCQlFVkVOVF9MQVNUCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0ZFQVRVUkVf IiwgdHlwZV9pZCA9ICJjbHV0dGVyX2ZlYXR1cmVfZmxhZ3NfZ2V0X3R5cGUgKCkiKV0KKysJW0Zs YWdzXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCXB1YmxpYyBlbnVtIEZlYXR1cmVG bGFncyB7CisrCQlURVhUVVJFX05QT1QsCisrCQlTV0FQX1RIUk9UVExFLAorKwkJU1RBR0VfU1RB VElDLAorKwkJU1RBR0VfQ1VSU09SLAorKwkJU0hBREVSU19HTFNMLAorKwkJT0ZGU0NSRUVOLAor KwkJU1RBR0VfTVVMVElQTEUsCisrCQlTV0FQX0VWRU5UUzsKKysJCVtDQ29kZSAoY25hbWUgPSAi Y2x1dHRlcl9mZWF0dXJlX2F2YWlsYWJsZSIpXQorKwkJcHVibGljIGJvb2wgaXNfYXZhaWxhYmxl ICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX2ZlYXR1cmVfZ2V0X2FsbCIpXQorKwkJ cHVibGljIHN0YXRpYyBDbHV0dGVyLkZlYXR1cmVGbGFncyBAZ2V0ICgpOworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xV VFRFUl9GTE9XXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9mbG93X29yaWVudGF0aW9uX2dldF90eXBl ICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJcHVibGljIGVudW0gRmxvd09y aWVudGF0aW9uIHsKKysJCUhPUklaT05UQUwsCisrCQlWRVJUSUNBTAorKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRF Ul9HRVNUVVJFX1RSSUdHRVJfRURHRV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfZ2VzdHVyZV90cmln Z2VyX2VkZ2VfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTgiKV0KKysJ cHVibGljIGVudW0gR2VzdHVyZVRyaWdnZXJFZGdlIHsKKysJCU5PTkUsCisrCQlBRlRFUiwKKysJ CUJFRk9SRQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9HUkFWSVRZXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9n cmF2aXR5X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVw cmVjYXRlZF9zaW5jZSA9ICIxLjIyIiwgc2luY2UgPSAiMC4yIildCisrCXB1YmxpYyBlbnVtIEdy YXZpdHkgeworKwkJTk9ORSwKKysJCU5PUlRILAorKwkJTk9SVEhfRUFTVCwKKysJCUVBU1QsCisr CQlTT1VUSF9FQVNULAorKwkJU09VVEgsCisrCQlTT1VUSF9XRVNULAorKwkJV0VTVCwKKysJCU5P UlRIX1dFU1QsCisrCQlDRU5URVIKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfR1JJRF9QT1NJVElPTl8iLCB0 eXBlX2lkID0gImNsdXR0ZXJfZ3JpZF9wb3NpdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMS4xMiIpXQorKwlwdWJsaWMgZW51bSBHcmlkUG9zaXRpb24geworKwkJTEVG VCwKKysJCVJJR0hULAorKwkJVE9QLAorKwkJQk9UVE9NCisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0lOSVRf IiwgdHlwZV9pZCA9ICJjbHV0dGVyX2luaXRfZXJyb3JfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjAuMiIpXQorKwlwdWJsaWMgZW51bSBJbml0RXJyb3IgeworKwkJU1VDQ0VT UywKKysJCUVSUk9SX1VOS05PV04sCisrCQlFUlJPUl9USFJFQURTLAorKwkJRVJST1JfQkFDS0VO RCwKKysJCUVSUk9SX0lOVEVSTkFMOworKwkJcHVibGljIHN0YXRpYyBHTGliLlF1YXJrIHF1YXJr ICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9JTlBVVF9BWElTXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9p bnB1dF9heGlzX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJ cHVibGljIGVudW0gSW5wdXRBeGlzIHsKKysJCUlHTk9SRSwKKysJCVgsCisrCQlZLAorKwkJUFJF U1NVUkUsCisrCQlYVElMVCwKKysJCVlUSUxULAorKwkJV0hFRUwsCisrCQlESVNUQU5DRSwKKysJ CVJPVEFUSU9OLAorKwkJU0xJREVSLAorKwkJTEFTVAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9JTlBVVF9D T05URU5UX0hJTlRfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2lucHV0X2NvbnRlbnRfaGludF9mbGFn c19nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCXB1YmxpYyBlbnVtIElucHV0Q29udGVudEhp bnRGbGFncyB7CisrCQlDT01QTEVUSU9OLAorKwkJU1BFTExDSEVDSywKKysJCUFVVE9fQ0FQSVRB TElaQVRJT04sCisrCQlMT1dFUkNBU0UsCisrCQlVUFBFUkNBU0UsCisrCQlUSVRMRUNBU0UsCisr CQlISURERU5fVEVYVCwKKysJCVNFTlNJVElWRV9EQVRBLAorKwkJTEFUSU4sCisrCQlNVUxUSUxJ TkUKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjcHJlZml4ID0gIkNMVVRURVJfSU5QVVRfQ09OVEVOVF9QVVJQT1NFXyIsIHR5cGVfaWQgPSAi Y2x1dHRlcl9pbnB1dF9jb250ZW50X3B1cnBvc2VfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVu dW0gSW5wdXRDb250ZW50UHVycG9zZSB7CisrCQlOT1JNQUwsCisrCQlBTFBIQSwKKysJCURJR0lU UywKKysJCU5VTUJFUiwKKysJCVBIT05FLAorKwkJVVJMLAorKwkJRU1BSUwsCisrCQlOQU1FLAor KwkJUEFTU1dPUkQsCisrCQlEQVRFLAorKwkJVElNRSwKKysJCURBVEVUSU1FLAorKwkJVEVSTUlO QUwKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjcHJlZml4ID0gIkNMVVRURVJfSU5QVVRfREVWSUNFX01BUFBJTkdfIiwgdHlwZV9pZCA9ICJj bHV0dGVyX2lucHV0X2RldmljZV9tYXBwaW5nX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVt IElucHV0RGV2aWNlTWFwcGluZyB7CisrCQlBQlNPTFVURSwKKysJCVJFTEFUSVZFCisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9 ICJDTFVUVEVSX0lOUFVUX0RFVklDRV9QQURfU09VUkNFXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9p bnB1dF9kZXZpY2VfcGFkX3NvdXJjZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBJbnB1 dERldmljZVBhZFNvdXJjZSB7CisrCQlVTktOT1dOLAorKwkJRklOR0VSCisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVU VEVSX0lOUFVUX0RFVklDRV9UT09MXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9pbnB1dF9kZXZpY2Vf dG9vbF90eXBlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjI4IildCisr CXB1YmxpYyBlbnVtIElucHV0RGV2aWNlVG9vbFR5cGUgeworKwkJTk9ORSwKKysJCVBFTiwKKysJ CUVSQVNFUiwKKysJCUJSVVNILAorKwkJUEVOQ0lMLAorKwkJQUlSQlJVU0gsCisrCQlNT1VTRSwK KysJCUxFTlMKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2lucHV0X2Rl dmljZV90eXBlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJ cHVibGljIGVudW0gSW5wdXREZXZpY2VUeXBlIHsKKysJCVBPSU5URVJfREVWSUNFLAorKwkJS0VZ Qk9BUkRfREVWSUNFLAorKwkJRVhURU5TSU9OX0RFVklDRSwKKysJCUpPWVNUSUNLX0RFVklDRSwK KysJCVRBQkxFVF9ERVZJQ0UsCisrCQlUT1VDSFBBRF9ERVZJQ0UsCisrCQlUT1VDSFNDUkVFTl9E RVZJQ0UsCisrCQlQRU5fREVWSUNFLAorKwkJRVJBU0VSX0RFVklDRSwKKysJCUNVUlNPUl9ERVZJ Q0UsCisrCQlQQURfREVWSUNFLAorKwkJTl9ERVZJQ0VfVFlQRVMKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJf SU5QVVRfTU9ERV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfaW5wdXRfbW9kZV9nZXRfdHlwZSAoKSIp XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCXB1YmxpYyBlbnVtIElucHV0TW9kZSB7 CisrCQlNQVNURVIsCisrCQlTTEFWRSwKKysJCUZMT0FUSU5HCisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0lO UFVUX1BBTkVMX1NUQVRFXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9pbnB1dF9wYW5lbF9zdGF0ZV9n ZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBJbnB1dFBhbmVsU3RhdGUgeworKwkJT0ZGLAor KwkJT04sCisrCQlUT0dHTEUKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfSU5URVJQT0xBVElPTl8iLCB0eXBl X2lkID0gImNsdXR0ZXJfaW50ZXJwb2xhdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAo ZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4yMiIsIHNpbmNlID0gIjEu MiIpXQorKwlwdWJsaWMgZW51bSBJbnRlcnBvbGF0aW9uIHsKKysJCUxJTkVBUiwKKysJCUNVQklD CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y3ByZWZpeCA9ICJDTFVUVEVSX0tFWV9TVEFURV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfa2V5X3N0 YXRlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIEtleVN0YXRlIHsKKysJCVJFTEVBU0VE LAorKwkJUFJFU1NFRAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9BMTFZXyIsIHR5cGVfaWQgPSAiY2x1dHRl cl9rZXlib2FyZF9hMTF5X2ZsYWdzX2dldF90eXBlICgpIildCisrCVtGbGFnc10KKysJcHVibGlj IGVudW0gS2V5Ym9hcmRBMTF5RmxhZ3MgeworKwkJS0VZQk9BUkRfRU5BQkxFRCwKKysJCVRJTUVP VVRfRU5BQkxFRCwKKysJCU1PVVNFX0tFWVNfRU5BQkxFRCwKKysJCVNMT1dfS0VZU19FTkFCTEVE LAorKwkJU0xPV19LRVlTX0JFRVBfUFJFU1MsCisrCQlTTE9XX0tFWVNfQkVFUF9BQ0NFUFQsCisr CQlTTE9XX0tFWVNfQkVFUF9SRUpFQ1QsCisrCQlCT1VOQ0VfS0VZU19FTkFCTEVELAorKwkJQk9V TkNFX0tFWVNfQkVFUF9SRUpFQ1QsCisrCQlUT0dHTEVfS0VZU19FTkFCTEVELAorKwkJU1RJQ0tZ X0tFWVNfRU5BQkxFRCwKKysJCVNUSUNLWV9LRVlTX1RXT19LRVlfT0ZGLAorKwkJU1RJQ0tZX0tF WVNfQkVFUCwKKysJCUZFQVRVUkVfU1RBVEVfQ0hBTkdFX0JFRVAKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJf TE9OR19QUkVTU18iLCB0eXBlX2lkID0gImNsdXR0ZXJfbG9uZ19wcmVzc19zdGF0ZV9nZXRfdHlw ZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCXB1YmxpYyBlbnVtIExvbmdQ cmVzc1N0YXRlIHsKKysJCVFVRVJZLAorKwkJQUNUSVZBVEUsCisrCQlDQU5DRUwKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0g IkNMVVRURVJfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX21vZGlmaWVyX3R5cGVfZ2V0X3R5cGUgKCki KV0KKysJW0ZsYWdzXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCXB1YmxpYyBlbnVt IE1vZGlmaWVyVHlwZSB7CisrCQlTSElGVF9NQVNLLAorKwkJTE9DS19NQVNLLAorKwkJQ09OVFJP TF9NQVNLLAorKwkJTU9EMV9NQVNLLAorKwkJTU9EMl9NQVNLLAorKwkJTU9EM19NQVNLLAorKwkJ TU9ENF9NQVNLLAorKwkJTU9ENV9NQVNLLAorKwkJQlVUVE9OMV9NQVNLLAorKwkJQlVUVE9OMl9N QVNLLAorKwkJQlVUVE9OM19NQVNLLAorKwkJQlVUVE9ONF9NQVNLLAorKwkJQlVUVE9ONV9NQVNL LAorKwkJTU9ESUZJRVJfUkVTRVJWRURfMTNfTUFTSywKKysJCU1PRElGSUVSX1JFU0VSVkVEXzE0 X01BU0ssCisrCQlNT0RJRklFUl9SRVNFUlZFRF8xNV9NQVNLLAorKwkJTU9ESUZJRVJfUkVTRVJW RURfMTZfTUFTSywKKysJCU1PRElGSUVSX1JFU0VSVkVEXzE3X01BU0ssCisrCQlNT0RJRklFUl9S RVNFUlZFRF8xOF9NQVNLLAorKwkJTU9ESUZJRVJfUkVTRVJWRURfMTlfTUFTSywKKysJCU1PRElG SUVSX1JFU0VSVkVEXzIwX01BU0ssCisrCQlNT0RJRklFUl9SRVNFUlZFRF8yMV9NQVNLLAorKwkJ TU9ESUZJRVJfUkVTRVJWRURfMjJfTUFTSywKKysJCU1PRElGSUVSX1JFU0VSVkVEXzIzX01BU0ss CisrCQlNT0RJRklFUl9SRVNFUlZFRF8yNF9NQVNLLAorKwkJTU9ESUZJRVJfUkVTRVJWRURfMjVf TUFTSywKKysJCVNVUEVSX01BU0ssCisrCQlIWVBFUl9NQVNLLAorKwkJTUVUQV9NQVNLLAorKwkJ TU9ESUZJRVJfUkVTRVJWRURfMjlfTUFTSywKKysJCVJFTEVBU0VfTUFTSywKKysJCU1PRElGSUVS X01BU0sKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjcHJlZml4ID0gIkNMVVRURVJfT0ZGU0NSRUVOX1JFRElSRUNUXyIsIHR5cGVfaWQgPSAi Y2x1dHRlcl9vZmZzY3JlZW5fcmVkaXJlY3RfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlb VmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCXB1YmxpYyBlbnVtIE9mZnNjcmVlblJlZGlyZWN0 IHsKKysJCUFVVE9NQVRJQ19GT1JfT1BBQ0lUWSwKKysJCUFMV0FZUworKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRF Ul9PUklFTlRBVElPTl8iLCB0eXBlX2lkID0gImNsdXR0ZXJfb3JpZW50YXRpb25fZ2V0X3R5cGUg KCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJcHVibGljIGVudW0gT3JpZW50 YXRpb24geworKwkJSE9SSVpPTlRBTCwKKysJCVZFUlRJQ0FMCisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1BB Tl8iLCB0eXBlX2lkID0gImNsdXR0ZXJfcGFuX2F4aXNfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTIiKV0KKysJcHVibGljIGVudW0gUGFuQXhpcyB7CisrCQlBWElTX05P TkUsCisrCQlYX0FYSVMsCisrCQlZX0FYSVMsCisrCQlBWElTX0FVVE8KKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRU RVJfUEFUSF8iLCB0eXBlX2lkID0gImNsdXR0ZXJfcGF0aF9ub2RlX3R5cGVfZ2V0X3R5cGUgKCki KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgZW51bSBQYXRoTm9kZVR5 cGUgeworKwkJTU9WRV9UTywKKysJCUxJTkVfVE8sCisrCQlDVVJWRV9UTywKKysJCUNMT1NFLAor KwkJUkVMX01PVkVfVE8sCisrCQlSRUxfTElORV9UTywKKysJCVJFTF9DVVJWRV9UTworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXgg PSAiQ0xVVFRFUl9ERUJVR19OT1BfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3BpY2tfZGVidWdfZmxh Z19nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCXB1YmxpYyBlbnVtIFBpY2tEZWJ1Z0ZsYWcg eworKwkJUElDS0lORworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9QSUNLXyIsIHR5cGVfaWQgPSAiY2x1dHRl cl9waWNrX21vZGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwlwdWJsaWMgZW51bSBQaWNrTW9kZSB7CisrCQlOT05FLAorKwkJUkVBQ1RJVkUsCisrCQlBTEwK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj cHJlZml4ID0gIkNMVVRURVJfQTExWV9EV0VMTF9DTElDS19UWVBFXyIsIHR5cGVfaWQgPSAiY2x1 dHRlcl9wb2ludGVyX2ExMXlfZHdlbGxfY2xpY2tfdHlwZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJs aWMgZW51bSBQb2ludGVyQTExeUR3ZWxsQ2xpY2tUeXBlIHsKKysJCU5PTkUsCisrCQlQUklNQVJZ LAorKwkJU0VDT05EQVJZLAorKwkJTUlERExFLAorKwkJRE9VQkxFLAorKwkJRFJBRworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXgg PSAiQ0xVVFRFUl9BMTFZX0RXRUxMX0RJUkVDVElPTl8iLCB0eXBlX2lkID0gImNsdXR0ZXJfcG9p bnRlcl9hMTF5X2R3ZWxsX2RpcmVjdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBQ b2ludGVyQTExeUR3ZWxsRGlyZWN0aW9uIHsKKysJCU5PTkUsCisrCQlMRUZULAorKwkJUklHSFQs CisrCQlVUCwKKysJCURPV04KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfQTExWV9EV0VMTF9NT0RFXyIsIHR5 cGVfaWQgPSAiY2x1dHRlcl9wb2ludGVyX2ExMXlfZHdlbGxfbW9kZV9nZXRfdHlwZSAoKSIpXQor KwlwdWJsaWMgZW51bSBQb2ludGVyQTExeUR3ZWxsTW9kZSB7CisrCQlXSU5ET1csCisrCQlHRVNU VVJFCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY3ByZWZpeCA9ICJDTFVUVEVSX0ExMVlfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3BvaW50ZXJf YTExeV9mbGFnc19nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCXB1YmxpYyBlbnVtIFBvaW50 ZXJBMTF5RmxhZ3MgeworKwkJU0VDT05EQVJZX0NMSUNLX0VOQUJMRUQsCisrCQlEV0VMTF9FTkFC TEVECisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY3ByZWZpeCA9ICJDTFVUVEVSX0ExMVlfVElNRU9VVF9UWVBFXyIsIHR5cGVfaWQgPSAiY2x1 dHRlcl9wb2ludGVyX2ExMXlfdGltZW91dF90eXBlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBl bnVtIFBvaW50ZXJBMTF5VGltZW91dFR5cGUgeworKwkJU0VDT05EQVJZX0NMSUNLLAorKwkJRFdF TEwsCisrCQlHRVNUVVJFCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1JFUEFJTlRfRkxBR1NfIiwgdHlwZV9p ZCA9ICJjbHV0dGVyX3JlcGFpbnRfZmxhZ3NfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgZW51bSBSZXBhaW50RmxhZ3Mgewor KwkJUFJFX1BBSU5ULAorKwkJUE9TVF9QQUlOVCwKKysJCVFVRVVFX1JFRFJBV19PTl9BREQKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJl Zml4ID0gIkNMVVRURVJfUkVRVUVTVF8iLCB0eXBlX2lkID0gImNsdXR0ZXJfcmVxdWVzdF9tb2Rl X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJcHVibGljIGVu dW0gUmVxdWVzdE1vZGUgeworKwkJSEVJR0hUX0ZPUl9XSURUSCwKKysJCVdJRFRIX0ZPUl9IRUlH SFQsCisrCQlDT05URU5UX1NJWkUKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfIiwgdHlwZV9pZCA9ICJjbHV0 dGVyX3JvdGF0ZV9heGlzX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQi KV0KKysJcHVibGljIGVudW0gUm90YXRlQXhpcyB7CisrCQlYX0FYSVMsCisrCQlZX0FYSVMsCisr CQlaX0FYSVMKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfUk9UQVRFXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9y b3RhdGVfZGlyZWN0aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0g dHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjIyIiwgc2luY2UgPSAiMC40IildCisrCXB1Ymxp YyBlbnVtIFJvdGF0ZURpcmVjdGlvbiB7CisrCQlDVywKKysJCUNDVworKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRF Ul9TQ0FMSU5HX0ZJTFRFUl8iLCB0eXBlX2lkID0gImNsdXR0ZXJfc2NhbGluZ19maWx0ZXJfZ2V0 X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGVudW0g U2NhbGluZ0ZpbHRlciB7CisrCQlMSU5FQVIsCisrCQlORUFSRVNULAorKwkJVFJJTElORUFSCisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3By ZWZpeCA9ICJDTFVUVEVSX1NDUk9MTF8iLCB0eXBlX2lkID0gImNsdXR0ZXJfc2Nyb2xsX2RpcmVj dGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCXB1Ymxp YyBlbnVtIFNjcm9sbERpcmVjdGlvbiB7CisrCQlVUCwKKysJCURPV04sCisrCQlMRUZULAorKwkJ UklHSFQsCisrCQlTTU9PVEgKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfU0NST0xMX0ZJTklTSEVEXyIsIHR5 cGVfaWQgPSAiY2x1dHRlcl9zY3JvbGxfZmluaXNoX2ZsYWdzX2dldF90eXBlICgpIildCisrCVtG bGFnc10KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjYiKV0KKysJcHVibGljIGVudW0gU2Nyb2xs RmluaXNoRmxhZ3MgeworKwkJTk9ORSwKKysJCUhPUklaT05UQUwsCisrCQlWRVJUSUNBTAorKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVm aXggPSAiQ0xVVFRFUl9TQ1JPTExfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3Njcm9sbF9tb2RlX2dl dF90eXBlICgpIildCisrCVtGbGFnc10KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJ cHVibGljIGVudW0gU2Nyb2xsTW9kZSB7CisrCQlOT05FLAorKwkJSE9SSVpPTlRBTExZLAorKwkJ VkVSVElDQUxMWSwKKysJCUJPVEgKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfU0NST0xMX1NPVVJDRV8iLCB0 eXBlX2lkID0gImNsdXR0ZXJfc2Nyb2xsX3NvdXJjZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMS4yNiIpXQorKwlwdWJsaWMgZW51bSBTY3JvbGxTb3VyY2UgeworKwkJVU5L Tk9XTiwKKysJCVdIRUVMLAorKwkJRklOR0VSLAorKwkJQ09OVElOVU9VUworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xV VFRFUl8iLCB0eXBlX2lkID0gImNsdXR0ZXJfc2hhZGVyX3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgZW51bSBTaGFkZXJUeXBlIHsKKysJ CVZFUlRFWF9TSEFERVIsCisrCQlGUkFHTUVOVF9TSEFERVIKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfU05B UF9FREdFXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zbmFwX2VkZ2VfZ2V0X3R5cGUgKCkiKV0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwlwdWJsaWMgZW51bSBTbmFwRWRnZSB7CisrCQlU T1AsCisrCQlSSUdIVCwKKysJCUJPVFRPTSwKKysJCUxFRlQKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfU1RB R0VfU1RBVEVfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3N0YWdlX3N0YXRlX2dldF90eXBlICgpIild CisrCVtGbGFnc10KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwlwdWJsaWMgZW51bSBT dGFnZVN0YXRlIHsKKysJCUFDVElWQVRFRAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9DT0xPUl8iLCB0eXBl X2lkID0gImNsdXR0ZXJfc3RhdGljX2NvbG9yX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChz aW5jZSA9ICIxLjYiKV0KKysJcHVibGljIGVudW0gU3RhdGljQ29sb3IgeworKwkJV0hJVEUsCisr CQlCTEFDSywKKysJCVJFRCwKKysJCURBUktfUkVELAorKwkJR1JFRU4sCisrCQlEQVJLX0dSRUVO LAorKwkJQkxVRSwKKysJCURBUktfQkxVRSwKKysJCUNZQU4sCisrCQlEQVJLX0NZQU4sCisrCQlN QUdFTlRBLAorKwkJREFSS19NQUdFTlRBLAorKwkJWUVMTE9XLAorKwkJREFSS19ZRUxMT1csCisr CQlHUkFZLAorKwkJREFSS19HUkFZLAorKwkJTElHSFRfR1JBWSwKKysJCUJVVFRFUiwKKysJCUJV VFRFUl9MSUdIVCwKKysJCUJVVFRFUl9EQVJLLAorKwkJT1JBTkdFLAorKwkJT1JBTkdFX0xJR0hU LAorKwkJT1JBTkdFX0RBUkssCisrCQlDSE9DT0xBVEUsCisrCQlDSE9DT0xBVEVfTElHSFQsCisr CQlDSE9DT0xBVEVfREFSSywKKysJCUNIQU1FTEVPTiwKKysJCUNIQU1FTEVPTl9MSUdIVCwKKysJ CUNIQU1FTEVPTl9EQVJLLAorKwkJU0tZX0JMVUUsCisrCQlTS1lfQkxVRV9MSUdIVCwKKysJCVNL WV9CTFVFX0RBUkssCisrCQlQTFVNLAorKwkJUExVTV9MSUdIVCwKKysJCVBMVU1fREFSSywKKysJ CVNDQVJMRVRfUkVELAorKwkJU0NBUkxFVF9SRURfTElHSFQsCisrCQlTQ0FSTEVUX1JFRF9EQVJL LAorKwkJQUxVTUlOSVVNXzEsCisrCQlBTFVNSU5JVU1fMiwKKysJCUFMVU1JTklVTV8zLAorKwkJ QUxVTUlOSVVNXzQsCisrCQlBTFVNSU5JVU1fNSwKKysJCUFMVU1JTklVTV82LAorKwkJVFJBTlNQ QVJFTlQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjcHJlZml4ID0gIkNMVVRURVJfU1RFUF9NT0RFXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9z dGVwX21vZGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJ cHVibGljIGVudW0gU3RlcE1vZGUgeworKwkJU1RBUlQsCisrCQlFTkQKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRU RVJfU1dJUEVfRElSRUNUSU9OXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zd2lwZV9kaXJlY3Rpb25f Z2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisr CXB1YmxpYyBlbnVtIFN3aXBlRGlyZWN0aW9uIHsKKysJCVVQLAorKwkJRE9XTiwKKysJCUxFRlQs CisrCQlSSUdIVAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9URVhUX0RJUkVDVElPTl8iLCB0eXBlX2lkID0g ImNsdXR0ZXJfdGV4dF9kaXJlY3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMiIpXQorKwlwdWJsaWMgZW51bSBUZXh0RGlyZWN0aW9uIHsKKysJCURFRkFVTFQsCisr CQlMVFIsCisrCQlSVEwKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfVEVYVFVSRV8iLCB0eXBlX2lkID0gImNs dXR0ZXJfdGV4dHVyZV9mbGFnc19nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCVtWZXJzaW9u IChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjIyIiwgc2luY2UgPSAi MC40IildCisrCXB1YmxpYyBlbnVtIFRleHR1cmVGbGFncyB7CisrCQlOT05FLAorKwkJUkdCX0ZM QUdfQkdSLAorKwkJUkdCX0ZMQUdfUFJFTVVMVCwKKysJCVlVVl9GTEFHX1lVVjIKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0g IkNMVVRURVJfVEVYVFVSRV9RVUFMSVRZXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl90ZXh0dXJlX3F1 YWxpdHlfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXBy ZWNhdGVkX3NpbmNlID0gIjEuMjIiLCBzaW5jZSA9ICIwLjgiKV0KKysJcHVibGljIGVudW0gVGV4 dHVyZVF1YWxpdHkgeworKwkJTE9XLAorKwkJTUVESVVNLAorKwkJSElHSAorKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xV VFRFUl9USU1FTElORV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfdGltZWxpbmVfZGlyZWN0aW9uX2dl dF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJcHVibGljIGVudW0g VGltZWxpbmVEaXJlY3Rpb24geworKwkJRk9SV0FSRCwKKysJCUJBQ0tXQVJECisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJD TFVUVEVSX1RPVUNIUEFEX0dFU1RVUkVfUEhBU0VfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3RvdWNo cGFkX2dlc3R1cmVfcGhhc2VfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEu MjQiKV0KKysJcHVibGljIGVudW0gVG91Y2hwYWRHZXN0dXJlUGhhc2UgeworKwkJQkVHSU4sCisr CQlVUERBVEUsCisrCQlFTkQsCisrCQlDQU5DRUwKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfVU5JVF8iLCB0 eXBlX2lkID0gImNsdXR0ZXJfdW5pdF90eXBlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChz aW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGVudW0gVW5pdFR5cGUgeworKwkJUElYRUwsCisrCQlF TSwKKysJCU1NLAorKwkJUE9JTlQsCisrCQlDTQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9WSVJUVUFMX0RF VklDRV9UWVBFXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl92aXJ0dWFsX2RldmljZV90eXBlX2dldF90 eXBlICgpIildCisrCVtGbGFnc10KKysJcHVibGljIGVudW0gVmlydHVhbERldmljZVR5cGUgewor KwkJTk9ORSwKKysJCUtFWUJPQVJELAorKwkJUE9JTlRFUiwKKysJCVRPVUNIU0NSRUVOCisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZp eCA9ICJDTFVUVEVSX1pPT01fIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3pvb21fYXhpc19nZXRfdHlw ZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwlwdWJsaWMgZW51bSBab29t QXhpcyB7CisrCQlYX0FYSVMsCisrCQlZX0FYSVMsCisrCQlCT1RICisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVS X0lNQUdFX0VSUk9SX0lOVkFMSURfIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisr CXB1YmxpYyBlcnJvcmRvbWFpbiBJbWFnZUVycm9yIHsKKysJCURBVEE7CisrCQlwdWJsaWMgc3Rh dGljIEdMaWIuUXVhcmsgcXVhcmsgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1NDUklQVF9FUlJPUl9J TlZBTElEXyIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCXB1YmxpYyBlcnJvcmRv bWFpbiBTY3JpcHRFcnJvciB7CisrCQlUWVBFX0ZVTkNUSU9OLAorKwkJUFJPUEVSVFksCisrCQlW QUxVRTsKKysJCXB1YmxpYyBzdGF0aWMgR0xpYi5RdWFyayBxdWFyayAoKTsKKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBpbnN0YW5jZV9wb3Mg PSAxLjkpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yNCIpXQorKwlwdWJsaWMgZGVsZWdhdGUg Q2x1dHRlci5BY3RvciBBY3RvckNyZWF0ZUNoaWxkRnVuYyAoR0xpYi5PYmplY3QgaXRlbSk7Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGluc3RhbmNl X3BvcyA9IDEuOSldCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9z aW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMC4yIildCisrCXB1YmxpYyBkZWxlZ2F0ZSBkb3VibGUg QWxwaGFGdW5jIChDbHV0dGVyLkFscGhhIGFscGhhKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaW5zdGFuY2VfcG9zID0gNC45KV0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgZGVsZWdhdGUgYm9vbCBCaW5kaW5nQWN0aW9u RnVuYyAoR0xpYi5PYmplY3QgZ29iamVjdCwgc3RyaW5nIGFjdGlvbl9uYW1lLCB1aW50IGtleV92 YWwsIENsdXR0ZXIuTW9kaWZpZXJUeXBlIG1vZGlmaWVycyk7CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGluc3RhbmNlX3BvcyA9IDEuOSldCisrCXB1 YmxpYyBkZWxlZ2F0ZSB2b2lkIENhbGxiYWNrIChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3RhcmdldCA9 IGZhbHNlKV0KKysJcHVibGljIGRlbGVnYXRlIHZvaWQgRW1pdElucHV0RGV2aWNlRXZlbnQgKENs dXR0ZXIuRXZlbnQgZXZlbnQsIENsdXR0ZXIuSW5wdXREZXZpY2UgZGV2aWNlKTsKKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaW5zdGFuY2VfcG9zID0g MS45KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTgiKV0KKysJcHVibGljIGRlbGVnYXRlIGJv b2wgRXZlbnRGaWx0ZXJGdW5jIChDbHV0dGVyLkV2ZW50IGV2ZW50KTsKKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaW5zdGFuY2VfcG9zID0gMS45KV0K KysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgZGVsZWdhdGUgdm9pZCBQYXRo Q2FsbGJhY2sgKENsdXR0ZXIuUGF0aE5vZGUgbm9kZSk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGhhc190YXJnZXQgPSBmYWxzZSldCisrCVtWZXJz aW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGRlbGVnYXRlIGJvb2wgUHJvZ3Jlc3NGdW5j IChHTGliLlZhbHVlIGEsIEdMaWIuVmFsdWUgYiwgZG91YmxlIHByb2dyZXNzLCBHTGliLlZhbHVl IHJldHZhbCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGluc3RhbmNlX3BvcyA9IDYuOSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJ cHVibGljIGRlbGVnYXRlIHZvaWQgU2NyaXB0Q29ubmVjdEZ1bmMgKENsdXR0ZXIuU2NyaXB0IHNj cmlwdCwgR0xpYi5PYmplY3Qgb2JqZWN0LCBzdHJpbmcgc2lnbmFsX25hbWUsIHN0cmluZyBoYW5k bGVyX25hbWUsIEdMaWIuT2JqZWN0IGNvbm5lY3Rfb2JqZWN0LCBHTGliLkNvbm5lY3RGbGFncyBm bGFncyk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGluc3RhbmNlX3BvcyA9IDMuOSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1 YmxpYyBkZWxlZ2F0ZSBkb3VibGUgVGltZWxpbmVQcm9ncmVzc0Z1bmMgKENsdXR0ZXIuVGltZWxp bmUgdGltZWxpbmUsIGRvdWJsZSBlbGFwc2VkLCBkb3VibGUgdG90YWwpOworKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0NP R0wiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0g IjEuMTAiLCBzaW5jZSA9ICIwLjQiKV0KKysJcHVibGljIGNvbnN0IHN0cmluZyBDT0dMOworKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0NVUlJFTlRfVElNRSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCXB1 YmxpYyBjb25zdCBpbnQgQ1VSUkVOVF9USU1FOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0ZMQVZPVVIiKV0KKysJW1Zl cnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5j ZSA9ICIwLjQiKV0KKysJcHVibGljIGNvbnN0IHN0cmluZyBGTEFWT1VSOworKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX1BB VEhfUkVMQVRJVkUiKV0KKysJcHVibGljIGNvbnN0IGludCBQQVRIX1JFTEFUSVZFOworKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX1BSSU9SSVRZX1JFRFJBVyIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCXB1 YmxpYyBjb25zdCBpbnQgUFJJT1JJVFlfUkVEUkFXOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIGJhc2VfaW5p dCAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIild CisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBjYWly b19jbGVhciAoQ2Fpcm8uQ29udGV4dCBjcik7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1 YmxpYyBzdGF0aWMgdm9pZCBjYWlyb19zZXRfc291cmNlX2NvbG9yIChDYWlyby5Db250ZXh0IGNy LCBDbHV0dGVyLkNvbG9yIGNvbG9yKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1Ymxp YyBzdGF0aWMgYm9vbCBjaGVja193aW5kb3dpbmdfYmFja2VuZCAoc3RyaW5nIGJhY2tlbmRfdHlw ZSk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQor KwlwdWJsaWMgc3RhdGljIHZvaWQgY29sb3JfZnJvbV9obHMgKG91dCBDbHV0dGVyLkNvbG9yIGNv bG9yLCBmbG9hdCBodWUsIGZsb2F0IGx1bWluYW5jZSwgZmxvYXQgc2F0dXJhdGlvbik7CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlwdWJsaWMg c3RhdGljIHZvaWQgY29sb3JfZnJvbV9waXhlbCAob3V0IENsdXR0ZXIuQ29sb3IgY29sb3IsIHVp bnQzMiBwaXhlbCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBzdGF0aWMgYm9v bCBjb2xvcl9mcm9tX3N0cmluZyAob3V0IENsdXR0ZXIuQ29sb3IgY29sb3IsIHN0cmluZyBzdHIp OworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwlwdWJsaWMgc3RhdGljIHVub3duZWQgQ2x1dHRl ci5Db2xvcj8gY29sb3JfZ2V0X3N0YXRpYyAoQ2x1dHRlci5TdGF0aWNDb2xvciBjb2xvcik7Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMS4xNCIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgZGlzYWJsZV9hY2Nl c3NpYmlsaXR5ICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwlwdWJsaWMgc3RhdGljIHZv aWQgZG9fZXZlbnQgKENsdXR0ZXIuRXZlbnQgZXZlbnQpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTgi KV0KKysJcHVibGljIHN0YXRpYyB1aW50IGV2ZW50X2FkZF9maWx0ZXIgKENsdXR0ZXIuU3RhZ2U/ IHN0YWdlLCBbQ0NvZGUgKGRlbGVnYXRlX3RhcmdldF9wb3MgPSAyLjIsIGRlc3Ryb3lfbm90aWZ5 X3BvcyA9IDIuMSldIG93bmVkIENsdXR0ZXIuRXZlbnRGaWx0ZXJGdW5jIGZ1bmMpOworKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24g KHNpbmNlID0gIjAuNCIpXQorKwlwdWJsaWMgc3RhdGljIENsdXR0ZXIuRXZlbnQgZXZlbnRfZ2V0 ICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0K KysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwlwdWJsaWMgc3RhdGljIHVub3duZWQgQ2x1 dHRlci5FdmVudCBldmVudF9wZWVrICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTgiKV0KKysJcHVi bGljIHN0YXRpYyB2b2lkIGV2ZW50X3JlbW92ZV9maWx0ZXIgKHVpbnQgaWQpOworKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNp bmNlID0gIjAuNCIpXQorKwlwdWJsaWMgc3RhdGljIGJvb2wgZXZlbnRzX3BlbmRpbmcgKCk7Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBzdGF0aWMgYm9vbCBnZXRfYWNjZXNzaWJp bGl0eV9lbmFibGVkICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwlwdWJsaWMgc3RhdGlj IHVub3duZWQgQ2x1dHRlci5FdmVudCBnZXRfY3VycmVudF9ldmVudCAoKTsKKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjAiKV0KKysJcHVibGljIHN0YXRpYyB1aW50MzIgZ2V0X2N1cnJlbnRfZXZlbnRfdGlt ZSAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIild CisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJcHVibGljIHN0YXRpYyB1bm93bmVkIENs dXR0ZXIuQmFja2VuZCBnZXRfZGVmYXVsdF9iYWNrZW5kICgpOworKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAu NiIpXQorKwlwdWJsaWMgc3RhdGljIHVpbnQgZ2V0X2RlZmF1bHRfZnJhbWVfcmF0ZSAoKTsKKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJz aW9uIChzaW5jZSA9ICIxLjIiKV0KKysJcHVibGljIHN0YXRpYyBDbHV0dGVyLlRleHREaXJlY3Rp b24gZ2V0X2RlZmF1bHRfdGV4dF9kaXJlY3Rpb24gKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIild CisrCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBQYW5nby5Gb250TWFwIGdldF9mb250X21hcCAoKTsK KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtW ZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJcHVibGljIHN0YXRpYyBHTGliLk9wdGlvbkdyb3Vw IGdldF9vcHRpb25fZ3JvdXAgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCXB1YmxpYyBz dGF0aWMgR0xpYi5PcHRpb25Hcm91cCBnZXRfb3B0aW9uX2dyb3VwX3dpdGhvdXRfaW5pdCAoKTsK KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtW ZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJcHVibGljIHN0YXRpYyB1bm93bmVkIHN0cmluZyBn ZXRfc2NyaXB0X2lkIChHTGliLk9iamVjdCBnb2JqZWN0KTsKKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCXB1YmxpYyBzdGF0aWMgQ2x1dHRlci5J bml0RXJyb3IgaW5pdCAoW0NDb2RlIChhcnJheV9sZW5ndGhfY25hbWUgPSAiYXJnYyIsIGFycmF5 X2xlbmd0aF9wb3MgPSAwLjUpXSByZWYgdW5vd25lZCBzdHJpbmdbXT8gYXJndik7CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMC4yIildCisrCXB1YmxpYyBzdGF0aWMgQ2x1dHRlci5Jbml0RXJyb3IgaW5pdF93 aXRoX2FyZ3MgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoX2NuYW1lID0gImFyZ2MiLCBhcnJheV9sZW5n dGhfcG9zID0gMC41KV0gcmVmIHVub3duZWQgc3RyaW5nW10/IGFyZ3YsIHN0cmluZz8gcGFyYW1l dGVyX3N0cmluZywgW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIEdMaWIuT3B0aW9uRW50 cnlbXT8gZW50cmllcywgc3RyaW5nPyB0cmFuc2xhdGlvbl9kb21haW4pIHRocm93cyBHTGliLkVy cm9yOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0K KysJcHVibGljIHN0YXRpYyB1aW50MzIga2V5c3ltX3RvX3VuaWNvZGUgKHVpbnQga2V5dmFsKTsK KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCXB1 YmxpYyBzdGF0aWMgdm9pZCBtYWluICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiKV0KKysJcHVibGljIHN0YXRpYyBpbnQgbWFpbl9sZXZlbCAoKTsK KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCXB1 YmxpYyBzdGF0aWMgdm9pZCBtYWluX3F1aXQgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgc2V0X2N1c3Rv bV9iYWNrZW5kX2Z1bmMgKHZvaWQqIGZ1bmMpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJ cHVibGljIHN0YXRpYyB1aW50IHVuaWNvZGVfdG9fa2V5c3ltICh1aW50MzIgd2MpOworK30KK2Rp ZmYgLS1naXQgYS92YXBpL211dHRlci1jb2dsLTYtY3VzdG9tLnZhbGEgYi92YXBpL211dHRlci1j b2dsLTYtY3VzdG9tLnZhbGEKK25ldyBmaWxlIG1vZGUgMTAwNjQ0CitpbmRleCAwMDAwMDAwMC4u YTJjMTA2NDUKKy0tLSAvZGV2L251bGwKKysrKyBiL3ZhcGkvbXV0dGVyLWNvZ2wtNi1jdXN0b20u dmFsYQorQEAgLTAsMCArMSwxMjUgQEAKKytuYW1lc3BhY2UgQ29nbCB7CisrCVtDb21wYWN0XQor KwlbQ0NvZGUgKGNuYW1lID0gIkNvZ2xIYW5kbGUiKV0KKysJcHVibGljIGNsYXNzIEJpdG1hcDog SGFuZGxlIHsKKysJCXB1YmxpYyBzdGF0aWMgQml0bWFwIG5ld19mcm9tX2ZpbGUgKHN0cmluZyBm aWxlbmFtZSkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCX0KKysKKysJW0NvbXBhY3RdCisrCVtDQ29k ZSAoY25hbWUgPSAiQ29nbEhhbmRsZSIpXQorKwlwdWJsaWMgY2xhc3MgQnVmZmVyOiBIYW5kbGUg eworKwkJcHVibGljIHVpbnQgZ2V0X3NpemUgKCk7CisrCQlwdWJsaWMgYm9vbCBzZXRfZGF0YSAo c2l6ZV90IG9mZnNldCwgW0NDb2RlIChhcnJheV9sZW5ndGhfdHlwZSA9ICJzaXplX3QiKV0gdWlu dDhbXSBkYXRhKTsKKysJCXB1YmxpYyB2b2lkIHVubWFwICgpOworKwl9CisrCisrCVtDQ29kZSAo aGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgQ29sb3IgeworKwkJcHVibGlj IENvbG9yLmZyb21fNGYgKGZsb2F0IHJlZCwgZmxvYXQgZ3JlZW4sIGZsb2F0IGJsdWUsIGZsb2F0 IGFscGhhKTsKKysJCXB1YmxpYyBDb2xvci5mcm9tXzR1YiAodWludDggcmVkLCB1aW50OCBncmVl biwgdWludDggYmx1ZSwgdWludDggYWxwaGEpOworKwl9CisrCisrCVtDb21wYWN0XQorKwlbQ0Nv ZGUgKHJlZl9mdW5jdGlvbiA9ICJjb2dsX2hhbmRsZV9yZWYiLCB1bnJlZl9mdW5jdGlvbiA9ICJj b2dsX2hhbmRsZV91bnJlZiIpXQorKwlwdWJsaWMgY2xhc3MgSGFuZGxlIHsKKysJCVtDQ29kZSAo Y25hbWUgPSAiY29nbF9pc19iaXRtYXAiKV0KKysJCXB1YmxpYyBib29sIGlzX2JpdG1hcCAoKTsK KysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9pc19idWZmZXIiKV0KKysJCXB1YmxpYyBib29sIGlz X2J1ZmZlciAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9pc19tYXRlcmlhbCIpXQorKwkJ cHVibGljIGJvb2wgaXNfbWF0ZXJpYWwgKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfaXNf b2Zmc2NyZWVuIildCisrCQlwdWJsaWMgYm9vbCBpc19vZmZzY3JlZW4gKCk7CisrCQlbQ0NvZGUg KGNuYW1lID0gImNvZ2xfaXNfcGl4ZWxfYnVmZmVyIildCisrCQlwdWJsaWMgYm9vbCBpc19waXhl bF9idWZmZXIgKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfaXNfcHJvZ3JhbSIpXQorKwkJ cHVibGljIGJvb2wgaXNfcHJvZ3JhbSAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9pc19z aGFkZXIiKV0KKysJCXB1YmxpYyBib29sIGlzX3NoYWRlciAoKTsKKysJCVtDQ29kZSAoY25hbWUg PSAiY29nbF9pc190ZXh0dXJlIildCisrCQlwdWJsaWMgYm9vbCBpc190ZXh0dXJlICgpOworKwkJ W0NDb2RlIChjbmFtZSA9ICJjb2dsX2lzX3ZlcnRleF9idWZmZXIiKV0KKysJCXB1YmxpYyBib29s IGlzX3ZlcnRleF9idWZmZXIgKCk7CisrCX0KKysKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNvZ2wvY29nbC5oIiwgY29weV9mdW5jdGlvbiA9ICJjb2dsX3BhdGhfY29weSIpXQorKwlb Q29tcGFjdF0KKysJcHVibGljIGNsYXNzIFBhdGggeworKwkJcHVibGljIHN0YXRpYyB2b2lkIEBu ZXcgKCk7CisrCX0KKysKKysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFzcyBQaXhlbEJ1ZmZlcjog SGFuZGxlIHsKKysJCXB1YmxpYyBQaXhlbEJ1ZmZlciAodWludCBzaXplKTsKKysJCXB1YmxpYyBQ aXhlbEJ1ZmZlci5mb3Jfc2l6ZSAodWludCB3aWR0aCwgdWludCBoZWlnaHQsIENvZ2wuUGl4ZWxG b3JtYXQgZm9ybWF0LCB1aW50IHN0cmlkZSk7CisrCX0KKysKKysJW0NvbXBhY3RdCisrCVtDQ29k ZSAoY25hbWUgPSAiQ29nbEhhbmRsZSIsIHJlZl9mdW5jdGlvbiA9ICJjb2dsX3Byb2dyYW1fcmVm IiwgdW5yZWZfZnVuY3Rpb24gPSAiY29nbF9wcm9ncmFtX3VucmVmIildCisrCXB1YmxpYyBjbGFz cyBQcm9ncmFtOiBIYW5kbGUgeworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2NyZWF0ZV9wcm9n cmFtIiwgdHlwZSA9ICJDb2dsSGFuZGxlKiIsIGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxz ZSldCisrCQlwdWJsaWMgUHJvZ3JhbSAoKTsKKysJCXB1YmxpYyB2b2lkIGF0dGFjaF9zaGFkZXIg KENvZ2wuU2hhZGVyIHNoYWRlcl9oYW5kbGUpOworKwkJcHVibGljIGludCBnZXRfdW5pZm9ybV9s b2NhdGlvbiAoc3RyaW5nIHVuaWZvcm1fbmFtZSk7CisrCQlwdWJsaWMgdm9pZCBsaW5rICgpOwor KwkJcHVibGljIHN0YXRpYyB2b2lkIHVuaWZvcm1fMWYgKGludCB1bmlmb3JtX25vLCBmbG9hdCB2 YWx1ZSk7CisrCQlwdWJsaWMgc3RhdGljIHZvaWQgdW5pZm9ybV8xaSAoaW50IHVuaWZvcm1fbm8s IGludCB2YWx1ZSk7CisrCQlwdWJsaWMgc3RhdGljIHZvaWQgdW5pZm9ybV9mbG9hdCAoaW50IHVu aWZvcm1fbm8sIGludCBzaXplLCBbQ0NvZGUgKGFycmF5X2xlbmd0aF9wb3MgPSAyLjkpXSBmbG9h dFtdIHZhbHVlKTsKKysJCXB1YmxpYyBzdGF0aWMgdm9pZCB1bmlmb3JtX2ludCAoaW50IHVuaWZv cm1fbm8sIGludCBzaXplLCBbQ0NvZGUgKGFycmF5X2xlbmd0aF9wb3MgPSAyLjkpXSBpbnRbXSB2 YWx1ZSk7CisrCQlwdWJsaWMgc3RhdGljIHZvaWQgdW5pZm9ybV9tYXRyaXggKGludCB1bmlmb3Jt X25vLCBpbnQgc2l6ZSwgYm9vbCB0cmFuc3Bvc2UsIFtDQ29kZSAoYXJyYXlfbGVuZ3RoX3BvcyA9 IDIuOSldIGZsb2F0W10gdmFsdWUpOworKwkJcHVibGljIHZvaWQgdXNlICgpOworKwl9CisrCisr CVtDb21wYWN0XQorKwlbQ0NvZGUgKGNuYW1lID0gIkNvZ2xIYW5kbGUiLCByZWZfZnVuY3Rpb24g PSAiY29nbF9zaGFkZXJfcmVmIiwgdW5yZWZfZnVuY3Rpb24gPSAiY29nbF9zaGFkZXJfdW5yZWYi KV0KKysJcHVibGljIGNsYXNzIFNoYWRlcjogSGFuZGxlIHsKKysJCVtDQ29kZSAoY25hbWUgPSAi Y29nbF9jcmVhdGVfc2hhZGVyIiwgdHlwZSA9ICJDb2dsSGFuZGxlKiIsIGhhc19jb25zdHJ1Y3Rf ZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwdWJsaWMgU2hhZGVyIChDb2dsLlNoYWRlclR5cGUgc2hh ZGVyX3R5cGUpOworKwkJcHVibGljIHZvaWQgY29tcGlsZSAoKTsKKysJCXB1YmxpYyBzdHJpbmcg Z2V0X2luZm9fbG9nICgpOworKwkJcHVibGljIENvZ2wuU2hhZGVyVHlwZSBnZXRfdHlwZSAoKTsK KysJCXB1YmxpYyBib29sIGlzX2NvbXBpbGVkICgpOworKwkJcHVibGljIHZvaWQgc291cmNlIChz dHJpbmcgc291cmNlKTsKKysJfQorKworKwlbQ29tcGFjdF0KKysJW0NDb2RlIChjbmFtZSA9ICJD b2dsSGFuZGxlIiwgcmVmX2Z1bmN0aW9uID0gImNvZ2xfdmVydGV4X2J1ZmZlcl9yZWYiLCB1bnJl Zl9mdW5jdGlvbiA9ICJjb2dsX3ZlcnRleF9idWZmZXJfdW5yZWYiKV0KKysJcHVibGljIGNsYXNz IFZlcnRleEJ1ZmZlcjogSGFuZGxlIHsKKysJCVtDQ29kZSAodHlwZSA9ICJDb2dsSGFuZGxlKiIs IGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwdWJsaWMgVmVydGV4QnVmZmVy ICh1aW50IG5fdmVydGljZXMpOworKwkJcHVibGljIHZvaWQgYWRkIChzdHJpbmcgYXR0cmlidXRl X25hbWUsIHVjaGFyIG5fY29tcG9uZW50cywgQ29nbC5BdHRyaWJ1dGVUeXBlIHR5cGUsIGJvb2wg bm9ybWFsaXplZCwgdWludDE2IHN0cmlkZSwgdm9pZCogcG9pbnRlcik7CisrCQlwdWJsaWMgdm9p ZCBkZWxldGUgKHN0cmluZyBhdHRyaWJ1dGVfbmFtZSk7CisrCQlwdWJsaWMgdm9pZCBkaXNhYmxl IChzdHJpbmcgYXR0cmlidXRlX25hbWUpOworKwkJcHVibGljIHZvaWQgZHJhdyAoQ29nbC5WZXJ0 aWNlc01vZGUgbW9kZSwgaW50IGZpcnN0LCBpbnQgY291bnQpOworKwkJcHVibGljIHZvaWQgZHJh d19lbGVtZW50cyAoQ29nbC5WZXJ0aWNlc01vZGUgbW9kZSwgVmVydGV4QnVmZmVySW5kaWNlcyBp bmRpY2VzLCBpbnQgbWluX2luZGV4LCBpbnQgbWF4X2luZGV4LCBpbnQgaW5kaWNlc19vZmZzZXQs IGludCBjb3VudCk7CisrCQlwdWJsaWMgdm9pZCBlbmFibGUgKHN0cmluZyBhdHRyaWJ1dGVfbmFt ZSk7CisrCQlwdWJsaWMgdWludCBnZXRfbl92ZXJ0aWNlcyAoKTsKKysJCXB1YmxpYyB2b2lkIHN1 Ym1pdCAoKTsKKysJfQorKworKwlbQ29tcGFjdF0KKysJW0NDb2RlIChjbmFtZSA9ICJDb2dsSGFu ZGxlIildCisrCXB1YmxpYyBjbGFzcyBWZXJ0ZXhCdWZmZXJJbmRpY2VzOiBIYW5kbGUgeworKwkJ cHVibGljIFZlcnRleEJ1ZmZlckluZGljZXMgKENvZ2wuSW5kaWNlc1R5cGUgaW5kaWNlc190eXBl LCB2b2lkKiBpbmRpY2VzX2FycmF5LCBpbnQgaW5kaWNlc19sZW4pOworKwkJcHVibGljIHN0YXRp YyB1bm93bmVkIENvZ2wuVmVydGV4QnVmZmVySW5kaWNlcyBnZXRfZm9yX3F1YWRzICh1aW50IG5f aW5kaWNlcyk7CisrCQlwdWJsaWMgQ29nbC5JbmRpY2VzVHlwZSBnZXRfdHlwZSAoKTsKKysJfQor KworKwlbQ0NvZGUgKHR5cGVfaWQgPSAiQ09HTF9UWVBFX01BVFJJWCIsIGNoZWFkZXJfZmlsZW5h bWUgPSAiY29nbC9jb2dsLmgiKV0KKysJcHVibGljIHN0cnVjdCBNYXRyaXggeworKwkJW0NDb2Rl IChjbmFtZSA9ICJjb2dsX21hdHJpeF9pbml0X2Zyb21fYXJyYXkiLCBhcnJheV9sZW5ndGggPSBm YWxzZSwgYXJyYXlfbnVsbF90ZXJtaW5hdGVkID0gZmFsc2UpXQorKwkJcHVibGljIE1hdHJpeC5m cm9tX2FycmF5IChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gZmxvYXRbXSBhcnJheSk7 CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfbWF0cml4X2luaXRfaWRlbnRpdHkiKV0KKysJCXB1 YmxpYyBNYXRyaXguaWRlbnRpdHkgKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfbWF0cml4 X211bHRpcGx5IildCisrCQlwdWJsaWMgTWF0cml4Lm11bHRpcGx5IChDb2dsLk1hdHJpeCBhLCBD b2dsLk1hdHJpeCBiKTsKKysJfQorKworKwlbU2ltcGxlVHlwZV0KKysJW0dJUiAobmFtZSA9ICJC b29sIildCisrCVtCb29sZWFuVHlwZV0KKysJcHVibGljIHN0cnVjdCBCb29sIDogYm9vbCB7Cisr CX0KKysKKysJcHVibGljIHN0YXRpYyBHTGliLkNhbGxiYWNrIGdldF9wcm9jX2FkZHJlc3Moc3Ry aW5nIHMpOworK30KK2RpZmYgLS1naXQgYS92YXBpL211dHRlci1jb2dsLTYuZGVwcyBiL3ZhcGkv bXV0dGVyLWNvZ2wtNi5kZXBzCituZXcgZmlsZSBtb2RlIDEwMDY0NAoraW5kZXggMDAwMDAwMDAu Ljk4Y2NhYzViCistLS0gL2Rldi9udWxsCisrKysgYi92YXBpL211dHRlci1jb2dsLTYuZGVwcwor QEAgLTAsMCArMSBAQAorK3BhbmdvCitkaWZmIC0tZ2l0IGEvdmFwaS9tdXR0ZXItY29nbC02LnZh cGkgYi92YXBpL211dHRlci1jb2dsLTYudmFwaQorbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4 IDAwMDAwMDAwLi5jOWFiNWQ1NworLS0tIC9kZXYvbnVsbAorKysrIGIvdmFwaS9tdXR0ZXItY29n bC02LnZhcGkKK0BAIC0wLDAgKzEsMTA3NyBAQAorKy8qIG11dHRlci1jb2dsLTYudmFwaSBnZW5l cmF0ZWQgYnkgdmFwaWdlbiwgZG8gbm90IG1vZGlmeS4gKi8KKysKKytbQ0NvZGUgKGNwcmVmaXgg PSAiQ29nbCIsIGdpcl9uYW1lc3BhY2UgPSAiQ29nbCIsIGdpcl92ZXJzaW9uID0gIjYiLCBsb3dl cl9jYXNlX2NwcmVmaXggPSAiY29nbF8iKV0KKytuYW1lc3BhY2UgQ29nbCB7CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNuYW1lID0gIkNvZ2xIYW5kbGUiLCB0 eXBlX2lkID0gImNvZ2xfYml0bWFwX2dldF9ndHlwZSAoKSIpXQorKwlbQ29tcGFjdF0KKysJcHVi bGljIGNsYXNzIEJpdG1hcCA6IENvZ2wuSGFuZGxlIHsKKysJCXB1YmxpYyBzdGF0aWMgdWludDMy IGVycm9yX3F1YXJrICgpOworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFs c2UsIHR5cGUgPSAiQ29nbEJpdG1hcCoiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0K KysJCXB1YmxpYyBCaXRtYXAuZnJvbV9maWxlIChzdHJpbmcgZmlsZW5hbWUpIHRocm93cyBHTGli LkVycm9yOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDb2dsLlBp eGVsRm9ybWF0IGdldF9mb3JtYXQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQor KwkJcHVibGljIGludCBnZXRfaGVpZ2h0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAi KV0KKysJCXB1YmxpYyBpbnQgZ2V0X3Jvd3N0cmlkZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjAiKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBnZXRfc2l6ZV9mcm9tX2ZpbGUgKHN0cmlu ZyBmaWxlbmFtZSwgb3V0IGludCB3aWR0aCwgb3V0IGludCBoZWlnaHQpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X3dpZHRoICgpOworKwkJcHVibGlj IHN0YXRpYyBDb2dsLkJpdG1hcCBuZXdfZnJvbV9maWxlIChzdHJpbmcgZmlsZW5hbWUpIHRocm93 cyBHTGliLkVycm9yOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2Nv Z2wuaCIsIGNuYW1lID0gIkNvZ2xIYW5kbGUiKV0KKysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFz cyBCdWZmZXIgOiBDb2dsLkhhbmRsZSB7CisrCQlwdWJsaWMgdWludCBnZXRfc2l6ZSAoKTsKKysJ CXB1YmxpYyBib29sIHNldF9kYXRhIChzaXplX3Qgb2Zmc2V0LCBbQ0NvZGUgKGFycmF5X2xlbmd0 aF90eXBlID0gInNpemVfdCIpXSB1aW50OFtdIGRhdGEpOworKwkJcHVibGljIHZvaWQgdW5tYXAg KCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgdHlw ZV9pZCA9ICJjb2dsX2NvbnRleHRfZ2V0X2d0eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBDb250 ZXh0IDogQ29nbC5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0g ZmFsc2UpXQorKwkJcHJvdGVjdGVkIENvbnRleHQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY29weV9mdW5jdGlvbiA9ICJnX2JveGVkX2NvcHki LCBmcmVlX2Z1bmN0aW9uID0gImdfYm94ZWRfZnJlZSIsIHR5cGVfaWQgPSAiY29nbF9mcmFtZV9j bG9zdXJlX2dldF9ndHlwZSAoKSIpXQorKwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTQiKV0KKysJcHVibGljIGNsYXNzIEZyYW1lQ2xvc3VyZSB7CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgcmVmX2Z1bmN0aW9uID0gImNvZ2xfaGFu ZGxlX3JlZiIsIHVucmVmX2Z1bmN0aW9uID0gImNvZ2xfaGFuZGxlX3VucmVmIildCisrCVtDb21w YWN0XQorKwlwdWJsaWMgY2xhc3MgSGFuZGxlIHsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9p c19iaXRtYXAiKV0KKysJCXB1YmxpYyBib29sIGlzX2JpdG1hcCAoKTsKKysJCVtDQ29kZSAoY25h bWUgPSAiY29nbF9pc19idWZmZXIiKV0KKysJCXB1YmxpYyBib29sIGlzX2J1ZmZlciAoKTsKKysJ CVtDQ29kZSAoY25hbWUgPSAiY29nbF9pc19tYXRlcmlhbCIpXQorKwkJcHVibGljIGJvb2wgaXNf bWF0ZXJpYWwgKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfaXNfb2Zmc2NyZWVuIildCisr CQlwdWJsaWMgYm9vbCBpc19vZmZzY3JlZW4gKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xf aXNfcGl4ZWxfYnVmZmVyIildCisrCQlwdWJsaWMgYm9vbCBpc19waXhlbF9idWZmZXIgKCk7Cisr CQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfaXNfcHJvZ3JhbSIpXQorKwkJcHVibGljIGJvb2wgaXNf cHJvZ3JhbSAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9pc19zaGFkZXIiKV0KKysJCXB1 YmxpYyBib29sIGlzX3NoYWRlciAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9pc190ZXh0 dXJlIildCisrCQlwdWJsaWMgYm9vbCBpc190ZXh0dXJlICgpOworKwkJW0NDb2RlIChjbmFtZSA9 ICJjb2dsX2lzX3ZlcnRleF9idWZmZXIiKV0KKysJCXB1YmxpYyBib29sIGlzX3ZlcnRleF9idWZm ZXIgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwg Y29weV9mdW5jdGlvbiA9ICJnX2JveGVkX2NvcHkiLCBmcmVlX2Z1bmN0aW9uID0gImdfYm94ZWRf ZnJlZSIsIHR5cGVfaWQgPSAiY29nbF9tYXRlcmlhbF9nZXRfdHlwZSAoKSIpXQorKwlbQ29tcGFj dF0KKysJcHVibGljIGNsYXNzIE1hdGVyaWFsIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9m dW5jdGlvbiA9IGZhbHNlKV0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVj YXRlZF9zaW5jZSA9ICIxLjE2IildCisrCQlwdWJsaWMgTWF0ZXJpYWwgKCk7CisrCQlbVmVyc2lv biAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIsIHNpbmNlID0g IjEuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2FscGhhX3Rlc3RfZnVuY3Rpb24gKENvZ2wuTWF0 ZXJpYWxBbHBoYUZ1bmMgYWxwaGFfZnVuYywgZmxvYXQgYWxwaGFfcmVmZXJlbmNlKTsKKysJCVtW ZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2Iiwgc2lu Y2UgPSAiMS4wIildCisrCQlwdWJsaWMgYm9vbCBzZXRfYmxlbmQgKHN0cmluZyBibGVuZF9zdHJp bmcpIHRocm93cyBHTGliLkVycm9yOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBk ZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lk IHNldF9ibGVuZF9jb25zdGFudCAoQ29nbC5Db2xvciBjb25zdGFudF9jb2xvcik7CisrCQlbVmVy c2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIsIHNpbmNl ID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2NvbG9yIChDb2dsLkNvbG9yIGNvbG9yKTsK KysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2 Iiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfY29sb3I0dWIgKHVpbnQ4IHJl ZCwgdWludDggZ3JlZW4sIHVpbnQ4IGJsdWUsIHVpbnQ4IGFscGhhKTsKKysJCVtWZXJzaW9uIChk ZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgdm9pZCBzZXRfbGF5ZXIgKGludCBsYXllcl9pbmRleCwgQ29nbC5IYW5k bGUgdGV4dHVyZSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRf c2luY2UgPSAiMS4xNiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGJvb2wgc2V0X2xheWVy X2NvbWJpbmUgKGludCBsYXllcl9pbmRleCwgc3RyaW5nIGJsZW5kX3N0cmluZykgdGhyb3dzIEdM aWIuRXJyb3I7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2lu Y2UgPSAiMS4xNiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2xheWVyX2Nv bWJpbmVfY29uc3RhbnQgKGludCBsYXllcl9pbmRleCwgQ29nbC5Db2xvciBjb25zdGFudCk7Cisr CQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIp XQorKwkJcHVibGljIHZvaWQgc2V0X2xheWVyX2ZpbHRlcnMgKGludCBsYXllcl9pbmRleCwgQ29n bC5NYXRlcmlhbEZpbHRlciBtaW5fZmlsdGVyLCBDb2dsLk1hdGVyaWFsRmlsdGVyIG1hZ19maWx0 ZXIpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0g IjEuMTYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9sYXllcl9tYXRyaXggKGludCBsYXllcl9pbmRl eCwgQ29nbC5NYXRyaXggbWF0cml4KTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwg ZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgYm9v bCBzZXRfbGF5ZXJfcG9pbnRfc3ByaXRlX2Nvb3Jkc19lbmFibGVkIChpbnQgbGF5ZXJfaW5kZXgs IGJvb2wgZW5hYmxlKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVk ID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2UgPSAiMS40IildCisrCQlw dWJsaWMgdm9pZCBzZXRfcG9pbnRfc2l6ZSAoZmxvYXQgcG9pbnRfc2l6ZSk7CisrCQlbVmVyc2lv biAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIsIHNpbmNlID0g IjEuNCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3VzZXJfcHJvZ3JhbSAoQ29nbC5IYW5kbGUgcHJv Z3JhbSk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwg aGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3MgTWF0ZXJp YWxMYXllciB7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5o IiwgdHlwZV9pZCA9ICJjb2dsX29iamVjdF9nZXRfZ3R5cGUgKCkiKV0KKysJcHVibGljIGFic3Ry YWN0IGNsYXNzIE9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBm YWxzZSldCisrCQlwcm90ZWN0ZWQgT2JqZWN0ICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIHR5cGVfaWQgPSAiY29nbF9vZmZzY3JlZW5fZ2V0X2d0 eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBPZmZzY3JlZW4gOiBDb2dsLk9iamVjdCwgQ29nbC5G cmFtZWJ1ZmZlciB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSld CisrCQlwcm90ZWN0ZWQgT2Zmc2NyZWVuICgpOworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1 bmN0aW9uID0gZmFsc2UpXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNh dGVkX3NpbmNlID0gIjEuMTYiKV0KKysJCXB1YmxpYyBPZmZzY3JlZW4udG9fdGV4dHVyZSAoQ29n bC5UZXh0dXJlIHRleHR1cmUpOworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0g ZmFsc2UpXQorKwkJcHVibGljIE9mZnNjcmVlbi53aXRoX3RleHR1cmUgKENvZ2wuVGV4dHVyZSB0 ZXh0dXJlKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgi LCB0eXBlX2lkID0gImNvZ2xfb25zY3JlZW5fZ2V0X2d0eXBlICgpIildCisrCXB1YmxpYyBjbGFz cyBPbnNjcmVlbiA6IENvZ2wuT2JqZWN0LCBDb2dsLkZyYW1lYnVmZmVyIHsKKysJCVtDQ29kZSAo aGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBPbnNjcmVlbiAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2IildCisrCQlwdWJsaWMgQ29nbC5PbnNjcmVl bkRpcnR5Q2xvc3VyZSBhZGRfZGlydHlfY2FsbGJhY2sgKFtDQ29kZSAoZGVsZWdhdGVfdGFyZ2V0 X3BvcyA9IDEuNSldIENvZ2wuT25zY3JlZW5EaXJ0eUNhbGxiYWNrIGNhbGxiYWNrLCBDb2dsLlVz ZXJEYXRhRGVzdHJveUNhbGxiYWNrPyBkZXN0cm95KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIy LjAiKV0KKysJCXB1YmxpYyBDb2dsLk9uc2NyZWVuUmVzaXplQ2xvc3VyZSBhZGRfcmVzaXplX2Nh bGxiYWNrIChbQ0NvZGUgKGRlbGVnYXRlX3RhcmdldF9wb3MgPSAxLjUpXSBDb2dsLk9uc2NyZWVu UmVzaXplQ2FsbGJhY2sgY2FsbGJhY2ssIENvZ2wuVXNlckRhdGFEZXN0cm95Q2FsbGJhY2s/IGRl c3Ryb3kpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTQiKV0KKysJCXB1YmxpYyBpbnQgZ2V0 X2J1ZmZlcl9hZ2UgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNCIpXQorKwkJcHVibGlj IGludDY0IGdldF9mcmFtZV9jb3VudGVyICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIp XQorKwkJcHVibGljIGJvb2wgZ2V0X3Jlc2l6YWJsZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIGhpZGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xNiIpXQorKwkJcHVibGljIHZvaWQgcmVtb3ZlX2RpcnR5X2NhbGxiYWNrIChDb2dsLk9uc2Ny ZWVuRGlydHlDbG9zdXJlIGNsb3N1cmUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTQiKV0K KysJCXB1YmxpYyB2b2lkIHJlbW92ZV9mcmFtZV9jYWxsYmFjayAoQ29nbC5GcmFtZUNsb3N1cmUg Y2xvc3VyZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBy ZW1vdmVfcmVzaXplX2NhbGxiYWNrIChDb2dsLk9uc2NyZWVuUmVzaXplQ2xvc3VyZSBjbG9zdXJl KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9yZXNp emFibGUgKGJvb2wgcmVzaXphYmxlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJ CXB1YmxpYyB2b2lkIHNob3cgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJ cHVibGljIHZvaWQgc3dhcF9idWZmZXJzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTYi KV0KKysJCXB1YmxpYyB2b2lkIHN3YXBfYnVmZmVyc193aXRoX2RhbWFnZSAoaW50IHJlY3Rhbmds ZXMsIGludCBuX3JlY3RhbmdsZXMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyB2b2lkIHN3YXBfcmVnaW9uIChpbnQgcmVjdGFuZ2xlcywgaW50IG5fcmVjdGFuZ2xl cyk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY29w eV9mdW5jdGlvbiA9ICJnX2JveGVkX2NvcHkiLCBmcmVlX2Z1bmN0aW9uID0gImdfYm94ZWRfZnJl ZSIsIHR5cGVfaWQgPSAiY29nbF9vbnNjcmVlbl9kaXJ0eV9jbG9zdXJlX2dldF9ndHlwZSAoKSIp XQorKwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTYiKV0KKysJcHVibGljIGNs YXNzIE9uc2NyZWVuRGlydHlDbG9zdXJlIHsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY29nbC9jb2dsLmgiLCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVf ZnVuY3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJjb2dsX29uc2NyZWVuX3Jlc2l6 ZV9jbG9zdXJlX2dldF9ndHlwZSAoKSIpXQorKwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNpbmNl ID0gIjIuMCIpXQorKwlwdWJsaWMgY2xhc3MgT25zY3JlZW5SZXNpemVDbG9zdXJlIHsKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjb3B5X2Z1bmN0aW9u ID0gImNvZ2xfcGF0aF9jb3B5IildCisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3MgUGF0aCB7 CisrCQlwdWJsaWMgc3RhdGljIHZvaWQgQG5ldyAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCB0eXBlX2lkID0gImNvZ2xfcGlwZWxpbmVfZ2V0X2d0 eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBQaXBlbGluZSA6IENvZ2wuT2JqZWN0IHsKKysJCVtD Q29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIyLjAiKV0KKysJCXB1YmxpYyBQaXBlbGluZSAoQ29nbC5Db250ZXh0IGNvbnRleHQpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIENvZ2wuUGlwZWxpbmUgY29w eSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIGZvcmVh Y2hfbGF5ZXIgKENvZ2wuUGlwZWxpbmVMYXllckNhbGxiYWNrIGNhbGxiYWNrKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyBDb2dsLlBpcGVsaW5lQWxwaGFGdW5jIGdl dF9hbHBoYV90ZXN0X2Z1bmN0aW9uICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQor KwkJcHVibGljIGZsb2F0IGdldF9hbHBoYV90ZXN0X3JlZmVyZW5jZSAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyBDb2dsLkNvbG9yIGdldF9jb2xvciAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyBDb2dsLlBpcGVsaW5lQ3VsbEZh Y2VNb2RlIGdldF9jdWxsX2ZhY2VfbW9kZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAi KV0KKysJCXB1YmxpYyBDb2dsLldpbmRpbmcgZ2V0X2Zyb250X2ZhY2Vfd2luZGluZyAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ29nbC5QaXBlbGluZUZpbHRl ciBnZXRfbGF5ZXJfbWFnX2ZpbHRlciAoaW50IGxheWVyX2luZGV4KTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ29nbC5QaXBlbGluZUZpbHRlciBnZXRfbGF5ZXJf bWluX2ZpbHRlciAoaW50IGxheWVyX2luZGV4KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAi KV0KKysJCXB1YmxpYyBib29sIGdldF9sYXllcl9wb2ludF9zcHJpdGVfY29vcmRzX2VuYWJsZWQg KGludCBsYXllcl9pbmRleCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVi bGljIHVub3duZWQgQ29nbC5UZXh0dXJlIGdldF9sYXllcl90ZXh0dXJlIChpbnQgbGF5ZXJfaW5k ZXgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIENvZ2wuUGlwZWxp bmVXcmFwTW9kZSBnZXRfbGF5ZXJfd3JhcF9tb2RlX3MgKGludCBsYXllcl9pbmRleCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgQ29nbC5QaXBlbGluZVdyYXBNb2Rl IGdldF9sYXllcl93cmFwX21vZGVfdCAoaW50IGxheWVyX2luZGV4KTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X25fbGF5ZXJzICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIGJvb2wgZ2V0X3Blcl92ZXJ0ZXhfcG9pbnRf c2l6ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBn ZXRfcG9pbnRfc2l6ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1Ymxp YyBpbnQgZ2V0X3VuaWZvcm1fbG9jYXRpb24gKHN0cmluZyB1bmlmb3JtX25hbWUpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHVub3duZWQgQ29nbC5IYW5kbGUgZ2V0 X3VzZXJfcHJvZ3JhbSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJs aWMgdm9pZCByZW1vdmVfbGF5ZXIgKGludCBsYXllcl9pbmRleCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfYWxwaGFfdGVzdF9mdW5jdGlvbiAoQ29n bC5QaXBlbGluZUFscGhhRnVuYyBhbHBoYV9mdW5jLCBmbG9hdCBhbHBoYV9yZWZlcmVuY2UpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIGJvb2wgc2V0X2JsZW5kIChz dHJpbmcgYmxlbmRfc3RyaW5nKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9ibGVuZF9jb25zdGFudCAoQ29nbC5Db2xv ciBjb25zdGFudF9jb2xvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJs aWMgdm9pZCBzZXRfY29sb3IgKENvZ2wuQ29sb3IgY29sb3IpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2NvbG9yNGYgKGZsb2F0IHJlZCwgZmxvYXQg Z3JlZW4sIGZsb2F0IGJsdWUsIGZsb2F0IGFscGhhKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIy LjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9jb2xvcjR1YiAodWludDggcmVkLCB1aW50OCBncmVl biwgdWludDggYmx1ZSwgdWludDggYWxwaGEpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIp XQorKwkJcHVibGljIHZvaWQgc2V0X2N1bGxfZmFjZV9tb2RlIChDb2dsLlBpcGVsaW5lQ3VsbEZh Y2VNb2RlIGN1bGxfZmFjZV9tb2RlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJ CXB1YmxpYyB2b2lkIHNldF9mcm9udF9mYWNlX3dpbmRpbmcgKENvZ2wuV2luZGluZyBmcm9udF93 aW5kaW5nKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyBib29sIHNl dF9sYXllcl9jb21iaW5lIChpbnQgbGF5ZXJfaW5kZXgsIHN0cmluZyBibGVuZF9zdHJpbmcpIHRo cm93cyBHTGliLkVycm9yOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGlj IHZvaWQgc2V0X2xheWVyX2NvbWJpbmVfY29uc3RhbnQgKGludCBsYXllcl9pbmRleCwgQ29nbC5D b2xvciBjb25zdGFudCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IHZvaWQgc2V0X2xheWVyX2ZpbHRlcnMgKGludCBsYXllcl9pbmRleCwgQ29nbC5QaXBlbGluZUZp bHRlciBtaW5fZmlsdGVyLCBDb2dsLlBpcGVsaW5lRmlsdGVyIG1hZ19maWx0ZXIpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9sYXllcl9tYXRyaXgg KGludCBsYXllcl9pbmRleCwgQ29nbC5NYXRyaXggbWF0cml4KTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbGF5ZXJfbnVsbF90ZXh0dXJlIChpbnQg bGF5ZXJfaW5kZXgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIGJv b2wgc2V0X2xheWVyX3BvaW50X3Nwcml0ZV9jb29yZHNfZW5hYmxlZCAoaW50IGxheWVyX2luZGV4 LCBib29sIGVuYWJsZSkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlwdWJsaWMgdm9pZCBzZXRfbGF5 ZXJfdGV4dHVyZSAoaW50IGxheWVyX2luZGV4LCBDb2dsLlRleHR1cmUgdGV4dHVyZSk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbGF5ZXJfd3JhcF9t b2RlIChpbnQgbGF5ZXJfaW5kZXgsIENvZ2wuUGlwZWxpbmVXcmFwTW9kZSBtb2RlKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9sYXllcl93cmFwX21v ZGVfcyAoaW50IGxheWVyX2luZGV4LCBDb2dsLlBpcGVsaW5lV3JhcE1vZGUgbW9kZSk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbGF5ZXJfd3JhcF9t b2RlX3QgKGludCBsYXllcl9pbmRleCwgQ29nbC5QaXBlbGluZVdyYXBNb2RlIG1vZGUpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIGJvb2wgc2V0X3Blcl92ZXJ0ZXhf cG9pbnRfc2l6ZSAoYm9vbCBlbmFibGUpIHRocm93cyBHTGliLkVycm9yOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3BvaW50X3NpemUgKGZsb2F0IHBv aW50X3NpemUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQg c2V0X3VuaWZvcm1fMWYgKGludCB1bmlmb3JtX2xvY2F0aW9uLCBmbG9hdCB2YWx1ZSk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfdW5pZm9ybV8xaSAo aW50IHVuaWZvcm1fbG9jYXRpb24sIGludCB2YWx1ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi Mi4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfdW5pZm9ybV9mbG9hdCAoaW50IHVuaWZvcm1fbG9j YXRpb24sIGludCBuX2NvbXBvbmVudHMsIGludCBjb3VudCwgZmxvYXQgdmFsdWUpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3VuaWZvcm1faW50IChp bnQgdW5pZm9ybV9sb2NhdGlvbiwgaW50IG5fY29tcG9uZW50cywgaW50IGNvdW50LCBpbnQgdmFs dWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3Vu aWZvcm1fbWF0cml4IChpbnQgdW5pZm9ybV9sb2NhdGlvbiwgaW50IGRpbWVuc2lvbnMsIGludCBj b3VudCwgYm9vbCB0cmFuc3Bvc2UsIGZsb2F0IHZhbHVlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF91c2VyX3Byb2dyYW0gKENvZ2wuSGFuZGxlIHBy b2dyYW0pOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIp XQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIFBpeGVsQnVmZmVyIDogQ29nbC5IYW5kbGUg eworKwkJcHVibGljIFBpeGVsQnVmZmVyICh1aW50IHNpemUpOworKwkJcHVibGljIFBpeGVsQnVm ZmVyLmZvcl9zaXplICh1aW50IHdpZHRoLCB1aW50IGhlaWdodCwgQ29nbC5QaXhlbEZvcm1hdCBm b3JtYXQsIHVpbnQgc3RyaWRlKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y29nbC9jb2dsLmgiLCBjbmFtZSA9ICJDb2dsSGFuZGxlIiwgcmVmX2Z1bmN0aW9uID0gImNvZ2xf cHJvZ3JhbV9yZWYiLCB1bnJlZl9mdW5jdGlvbiA9ICJjb2dsX3Byb2dyYW1fdW5yZWYiKV0KKysJ W0NvbXBhY3RdCisrCXB1YmxpYyBjbGFzcyBQcm9ncmFtIDogQ29nbC5IYW5kbGUgeworKwkJW0ND b2RlIChjbmFtZSA9ICJjb2dsX2NyZWF0ZV9wcm9ncmFtIiwgaGFzX2NvbnN0cnVjdF9mdW5jdGlv biA9IGZhbHNlLCB0eXBlID0gIkNvZ2xIYW5kbGUqIildCisrCQlwdWJsaWMgUHJvZ3JhbSAoKTsK KysJCXB1YmxpYyB2b2lkIGF0dGFjaF9zaGFkZXIgKENvZ2wuU2hhZGVyIHNoYWRlcl9oYW5kbGUp OworKwkJcHVibGljIGludCBnZXRfdW5pZm9ybV9sb2NhdGlvbiAoc3RyaW5nIHVuaWZvcm1fbmFt ZSk7CisrCQlwdWJsaWMgdm9pZCBsaW5rICgpOworKwkJcHVibGljIHN0YXRpYyB2b2lkIHVuaWZv cm1fMWYgKGludCB1bmlmb3JtX25vLCBmbG9hdCB2YWx1ZSk7CisrCQlwdWJsaWMgc3RhdGljIHZv aWQgdW5pZm9ybV8xaSAoaW50IHVuaWZvcm1fbm8sIGludCB2YWx1ZSk7CisrCQlwdWJsaWMgc3Rh dGljIHZvaWQgdW5pZm9ybV9mbG9hdCAoaW50IHVuaWZvcm1fbm8sIGludCBzaXplLCBbQ0NvZGUg KGFycmF5X2xlbmd0aF9wb3MgPSAyLjkpXSBmbG9hdFtdIHZhbHVlKTsKKysJCXB1YmxpYyBzdGF0 aWMgdm9pZCB1bmlmb3JtX2ludCAoaW50IHVuaWZvcm1fbm8sIGludCBzaXplLCBbQ0NvZGUgKGFy cmF5X2xlbmd0aF9wb3MgPSAyLjkpXSBpbnRbXSB2YWx1ZSk7CisrCQlwdWJsaWMgc3RhdGljIHZv aWQgdW5pZm9ybV9tYXRyaXggKGludCB1bmlmb3JtX25vLCBpbnQgc2l6ZSwgYm9vbCB0cmFuc3Bv c2UsIFtDQ29kZSAoYXJyYXlfbGVuZ3RoX3BvcyA9IDIuOSldIGZsb2F0W10gdmFsdWUpOworKwkJ cHVibGljIHZvaWQgdXNlICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj b2dsL2NvZ2wuaCIsIGNuYW1lID0gIkNvZ2xIYW5kbGUiLCByZWZfZnVuY3Rpb24gPSAiY29nbF9z aGFkZXJfcmVmIiwgdW5yZWZfZnVuY3Rpb24gPSAiY29nbF9zaGFkZXJfdW5yZWYiKV0KKysJW0Nv bXBhY3RdCisrCXB1YmxpYyBjbGFzcyBTaGFkZXIgOiBDb2dsLkhhbmRsZSB7CisrCQlbQ0NvZGUg KGNuYW1lID0gImNvZ2xfY3JlYXRlX3NoYWRlciIsIGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBm YWxzZSwgdHlwZSA9ICJDb2dsSGFuZGxlKiIpXQorKwkJcHVibGljIFNoYWRlciAoQ29nbC5TaGFk ZXJUeXBlIHNoYWRlcl90eXBlKTsKKysJCXB1YmxpYyB2b2lkIGNvbXBpbGUgKCk7CisrCQlwdWJs aWMgc3RyaW5nIGdldF9pbmZvX2xvZyAoKTsKKysJCXB1YmxpYyBDb2dsLlNoYWRlclR5cGUgZ2V0 X3R5cGUgKCk7CisrCQlwdWJsaWMgYm9vbCBpc19jb21waWxlZCAoKTsKKysJCXB1YmxpYyB2b2lk IHNvdXJjZSAoc3RyaW5nIHNvdXJjZSk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNvZ2wvY29nbC5oIiwgbG93ZXJfY2FzZV9jc3VmZml4ID0gInRleHR1cmVfMmQiLCB0eXBl X2lkID0gImNvZ2xfdGV4dHVyZV8yZF9nZXRfZ3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFRl eHR1cmUyRCA6IENvZ2wuT2JqZWN0LCBDb2dsLlRleHR1cmUgeworKwkJW0NDb2RlIChoYXNfY29u c3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFRleHR1cmUyRCAoKTsKKysJ CXB1YmxpYyB2b2lkIGVnbF9pbWFnZV9leHRlcm5hbF9hbGxvY19maW5pc2ggKHZvaWQqIHVzZXJf ZGF0YSwgR0xpYi5EZXN0cm95Tm90aWZ5IGRlc3Ryb3kpOworKwkJcHVibGljIHZvaWQgZWdsX2lt YWdlX2V4dGVybmFsX2JpbmQgKCk7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24g PSBmYWxzZSldCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgVGV4dHVy ZTJELmZyb21fYml0bWFwIChDb2dsLkJpdG1hcCBiaXRtYXApOworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGxvd2VyX2Nhc2VfY3N1ZmZpeCA9ICJ0ZXh0 dXJlXzJkX3NsaWNlZCIsIHR5cGVfaWQgPSAiY29nbF90ZXh0dXJlXzJkX3NsaWNlZF9nZXRfZ3R5 cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFRleHR1cmUyRFNsaWNlZCA6IENvZ2wuT2JqZWN0LCBD b2dsLlRleHR1cmUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2Up XQorKwkJcHJvdGVjdGVkIFRleHR1cmUyRFNsaWNlZCAoKTsKKysJCVtDQ29kZSAoaGFzX2NvbnN0 cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2IildCisr CQlwdWJsaWMgVGV4dHVyZTJEU2xpY2VkLmZyb21fYml0bWFwIChDb2dsLkJpdG1hcCBibXAsIGlu dCBtYXhfd2FzdGUpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2Nv Z2wuaCIsIGNuYW1lID0gIkNvZ2xIYW5kbGUiLCByZWZfZnVuY3Rpb24gPSAiY29nbF92ZXJ0ZXhf YnVmZmVyX3JlZiIsIHVucmVmX2Z1bmN0aW9uID0gImNvZ2xfdmVydGV4X2J1ZmZlcl91bnJlZiIp XQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIFZlcnRleEJ1ZmZlciA6IENvZ2wuSGFuZGxl IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNv Z2xIYW5kbGUqIildCisrCQlwdWJsaWMgVmVydGV4QnVmZmVyICh1aW50IG5fdmVydGljZXMpOwor KwkJcHVibGljIHZvaWQgYWRkIChzdHJpbmcgYXR0cmlidXRlX25hbWUsIHVjaGFyIG5fY29tcG9u ZW50cywgQ29nbC5BdHRyaWJ1dGVUeXBlIHR5cGUsIGJvb2wgbm9ybWFsaXplZCwgdWludDE2IHN0 cmlkZSwgdm9pZCogcG9pbnRlcik7CisrCQlwdWJsaWMgdm9pZCBAZGVsZXRlIChzdHJpbmcgYXR0 cmlidXRlX25hbWUpOworKwkJcHVibGljIHZvaWQgZGlzYWJsZSAoc3RyaW5nIGF0dHJpYnV0ZV9u YW1lKTsKKysJCXB1YmxpYyB2b2lkIGRyYXcgKENvZ2wuVmVydGljZXNNb2RlIG1vZGUsIGludCBm aXJzdCwgaW50IGNvdW50KTsKKysJCXB1YmxpYyB2b2lkIGRyYXdfZWxlbWVudHMgKENvZ2wuVmVy dGljZXNNb2RlIG1vZGUsIENvZ2wuVmVydGV4QnVmZmVySW5kaWNlcyBpbmRpY2VzLCBpbnQgbWlu X2luZGV4LCBpbnQgbWF4X2luZGV4LCBpbnQgaW5kaWNlc19vZmZzZXQsIGludCBjb3VudCk7Cisr CQlwdWJsaWMgdm9pZCBlbmFibGUgKHN0cmluZyBhdHRyaWJ1dGVfbmFtZSk7CisrCQlwdWJsaWMg dWludCBnZXRfbl92ZXJ0aWNlcyAoKTsKKysJCXB1YmxpYyB2b2lkIHN1Ym1pdCAoKTsKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjbmFtZSA9ICJDb2ds SGFuZGxlIildCisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3MgVmVydGV4QnVmZmVySW5kaWNl cyA6IENvZ2wuSGFuZGxlIHsKKysJCXB1YmxpYyBWZXJ0ZXhCdWZmZXJJbmRpY2VzIChDb2dsLklu ZGljZXNUeXBlIGluZGljZXNfdHlwZSwgdm9pZCogaW5kaWNlc19hcnJheSwgaW50IGluZGljZXNf bGVuKTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDb2dsLlZlcnRleEJ1ZmZlckluZGljZXMg Z2V0X2Zvcl9xdWFkcyAodWludCBuX2luZGljZXMpOworKwkJcHVibGljIENvZ2wuSW5kaWNlc1R5 cGUgZ2V0X3R5cGUgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wv Y29nbC5oIiwgdHlwZV9pZCA9ICJjb2dsX2ZyYW1lYnVmZmVyX2dldF9ndHlwZSAoKSIpXQorKwlw dWJsaWMgaW50ZXJmYWNlIEZyYW1lYnVmZmVyIDogQ29nbC5PYmplY3QgeworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIGJvb2wgYWxsb2NhdGUgKCkgdGhyb3dzIEdMaWIu RXJyb3I7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBjbGVh ciAodWxvbmcgYnVmZmVycywgQ29nbC5Db2xvciBjb2xvcik7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBjbGVhcjRmICh1bG9uZyBidWZmZXJzLCBmbG9hdCBy ZWQsIGZsb2F0IGdyZWVuLCBmbG9hdCBibHVlLCBmbG9hdCBhbHBoYSk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBkaXNjYXJkX2J1ZmZlcnMgKHVsb25nIGJ1 ZmZlcnMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIGRy YXdfbXVsdGl0ZXh0dXJlZF9yZWN0YW5nbGUgKENvZ2wuUGlwZWxpbmUgcGlwZWxpbmUsIGZsb2F0 IHhfMSwgZmxvYXQgeV8xLCBmbG9hdCB4XzIsIGZsb2F0IHlfMiwgW0NDb2RlIChhcnJheV9sZW5n dGggPSBmYWxzZSldIGZsb2F0W10gdGV4X2Nvb3JkcywgaW50IHRleF9jb29yZHNfbGVuKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBkcmF3X3JlY3Rhbmds ZSAoQ29nbC5QaXBlbGluZSBwaXBlbGluZSwgZmxvYXQgeF8xLCBmbG9hdCB5XzEsIGZsb2F0IHhf MiwgZmxvYXQgeV8yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMg dm9pZCBkcmF3X3JlY3RhbmdsZXMgKENvZ2wuUGlwZWxpbmUgcGlwZWxpbmUsIFtDQ29kZSAoYXJy YXlfbGVuZ3RoID0gZmFsc2UpXSBmbG9hdFtdIGNvb3JkaW5hdGVzLCB1aW50IG5fcmVjdGFuZ2xl cyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgZHJhd190 ZXh0dXJlZF9yZWN0YW5nbGUgKENvZ2wuUGlwZWxpbmUgcGlwZWxpbmUsIGZsb2F0IHhfMSwgZmxv YXQgeV8xLCBmbG9hdCB4XzIsIGZsb2F0IHlfMiwgZmxvYXQgc18xLCBmbG9hdCB0XzEsIGZsb2F0 IHNfMiwgZmxvYXQgdF8yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJs aWMgdm9pZCBkcmF3X3RleHR1cmVkX3JlY3RhbmdsZXMgKENvZ2wuUGlwZWxpbmUgcGlwZWxpbmUs IFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSBmbG9hdFtdIGNvb3JkaW5hdGVzLCB1aW50 IG5fcmVjdGFuZ2xlcyk7CisrCQlwdWJsaWMgc3RhdGljIHVpbnQzMiBlcnJvcl9xdWFyayAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBmaW5pc2ggKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgZnJ1c3R1bSAo ZmxvYXQgbGVmdCwgZmxvYXQgcmlnaHQsIGZsb2F0IGJvdHRvbSwgZmxvYXQgdG9wLCBmbG9hdCB6 X25lYXIsIGZsb2F0IHpfZmFyKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1 YmxpYyBpbnQgZ2V0X2FscGhhX2JpdHMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44Iild CisrCQlwdWJsaWMgaW50IGdldF9ibHVlX2JpdHMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS44IildCisrCQlwdWJsaWMgdW5vd25lZCBDb2dsLkNvbnRleHQgZ2V0X2NvbnRleHQgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgaW50IGdldF9kZXB0aF9iaXRz ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTgiKV0KKysJCXB1YmxpYyBib29sIGdldF9k ZXB0aF93cml0ZV9lbmFibGVkICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJ cHVibGljIGJvb2wgZ2V0X2RpdGhlcl9lbmFibGVkICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuOCIpXQorKwkJcHVibGljIGludCBnZXRfZ3JlZW5fYml0cyAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X2hlaWdodCAoKTsKKysJCXB1YmxpYyBi b29sIGdldF9pc19zdGVyZW8gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJ cHVibGljIENvZ2wuTWF0cml4IGdldF9tb2RlbHZpZXdfbWF0cml4ICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDb2dsLk1hdHJpeCBnZXRfcHJvamVjdGlvbl9t YXRyaXggKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgaW50IGdl dF9yZWRfYml0cyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMg aW50IGdldF9zYW1wbGVzX3Blcl9waXhlbCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIw IildCisrCQlwdWJsaWMgQ29nbC5TdGVyZW9Nb2RlIGdldF9zdGVyZW9fbW9kZSAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIGdldF92aWV3cG9ydDRmdiAo W0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIG91dCB1bm93bmVkIGZsb2F0IHZpZXdwb3J0 WzRdKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRf dmlld3BvcnRfaGVpZ2h0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVi bGljIGZsb2F0IGdldF92aWV3cG9ydF93aWR0aCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjgiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfdmlld3BvcnRfeCAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfdmlld3BvcnRfeSAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X3dpZHRoICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIGlkZW50aXR5X21hdHJp eCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBvcnRo b2dyYXBoaWMgKGZsb2F0IHhfMSwgZmxvYXQgeV8xLCBmbG9hdCB4XzIsIGZsb2F0IHlfMiwgZmxv YXQgbmVhciwgZmxvYXQgZmFyKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlw dWJsaWMgdm9pZCBwZXJzcGVjdGl2ZSAoZmxvYXQgZm92X3ksIGZsb2F0IGFzcGVjdCwgZmxvYXQg el9uZWFyLCBmbG9hdCB6X2Zhcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJ cHVibGljIHZvaWQgcG9wX2NsaXAgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQor KwkJcHVibGljIHZvaWQgcG9wX21hdHJpeCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEw IildCisrCQlwdWJsaWMgdm9pZCBwdXNoX21hdHJpeCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBwdXNoX3JlY3RhbmdsZV9jbGlwIChmbG9hdCB4XzEs IGZsb2F0IHlfMSwgZmxvYXQgeF8yLCBmbG9hdCB5XzIpOworKwkJcHVibGljIHZvaWQgcHVzaF9y ZWdpb25fY2xpcCAoQ2Fpcm8uUmVnaW9uIHJlZ2lvbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMCIpXQorKwkJcHVibGljIHZvaWQgcHVzaF9zY2lzc29yX2NsaXAgKGludCB4LCBpbnQgeSwg aW50IHdpZHRoLCBpbnQgaGVpZ2h0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisr CQlwdWJsaWMgYm9vbCByZWFkX3BpeGVscyAoaW50IHgsIGludCB5LCBpbnQgd2lkdGgsIGludCBo ZWlnaHQsIENvZ2wuUGl4ZWxGb3JtYXQgZm9ybWF0LCB1aW50OCBwaXhlbHMpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBib29sIHJlYWRfcGl4ZWxzX2ludG9fYml0 bWFwIChpbnQgeCwgaW50IHksIENvZ2wuUmVhZFBpeGVsc0ZsYWdzIHNvdXJjZSwgQ29nbC5CaXRt YXAgYml0bWFwKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lk IHJlc29sdmVfc2FtcGxlcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1 YmxpYyB2b2lkIHJlc29sdmVfc2FtcGxlc19yZWdpb24gKGludCB4LCBpbnQgeSwgaW50IHdpZHRo LCBpbnQgaGVpZ2h0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMg dm9pZCByb3RhdGUgKGZsb2F0IGFuZ2xlLCBmbG9hdCB4LCBmbG9hdCB5LCBmbG9hdCB6KTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIHJvdGF0ZV9ldWxlciAo R3JhcGhlbmUuRXVsZXIgZXVsZXIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyB2b2lkIHNjYWxlIChmbG9hdCB4LCBmbG9hdCB5LCBmbG9hdCB6KTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjE4IildCisrCQlwdWJsaWMgdm9pZCBzZXRfZGVwdGhfd3JpdGVfZW5h YmxlZCAoYm9vbCBkZXB0aF93cml0ZV9lbmFibGVkKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9kaXRoZXJfZW5hYmxlZCAoYm9vbCBkaXRoZXJfZW5h YmxlZCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0 X21vZGVsdmlld19tYXRyaXggKENvZ2wuTWF0cml4IG1hdHJpeCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3Byb2plY3Rpb25fbWF0cml4IChDb2ds Lk1hdHJpeCBtYXRyaXgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGlj IHZvaWQgc2V0X3NhbXBsZXNfcGVyX3BpeGVsIChpbnQgc2FtcGxlc19wZXJfcGl4ZWwpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9zdGVyZW9fbW9k ZSAoQ29nbC5TdGVyZW9Nb2RlIHN0ZXJlb19tb2RlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF92aWV3cG9ydCAoZmxvYXQgeCwgZmxvYXQgeSwgZmxv YXQgd2lkdGgsIGZsb2F0IGhlaWdodCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQor KwkJcHVibGljIHZvaWQgdHJhbnNmb3JtIChDb2dsLk1hdHJpeCBtYXRyaXgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHRyYW5zbGF0ZSAoZmxvYXQgeCwg ZmxvYXQgeSwgZmxvYXQgeik7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNv Z2wvY29nbC5oIiwgdHlwZV9pZCA9ICJjb2dsX3RleHR1cmVfZ2V0X2d0eXBlICgpIildCisrCXB1 YmxpYyBpbnRlcmZhY2UgVGV4dHVyZSA6IENvZ2wuT2JqZWN0IHsKKysJCXB1YmxpYyBib29sIGFs bG9jYXRlICgpIHRocm93cyBHTGliLkVycm9yOworKwkJcHVibGljIHN0YXRpYyB1aW50MzIgZXJy b3JfcXVhcmsgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xOCIpXQorKwkJcHVibGljIENv Z2wuVGV4dHVyZUNvbXBvbmVudHMgZ2V0X2NvbXBvbmVudHMgKCk7CisrCQlwdWJsaWMgaW50IGdl dF9kYXRhIChDb2dsLlBpeGVsRm9ybWF0IGZvcm1hdCwgdWludCByb3dzdHJpZGUsIHVpbnQ4IGRh dGEpOworKwkJcHVibGljIGJvb2wgZ2V0X2dsX3RleHR1cmUgKG91dCB1aW50IG91dF9nbF9oYW5k bGUsIG91dCB1aW50IG91dF9nbF90YXJnZXQpOworKwkJcHVibGljIHVpbnQgZ2V0X2hlaWdodCAo KTsKKysJCXB1YmxpYyBpbnQgZ2V0X21heF93YXN0ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjE4IildCisrCQlwdWJsaWMgYm9vbCBnZXRfcHJlbXVsdGlwbGllZCAoKTsKKysJCXB1Ymxp YyB1aW50IGdldF93aWR0aCAoKTsKKysJCXB1YmxpYyBib29sIGlzX3NsaWNlZCAoKTsKKysJCVtW ZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE4Iiwgc2lu Y2UgPSAiMS4wIildCisrCQlwdWJsaWMgc3RhdGljIENvZ2wuVGV4dHVyZSBuZXdfZnJvbV9iaXRt YXAgKENvZ2wuQml0bWFwIGJpdG1hcCwgQ29nbC5UZXh0dXJlRmxhZ3MgZmxhZ3MsIENvZ2wuUGl4 ZWxGb3JtYXQgaW50ZXJuYWxfZm9ybWF0KTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1 ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE4Iiwgc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMg c3RhdGljIENvZ2wuVGV4dHVyZSBuZXdfZnJvbV9kYXRhIChpbnQgd2lkdGgsIGludCBoZWlnaHQs IENvZ2wuVGV4dHVyZUZsYWdzIGZsYWdzLCBDb2dsLlBpeGVsRm9ybWF0IGZvcm1hdCwgQ29nbC5Q aXhlbEZvcm1hdCBpbnRlcm5hbF9mb3JtYXQsIGludCByb3dzdHJpZGUsIHVpbnQ4IGRhdGEpOwor KwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTgi LCBzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBzdGF0aWMgQ29nbC5UZXh0dXJlIG5ld19mcm9t X2ZpbGUgKHN0cmluZyBmaWxlbmFtZSwgQ29nbC5UZXh0dXJlRmxhZ3MgZmxhZ3MsIENvZ2wuUGl4 ZWxGb3JtYXQgaW50ZXJuYWxfZm9ybWF0KSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJCVtWZXJzaW9u IChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE4Iiwgc2luY2UgPSAi MS4yIildCisrCQlwdWJsaWMgQ29nbC5UZXh0dXJlIG5ld19mcm9tX3N1Yl90ZXh0dXJlIChpbnQg c3ViX3gsIGludCBzdWJfeSwgaW50IHN1Yl93aWR0aCwgaW50IHN1Yl9oZWlnaHQpOworKwkJW1Zl cnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTgiLCBzaW5j ZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBzdGF0aWMgQ29nbC5UZXh0dXJlIG5ld193aXRoX3NpemUg KHVpbnQgd2lkdGgsIHVpbnQgaGVpZ2h0LCBDb2dsLlRleHR1cmVGbGFncyBmbGFncywgQ29nbC5Q aXhlbEZvcm1hdCBpbnRlcm5hbF9mb3JtYXQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTgi KV0KKysJCXB1YmxpYyB2b2lkIHNldF9jb21wb25lbnRzIChDb2dsLlRleHR1cmVDb21wb25lbnRz IGNvbXBvbmVudHMpOworKwkJcHVibGljIGJvb2wgc2V0X2RhdGEgKENvZ2wuUGl4ZWxGb3JtYXQg Zm9ybWF0LCBpbnQgcm93c3RyaWRlLCB1aW50OCBkYXRhLCBpbnQgbGV2ZWwpIHRocm93cyBHTGli LkVycm9yOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTgiKV0KKysJCXB1YmxpYyB2b2lkIHNl dF9wcmVtdWx0aXBsaWVkIChib29sIHByZW11bHRpcGxpZWQpOworKwkJcHVibGljIGJvb2wgc2V0 X3JlZ2lvbiAoaW50IHNyY194LCBpbnQgc3JjX3ksIGludCBkc3RfeCwgaW50IGRzdF95LCB1aW50 IGRzdF93aWR0aCwgdWludCBkc3RfaGVpZ2h0LCBpbnQgd2lkdGgsIGludCBoZWlnaHQsIENvZ2wu UGl4ZWxGb3JtYXQgZm9ybWF0LCB1aW50IHJvd3N0cmlkZSwgdWludDggZGF0YSk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgYm9vbCBzZXRfcmVnaW9uX2Zyb21fYml0 bWFwIChpbnQgc3JjX3gsIGludCBzcmNfeSwgaW50IGRzdF94LCBpbnQgZHN0X3ksIHVpbnQgZHN0 X3dpZHRoLCB1aW50IGRzdF9oZWlnaHQsIENvZ2wuQml0bWFwIGJpdG1hcCk7CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtTaW1wbGVUeXBlXQor KwlwdWJsaWMgc3RydWN0IEFuZ2xlIDogaW50MzIgeworKwl9CisrCVtCb29sZWFuVHlwZV0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtHSVIgKG5hbWUg PSAiQm9vbCIpXQorKwlbU2ltcGxlVHlwZV0KKysJcHVibGljIHN0cnVjdCBCb29sIDogYm9vbCB7 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgaGFzX3R5 cGVfaWQgPSBmYWxzZSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIHN0 cnVjdCBDb2xvciB7CisrCQlwdWJsaWMgQ29nbC5Db2xvcj8gY29weSAoKTsKKysJCXB1YmxpYyBD b2xvci5mcm9tXzRmIChmbG9hdCByZWQsIGZsb2F0IGdyZWVuLCBmbG9hdCBibHVlLCBmbG9hdCBh bHBoYSk7CisrCQlwdWJsaWMgQ29sb3IuZnJvbV80dWIgKHVpbnQ4IHJlZCwgdWludDggZ3JlZW4s IHVpbnQ4IGJsdWUsIHVpbnQ4IGFscGhhKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfYWxwaGEgKCk7 CisrCQlwdWJsaWMgdWludDggZ2V0X2FscGhhX2J5dGUgKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0 X2FscGhhX2Zsb2F0ICgpOworKwkJcHVibGljIGZsb2F0IGdldF9ibHVlICgpOworKwkJcHVibGlj IHVpbnQ4IGdldF9ibHVlX2J5dGUgKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X2JsdWVfZmxvYXQg KCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X2dyZWVuICgpOworKwkJcHVibGljIHVpbnQ4IGdldF9n cmVlbl9ieXRlICgpOworKwkJcHVibGljIGZsb2F0IGdldF9ncmVlbl9mbG9hdCAoKTsKKysJCXB1 YmxpYyBmbG9hdCBnZXRfcmVkICgpOworKwkJcHVibGljIHVpbnQ4IGdldF9yZWRfYnl0ZSAoKTsK KysJCXB1YmxpYyBmbG9hdCBnZXRfcmVkX2Zsb2F0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuNCIpXQorKwkJcHVibGljIHZvaWQgaW5pdF9mcm9tXzRmIChmbG9hdCByZWQsIGZsb2F0IGdy ZWVuLCBmbG9hdCBibHVlLCBmbG9hdCBhbHBoYSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40 IildCisrCQlwdWJsaWMgdm9pZCBpbml0X2Zyb21fNGZ2IChmbG9hdCBjb2xvcl9hcnJheSk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBpbml0X2Zyb21fNHVi ICh1aW50OCByZWQsIHVpbnQ4IGdyZWVuLCB1aW50OCBibHVlLCB1aW50OCBhbHBoYSk7CisrCQlw dWJsaWMgdm9pZCBwcmVtdWx0aXBseSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0K KysJCXB1YmxpYyB2b2lkIHNldF9hbHBoYSAoZmxvYXQgYWxwaGEpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2FscGhhX2J5dGUgKHVpbnQ4IGFscGhh KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9hbHBo YV9mbG9hdCAoZmxvYXQgYWxwaGEpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJ cHVibGljIHZvaWQgc2V0X2JsdWUgKGZsb2F0IGJsdWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuNCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2JsdWVfYnl0ZSAodWludDggYmx1ZSk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBzZXRfYmx1ZV9mbG9hdCAo ZmxvYXQgYmx1ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9p ZCBzZXRfZ3JlZW4gKGZsb2F0IGdyZWVuKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0K KysJCXB1YmxpYyB2b2lkIHNldF9ncmVlbl9ieXRlICh1aW50OCBncmVlbik7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBzZXRfZ3JlZW5fZmxvYXQgKGZsb2F0 IGdyZWVuKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHNl dF9yZWQgKGZsb2F0IHJlZCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJs aWMgdm9pZCBzZXRfcmVkX2J5dGUgKHVpbnQ4IHJlZCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS40IildCisrCQlwdWJsaWMgdm9pZCBzZXRfcmVkX2Zsb2F0IChmbG9hdCByZWQpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTYiKV0KKysJCXB1YmxpYyB2b2lkIHRvX2hzbCAob3V0IGZsb2F0 IGh1ZSwgb3V0IGZsb2F0IHNhdHVyYXRpb24sIG91dCBmbG9hdCBsdW1pbmFuY2UpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgdW5wcmVtdWx0aXBseSAoKTsK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBoYXNfdHlw ZV9pZCA9IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwlwdWJsaWMgc3Ry dWN0IERlYnVnT2JqZWN0VHlwZUluZm8geworKwkJcHVibGljIHdlYWsgc3RyaW5nIG5hbWU7Cisr CQlwdWJsaWMgdWxvbmcgaW5zdGFuY2VfY291bnQ7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY29weV9mdW5jdGlvbiA9ICJnX2JveGVkX2NvcHkiLCBm cmVlX2Z1bmN0aW9uID0gImdfYm94ZWRfZnJlZSIsIHR5cGVfaWQgPSAiQ09HTF9UWVBFX01BVFJJ WCIpXQorKwlwdWJsaWMgc3RydWN0IE1hdHJpeCB7CisrCQlwdWJsaWMgZmxvYXQgeHg7CisrCQlw dWJsaWMgZmxvYXQgeXg7CisrCQlwdWJsaWMgZmxvYXQgeng7CisrCQlwdWJsaWMgZmxvYXQgd3g7 CisrCQlwdWJsaWMgZmxvYXQgeHk7CisrCQlwdWJsaWMgZmxvYXQgeXk7CisrCQlwdWJsaWMgZmxv YXQgenk7CisrCQlwdWJsaWMgZmxvYXQgd3k7CisrCQlwdWJsaWMgZmxvYXQgeHo7CisrCQlwdWJs aWMgZmxvYXQgeXo7CisrCQlwdWJsaWMgZmxvYXQgeno7CisrCQlwdWJsaWMgZmxvYXQgd3o7Cisr CQlwdWJsaWMgZmxvYXQgeHc7CisrCQlwdWJsaWMgZmxvYXQgeXc7CisrCQlwdWJsaWMgZmxvYXQg enc7CisrCQlwdWJsaWMgZmxvYXQgd3c7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisr CQlwdWJsaWMgQ29nbC5NYXRyaXg/IGNvcHkgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42 IildCisrCQlwdWJsaWMgdm9pZCBmcmVlICgpOworKwkJW0NDb2RlIChhcnJheV9sZW5ndGggPSBm YWxzZSwgYXJyYXlfbnVsbF90ZXJtaW5hdGVkID0gZmFsc2UsIGNuYW1lID0gImNvZ2xfbWF0cml4 X2luaXRfZnJvbV9hcnJheSIpXQorKwkJcHVibGljIE1hdHJpeC5mcm9tX2FycmF5IChbQ0NvZGUg KGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gZmxvYXRbXSBhcnJheSk7CisrCQlwdWJsaWMgdm9pZCBm cnVzdHVtIChmbG9hdCBsZWZ0LCBmbG9hdCByaWdodCwgZmxvYXQgYm90dG9tLCBmbG9hdCB0b3As IGZsb2F0IHpfbmVhciwgZmxvYXQgel9mYXIpOworKwkJcHVibGljIHVub3duZWQgZmxvYXRbXSBn ZXRfYXJyYXkgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgYm9v bCBnZXRfaW52ZXJzZSAob3V0IENvZ2wuTWF0cml4IGludmVyc2UpOworKwkJW0NDb2RlIChjbmFt ZSA9ICJjb2dsX21hdHJpeF9pbml0X2lkZW50aXR5IildCisrCQlwdWJsaWMgTWF0cml4LmlkZW50 aXR5ICgpOworKwkJcHVibGljIHZvaWQgaW5pdF9mcm9tX2V1bGVyIChHcmFwaGVuZS5FdWxlciBl dWxlcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBpbml0 X3RyYW5zbGF0aW9uIChmbG9hdCB0eCwgZmxvYXQgdHksIGZsb2F0IHR6KTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBib29sIGlzX2lkZW50aXR5ICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgbG9va19hdCAoZmxvYXQgZXll X3Bvc2l0aW9uX3gsIGZsb2F0IGV5ZV9wb3NpdGlvbl95LCBmbG9hdCBleWVfcG9zaXRpb25feiwg ZmxvYXQgb2JqZWN0X3gsIGZsb2F0IG9iamVjdF95LCBmbG9hdCBvYmplY3RfeiwgZmxvYXQgd29y bGRfdXBfeCwgZmxvYXQgd29ybGRfdXBfeSwgZmxvYXQgd29ybGRfdXBfeik7CisrCQlbQ0NvZGUg KGNuYW1lID0gImNvZ2xfbWF0cml4X211bHRpcGx5IildCisrCQlwdWJsaWMgTWF0cml4Lm11bHRp cGx5IChDb2dsLk1hdHJpeCBhLCBDb2dsLk1hdHJpeCBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBvcnRob2dyYXBoaWMgKGZsb2F0IHhfMSwgZmxvYXQg eV8xLCBmbG9hdCB4XzIsIGZsb2F0IHlfMiwgZmxvYXQgbmVhciwgZmxvYXQgZmFyKTsKKysJCXB1 YmxpYyB2b2lkIHBlcnNwZWN0aXZlIChmbG9hdCBmb3ZfeSwgZmxvYXQgYXNwZWN0LCBmbG9hdCB6 X25lYXIsIGZsb2F0IHpfZmFyKTsKKysJCXB1YmxpYyB2b2lkIHByb2plY3RfcG9pbnRzIChpbnQg bl9jb21wb25lbnRzLCBzaXplX3Qgc3RyaWRlX2luLCB2b2lkKiBwb2ludHNfaW4sIHNpemVfdCBz dHJpZGVfb3V0LCB2b2lkKiBwb2ludHNfb3V0LCBpbnQgbl9wb2ludHMpOworKwkJcHVibGljIHZv aWQgcm90YXRlIChmbG9hdCBhbmdsZSwgZmxvYXQgeCwgZmxvYXQgeSwgZmxvYXQgeik7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCByb3RhdGVfZXVsZXIgKEdy YXBoZW5lLkV1bGVyIGV1bGVyKTsKKysJCXB1YmxpYyB2b2lkIHNjYWxlIChmbG9hdCBzeCwgZmxv YXQgc3ksIGZsb2F0IHN6KTsKKysJCXB1YmxpYyBzdGF0aWMgdm9pZCB0cmFuc2Zvcm1fcG9pbnQg KHJlZiBDb2dsLk1hdHJpeCBtYXRyaXgsIHJlZiBmbG9hdCB4LCByZWYgZmxvYXQgeSwgcmVmIGZs b2F0IHosIHJlZiBmbG9hdCB3KTsKKysJCXB1YmxpYyB2b2lkIHRyYW5zZm9ybV9wb2ludHMgKGlu dCBuX2NvbXBvbmVudHMsIHNpemVfdCBzdHJpZGVfaW4sIHZvaWQqIHBvaW50c19pbiwgc2l6ZV90 IHN0cmlkZV9vdXQsIHZvaWQqIHBvaW50c19vdXQsIGludCBuX3BvaW50cyk7CisrCQlwdWJsaWMg dm9pZCB0cmFuc2xhdGUgKGZsb2F0IHgsIGZsb2F0IHksIGZsb2F0IHopOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHRyYW5zcG9zZSAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIHZpZXdfMmRfaW5fZnJ1c3R1bSAo ZmxvYXQgbGVmdCwgZmxvYXQgcmlnaHQsIGZsb2F0IGJvdHRvbSwgZmxvYXQgdG9wLCBmbG9hdCB6 X25lYXIsIGZsb2F0IHpfMmQsIGZsb2F0IHdpZHRoXzJkLCBmbG9hdCBoZWlnaHRfMmQpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgdmlld18yZF9pbl9wZXJz cGVjdGl2ZSAoZmxvYXQgZm92X3ksIGZsb2F0IGFzcGVjdCwgZmxvYXQgel9uZWFyLCBmbG9hdCB6 XzJkLCBmbG9hdCB3aWR0aF8yZCwgZmxvYXQgaGVpZ2h0XzJkKTsKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTYiKV0KKysJcHVibGljIHN0cnVjdCBPbnNjcmVlbkRpcnR5 SW5mbyB7CisrCQlwdWJsaWMgaW50IHg7CisrCQlwdWJsaWMgaW50IHk7CisrCQlwdWJsaWMgaW50 IHdpZHRoOworKwkJcHVibGljIGludCBoZWlnaHQ7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNvZ2wvY29nbC5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBz dHJ1Y3QgVGV4dHVyZVZlcnRleCB7CisrCQlwdWJsaWMgZmxvYXQgeDsKKysJCXB1YmxpYyBmbG9h dCB5OworKwkJcHVibGljIGZsb2F0IHo7CisrCQlwdWJsaWMgZmxvYXQgdHg7CisrCQlwdWJsaWMg ZmxvYXQgdHk7CisrCQlwdWJsaWMgQ29nbC5Db2xvciBjb2xvcjsKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgc3RydWN0IFVzZXJEYXRhS2V5IHsK KysJCXB1YmxpYyBpbnQgdW51c2VkOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjb2dsL2NvZ2wuaCIsIGNuYW1lID0gIl9Db2dsQ29sb3JTaXplQ2hlY2siLCBoYXNfdHlwZV9p ZCA9IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBfQ29sb3JTaXplQ2hlY2sgeworKwkJW0NDb2Rl IChhcnJheV9sZW5ndGggPSBmYWxzZSldCisrCQlwdWJsaWMgd2VhayBjaGFyW10gY29tcGlsZV90 aW1lX2Fzc2VydF9Db2dsQ29sb3Jfc2l6ZTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY29nbC9jb2dsLmgiLCBjbmFtZSA9ICJfQ29nbE1hdHJpeFNpemVDaGVjayIsIGhhc190 eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgc3RydWN0IF9NYXRyaXhTaXplQ2hlY2sgeworKwkJ W0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldCisrCQlwdWJsaWMgd2VhayBjaGFyW10gY29t cGlsZV90aW1lX2Fzc2VydF9Db2dsTWF0cml4X3NpemU7CisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY25hbWUgPSAiX0NvZ2xUZXh0dXJlVmVydGV4U2l6 ZUNoZWNrIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgX1RleHR1cmVW ZXJ0ZXhTaXplQ2hlY2sgeworKwkJW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldCisrCQlw dWJsaWMgd2VhayBjaGFyW10gY29tcGlsZV90aW1lX2Fzc2VydF9Db2dsVGV4dHVyZVZlcnRleF9z aXplOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNw cmVmaXggPSAiQ09HTF9BVFRSSUJVVEVfVFlQRV8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgZW51bSBBdHRyaWJ1dGVUeXBlIHsK KysJCUJZVEUsCisrCQlVTlNJR05FRF9CWVRFLAorKwkJU0hPUlQsCisrCQlVTlNJR05FRF9TSE9S VCwKKysJCUZMT0FUCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29n bC5oIiwgY3ByZWZpeCA9ICJDT0dMX0JJVE1BUF9FUlJPUl8iLCBoYXNfdHlwZV9pZCA9IGZhbHNl KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgZW51bSBCaXRtYXBFcnJv ciB7CisrCQlGQUlMRUQsCisrCQlVTktOT1dOX1RZUEUsCisrCQlDT1JSVVBUX0lNQUdFCisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJD T0dMX0JMRU5EX1NUUklOR19FUlJPUl8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgZW51bSBCbGVuZFN0cmluZ0Vycm9yIHsKKysJ CVBBUlNFX0VSUk9SLAorKwkJQVJHVU1FTlRfUEFSU0VfRVJST1IsCisrCQlJTlZBTElEX0VSUk9S LAorKwkJR1BVX1VOU1VQUE9SVEVEX0VSUk9SOworKwkJcHVibGljIHN0YXRpYyB1aW50MzIgcXVh cmsgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwg Y3ByZWZpeCA9ICJDT0dMX0JVRkZFUl9CSVRfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtG bGFnc10KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgZW51bSBCdWZmZXJC aXQgeworKwkJQ09MT1IsCisrCQlERVBUSCwKKysJCVNURU5DSUwKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfIiwgaGFzX3R5 cGVfaWQgPSBmYWxzZSldCisrCVtGbGFnc10KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQor KwlwdWJsaWMgZW51bSBCdWZmZXJUYXJnZXQgeworKwkJV0lORE9XX0JVRkZFUiwKKysJCU9GRlND UkVFTl9CVUZGRVIKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2ds LmgiLCBjcHJlZml4ID0gIkNPR0xfREVQVEhfVEVTVF9GVU5DVElPTl8iLCBoYXNfdHlwZV9pZCA9 IGZhbHNlKV0KKysJcHVibGljIGVudW0gRGVwdGhUZXN0RnVuY3Rpb24geworKwkJTkVWRVIsCisr CQlMRVNTLAorKwkJRVFVQUwsCisrCQlMRVFVQUwsCisrCQlHUkVBVEVSLAorKwkJTk9URVFVQUws CisrCQlHRVFVQUwsCisrCQlBTFdBWVMKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfRUdMX0lNQUdFX0ZMQUdfIiwgaGFzX3R5 cGVfaWQgPSBmYWxzZSldCisrCVtGbGFnc10KKysJcHVibGljIGVudW0gRWdsSW1hZ2VGbGFncyB7 CisrCQlOT05FLAorKwkJTk9fR0VUX0RBVEEKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfRkVBVFVSRV9JRF8iLCBoYXNfdHlw ZV9pZCA9IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGVu dW0gRmVhdHVyZUlEIHsKKysJCVtDQ29kZSAoY25hbWUgPSAiQ09HTF9GRUFUVVJFX0lEX1VOU0lH TkVEX0lOVF9JTkRJQ0VTIildCisrCQlPR0xfRkVBVFVSRV9JRF9VTlNJR05FRF9JTlRfSU5ESUNF UywKKysJCVtDQ29kZSAoY25hbWUgPSAiQ09HTF9GRUFUVVJFX0lEX01BUF9CVUZGRVJfRk9SX1JF QUQiKV0KKysJCU9HTF9GRUFUVVJFX0lEX01BUF9CVUZGRVJfRk9SX1JFQUQsCisrCQlbQ0NvZGUg KGNuYW1lID0gIkNPR0xfRkVBVFVSRV9JRF9NQVBfQlVGRkVSX0ZPUl9XUklURSIpXQorKwkJT0dM X0ZFQVRVUkVfSURfTUFQX0JVRkZFUl9GT1JfV1JJVEUsCisrCQlbQ0NvZGUgKGNuYW1lID0gIkNP R0xfRkVBVFVSRV9JRF9TV0FQX0JVRkZFUlNfRVZFTlQiKV0KKysJCU9HTF9GRUFUVVJFX0lEX1NX QVBfQlVGRkVSU19FVkVOVCwKKysJCVtDQ29kZSAoY25hbWUgPSAiQ09HTF9GRUFUVVJFX0lEX1BS RVNFTlRBVElPTl9USU1FIildCisrCQlPR0xfRkVBVFVSRV9JRF9QUkVTRU5UQVRJT05fVElNRSwK KysJCVtDQ29kZSAoY25hbWUgPSAiQ09HTF9GRUFUVVJFX0lEX0ZFTkNFIildCisrCQlPR0xfRkVB VFVSRV9JRF9GRU5DRSwKKysJCVtDQ29kZSAoY25hbWUgPSAiQ09HTF9GRUFUVVJFX0lEX1RFWFRV UkVfUkciKV0KKysJCU9HTF9GRUFUVVJFX0lEX1RFWFRVUkVfUkcsCisrCQlbQ0NvZGUgKGNuYW1l ID0gIkNPR0xfRkVBVFVSRV9JRF9CVUZGRVJfQUdFIildCisrCQlPR0xfRkVBVFVSRV9JRF9CVUZG RVJfQUdFLAorKwkJW0NDb2RlIChjbmFtZSA9ICJDT0dMX0ZFQVRVUkVfSURfVEVYVFVSRV9FR0xf SU1BR0VfRVhURVJOQUwiKV0KKysJCU9HTF9GRUFUVVJFX0lEX1RFWFRVUkVfRUdMX0lNQUdFX0VY VEVSTkFMCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwg Y3ByZWZpeCA9ICJDT0dMX0ZJTFRFUl8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGlj IGVudW0gRmlsdGVyUmV0dXJuIHsKKysJCUNPTlRJTlVFLAorKwkJUkVNT1ZFCisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX0ZS QU1FX0VWRU5UXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAi MS4xNCIpXQorKwlwdWJsaWMgZW51bSBGcmFtZUV2ZW50IHsKKysJCVNZTkMsCisrCQlDT01QTEVU RQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVm aXggPSAiQ09HTF9GUkFNRUJVRkZFUl9FUlJPUl8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJ cHVibGljIGVudW0gRnJhbWVidWZmZXJFcnJvciB7CisrCQlbQ0NvZGUgKGNuYW1lID0gIkNPR0xf RlJBTUVCVUZGRVJfRVJST1JfQUxMT0NBVEUiKV0KKysJCUZSQU1FQlVGRkVSX0VSUk9SX0FMTE9D QVRFOworKwkJcHVibGljIHN0YXRpYyB1aW50MzIgcXVhcmsgKCk7CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX0dSQVBISUNT X1JFU0VUX1NUQVRVU18iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIGVudW0gR3Jh cGhpY3NSZXNldFN0YXR1cyB7CisrCQlOT19FUlJPUiwKKysJCUdVSUxUWV9DT05URVhUX1JFU0VU LAorKwkJSU5OT0NFTlRfQ09OVEVYVF9SRVNFVCwKKysJCVVOS05PV05fQ09OVEVYVF9SRVNFVCwK KysJCVBVUkdFRF9DT05URVhUX1JFU0VUCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX0lORElDRVNfVFlQRV9VTlNJR05FRF8i LCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIGVudW0gSW5kaWNlc1R5cGUgeworKwkJ QllURSwKKysJCVNIT1JULAorKwkJSU5UCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX01BVEVSSUFMX0FMUEhBX0ZVTkNfIiwg aGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBlbnVtIE1hdGVyaWFsQWxwaGFGdW5jIHsK KysJCU5FVkVSLAorKwkJTEVTUywKKysJCUVRVUFMLAorKwkJTEVRVUFMLAorKwkJR1JFQVRFUiwK KysJCU5PVEVRVUFMLAorKwkJR0VRVUFMLAorKwkJQUxXQVlTCisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX01BVEVSSUFMX0ZJ TFRFUl8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIGVudW0gTWF0ZXJpYWxGaWx0 ZXIgeworKwkJTkVBUkVTVCwKKysJCUxJTkVBUiwKKysJCU5FQVJFU1RfTUlQTUFQX05FQVJFU1Qs CisrCQlMSU5FQVJfTUlQTUFQX05FQVJFU1QsCisrCQlORUFSRVNUX01JUE1BUF9MSU5FQVIsCisr CQlMSU5FQVJfTUlQTUFQX0xJTkVBUgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9NQVRFUklBTF9XUkFQX01PREVfIiwgaGFz X3R5cGVfaWQgPSBmYWxzZSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGlj IGVudW0gTWF0ZXJpYWxXcmFwTW9kZSB7CisrCQlSRVBFQVQsCisrCQlDTEFNUF9UT19FREdFLAor KwkJQVVUT01BVElDCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29n bC5oIiwgY3ByZWZpeCA9ICJDT0dMX1BJUEVMSU5FX0FMUEhBX0ZVTkNfIiwgaGFzX3R5cGVfaWQg PSBmYWxzZSldCisrCXB1YmxpYyBlbnVtIFBpcGVsaW5lQWxwaGFGdW5jIHsKKysJCU5FVkVSLAor KwkJTEVTUywKKysJCUVRVUFMLAorKwkJTEVRVUFMLAorKwkJR1JFQVRFUiwKKysJCU5PVEVRVUFM LAorKwkJR0VRVUFMLAorKwkJQUxXQVlTCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX1BJUEVMSU5FX0NVTExfRkFDRV9NT0RF XyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgZW51bSBQaXBlbGluZUN1bGxGYWNl TW9kZSB7CisrCQlOT05FLAorKwkJRlJPTlQsCisrCQlCQUNLLAorKwkJQk9USAorKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9Q SVBFTElORV9GSUxURVJfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBlbnVtIFBp cGVsaW5lRmlsdGVyIHsKKysJCU5FQVJFU1QsCisrCQlMSU5FQVIsCisrCQlORUFSRVNUX01JUE1B UF9ORUFSRVNULAorKwkJTElORUFSX01JUE1BUF9ORUFSRVNULAorKwkJTkVBUkVTVF9NSVBNQVBf TElORUFSLAorKwkJTElORUFSX01JUE1BUF9MSU5FQVIKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfUElQRUxJTkVfV1JBUF9N T0RFXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIild CisrCXB1YmxpYyBlbnVtIFBpcGVsaW5lV3JhcE1vZGUgeworKwkJUkVQRUFULAorKwkJTUlSUk9S RURfUkVQRUFULAorKwkJQ0xBTVBfVE9fRURHRSwKKysJCUFVVE9NQVRJQworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9QSVhF TF9GT1JNQVRfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtGbGFnc10KKysJW1ZlcnNpb24g KHNpbmNlID0gIjAuOCIpXQorKwlwdWJsaWMgZW51bSBQaXhlbEZvcm1hdCB7CisrCQlBTlksCisr CQlBXzgsCisrCQlSR0JfNTY1LAorKwkJUkdCQV80NDQ0LAorKwkJUkdCQV81NTUxLAorKwkJWVVW LAorKwkJR184LAorKwkJUkdfODgsCisrCQlSR0JfODg4LAorKwkJQkdSXzg4OCwKKysJCVJHQkFf ODg4OCwKKysJCUJHUkFfODg4OCwKKysJCUFSR0JfODg4OCwKKysJCUFCR1JfODg4OCwKKysJCVJH QkFfMTAxMDEwMiwKKysJCUJHUkFfMTAxMDEwMiwKKysJCUFSR0JfMjEwMTAxMCwKKysJCUFCR1Jf MjEwMTAxMCwKKysJCVJHQkFfODg4OF9QUkUsCisrCQlCR1JBXzg4ODhfUFJFLAorKwkJQVJHQl84 ODg4X1BSRSwKKysJCUFCR1JfODg4OF9QUkUsCisrCQlSR0JBXzQ0NDRfUFJFLAorKwkJUkdCQV81 NTUxX1BSRSwKKysJCVJHQkFfMTAxMDEwMl9QUkUsCisrCQlCR1JBXzEwMTAxMDJfUFJFLAorKwkJ QVJHQl8yMTAxMDEwX1BSRSwKKysJCUFCR1JfMjEwMTAxMF9QUkUsCisrCQlERVBUSF8xNiwKKysJ CURFUFRIXzMyLAorKwkJREVQVEhfMjRfU1RFTkNJTF84OworKwkJcHVibGljIGludCBnZXRfYnl0 ZXNfcGVyX3BpeGVsIChpbnQgcGxhbmUpOworKwkJcHVibGljIGludCBnZXRfbl9wbGFuZXMgKCk7 CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgdG9fc3RyaW5nICgpOworKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9SRUFEX1BJ WEVMU19DT0xPUl8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0ZsYWdzXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBlbnVtIFJlYWRQaXhlbHNGbGFncyB7CisrCQlb Q0NvZGUgKGNuYW1lID0gIkNPR0xfUkVBRF9QSVhFTFNfQ09MT1JfQlVGRkVSIildCisrCQlSRUFE X1BJWEVMU19DT0xPUl9CVUZGRVIKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfUkVOREVSRVJfRVJST1JfIiwgaGFzX3R5cGVf aWQgPSBmYWxzZSldCisrCXB1YmxpYyBlbnVtIFJlbmRlcmVyRXJyb3IgeworKwkJWExJQl9ESVNQ TEFZX09QRU4sCisrCQlCQURfQ09OU1RSQUlOVAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9TSEFERVJfVFlQRV8iLCBoYXNf dHlwZV9pZCA9IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMg ZW51bSBTaGFkZXJUeXBlIHsKKysJCVZFUlRFWCwKKysJCUZSQUdNRU5UCisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX1NURVJF T18iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIGVudW0gU3RlcmVvTW9kZSB7Cisr CQlCT1RILAorKwkJTEVGVCwKKysJCVJJR0hUCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX1NZU1RFTV9FUlJPUl8iLCBoYXNf dHlwZV9pZCA9IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMg ZW51bSBTeXN0ZW1FcnJvciB7CisrCQlVTlNVUFBPUlRFRCwKKysJCU5PX01FTU9SWQorKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09H TF9URVhUVVJFX0NPTVBPTkVOVFNfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtWZXJzaW9u IChzaW5jZSA9ICIxLjE4IildCisrCXB1YmxpYyBlbnVtIFRleHR1cmVDb21wb25lbnRzIHsKKysJ CUEsCisrCQlSRywKKysJCVJHQiwKKysJCVJHQkEsCisrCQlERVBUSAorKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9URVhUVVJF X0VSUk9SXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS44 IildCisrCXB1YmxpYyBlbnVtIFRleHR1cmVFcnJvciB7CisrCQlTSVpFLAorKwkJRk9STUFULAor KwkJQkFEX1BBUkFNRVRFUiwKKysJCVRZUEU7CisrCQlwdWJsaWMgc3RhdGljIHVpbnQzMiBxdWFy ayAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBj cHJlZml4ID0gIkNPR0xfVEVYVFVSRV8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0ZsYWdz XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBlbnVtIFRleHR1cmVGbGFn cyB7CisrCQlOT05FLAorKwkJTk9fQVVUT19NSVBNQVAsCisrCQlOT19TTElDSU5HLAorKwkJTk9f QVRMQVMKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBj cHJlZml4ID0gIkNPR0xfVkVSVElDRVNfTU9ERV8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgZW51bSBWZXJ0aWNlc01vZGUgewor KwkJUE9JTlRTLAorKwkJTElORVMsCisrCQlMSU5FX0xPT1AsCisrCQlMSU5FX1NUUklQLAorKwkJ VFJJQU5HTEVTLAorKwkJVFJJQU5HTEVfU1RSSVAsCisrCQlUUklBTkdMRV9GQU4KKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xf V0lORElOR18iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIGVudW0gV2luZGluZyB7 CisrCQlDTE9DS1dJU0UsCisrCQlDT1VOVEVSX0NMT0NLV0lTRQorKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9XSU5TWVNfRkVB VFVSRV8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIGVudW0gV2luc3lzRmVhdHVy ZSB7CisrCQlNVUxUSVBMRV9PTlNDUkVFTiwKKysJCVNXQVBfVEhST1RUTEUsCisrCQlWQkxBTktf Q09VTlRFUiwKKysJCVZCTEFOS19XQUlULAorKwkJVEVYVFVSRV9GUk9NX1BJWE1BUCwKKysJCVNX QVBfQlVGRkVSU19FVkVOVCwKKysJCVNXQVBfUkVHSU9OLAorKwkJU1dBUF9SRUdJT05fVEhST1RU TEUsCisrCQlTV0FQX1JFR0lPTl9TWU5DSFJPTklaRUQsCisrCQlCVUZGRVJfQUdFLAorKwkJU1lO Q19BTkRfQ09NUExFVEVfRVZFTlQsCisrCQlOX0ZFQVRVUkVTCisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgaW5zdGFuY2VfcG9zID0gMS45KV0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwlwdWJsaWMgZGVsZWdhdGUgdm9pZCBEZWJ1Z09iamVj dEZvcmVhY2hUeXBlQ2FsbGJhY2sgKENvZ2wuRGVidWdPYmplY3RUeXBlSW5mbyBpbmZvKTsKKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgaW5zdGFuY2VfcG9zID0g MS45KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuMTAiKV0KKysJcHVibGljIGRlbGVnYXRlIHZv aWQgRmVhdHVyZUNhbGxiYWNrIChDb2dsLkZlYXR1cmVJRCBmZWF0dXJlKTsKKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgaW5zdGFuY2VfcG9zID0gMi45KV0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTYiKV0KKysJcHVibGljIGRlbGVnYXRlIHZvaWQgT25zY3Jl ZW5EaXJ0eUNhbGxiYWNrIChDb2dsLk9uc2NyZWVuIG9uc2NyZWVuLCBDb2dsLk9uc2NyZWVuRGly dHlJbmZvIGluZm8pOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgi LCBpbnN0YW5jZV9wb3MgPSAzLjkpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCXB1 YmxpYyBkZWxlZ2F0ZSB2b2lkIE9uc2NyZWVuUmVzaXplQ2FsbGJhY2sgKENvZ2wuT25zY3JlZW4g b25zY3JlZW4sIGludCB3aWR0aCwgaW50IGhlaWdodCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGluc3RhbmNlX3BvcyA9IDIuOSldCisrCVtWZXJzaW9uIChz aW5jZSA9ICIyLjAiKV0KKysJcHVibGljIGRlbGVnYXRlIGJvb2wgUGlwZWxpbmVMYXllckNhbGxi YWNrIChDb2dsLlBpcGVsaW5lIHBpcGVsaW5lLCBpbnQgbGF5ZXJfaW5kZXgpOworKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBpbnN0YW5jZV9wb3MgPSAxLjkpXQor KwlwdWJsaWMgZGVsZWdhdGUgYm9vbCBUZXh0dXJlMkRFR0xJbWFnZUV4dGVybmFsQWxsb2MgKENv Z2wuVGV4dHVyZTJEIHRleF8yZCkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGhhc190YXJnZXQgPSBmYWxzZSldCisrCXB1Ymxp YyBkZWxlZ2F0ZSB2b2lkIFVzZXJEYXRhRGVzdHJveUNhbGxiYWNrICh2b2lkKiBkYXRhKTsKKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY25hbWUgPSAiQ09HTF9B RklSU1RfQklUIildCisrCXB1YmxpYyBjb25zdCBpbnQgQUZJUlNUX0JJVDsKKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY25hbWUgPSAiQ09HTF9BX0JJVCIpXQor KwlwdWJsaWMgY29uc3QgaW50IEFfQklUOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y29nbC9jb2dsLmgiLCBjbmFtZSA9ICJDT0dMX0JHUl9CSVQiKV0KKysJcHVibGljIGNvbnN0IGlu dCBCR1JfQklUOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBj bmFtZSA9ICJDT0dMX0RFUFRIX0JJVCIpXQorKwlwdWJsaWMgY29uc3QgaW50IERFUFRIX0JJVDsK KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY25hbWUgPSAiQ09H TF9QSVhFTF9GT1JNQVRfTUFYX1BMQU5FUyIpXQorKwlwdWJsaWMgY29uc3QgaW50IFBJWEVMX0ZP Uk1BVF9NQVhfUExBTkVTOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2ds LmgiLCBjbmFtZSA9ICJDT0dMX1BSRU1VTFRfQklUIildCisrCXB1YmxpYyBjb25zdCBpbnQgUFJF TVVMVF9CSVQ7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNu YW1lID0gIkNPR0xfU1RFTkNJTF9CSVQiKV0KKysJcHVibGljIGNvbnN0IGludCBTVEVOQ0lMX0JJ VDsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY25hbWUgPSAi Q09HTF9URVhUVVJFX01BWF9XQVNURSIpXQorKwlwdWJsaWMgY29uc3QgaW50IFRFWFRVUkVfTUFY X1dBU1RFOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJ cHVibGljIHN0YXRpYyBib29sIGJsaXRfZnJhbWVidWZmZXIgKENvZ2wuRnJhbWVidWZmZXIgc3Jj LCBDb2dsLkZyYW1lYnVmZmVyIGRlc3QsIGludCBzcmNfeCwgaW50IHNyY195LCBpbnQgZHN0X3gs IGludCBkc3RfeSwgaW50IHdpZHRoLCBpbnQgaGVpZ2h0KSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCXB1YmxpYyBzdGF0 aWMgYm9vbCBjbHV0dGVyX3dpbnN5c19oYXNfZmVhdHVyZV9DTFVUVEVSIChDb2dsLldpbnN5c0Zl YXR1cmUgZmVhdHVyZSk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wu aCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBzdGF0aWMgYm9vbCBj b2xvcl9lcXVhbCAodm9pZCogdjEsIHZvaWQqIHYyKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2IildCisrCXB1 YmxpYyBzdGF0aWMgdm9pZCBjb2xvcl9pbml0X2Zyb21faHNsIChvdXQgQ29nbC5Db2xvciBjb2xv ciwgZmxvYXQgaHVlLCBmbG9hdCBzYXR1cmF0aW9uLCBmbG9hdCBsdW1pbmFuY2UpOworKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNl ID0gIjIuMCIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgZGVidWdfbWF0cml4X3ByaW50IChDb2ds Lk1hdHJpeCBtYXRyaXgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2ds LmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQg ZGVidWdfb2JqZWN0X2ZvcmVhY2hfdHlwZSAoQ29nbC5EZWJ1Z09iamVjdEZvcmVhY2hUeXBlQ2Fs bGJhY2sgZnVuYyk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIp XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBkZWJ1 Z19vYmplY3RfcHJpbnRfaW5zdGFuY2VzICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMg c3RhdGljIHZvaWQgZmx1c2ggKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2ds L2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgc3RhdGlj IHZvaWQgZm9yZWFjaF9mZWF0dXJlIChDb2dsLkNvbnRleHQgY29udGV4dCwgQ29nbC5GZWF0dXJl Q2FsbGJhY2sgY2FsbGJhY2spOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9j b2dsLmgiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNl ID0gIjEuMTYiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGdldF9iYWNrZmFjZV9jdWxsaW5nX2Vu YWJsZWQgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQor KwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNCIpXQorKwlwdWJsaWMgc3RhdGljIGludDY0IGdldF9j bG9ja190aW1lIChDb2dsLkNvbnRleHQgY29udGV4dCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRl cHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIpXQorKwlwdWJsaWMgc3RhdGljIGJvb2wgZ2V0X2RlcHRo X3Rlc3RfZW5hYmxlZCAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29n bC5oIildCisrCXB1YmxpYyBzdGF0aWMgQ29nbC5HcmFwaGljc1Jlc2V0U3RhdHVzIGdldF9ncmFw aGljc19yZXNldF9zdGF0dXMgKENvZ2wuQ29udGV4dCBjb250ZXh0KTsKKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0g dHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2UgPSAiMS4wIildCisrCXB1Ymxp YyBzdGF0aWMgR0xpYi5PcHRpb25Hcm91cCBnZXRfb3B0aW9uX2dyb3VwICgpOworKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJcHVibGljIHN0YXRpYyBHTGli LkNhbGxiYWNrIGdldF9wcm9jX2FkZHJlc3MgKHN0cmluZyBzKTsKKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1 ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE4IildCisrCXB1YmxpYyBzdGF0aWMgR0xpYi5UeXBl IGd0eXBlX21hdHJpeF9nZXRfdHlwZSAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBz dGF0aWMgYm9vbCBoYXNfZmVhdHVyZSAoQ29nbC5Db250ZXh0IGNvbnRleHQsIENvZ2wuRmVhdHVy ZUlEIGZlYXR1cmUpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgi KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGlz X2NvbnRleHQgKHZvaWQqIG9iamVjdCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj b2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgc3Rh dGljIGJvb2wgaXNfZnJhbWVidWZmZXIgKHZvaWQqIG9iamVjdCk7CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIp XQorKwlwdWJsaWMgc3RhdGljIGJvb2wgaXNfb25zY3JlZW4gKHZvaWQqIG9iamVjdCk7CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMi4wIildCisrCXB1YmxpYyBzdGF0aWMgYm9vbCBpc19waXBlbGluZSAodm9pZCogb2Jq ZWN0KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCXB1 YmxpYyBzdGF0aWMgYm9vbCBpc190ZXh0dXJlXzJkICh2b2lkKiBvYmplY3QpOworKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGlzX3RleHR1cmVfMmRfc2xpY2VkICh2b2lk KiBvYmplY3QpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0K KysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgc3RhdGljIGJvb2wgbWF0cml4 X2VxdWFsICh2b2lkKiB2MSwgdm9pZCogdjIpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNh dGVkX3NpbmNlID0gIjEuMTYiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIHNldF9iYWNrZmFjZV9j dWxsaW5nX2VuYWJsZWQgKGJvb2wgc2V0dGluZyk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJl Y2F0ZWRfc2luY2UgPSAiMS4xNiIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgc2V0X2RlcHRoX3Rl c3RfZW5hYmxlZCAoYm9vbCBzZXR0aW5nKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRl ZF9zaW5jZSA9ICIxLjE2IildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBzaGFkZXJfY29tcGlsZSAo Q29nbC5IYW5kbGUgaGFuZGxlKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wv Y29nbC5oIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5j ZSA9ICIxLjE2IildCisrCXB1YmxpYyBzdGF0aWMgc3RyaW5nIHNoYWRlcl9nZXRfaW5mb19sb2cg KENvZ2wuSGFuZGxlIGhhbmRsZSk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2ds L2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2lu Y2UgPSAiMS4xNiIpXQorKwlwdWJsaWMgc3RhdGljIENvZ2wuU2hhZGVyVHlwZSBzaGFkZXJfZ2V0 X3R5cGUgKENvZ2wuSGFuZGxlIGhhbmRsZSk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0 ZWRfc2luY2UgPSAiMS4xNiIpXQorKwlwdWJsaWMgc3RhdGljIGJvb2wgc2hhZGVyX2lzX2NvbXBp bGVkIChDb2dsLkhhbmRsZSBoYW5kbGUpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVk X3NpbmNlID0gIjEuMTYiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIHNoYWRlcl9zb3VyY2UgKENv Z2wuSGFuZGxlIHNoYWRlciwgc3RyaW5nIHNvdXJjZSk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRl cHJlY2F0ZWRfc2luY2UgPSAiMS4xOCIsIHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgc3RhdGlj IENvZ2wuVGV4dHVyZSB0ZXh0dXJlX25ld19mcm9tX2JpdG1hcCAoQ29nbC5CaXRtYXAgYml0bWFw LCBDb2dsLlRleHR1cmVGbGFncyBmbGFncywgQ29nbC5QaXhlbEZvcm1hdCBpbnRlcm5hbF9mb3Jt YXQpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1Zl cnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTgiLCBzaW5j ZSA9ICIwLjgiKV0KKysJcHVibGljIHN0YXRpYyBDb2dsLlRleHR1cmUgdGV4dHVyZV9uZXdfZnJv bV9kYXRhIChpbnQgd2lkdGgsIGludCBoZWlnaHQsIENvZ2wuVGV4dHVyZUZsYWdzIGZsYWdzLCBD b2dsLlBpeGVsRm9ybWF0IGZvcm1hdCwgQ29nbC5QaXhlbEZvcm1hdCBpbnRlcm5hbF9mb3JtYXQs IGludCByb3dzdHJpZGUsIHVpbnQ4IGRhdGEpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNh dGVkX3NpbmNlID0gIjEuMTgiLCBzaW5jZSA9ICIwLjgiKV0KKysJcHVibGljIHN0YXRpYyBDb2ds LlRleHR1cmUgdGV4dHVyZV9uZXdfZnJvbV9maWxlIChzdHJpbmcgZmlsZW5hbWUsIENvZ2wuVGV4 dHVyZUZsYWdzIGZsYWdzLCBDb2dsLlBpeGVsRm9ybWF0IGludGVybmFsX2Zvcm1hdCkgdGhyb3dz IEdMaWIuRXJyb3I7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIp XQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4x OCIsIHNpbmNlID0gIjAuOCIpXQorKwlwdWJsaWMgc3RhdGljIENvZ2wuVGV4dHVyZSB0ZXh0dXJl X25ld193aXRoX3NpemUgKHVpbnQgd2lkdGgsIHVpbnQgaGVpZ2h0LCBDb2dsLlRleHR1cmVGbGFn cyBmbGFncywgQ29nbC5QaXhlbEZvcm1hdCBpbnRlcm5hbF9mb3JtYXQpOworKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTAiKV0KKysJcHVibGljIHN0YXRpYyB1aW50MzIgeDExX29uc2NyZWVuX2dldF93aW5kb3dfeGlk IChDb2dsLk9uc2NyZWVuIG9uc2NyZWVuKTsKKyt9CistLSAKKzIuMjUuMAorCmRpZmYgLS1naXQg YS9zcmNwa2dzL2J1ZGdpZS1kZXNrdG9wL3RlbXBsYXRlIGIvc3JjcGtncy9idWRnaWUtZGVza3Rv cC90ZW1wbGF0ZQppbmRleCBiMzJlNzczNGQzYi4uMTgwY2RjMDJmMWYgMTAwNjQ0Ci0tLSBhL3Ny Y3BrZ3MvYnVkZ2llLWRlc2t0b3AvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9idWRnaWUtZGVza3Rv cC90ZW1wbGF0ZQpAQCAtMSwyMSArMSwyMiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnYnVkZ2ll LWRlc2t0b3AnCiBwa2duYW1lPWJ1ZGdpZS1kZXNrdG9wCiB2ZXJzaW9uPTEwLjUuMQotcmV2aXNp b249MworcmV2aXNpb249NAogYnVpbGRfc3R5bGU9bWVzb24KIGJ1aWxkX2hlbHBlcj1naXIKIGNv bmZpZ3VyZV9hcmdzPSItRHdpdGgtZ3RrLWRvYz1mYWxzZSAtRHdpdGgtZGVza3RvcC1pY29ucz1u b25lIgogaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIGludGx0b29sIHZhbGEgZ2xpYi1kZXZl bCBnb2JqZWN0LWludHJvc3BlY3Rpb24gc2Fzc2MiCiBtYWtlZGVwZW5kcz0iYWxzYS1saWItZGV2 ZWwgbGlibm90aWZ5LWRldmVsIGFjY291bnRzc2VydmljZS1kZXZlbCBsaWJwZWFzLWRldmVsIGxp YnduY2stZGV2ZWwKLW11dHRlci1kZXZlbCBpYnVzLWRldmVsIGdub21lLWRlc2t0b3AtZGV2ZWwg cHVsc2VhdWRpby1kZXZlbCB1cG93ZXItZGV2ZWwgZ3RrKzMtZGV2ZWwgcG9sa2l0LWRldmVsCi1n bm9tZS1ibHVldG9vdGgtZGV2ZWwgZ25vbWUtbWVudXMtZGV2ZWwgZ25vbWUtc2V0dGluZ3MtZGFl bW9uLWRldmVsIHZhbGEgbGlidXVpZC1kZXZlbCBsaWJ1cG93ZXItZ2xpYjMiCi1kZXBlbmRzPSJn bm9tZS1zZXNzaW9uIGdub21lLXNldHRpbmdzLWRhZW1vbiBnbm9tZS1jb250cm9sLWNlbnRlciBl bG9naW5kIgorIG11dHRlci1kZXZlbCBpYnVzLWRldmVsIGdub21lLWRlc2t0b3AtZGV2ZWwgcHVs c2VhdWRpby1kZXZlbCB1cG93ZXItZGV2ZWwgZ3RrKzMtZGV2ZWwgcG9sa2l0LWRldmVsCisgZ25v bWUtYmx1ZXRvb3RoLWRldmVsIGdub21lLW1lbnVzLWRldmVsIGdub21lLXNldHRpbmdzLWRhZW1v bi1kZXZlbCB2YWxhIGxpYnV1aWQtZGV2ZWwgbGlidXBvd2VyLWdsaWIzIgorZGVwZW5kcz0iZ25v bWUtc2Vzc2lvbiBnbm9tZS1zZXR0aW5ncy1kYWVtb24gZ25vbWUtY29udHJvbC1jZW50ZXIgZ25v bWUtdGhlbWVzLWV4dHJhIGVsb2dpbmQiCiBzaG9ydF9kZXNjPSJNb2Rlcm4gZGVza3RvcCBlbnZp cm9ubWVudCBmcm9tIHRoZSBTb2x1cyBQcm9qZWN0IgogbWFpbnRhaW5lcj0iTG9yZW0gPG5vdGxv cmVtaXBzdW1AcHJvdG9ubWFpbC5jb20+IgogbGljZW5zZT0iR1BMLTIuMC1vbmx5LCBMR1BMLTIu MS1vbmx5IgogaG9tZXBhZ2U9Imh0dHBzOi8vZ2l0aHViLmNvbS9zb2x1cy1wcm9qZWN0L2J1ZGdp ZS1kZXNrdG9wIgogZGlzdGZpbGVzPSJodHRwczovL2dpdGh1Yi5jb20vc29sdXMtcHJvamVjdC9i dWRnaWUtZGVza3RvcC9yZWxlYXNlcy9kb3dubG9hZC92JHt2ZXJzaW9ufS9idWRnaWUtZGVza3Rv cC0ke3ZlcnNpb259LnRhci54eiIKIGNoZWNrc3VtPWQwMzVlYzc2NGUwMDkzNzIyYTgzMjQxMWFl YjZhYmEyOTZjMDk5NWQ5MjdlYTA2OWIyMDViMTljODVhYWU1NjUKK3BhdGNoX2FyZ3M9Ii1OcDEi CiAKIHByZV9jb25maWd1cmUoKSB7CiAJdnNlZCAtaSAncy9leGVjIGdub21lLXNlc3Npb24vZXhl YyBnbm9tZS1zZXNzaW9uIC0tYnVpbHRpbi8nIHNyYy9zZXNzaW9uL2J1ZGdpZS1kZXNrdG9wLmlu CgpGcm9tIDcyYjZiOTE1MDIyMWU2MzM2MzQ5ZWI5YjhhNWFiYTUzM2YyMzRiZmUgTW9uIFNlcCAx NyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6 IFR1ZSwgMTYgSnVuIDIwMjAgMTk6NDk6MDcgKzA2MDAKU3ViamVjdDogW1BBVENIIDQyLzY1XSB4 ZGctZGVza3RvcC1wb3J0YWwtZ3RrOiByZWJ1aWxkIGFnYWluc3QKIGxpYmdub21lLWRlc2t0b3At My5zby4xOQoKLS0tCiBzcmNwa2dzL3hkZy1kZXNrdG9wLXBvcnRhbC1ndGsvdGVtcGxhdGUgfCAy ICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYg LS1naXQgYS9zcmNwa2dzL3hkZy1kZXNrdG9wLXBvcnRhbC1ndGsvdGVtcGxhdGUgYi9zcmNwa2dz L3hkZy1kZXNrdG9wLXBvcnRhbC1ndGsvdGVtcGxhdGUKaW5kZXggZGVlMGU0NjMzODYuLjU1OGM3 NWY1MzlkIDEwMDY0NAotLS0gYS9zcmNwa2dzL3hkZy1kZXNrdG9wLXBvcnRhbC1ndGsvdGVtcGxh dGUKKysrIGIvc3JjcGtncy94ZGctZGVza3RvcC1wb3J0YWwtZ3RrL3RlbXBsYXRlCkBAIC0xLDcg KzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAneGRnLWRlc2t0b3AtcG9ydGFsLWd0aycKIHBr Z25hbWU9eGRnLWRlc2t0b3AtcG9ydGFsLWd0awogdmVyc2lvbj0xLjYuMAotcmV2aXNpb249MQor cmV2aXNpb249MgogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogaG9zdG1ha2VkZXBlbmRzPSJw a2ctY29uZmlnIGxpYnhzbHQgZ2xpYi1kZXZlbCB4ZGctZGVza3RvcC1wb3J0YWwgZ2V0dGV4dCIK IG1ha2VkZXBlbmRzPSJmbGF0cGFrLWRldmVsIGd0ayszLWRldmVsIGxpYnhzbHQtZGV2ZWwgbGli Z2xpYi1kZXZlbAoKRnJvbSA1ODI4OGYxYTFjODY0M2I1M2Y1NWNjOGU1NDY3NmEwNzYxYjU3Yzhi IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2su Y29tPgpEYXRlOiBUdWUsIDE2IEp1biAyMDIwIDE5OjQ5OjE0ICswNjAwClN1YmplY3Q6IFtQQVRD SCA0My82NV0gY2hlZXNlOiByZWJ1aWxkIGFnYWluc3QgbGliZ25vbWUtZGVza3RvcC0zLnNvLjE5 CgotLS0KIHNyY3BrZ3MvY2hlZXNlL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEg aW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9jaGVlc2Uv dGVtcGxhdGUgYi9zcmNwa2dzL2NoZWVzZS90ZW1wbGF0ZQppbmRleCA3YTU2YmEwMzlmYi4uMDM3 Y2RhNDljOTggMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvY2hlZXNlL3RlbXBsYXRlCisrKyBiL3NyY3Br Z3MvY2hlZXNlL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAn Y2hlZXNlJwogcGtnbmFtZT1jaGVlc2UKIHZlcnNpb249My4zNC4wCi1yZXZpc2lvbj0xCityZXZp c2lvbj0yCiBidWlsZF9zdHlsZT1tZXNvbgogYnVpbGRfaGVscGVyPSJnaXIiCiBjb25maWd1cmVf YXJncz0iLURndGtfZG9jPSQodm9wdF9pZiBndGtfZG9jICd0cnVlJyAnZmFsc2UnKQoKRnJvbSAx MTE1MGU4NTg5MDIyMGVlOWRlNDViZTQzMmZjMzBhMTljYjE3NzRiIE1vbiBTZXAgMTcgMDA6MDA6 MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUdWUsIDE2 IEp1biAyMDIwIDE5OjQ5OjIxICswNjAwClN1YmplY3Q6IFtQQVRDSCA0NC82NV0gZ25vbWUtYm9v a3M6IHJlYnVpbGQgYWdhaW5zdCBsaWJnbm9tZS1kZXNrdG9wLTMuc28uMTkKCi0tLQogc3JjcGtn cy9nbm9tZS1ib29rcy90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlv bigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtYm9va3MvdGVt cGxhdGUgYi9zcmNwa2dzL2dub21lLWJvb2tzL3RlbXBsYXRlCmluZGV4IDExNGI5ZTAzNGMyLi4x ZDQ5NzRmZTE4MyAxMDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1ib29rcy90ZW1wbGF0ZQorKysg Yi9zcmNwa2dzL2dub21lLWJvb2tzL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0 ZSBmaWxlIGZvciAnZ25vbWUtYm9va3MnCiBwa2duYW1lPWdub21lLWJvb2tzCiB2ZXJzaW9uPTMu MzQuMAotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfaGVscGVyPSJnaXIiCiBidWlsZF9z dHlsZT1tZXNvbgogaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIHZhbGEgZ2xpYi1kZXZlbCBs aWJyc3ZnIGRvY2Jvb2steHNsIGxpYnhzbHQKCkZyb20gNzMxNWQwZDQ4ZjkwNGI1MmE1MWU2NGU4 ZjYwNmM5NTg4ZGU0NjQwMyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1u YWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCAxNiBKdW4gMjAyMCAxOTo0OToyOCArMDYw MApTdWJqZWN0OiBbUEFUQ0ggNDUvNjVdIGdub21lLWNoYXJhY3RlcnM6IHJlYnVpbGQgYWdhaW5z dAogbGliZ25vbWUtZGVza3RvcC0zLnNvLjE5CgotLS0KIHNyY3BrZ3MvZ25vbWUtY2hhcmFjdGVy cy90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxl dGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtY2hhcmFjdGVycy90ZW1wbGF0ZSBi L3NyY3BrZ3MvZ25vbWUtY2hhcmFjdGVycy90ZW1wbGF0ZQppbmRleCA4OTg2OGY0YmMwNC4uYWMy NjRlNTFhNmEgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtY2hhcmFjdGVycy90ZW1wbGF0ZQor KysgYi9zcmNwa2dzL2dub21lLWNoYXJhY3RlcnMvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAj IFRlbXBsYXRlIGZpbGUgZm9yICdnbm9tZS1jaGFyYWN0ZXJzJwogcGtnbmFtZT1nbm9tZS1jaGFy YWN0ZXJzCiB2ZXJzaW9uPTMuMzQuMAotcmV2aXNpb249MgorcmV2aXNpb249MwogYnVpbGRfc3R5 bGU9bWVzb24KIGJ1aWxkX2hlbHBlcj0iZ2lyIgogaG9zdG1ha2VkZXBlbmRzPSJnZXR0ZXh0IGdq cyBnbGliLWRldmVsIGl0c3Rvb2wgcGtnLWNvbmZpZyIKCkZyb20gODIxYWJkNGRlZTFlOGY0ZWQ2 NjcxMTAxNDI0MDZlMGVlYjM0YWNkMiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFm aXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCAxNiBKdW4gMjAyMCAxOTo0OToz NiArMDYwMApTdWJqZWN0OiBbUEFUQ0ggNDYvNjVdIGdub21lLWRvY3VtZW50czogcmVidWlsZCBh Z2FpbnN0CiBsaWJnbm9tZS1kZXNrdG9wLTMuc28uMTkKCi0tLQogc3JjcGtncy9nbm9tZS1kb2N1 bWVudHMvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEg ZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLWRvY3VtZW50cy90ZW1wbGF0 ZSBiL3NyY3BrZ3MvZ25vbWUtZG9jdW1lbnRzL3RlbXBsYXRlCmluZGV4IDk3YjUzZDYzNWQ3Li43 ZTQ1YjgyNWU3MSAxMDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1kb2N1bWVudHMvdGVtcGxhdGUK KysrIGIvc3JjcGtncy9nbm9tZS1kb2N1bWVudHMvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAj IFRlbXBsYXRlIGZpbGUgZm9yICdnbm9tZS1kb2N1bWVudHMnCiBwa2duYW1lPWdub21lLWRvY3Vt ZW50cwogdmVyc2lvbj0zLjM0LjAKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX2hlbHBl cj0iZ2lyIgogYnVpbGRfc3R5bGU9bWVzb24KIGhvc3RtYWtlZGVwZW5kcz0iZG9jYm9vay14c2wg Z2V0dGV4dCBpdHN0b29sIHBrZy1jb25maWcgZ2xpYi1kZXZlbCBsaWJ4c2x0IGdkay1waXhidWYK CkZyb20gYzM2MmZkNDFkNTI4YzkzOTg1MDcyMzFkMjNiNmVmNGI2Y2EwMTBlMiBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTog VHVlLCAxNiBKdW4gMjAyMCAxOTo0OTo0NiArMDYwMApTdWJqZWN0OiBbUEFUQ0ggNDcvNjVdIGdu b21lLWZvbnQtdmlld2VyOiByZWJ1aWxkIGFnYWluc3QKIGxpYmdub21lLWRlc2t0b3AtMy5zby4x OQoKLS0tCiBzcmNwa2dzL2dub21lLWZvbnQtdmlld2VyL3RlbXBsYXRlIHwgMiArLQogMSBmaWxl IGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3Jj cGtncy9nbm9tZS1mb250LXZpZXdlci90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25vbWUtZm9udC12aWV3 ZXIvdGVtcGxhdGUKaW5kZXggNmQwMzUzNjZkNDQuLmY3NGZjYmNiMDAwIDEwMDY0NAotLS0gYS9z cmNwa2dzL2dub21lLWZvbnQtdmlld2VyL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtZm9u dC12aWV3ZXIvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdn bm9tZS1mb250LXZpZXdlcicKIHBrZ25hbWU9Z25vbWUtZm9udC12aWV3ZXIKIHZlcnNpb249My4z NC4wCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1tZXNvbgogaG9zdG1ha2Vk ZXBlbmRzPSJwa2ctY29uZmlnIGdsaWItZGV2ZWwiCiBtYWtlZGVwZW5kcz0iZm9udGNvbmZpZy1k ZXZlbCBmcmVldHlwZS1kZXZlbCBnbGliLWRldmVsIGd0ayszLWRldmVsCgpGcm9tIDhmMTE2YTRi ZTE3Y2EzZDQzYWIzZTBmM2Q5YTA5ZmI5NGFjMGRlYzMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAx CkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFR1ZSwgMTYgSnVuIDIw MjAgMTk6NDk6NTQgKzA2MDAKU3ViamVjdDogW1BBVENIIDQ4LzY1XSBnbm9tZS1zY3JlZW5zYXZl cjogcmVidWlsZCBhZ2FpbnN0CiBsaWJnbm9tZS1kZXNrdG9wLTMuc28uMTkKCi0tLQogLi4uL3Bh dGNoZXMvZ25vbWUtZGVza3RvcC0zLjM2LnBhdGNoICAgICAgICAgICAgICAgIHwgMTMgKysrKysr KysrKysrKwogc3JjcGtncy9nbm9tZS1zY3JlZW5zYXZlci90ZW1wbGF0ZSAgICAgICAgICAgICAg ICAgIHwgIDUgKysrLS0KIDIgZmlsZXMgY2hhbmdlZCwgMTYgaW5zZXJ0aW9ucygrKSwgMiBkZWxl dGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2dub21lLXNjcmVlbnNhdmVyL3Bh dGNoZXMvZ25vbWUtZGVza3RvcC0zLjM2LnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9t ZS1zY3JlZW5zYXZlci9wYXRjaGVzL2dub21lLWRlc2t0b3AtMy4zNi5wYXRjaCBiL3NyY3BrZ3Mv Z25vbWUtc2NyZWVuc2F2ZXIvcGF0Y2hlcy9nbm9tZS1kZXNrdG9wLTMuMzYucGF0Y2gKbmV3IGZp bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLjU4ZDkyZTQ2M2EzCi0tLSAvZGV2L251 bGwKKysrIGIvc3JjcGtncy9nbm9tZS1zY3JlZW5zYXZlci9wYXRjaGVzL2dub21lLWRlc2t0b3At My4zNi5wYXRjaApAQCAtMCwwICsxLDEzIEBACitkaWZmIC1OYXVyIGdub21lLXNjcmVlbnNhdmVy LTMuNi4xLm9yaWcvc3JjL2dzLW1hbmFnZXIuYyBnbm9tZS1zY3JlZW5zYXZlci0zLjYuMS9zcmMv Z3MtbWFuYWdlci5jCistLS0gZ25vbWUtc2NyZWVuc2F2ZXItMy42LjEub3JpZy9zcmMvZ3MtbWFu YWdlci5jCTIwMjAtMDMtMDggMDg6NTM6NDYuNDA4NDMxNTc4ICswMDAwCisrKysgZ25vbWUtc2Ny ZWVuc2F2ZXItMy42LjEvc3JjL2dzLW1hbmFnZXIuYwkyMDIwLTAzLTA4IDA4OjU0OjMxLjg3NTcz ODczMiArMDAwMAorQEAgLTc4OCw4ICs3ODgsNyBAQAorICAgICAgICAgc3VyZmFjZSA9IGdub21l X2JnX2NyZWF0ZV9zdXJmYWNlIChtYW5hZ2VyLT5wcml2LT5iZywKKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2RrX3dpbmRvdywKKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGgsCistICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGhlaWdodCwKKy0gICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgRkFMU0UpOworKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBoZWlnaHQpOworICAgICAgICAgZ3Nfd2luZG93X3NldF9iYWNrZ3JvdW5k X3N1cmZhY2UgKHdpbmRvdywgc3VyZmFjZSk7CisgICAgICAgICBjYWlyb19zdXJmYWNlX2Rlc3Ry b3kgKHN1cmZhY2UpOworIH0KZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtc2NyZWVuc2F2ZXIv dGVtcGxhdGUgYi9zcmNwa2dzL2dub21lLXNjcmVlbnNhdmVyL3RlbXBsYXRlCmluZGV4IDM2M2Zj ZjEyZTEwLi41NGE5YTM1ZWNjYiAxMDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1zY3JlZW5zYXZl ci90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dub21lLXNjcmVlbnNhdmVyL3RlbXBsYXRlCkBAIC0x LDE1ICsxLDE2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbm9tZS1zY3JlZW5zYXZlcicKIHBr Z25hbWU9Z25vbWUtc2NyZWVuc2F2ZXIKIHZlcnNpb249My42LjEKLXJldmlzaW9uPTIKK3Jldmlz aW9uPTMKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKIGNvbmZpZ3VyZV9hcmdzPSItLWVuYWJs ZS1jb21waWxlLXdhcm5pbmdzPW1pbmltdW0iCiBob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcg YXV0b21ha2UgaW50bHRvb2wgZ2xpYi1kZXZlbCIKIG1ha2VkZXBlbmRzPSJnbm9tZS1kZXNrdG9w LWRldmVsIGRidXMtZ2xpYi1kZXZlbCBwYW0tZGV2ZWwiCiBkZXBlbmRzPSJnbm9tZS1kZXNrdG9w IGxpYmdub21la2JkIGRidXMiCi1zaG9ydF9kZXNjPSJBIG5ldyBzY3JlZW5zYXZlciB0aGF0IGNh biByZXBsYWNlIHhzY3JlZW5zYXZlciIKK3Nob3J0X2Rlc2M9Ik5ldyBzY3JlZW5zYXZlciB0aGF0 IGNhbiByZXBsYWNlIHhzY3JlZW5zYXZlciIKIG1haW50YWluZXI9InNoaXpvbmljIDxyZWFsdGlh ekBnbWFpbC5jb20+IgogbGljZW5zZT0iR1BMLTMuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRw czovL3dpa2kuZ25vbWUub3JnL1Byb2plY3RzL0dub21lU2NyZWVuc2F2ZXIiCiBkaXN0ZmlsZXM9 IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJz aW9ufS50YXIueHoiCiBjaGVja3N1bT1mMzliNzhkNGY3ZmVkNzQ4YzdmMGEzMWQ2OTQxMTJmYjkw N2M2ZDNjNGU2M2RiMjJlYjg1OGRmMDdlOTYyY2QwCitwYXRjaF9hcmdzPSItTnAxIgoKRnJvbSBj ODkyMWFhNDcwMmY1ZWJiYWU4NTMwOThjY2E5ZTc2NDgwMGQ1ODYwIE1vbiBTZXAgMTcgMDA6MDA6 MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUdWUsIDE2 IEp1biAyMDIwIDE5OjUwOjAxICswNjAwClN1YmplY3Q6IFtQQVRDSCA0OS82NV0gZ25vbWUtd2Vh dGhlcjogcmVidWlsZCBhZ2FpbnN0IGxpYmdub21lLWRlc2t0b3AtMy5zby4xOQoKLS0tCiBzcmNw a2dzL2dub21lLXdlYXRoZXIvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNl cnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLXdlYXRo ZXIvdGVtcGxhdGUgYi9zcmNwa2dzL2dub21lLXdlYXRoZXIvdGVtcGxhdGUKaW5kZXggZDMwYmU5 YmYxOTIuLmMwMjhlNDZiYTY1IDEwMDY0NAotLS0gYS9zcmNwa2dzL2dub21lLXdlYXRoZXIvdGVt cGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS13ZWF0aGVyL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBA QAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ25vbWUtd2VhdGhlcicKIHBrZ25hbWU9Z25vbWUtd2Vh dGhlcgogdmVyc2lvbj0zLjM2LjEKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX2hlbHBl cj0iZ2lyIgogYnVpbGRfc3R5bGU9bWVzb24KIGhvc3RtYWtlZGVwZW5kcz0iZ2V0dGV4dCBwa2ct Y29uZmlnIGl0c3Rvb2wgZ2xpYi1kZXZlbCBnanMiCgpGcm9tIDI1NTZlZGQ2MzFlZDUyMzgxNzMw YzU4OTkzYzJkN2RlOWRmMWIwYzYgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlz IDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFR1ZSwgMTYgSnVuIDIwMjAgMTk6NTA6MDkg KzA2MDAKU3ViamVjdDogW1BBVENIIDUwLzY1XSB0b3RlbTogcmVidWlsZCBhZ2FpbnN0IGxpYmdu b21lLWRlc2t0b3AtMy5zby4xOQoKLS0tCiBzcmNwa2dzL3RvdGVtL3RlbXBsYXRlIHwgMiArLQog MSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0 IGEvc3JjcGtncy90b3RlbS90ZW1wbGF0ZSBiL3NyY3BrZ3MvdG90ZW0vdGVtcGxhdGUKaW5kZXgg ODE1MjJiMzE0ODguLmU0MTg2NjMyMTUzIDEwMDY0NAotLS0gYS9zcmNwa2dzL3RvdGVtL3RlbXBs YXRlCisrKyBiL3NyY3BrZ3MvdG90ZW0vdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBs YXRlIGZpbGUgZm9yICd0b3RlbScKIHBrZ25hbWU9dG90ZW0KIHZlcnNpb249My4zNC4xCi1yZXZp c2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1tZXNvbgogYnVpbGRfaGVscGVyPSJnaXIi CiBjb25maWd1cmVfYXJncz0iLURlbmFibGUtcHl0aG9uPW5vIC1EZW5hYmxlLW5hdXRpbHVzPXll cwoKRnJvbSA5MDM1OGVmYTVlYWNhZTZmZDAxMjM3Nzc4Y2IwYjZkYzg4OTExMjJiIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/PUM0PTkwbz1DMz1BMG49MjBUcj1FMT1C QT1BN249MjBDPUMzPUI0bmc9MjBEYW5oPz0KIDxjb25nZGFuaHF4QGdtYWlsLmNvbT4KRGF0ZTog VHVlLCAxNiBKdW4gMjAyMCAyMjo1Njo1MyArMDcwMApTdWJqZWN0OiBbUEFUQ0ggNTEvNjVdIGdu b21lLWRlc2t0b3A6IGFkZCBkb19jaGVjawoKLS0tCiBzcmNwa2dzL2dub21lLWRlc2t0b3AvdGVt cGxhdGUgfCAxNyArKysrKysrKysrKysrKysrKwogMSBmaWxlIGNoYW5nZWQsIDE3IGluc2VydGlv bnMoKykKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLWRlc2t0b3AvdGVtcGxhdGUgYi9zcmNw a2dzL2dub21lLWRlc2t0b3AvdGVtcGxhdGUKaW5kZXggYzFhNzQwOGMyMDcuLmNjZDdjNTY1Njlh IDEwMDY0NAotLS0gYS9zcmNwa2dzL2dub21lLWRlc2t0b3AvdGVtcGxhdGUKKysrIGIvc3JjcGtn cy9nbm9tZS1kZXNrdG9wL3RlbXBsYXRlCkBAIC0xMSw2ICsxMSw3IEBAIG1ha2VkZXBlbmRzPSJl dWRldi1saWJ1ZGV2LWRldmVsIGdzZXR0aW5ncy1kZXNrdG9wLXNjaGVtYXMtZGV2ZWwgZ3RrKzMt ZGV2ZWwKICBpc28tY29kZXMgbGliZ2xpYi1kZXZlbCBsaWJzZWNjb21wLWRldmVsIGxpYlgxMS1k ZXZlbCBsaWJYZXh0LWRldmVsCiAgbGlieGtiZmlsZS1kZXZlbCBsaWJYcmFuZHItZGV2ZWwgZ2Rr LXBpeGJ1Zi1kZXZlbCIKIGRlcGVuZHM9ImJ1YmJsZXdyYXAgZ3NldHRpbmdzLWRlc2t0b3Atc2No ZW1hcyBpc28tY29kZXMgeGtleWJvYXJkLWNvbmZpZyIKK2NoZWNrZGVwZW5kcz0iJGRlcGVuZHMg eG9yZy1zZXJ2ZXIteHZmYiIKIHNob3J0X2Rlc2M9IkdOT01FIGRlc2t0b3AgbWFuYWdlbWVudCB1 dGlsaXRpZXMiCiBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+ IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciwgTEdQTC0yLjEtb3ItbGF0ZXIiCkBAIC0yMSw2 ICsyMiwyMiBAQCBjaGVja3N1bT0zOGY5OTRkY2IxZTFhZTA5M2QxYzkyOWM3YWNjNGY4OGUzOTEx MWU0M2I1ZmRjMTMxMjViMGY2ZTIzMTFjNzg5CiBidWlsZF9vcHRpb25zPSJnaXIiCiBidWlsZF9v cHRpb25zX2RlZmF1bHQ9ImdpciIKIAorZG9fY2hlY2soKSB7CisJIyB0aGVyZSBpcyBzdGlsbCAx IHRlc3QgZmFpbCBmb3IgaGVfSUwgbG9jYWxlIGluIG11c2wKKwlpZiB0ZXN0ICIkWEJQU19UQVJH RVRfTElCQyIgIT0gbXVzbDsgdGhlbgorCQlsb2NhbCBfcGlkCisJCVh2ZmIgOjEgLXNjcmVlbiAw IDEzNjZ4NzY4eDI0ICYKKwkJX3BpZD0kIQorCQl0cmFwICJraWxsICRfcGlkIiBFWElUCisJCXRy YXAgJ2V4aXQgMScgSU5UIEhVUCBURVJNCisJCWV4cG9ydCBESVNQTEFZPToxCisJCW5pbmphIC1D IGJ1aWxkIHRlc3QKKwkJdHJhcCAtIEVYSVQgSU5UIEhVUCBURVJNCisJCWtpbGwgJF9waWQKKwlm aQorfQorCisKIGdub21lLWRlc2t0b3AtZGV2ZWxfcGFja2FnZSgpIHsKIAlkZXBlbmRzPSJndGsr My1kZXZlbCBnc2V0dGluZ3MtZGVza3RvcC1zY2hlbWFzLWRldmVsPj0zLjEyCiAJIGdkay1waXhi dWYtZGV2ZWwgaXNvLWNvZGVzIGxpYlgxMS1kZXZlbCBsaWJnbGliLWRldmVsIGxpYnNlY2NvbXAt ZGV2ZWwKCkZyb20gNzNmZWY4YmQ0MzQwNzhhYjE3NWI2OTVjYzY3YWUyZGMzMmRkNzBiYSBNb24g U2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogPT9VVEYtOD9xPz1DND05MG89QzM9QTBuPTIwVHI9 RTE9QkE9QTduPTIwQz1DMz1CNG5nPTIwRGFuaD89CiA8Y29uZ2RhbmhxeEBnbWFpbC5jb20+CkRh dGU6IFNhdCwgMjAgSnVuIDIwMjAgMDY6MjU6NTUgKzA3MDAKU3ViamVjdDogW1BBVENIIDUyLzY1 XSBnbm9tZS1zZXR0aW5ncy1kYWVtb246IGZpeCBjaGVja2RlcGVuZHMKCi0tLQogc3JjcGtncy9n bm9tZS1zZXR0aW5ncy1kYWVtb24vdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBp bnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLXNl dHRpbmdzLWRhZW1vbi90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25vbWUtc2V0dGluZ3MtZGFlbW9uL3Rl bXBsYXRlCmluZGV4IDljZWIxZDEzZGU5Li5mNDUzOWE3MmQ0MyAxMDA2NDQKLS0tIGEvc3JjcGtn cy9nbm9tZS1zZXR0aW5ncy1kYWVtb24vdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS1zZXR0 aW5ncy1kYWVtb24vdGVtcGxhdGUKQEAgLTEyLDcgKzEyLDcgQEAgbWFrZWRlcGVuZHM9Ik5ldHdv cmtNYW5hZ2VyLWRldmVsIGFsc2EtbGliLWRldmVsIGNvbG9yZC1kZXZlbCBjdXBzLWRldmVsIGdj ci1kZXYKICB4Zjg2LWlucHV0LXdhY29tLWRldmVsIgogZGVwZW5kcz0iaGljb2xvci1pY29uLXRo ZW1lIHB1bHNlYXVkaW8iCiBjaGVja2RlcGVuZHM9ImVsb2dpbmQgbGlibm90aWZ5IHB5dGhvbjMt ZGJ1c21vY2sgcHl0aG9uMy1nb2JqZWN0Ci0gcHl0aG9uMy1weWNvZGVzdHlsZSIKKyBweXRob24z LXB5Y29kZXN0eWxlIHdoaWNoIGh3aWRzIGV1ZGV2Igogc2hvcnRfZGVzYz0iR05PTUUgc2V0dGlu Z3MgZGFlbW9uIgogbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3Jn PiIKIGxpY2Vuc2U9IkdQTC0zLjAtb3ItbGF0ZXIiCgpGcm9tIDI3M2E4YjQ3ZmI1NjhkZTNiOTA3 MjNmZjg0MDMyOWQ4Yzk1YjA3ZmEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206ID0/VVRG LTg/cT89QzQ9OTBvPUMzPUEwbj0yMFRyPUUxPUJBPUE3bj0yMEM9QzM9QjRuZz0yMERhbmg/PQog PGNvbmdkYW5ocXhAZ21haWwuY29tPgpEYXRlOiBTYXQsIDIwIEp1biAyMDIwIDA3OjQ0OjEyICsw NzAwClN1YmplY3Q6IFtQQVRDSCA1My82NV0gbXV0dGVyOiBza2lwIGRvX2NoZWNrCgotLS0KIHNy Y3BrZ3MvbXV0dGVyL3RlbXBsYXRlIHwgNCArKysrCiAxIGZpbGUgY2hhbmdlZCwgNCBpbnNlcnRp b25zKCspCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9tdXR0ZXIvdGVtcGxhdGUgYi9zcmNwa2dzL211 dHRlci90ZW1wbGF0ZQppbmRleCAxMzJjZDlkZDY0NS4uMTE3YjU5YTI5YTkgMTAwNjQ0Ci0tLSBh L3NyY3BrZ3MvbXV0dGVyL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvbXV0dGVyL3RlbXBsYXRlCkBA IC0yMiw2ICsyMiwxMCBAQCBjaGVja3N1bT02YWNlNzQyZThkODg5MDgzZDNjMzJkNzk1NDNkOTAy MjQ4M2YwYjAwYjYzMGVjZWFiNWUzODA0YWFkM2FlZWQyCiBzaGxpYl9wcm92aWRlcz0ibGlibXV0 dGVyLWNsdXR0ZXItNi5zbyBsaWJtdXR0ZXItY29nbC02LnNvCiAgbGlibXV0dGVyLWNvZ2wtcGFu Z28tNi5zbyBsaWJtdXR0ZXItY29nbC1wYXRoLTYuc28iCiAKK2RvX2NoZWNrKCkgeworCW1zZ193 YXJuICJ4dmZiIGRvZXMgbm90IHdvcmtcbiIKK30KKwogbXV0dGVyLWRldmVsX3BhY2thZ2UoKSB7 CiAJZGVwZW5kcz0iZ3NldHRpbmdzLWRlc2t0b3Atc2NoZW1hcyBncmFwaGVuZS1kZXZlbCBndGsr My1kZXZlbCBjbHV0dGVyLWRldmVsCiAJIGxpYlgxMS1kZXZlbCBsaWJYdHN0LWRldmVsIG11dHRl ci0ke3ZlcnNpb259XyR7cmV2aXNpb259IgoKRnJvbSA3MDg5OTAxMTYzODg0YTk3NTViMjBjYTA5 MjMwNDllODFmNmVjMGRjIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/ PUM0PTkwbz1DMz1BMG49MjBUcj1FMT1CQT1BN249MjBDPUMzPUI0bmc9MjBEYW5oPz0KIDxjb25n ZGFuaHF4QGdtYWlsLmNvbT4KRGF0ZTogU3VuLCAyMSBKdW4gMjAyMCAyMjo1MzowMyArMDcwMApT dWJqZWN0OiBbUEFUQ0ggNTQvNjVdIGV2b2x1dGlvbi1kYXRhLXNlcnZlcjogc3BsaXQgdmFsYSBi dWlsZCBvcHRpb24gZnJvbSBnaXIKCi0tLQogc3JjcGtncy9ldm9sdXRpb24tZGF0YS1zZXJ2ZXIv dGVtcGxhdGUgfCA0OCArKysrKysrKysrKystLS0tLS0tLS0tLS0tLQogMSBmaWxlIGNoYW5nZWQs IDIzIGluc2VydGlvbnMoKyksIDI1IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mv ZXZvbHV0aW9uLWRhdGEtc2VydmVyL3RlbXBsYXRlIGIvc3JjcGtncy9ldm9sdXRpb24tZGF0YS1z ZXJ2ZXIvdGVtcGxhdGUKaW5kZXggZWJmODE0NWY4OGMuLmQ0NGE3Y2NjMTQzIDEwMDY0NAotLS0g YS9zcmNwa2dzL2V2b2x1dGlvbi1kYXRhLXNlcnZlci90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2V2 b2x1dGlvbi1kYXRhLXNlcnZlci90ZW1wbGF0ZQpAQCAtMiw0NSArMiw0MSBAQAogcGtnbmFtZT1l dm9sdXRpb24tZGF0YS1zZXJ2ZXIKIHZlcnNpb249My4zNi4zCiByZXZpc2lvbj0xCitfYmFzZXZl cj0ke3ZlcnNpb24lLip9CiBidWlsZF9zdHlsZT1jbWFrZQogYnVpbGRfaGVscGVyPWdpcgogY29u ZmlndXJlX2FyZ3M9Ii1ERU5BQkxFX1VPQT1PRkYKLSAkKHZvcHRfaWYgZ2lyICctREVOQUJMRV9J TlRST1NQRUNUSU9OPU9OIC1ERU5BQkxFX1ZBTEFfQklORElOR1M9T04nICctREVOQUJMRV9XRUFU SEVSPU9GRicpIgorICQodm9wdF9pZiBnaXIgLURFTkFCTEVfSU5UUk9TUEVDVElPTj1PTikKKyAk KHZvcHRfaWYgdmFsYSAtREVOQUJMRV9WQUxBX0JJTkRJTkdTPU9OKSIKIGhvc3RtYWtlZGVwZW5k cz0iZmxleCBnbGliLWRldmVsIGdwZXJmIGludGx0b29sIHBrZy1jb25maWcgbGliZ2xpYi1kZXZl bAotICQodm9wdF9pZiBnaXIgJ2dvYmplY3QtaW50cm9zcGVjdGlvbicpIgotbWFrZWRlcGVuZHM9 ImJvb3N0LWRldmVsIGxpYmNhbmJlcnJhLWRldmVsIGxpYmdkYXRhLWRldmVsICQodm9wdF9pZiBn aXIgbGliZ3dlYXRoZXItZGV2ZWwpCi0gbGliaWNhbC1kZXZlbCBsaWJzZWNyZXQtZGV2ZWwgbWl0 LWtyYjUtZGV2ZWwgJCh2b3B0X2lmIGdpciAndmFsYS1kZXZlbCcpIHdlYmtpdDJndGstZGV2ZWwi Ci1kZXBlbmRzPSIkKHZvcHRfaWYgZ2lyIGxpYmd3ZWF0aGVyKSBsaWJzb3VwLWdub21lIgorICQo dm9wdF9pZiB2YWxhIHZhbGEpIgorbWFrZWRlcGVuZHM9ImJvb3N0LWRldmVsIGxpYmNhbmJlcnJh LWRldmVsIGxpYmdkYXRhLWRldmVsIGxpYmljYWwtZGV2ZWwKKyBsaWJzZWNyZXQtZGV2ZWwgbWl0 LWtyYjUtZGV2ZWwgd2Via2l0Mmd0ay1kZXZlbCBsaWJnd2VhdGhlci1kZXZlbAorICQodm9wdF9p ZiB2YWxhIHZhbGEtZGV2ZWwpIgorZGVwZW5kcz0ibGliZ3dlYXRoZXIgbGlic291cC1nbm9tZSBk YnVzIHR6ZGF0YSIKK2NoZWNrZGVwZW5kcz0iJGRlcGVuZHMiCiBzaG9ydF9kZXNjPSJDZW50cmFs aXplZCBhY2Nlc3MgdG8gYXBwb2ludG1lbnRzIGFuZCBjb250YWN0cyIKIG1haW50YWluZXI9IkVu bm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJMR1BMLTIuMS1vbmx5 IgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcvQXBwcy9Fdm9sdXRpb24iCi1jaGFu Z2Vsb2c9Imh0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9HTk9NRS9ldm9sdXRpb24t ZGF0YS1zZXJ2ZXIvZ25vbWUtMy0zNi9ORVdTIgotZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7 cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgorY2hh bmdlbG9nPSJodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vR05PTUUvJHBrZ25hbWUv Z25vbWUtJHtfYmFzZXZlci8uLy19L05FV1MiCitkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtw a2duYW1lfS8ke19iYXNldmVyfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgogY2hlY2tz dW09MWY1ZjQ4MTczZDBmMjg4MjE5ZDczZDRmMTkzY2I5MjFhZTYzMTkzMmJhODQwMzBmMDU3NTFj NDJiYjAwM2RiMgogCi1idWlsZF9vcHRpb25zPSJnaXIiCitidWlsZF9vcHRpb25zPSJnaXIgdmFs YSIKIGlmIFsgLXogIiRDUk9TU19CVUlMRCIgXTsgdGhlbgotCWJ1aWxkX29wdGlvbnNfZGVmYXVs dD0iZ2lyIgorCWJ1aWxkX29wdGlvbnNfZGVmYXVsdD0iZ2lyIHZhbGEiCiBmaQogCi0jIGNtYWtl IHBlcmZvbXJtcyAyIGNoZWNrcyB1c2luZyBiaW5hcnkgcnVudGltZSwgYWJvdXQgaWNvbnYgYW5k IHNmcnRpbWUuCi0jIG11c2wgKDEuMS4xNikgZG9lcyBub3Qgc3VwcG9ydCAiSVNPLTIwMjItSlAi IGVuY29kaW5nIChzZWUgaXRzIHJvYWRtYXApLAotIyBhbHRob3VnaCBldm9sdXRpb24tZGF0YS1z ZXJ2ZXIgaXMgZmluZSB3aXRoIG11c2wuCi0jIElmIGNyb3NzYnVpbGQsIGNtYWtlIGxldCBkaXNh YmxpbmcgcnVudGltZSBjaGVja3MgdmlhIHNwZWNpZmljIGRpcmVjdGl2ZXMuCi0jIHRlc3QgaWNv bnYtZGV0ZWN0LmMgYWxzbyBnZW5lcmF0ZXMgaWNvbnYtZGV0ZWN0LmggdGhhdCBpcyByZXF1aXJl ZCBmb3IgYnVpbGQuCi0jIFNvIGNvbXBsZXRseSBkaXNhYmxlIHRlc3QgZnJvbSBpY29udi1kZXRl Y3QuYyAoY21ha2UucGF0Y2ggZmlsZSkgYW5kCi0jIHVzZSBhIGNtYWtlIGNhY2hlIGZpbGUgb24g Y3Jvc3NidWlsZCB0byBkaXNhYmxlIHNmcnRpbWUgcnVubmluZyB0ZXN0LgotaWYgWyAiJENST1NT X0JVSUxEIiBdOyB0aGVuCi0JY29uZmlndXJlX2FyZ3MrPSIgLUMgZGlzYWJsZVJ1bnRpbWVUZXN0 cy5jbWFrZSIKLWZpCiAKLXByZV9jb25maWd1cmUoKSB7Ci0JbWtkaXIgLXAgYnVpbGQKLQljcCAk e0ZJTEVTRElSfS9pY29udi1kZXRlY3QuaCAke3dya3NyY30vYnVpbGQvLgotCWlmIFsgIiRDUk9T U19CVUlMRCIgXTsgdGhlbgotCQljcCAke0ZJTEVTRElSfS9kaXNhYmxlUnVudGltZVRlc3RzLmNt YWtlICR7d3Jrc3JjfS9idWlsZC8uCi0JZmkKK2RvX2NoZWNrKCkgeworCWNkIGJ1aWxkCisJIyBU T0RPIFRoaXMgdGVzdCBpcyBwcm9ibGVtYXRpYywgZmlyc3QgcnVuIHVzdWFsbHkgZmFpbAorCSMg U2lnbmlmeSBzb21ldGhpbmcgd3Jvbmcgd2l0aCBldm9sdXRpb24tZGF0YS1zZXJ2ZXIgb24gZmly c3QgcnVuCisJY3Rlc3QgLVIgdGVzdC1ib29rLWNsaWVudC1jdXN0b20tc3VtbWFyeSB8fCB0cnVl CisJIyBtYWtlIHRlc3QgcnVuIGN0ZXN0IC0tZm9yY2UtbmV3LWN0ZXN0LXByb2Nlc3Mgd2hpY2gg aXMgcHJvYmxlbWF0aWMKKwkjIG5vb25lIHNob3VsZCBydW4gbXVsdGlwbGUgaW5zdGFuY2Ugb2Yg ZXZvbHV0aW9uLWRhdGEtc2VydmVyIGlybC4KKwljdGVzdAogfQogCiBwb3N0X2luc3RhbGwoKSB7 CkBAIC01OSw2ICs1NSw4IEBAIGV2b2x1dGlvbi1kYXRhLXNlcnZlci1kZXZlbF9wYWNrYWdlKCkg ewogCQl2bW92ZSAidXNyL2xpYi8qLnNvIgogCQlpZiBbICIkYnVpbGRfb3B0aW9uX2dpciIgXTsg dGhlbgogCQkJdm1vdmUgdXNyL3NoYXJlL2dpci0xLjAKKwkJZmkKKwkJaWYgWyAiJGJ1aWxkX29w dGlvbl92YWxhIiBdOyB0aGVuCiAJCQl2bW92ZSB1c3Ivc2hhcmUvdmFsYQogCQlmaQogCX0KCkZy b20gMTcwMGFkY2QyNjc2ZTk1MjJiODVkNTVkMTE3NTAzYjFhYzM0N2UwMCBNb24gU2VwIDE3IDAw OjAwOjAwIDIwMDEKRnJvbTogPT9VVEYtOD9xPz1DND05MG89QzM9QTBuPTIwVHI9RTE9QkE9QTdu PTIwQz1DMz1CNG5nPTIwRGFuaD89CiA8Y29uZ2RhbmhxeEBnbWFpbC5jb20+CkRhdGU6IFR1ZSwg MjMgSnVuIDIwMjAgMjI6NTE6MzEgKzA3MDAKU3ViamVjdDogW1BBVENIIDU1LzY1XSBmb2xrczog YWRkIGJ1aWxkIG9wdGlvbiBnaXIgYW5kIHZhbGEKCkRpc2FibGUgZ2lyIGFuZCB2YWxhIGluIGV2 b2x1dGlvbi1kYXRhLXNlcnZlciB3aWxsIG1ha2UgZm9sa3MgZmFpbGVkIHRvCmJlIGJ1aWx0LgoK RWl0aGVyIGVuYWJsZSBib3RoIG9mIHRoZW0sIG9yIGRpc2FibGUgYm90aCBvZiB0aGVtLgotLS0K IHNyY3BrZ3MvZm9sa3MvdGVtcGxhdGUgfCAyMCArKysrKysrKysrKysrKystLS0tLQogMSBmaWxl IGNoYW5nZWQsIDE1IGluc2VydGlvbnMoKyksIDUgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEv c3JjcGtncy9mb2xrcy90ZW1wbGF0ZSBiL3NyY3BrZ3MvZm9sa3MvdGVtcGxhdGUKaW5kZXggZTIx Y2E5YzEwNzcuLmU0MWQ2M2U0ZjVlIDEwMDY0NAotLS0gYS9zcmNwa2dzL2ZvbGtzL3RlbXBsYXRl CisrKyBiL3NyY3BrZ3MvZm9sa3MvdGVtcGxhdGUKQEAgLTUsMTAgKzUsMTEgQEAgcmV2aXNpb249 MQogYnVpbGRfc3R5bGU9bWVzb24KIGJ1aWxkX2hlbHBlcj1naXIKIGNvbmZpZ3VyZV9hcmdzPSIt RGJfbHRvPWZhbHNlIgotaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIGludGx0b29sIGdsaWIt ZGV2ZWwgdmFsYSBweXRob24zIHB5dGhvbjMtZGJ1c21vY2sKLSBnb2JqZWN0LWludHJvc3BlY3Rp b24gZXZvbHV0aW9uLWRhdGEtc2VydmVyLWRldmVsIgoraG9zdG1ha2VkZXBlbmRzPSJwa2ctY29u ZmlnIGludGx0b29sIGdsaWItZGV2ZWwgcHl0aG9uMyBweXRob24zLWRidXNtb2NrCisgZXZvbHV0 aW9uLWRhdGEtc2VydmVyLWRldmVsICQodm9wdF9pZiB2YWxhIHZhbGEpIgogbWFrZWRlcGVuZHM9 InJlYWRsaW5lLWRldmVsIHRlbGVwYXRoeS1nbGliLWRldmVsIHplaXRnZWlzdC1kZXZlbAotIGxp YmdlZTA4LWRldmVsIGV2b2x1dGlvbi1kYXRhLXNlcnZlci1kZXZlbCB0cmFja2VyLWRldmVsIgor IGxpYmdlZTA4LWRldmVsIGV2b2x1dGlvbi1kYXRhLXNlcnZlci1kZXZlbCB0cmFja2VyLWRldmVs CisgJCh2b3B0X2lmIHZhbGEgdmFsYS1kZXZlbCkiCiBkZXBlbmRzPSJ6ZWl0Z2Vpc3QiCiBzaG9y dF9kZXNjPSJHT2JqZWN0IExpYnJhcnkgdG8gYWdncmVnYXRlIHBlb3BsZSBpbnRvIG1ldGFjb250 YWN0cyIKIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCkBA IC0xNyw2ICsxOCwxMSBAQCBob21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9Qcm9qZWN0 cy9Gb2xrcyIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUu Kn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKIGNoZWNrc3VtPWQ2ZTc3OGRhNjM3ZDNi MzNmZDlhNmI0NTExNWU4MTU3ZDg4NjgyMTFkYzA4Yjk0M2QxMDc1YjVlYjcyODJiYjkKIAorYnVp bGRfb3B0aW9ucz0iZ2lyIHZhbGEiCitpZiBbIC16ICIkQ1JPU1NfQlVJTEQiIF07IHRoZW4KKwli dWlsZF9vcHRpb25zX2RlZmF1bHQ9ImdpciB2YWxhIgorZmkKKwogZm9sa3MtZGV2ZWxfcGFja2Fn ZSgpIHsKIAlkZXBlbmRzPSIke21ha2VkZXBlbmRzfSAke3NvdXJjZXBrZ30+PSR7dmVyc2lvbn1f JHtyZXZpc2lvbn0iCiAJc2hvcnRfZGVzYys9IiAtIGRldmVsb3BtZW50IGZpbGVzIgpAQCAtMjQs NyArMzAsMTEgQEAgZm9sa3MtZGV2ZWxfcGFja2FnZSgpIHsKIAkJdm1vdmUgdXNyL2luY2x1ZGUK IAkJdm1vdmUgdXNyL2xpYi9wa2djb25maWcKIAkJdm1vdmUgInVzci9saWIvKi5zbyIKLQkJdm1v dmUgdXNyL3NoYXJlL3ZhbGEKLQkJdm1vdmUgdXNyL3NoYXJlL2dpci0xLjAKKwkJaWYgWyAiJGJ1 aWxkX29wdGlvbl9naXIiIF07IHRoZW4KKwkJCXZtb3ZlIHVzci9zaGFyZS9naXItMS4wCisJCWZp CisJCWlmIFsgIiRidWlsZF9vcHRpb25fdmFsYSIgXTsgdGhlbgorCQkJdm1vdmUgdXNyL3NoYXJl L3ZhbGEKKwkJZmkKIAl9CiB9CgpGcm9tIDg2MDE4ZTNiMjY2M2Y1MzMwMDBiMDJlN2QzNWVhYzhl MzY3ZDcyNzggTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206ID0/VVRGLTg/cT89QzQ9OTBv PUMzPUEwbj0yMFRyPUUxPUJBPUE3bj0yMEM9QzM9QjRuZz0yMERhbmg/PQogPGNvbmdkYW5ocXhA Z21haWwuY29tPgpEYXRlOiBUdWUsIDIzIEp1biAyMDIwIDIyOjUyOjUwICswNzAwClN1YmplY3Q6 IFtQQVRDSCA1Ni82NV0gbmF1dGlsdXM6IGNvcnJlY3QgY2hlY2tkZXBlbmRzCgotLS0KIHNyY3Br Z3MvbmF1dGlsdXMvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24o KyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL25hdXRpbHVzL3RlbXBsYXRl IGIvc3JjcGtncy9uYXV0aWx1cy90ZW1wbGF0ZQppbmRleCA5NGNiMTA0OTJjYS4uYzZmYWY3YmYz ZDcgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvbmF1dGlsdXMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9u YXV0aWx1cy90ZW1wbGF0ZQpAQCAtMTEsNyArMTEsNyBAQCBtYWtlZGVwZW5kcz0iZXhlbXBpLWRl dmVsIGdub21lLWF1dG9hci1kZXZlbCBnbm9tZS1kZXNrdG9wLWRldmVsIGd0ayszLWRldmVsCiAg bGliWDExLWRldmVsIGxpYnhtbDItZGV2ZWwgdHJhY2tlci1kZXZlbCBnc3QtcGx1Z2lucy1iYXNl MS1kZXZlbCIKIGRlcGVuZHM9ImRlc2t0b3AtZmlsZS11dGlscyBnc2V0dGluZ3MtZGVza3RvcC1z Y2hlbWFzIGhpY29sb3ItaWNvbi10aGVtZQogIHRyYWNrZXItbWluZXJzIHRyYWNrZXIiCi1jaGVj a2RlcGVuZHM9InRyYWNrZXIiCitjaGVja2RlcGVuZHM9InRyYWNrZXIgdHJhY2tlci1taW5lcnMi CiBzaG9ydF9kZXNjPSJHTk9NRSBmaWxlIG1hbmFnZXIiCiBtYWludGFpbmVyPSJFbm5vIEJvbGFu ZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciwgTEdQ TC0yLjEtb3ItbGF0ZXIiCgpGcm9tIDU3ZDFhZTA5NTdkZGJkODJmMWNiODU0OWUzZDAxZjM5NGEw YzJkMDMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206ID0/VVRGLTg/cT89QzQ9OTBvPUMz PUEwbj0yMFRyPUUxPUJBPUE3bj0yMEM9QzM9QjRuZz0yMERhbmg/PQogPGNvbmdkYW5ocXhAZ21h aWwuY29tPgpEYXRlOiBUdWUsIDIzIEp1biAyMDIwIDIyOjUzOjE0ICswNzAwClN1YmplY3Q6IFtQ QVRDSCA1Ny82NV0gdHJhY2tlcjogYWRkIHRhciB0byBjaGVja2RlcGVuZHMKCi0tLQogc3JjcGtn cy90cmFja2VyL3RlbXBsYXRlIHwgMSArCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKykK CmRpZmYgLS1naXQgYS9zcmNwa2dzL3RyYWNrZXIvdGVtcGxhdGUgYi9zcmNwa2dzL3RyYWNrZXIv dGVtcGxhdGUKaW5kZXggZTgxNGY3N2M3MTEuLjE5MzM4ZGI0NWUxIDEwMDY0NAotLS0gYS9zcmNw a2dzL3RyYWNrZXIvdGVtcGxhdGUKKysrIGIvc3JjcGtncy90cmFja2VyL3RlbXBsYXRlCkBAIC0x MSw2ICsxMSw3IEBAIGhvc3RtYWtlZGVwZW5kcz0iZ2V0dGV4dCBwa2ctY29uZmlnIGdsaWItZGV2 ZWwgdmFsYSIKIG1ha2VkZXBlbmRzPSJkYnVzLWRldmVsIGxpYmdsaWItZGV2ZWwgaWN1LWRldmVs IGpzb24tZ2xpYi1kZXZlbAogIGxpYnNvdXAtZGV2ZWwgbGlieG1sMi1kZXZlbCBzcWxpdGUtZGV2 ZWwgTmV0d29ya01hbmFnZXItZGV2ZWwKICBiYXNoLWNvbXBsZXRpb24iCitjaGVja2RlcGVuZHM9 InRhciIKIHNob3J0X2Rlc2M9IlBlcnNvbmFsIHNlYXJjaCB0b29sIGFuZCBzdG9yYWdlIHN5c3Rl bSIKIG1haW50YWluZXI9Ik9ycGhhbmVkIDxvcnBoYW5Adm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNl PSJHUEwtMi4wLW9yLWxhdGVyIgoKRnJvbSAyYjNhY2E5NWYzMDAwZWNiYjcyYjMxOGRlYzYyNGVm YTNlMzZlYTM0IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/PUM0PTkw bz1DMz1BMG49MjBUcj1FMT1CQT1BN249MjBDPUMzPUI0bmc9MjBEYW5oPz0KIDxjb25nZGFuaHF4 QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAyNCBKdW4gMjAyMCAyMzoxODo0MCArMDcwMApTdWJqZWN0 OiBbUEFUQ0ggNTgvNjVdIGdub21lLXNoZWxsOiBhZGQgZG9fY2hlY2sKCi0tLQogc3JjcGtncy9n bm9tZS1zaGVsbC90ZW1wbGF0ZSB8IDE3ICsrKysrKysrKysrKysrKysrCiAxIGZpbGUgY2hhbmdl ZCwgMTcgaW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtc2hlbGwvdGVt cGxhdGUgYi9zcmNwa2dzL2dub21lLXNoZWxsL3RlbXBsYXRlCmluZGV4IGVlNGM2Mjg4ZjVmLi5k ZWI5MjJhMDlhZCAxMDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1zaGVsbC90ZW1wbGF0ZQorKysg Yi9zcmNwa2dzL2dub21lLXNoZWxsL3RlbXBsYXRlCkBAIC0xNSw2ICsxNSw3IEBAIG1ha2VkZXBl bmRzPSJhdC1zcGkyLWF0ayBjYXJpYm91LWRldmVsIGV2b2x1dGlvbi1kYXRhLXNlcnZlci1kZXZl bCBmb2xrcy1kZXZlbAogIG5ldHdvcmstbWFuYWdlci1hcHBsZXQtZGV2ZWwgcG9sa2l0LWRldmVs IHB1bHNlYXVkaW8tZGV2ZWwKICBzdGFydHVwLW5vdGlmaWNhdGlvbi1kZXZlbCB0ZWxlcGF0aHkt bG9nZ2VyLWRldmVsIGdub21lLWF1dG9hci1kZXZlbCIKIGRlcGVuZHM9ImNhcmlib3UgZWxvZ2lu ZCBnbHhpbmZvIGdub21lLWNvbnRyb2wtY2VudGVyIGdzZXR0aW5ncy1kZXNrdG9wLXNjaGVtYXMg dXBvd2VyIgorY2hlY2tkZXBlbmRzPSIkZGVwZW5kcyBhY2NvdW50c3NlcnZpY2UgZ2RtIHhvcmct c2VydmVyLXh2ZmIgcGlwZXdpcmUgbWVzYS1kcmkgZGJ1cy14MTEiCiBzaG9ydF9kZXNjPSJHTk9N RSBjb3JlIHVzZXIgaW50ZXJmYWNlIgogbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2 b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCkBAIC0yMiwzICsyMywx OSBAQCBob21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9Qcm9qZWN0cy9Hbm9tZVNoZWxs IgogY2hhbmdlbG9nPSJodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vR05PTUUvZ25v bWUtc2hlbGwvZ25vbWUtMy0zMC9ORVdTIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtn bmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgogY2hlY2tz dW09ODZkOGFiZjcwZmFiODlkNWQ5MzlkZDdlMzhjNTk4NzI0OTJmNDQ0MjcyYTg1MjRkYjc5NDUw YTUxODBkNDViYgorCitkb19jaGVjaygpIHsKKwlsb2NhbCBfcGlkCisJZXhwb3J0IERJU1BMQVk9 OjEKKwlleHBvcnQgWERHX1JVTlRJTUVfRElSPS90bXAKKwlYdmZiIDoxIC1zY3JlZW4gMCAxMzY2 eDc2OHgyNCAmCisJX3BpZD0kIQorCXRyYXAgImtpbGwgJF9waWQiIEVYSVQKKwl0cmFwICdleGl0 IDEnIElOVCBIVVAgVEVSTQorCWV2YWwgJChkYnVzLWxhdW5jaCkKKwlleHBvcnQgREJVU19TRVNT SU9OX0JVU19BRERSRVNTCisJbmluamEgdGVzdCAtQyBidWlsZAorCSMgdHJhcCBpcyBoYW5naW5n IG9uIG5vcm1hbCBleGl0LCBkYnVzPworCXRyYXAgLSBFWElUIElOVCBIVVAgVEVSTQorCWtpbGwg JF9waWQgfHwgdHJ1ZQorfQoKRnJvbSBlYzAwMjU3ZDQyYTU3NGJjMTM0MWY5ZDZlYTYzNWFkOGRl MDM0YWJjIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/PUM0PTkwbz1D Mz1BMG49MjBUcj1FMT1CQT1BN249MjBDPUMzPUI0bmc9MjBEYW5oPz0KIDxjb25nZGFuaHF4QGdt YWlsLmNvbT4KRGF0ZTogU3VuLCAxMiBKdWwgMjAyMCAxMToxMjozNCArMDcwMApTdWJqZWN0OiBb UEFUQ0ggNTkvNjVdIGZpeHVwISBldm9sdXRpb24tZGF0YS1zZXJ2ZXI6IHNwbGl0IHZhbGEgYnVp bGQgb3B0aW9uCiBmcm9tIGdpcgoKLS0tCiBzcmNwa2dzL2V2b2x1dGlvbi1kYXRhLXNlcnZlci90 ZW1wbGF0ZSB8IDEgLQogMSBmaWxlIGNoYW5nZWQsIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQg YS9zcmNwa2dzL2V2b2x1dGlvbi1kYXRhLXNlcnZlci90ZW1wbGF0ZSBiL3NyY3BrZ3MvZXZvbHV0 aW9uLWRhdGEtc2VydmVyL3RlbXBsYXRlCmluZGV4IGQ0NGE3Y2NjMTQzLi4zNjM5ZTFiMTEyMCAx MDA2NDQKLS0tIGEvc3JjcGtncy9ldm9sdXRpb24tZGF0YS1zZXJ2ZXIvdGVtcGxhdGUKKysrIGIv c3JjcGtncy9ldm9sdXRpb24tZGF0YS1zZXJ2ZXIvdGVtcGxhdGUKQEAgLTI4LDcgKzI4LDYgQEAg aWYgWyAteiAiJENST1NTX0JVSUxEIiBdOyB0aGVuCiAJYnVpbGRfb3B0aW9uc19kZWZhdWx0PSJn aXIgdmFsYSIKIGZpCiAKLQogZG9fY2hlY2soKSB7CiAJY2QgYnVpbGQKIAkjIFRPRE8gVGhpcyB0 ZXN0IGlzIHByb2JsZW1hdGljLCBmaXJzdCBydW4gdXN1YWxseSBmYWlsCgpGcm9tIGY0NmM5NDY0 MjZkNWMzMTYyZjJhOTliZDZkYjg5ZDJiNjIzOGE2YjQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAx CkZyb206ID0/VVRGLTg/cT89QzQ9OTBvPUMzPUEwbj0yMFRyPUUxPUJBPUE3bj0yMEM9QzM9QjRu Zz0yMERhbmg/PQogPGNvbmdkYW5ocXhAZ21haWwuY29tPgpEYXRlOiBTdW4sIDEyIEp1bCAyMDIw IDExOjEzOjUzICswNzAwClN1YmplY3Q6IFtQQVRDSCA2MC82NV0gZml4dXAhIGdub21lLXBvZGNh c3RzOiB1cGRhdGUgdG8gMC40LjcuCgotLS0KIHNyY3BrZ3MvZ25vbWUtcG9kY2FzdHMvdGVtcGxh dGUgfCA5ICsrKysrLS0tLQogMSBmaWxlIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgNCBkZWxl dGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLXBvZGNhc3RzL3RlbXBsYXRlIGIv c3JjcGtncy9nbm9tZS1wb2RjYXN0cy90ZW1wbGF0ZQppbmRleCAzYzIzOWRmODQyNC4uN2E1YjBk MGExNjggMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtcG9kY2FzdHMvdGVtcGxhdGUKKysrIGIv c3JjcGtncy9nbm9tZS1wb2RjYXN0cy90ZW1wbGF0ZQpAQCAtMTksMTAgKzE5LDExIEBAIGV4cG9y dCBHRVRURVhUX0JJTl9ESVI9L3Vzci9iaW4KIGV4cG9ydCBHRVRURVhUX0xJQl9ESVI9IiR7WEJQ U19DUk9TU19CQVNFfS91c3IvbGliL2dldHRleHQiCiBleHBvcnQgR0VUVEVYVF9JTkNMVURFX0RJ Uj0iJHtYQlBTX0NST1NTX0JBU0V9L3Vzci9pbmNsdWRlIgogCi1pZiBbICIkQ1JPU1NfQlVJTEQi IF07IHRoZW4KLQlwb3N0X3BhdGNoKCkgeworcG9zdF9wYXRjaCgpIHsKKwlpZiBbICIkQ1JPU1Nf QlVJTEQiIF07IHRoZW4KIAkJdnNlZCAtaSBzY3JpcHRzL2NhcmdvLnNoIFwKIAkJCS1lICdzJSIk Q0FSR09fVEFSR0VUX0RJUiIvJSYke1JVU1RfVEFSR0VUfS8lJyBcCiAJCQktZSAnL0NBUkdPX0hP TUUvZCcKLQl9Ci1maQorCWZpCisJY2FyZ28gdXBkYXRlIC0tcGFja2FnZSBvcGVuc3NsLXN5cyAt LXByZWNpc2UgMC45LjU4Cit9CgpGcm9tIDVlYzVjODAyODRkM2JkNWVlMjBmMmZhYjA1ZWVmODQx N2YyNTRmYTEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206ID0/VVRGLTg/cT89QzQ9OTBv PUMzPUEwbj0yMFRyPUUxPUJBPUE3bj0yMEM9QzM9QjRuZz0yMERhbmg/PQogPGNvbmdkYW5ocXhA Z21haWwuY29tPgpEYXRlOiBTdW4sIDEyIEp1bCAyMDIwIDExOjE0OjUxICswNzAwClN1YmplY3Q6 IFtQQVRDSCA2MS82NV0gZml4dXAhIGV2b2x1dGlvbjogdXBkYXRlIHRvIDMuMzYuMy4KCi0tLQog Li4uL2V2b2x1dGlvbi9maWxlcy9kaXNhYmxlUnVudGltZVRlc3RzLmNtYWtlIHwgNDUgLS0tLS0t LS0tLS0tLS0tLS0tLQogc3JjcGtncy9ldm9sdXRpb24vZmlsZXMvaWNvbnYtZGV0ZWN0LmggICAg ICAgIHwgIDUgLS0tCiBzcmNwa2dzL2V2b2x1dGlvbi90ZW1wbGF0ZSAgICAgICAgICAgICAgICAg ICAgfCAzMSArKy0tLS0tLS0tLS0tCiAzIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwg NzcgZGVsZXRpb25zKC0pCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9ldm9sdXRpb24vZmls ZXMvZGlzYWJsZVJ1bnRpbWVUZXN0cy5jbWFrZQogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3Mv ZXZvbHV0aW9uL2ZpbGVzL2ljb252LWRldGVjdC5oCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9ldm9s dXRpb24vZmlsZXMvZGlzYWJsZVJ1bnRpbWVUZXN0cy5jbWFrZSBiL3NyY3BrZ3MvZXZvbHV0aW9u L2ZpbGVzL2Rpc2FibGVSdW50aW1lVGVzdHMuY21ha2UKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0 CmluZGV4IDhiZTU1YjQyMDcwLi4wMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL2V2b2x1dGlvbi9m aWxlcy9kaXNhYmxlUnVudGltZVRlc3RzLmNtYWtlCisrKyAvZGV2L251bGwKQEAgLTEsNDUgKzAs MCBAQAotIyBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCBieSBDTWFrZSBiZWNhdXNlIGl0IGRldGVj dGVkIFRSWV9SVU4oKSBjb21tYW5kcwotIyBpbiBjcm9zc2NvbXBpbGluZyBtb2RlLiBJdCB3aWxs IGJlIG92ZXJ3cml0dGVuIGJ5IHRoZSBuZXh0IENNYWtlIHJ1bi4KLSMgQ29weSBpdCB0byBhIHNh ZmUgbG9jYXRpb24sIHNldCB0aGUgdmFyaWFibGVzIHRvIGFwcHJvcHJpYXRlIHZhbHVlcwotIyBh bmQgdXNlIGl0IHRoZW4gdG8gcHJlc2V0IHRoZSBDTWFrZSBjYWNoZSAodXNpbmcgLUMpLgotCi0K LSMgX2NvcnJlY3RfaWNvbnZfRVhJVENPREUKLSMgICAgaW5kaWNhdGVzIHdoZXRoZXIgdGhlIGV4 ZWN1dGFibGUgd291bGQgaGF2ZSBiZWVuIGFibGUgdG8gcnVuIG9uIGl0cwotIyAgICB0YXJnZXQg cGxhdGZvcm0uIElmIHNvLCBzZXQgX2NvcnJlY3RfaWNvbnZfRVhJVENPREUgdG8KLSMgICAgdGhl IGV4aXQgY29kZSAoaW4gbWFueSBjYXNlcyAwIGZvciBzdWNjZXNzKSwgb3RoZXJ3aXNlIGVudGVy ICJGQUlMRURfVE9fUlVOIi4KLSMgVGhlIF9jb3JyZWN0X2ljb252X0NPTVBJTEVEIHZhcmlhYmxl IGhvbGRzIHRoZSBidWlsZCByZXN1bHQgZm9yIHRoaXMgVFJZX1JVTigpLgotIyAKLSMgU291cmNl IGZpbGUgICA6IC9idWlsZGRpci9ldm9sdXRpb24tZGF0YS1zZXJ2ZXItMy4yNi4wL2J1aWxkL0NN YWtlRmlsZXMvQ01ha2VUbXAvc3JjLmMKLSMgRXhlY3V0YWJsZSAgICA6IC9idWlsZGRpci9ldm9s dXRpb24tZGF0YS1zZXJ2ZXItMy4yNi4wL2J1aWxkL0NNYWtlRmlsZXMvY21UQ18zMTVlZS1fY29y cmVjdF9pY29udl9FWElUQ09ERQotIyBSdW4gYXJndW1lbnRzIDogCi0jICAgIENhbGxlZCBmcm9t OiBbMl0JL3Vzci9zaGFyZS9jbWFrZS0zLjkvTW9kdWxlcy9DaGVja0NTb3VyY2VSdW5zLmNtYWtl Ci0jICAgICAgICAgICAgICAgICBbMV0JL2J1aWxkZGlyL2V2b2x1dGlvbi1kYXRhLXNlcnZlci0z LjI2LjAvQ01ha2VMaXN0cy50eHQKLQotc2V0KCBfY29ycmVjdF9pY29udl9FWElUQ09ERSAKLSAg ICAgMAotICAgICBDQUNIRSBJTlRFUk5BTCAiUmVzdWx0IGZyb20gVFJZX1JVTiIgRk9SQ0UpCi1z ZXQoX2NvcnJlY3RfaWNvbnZfRVhJVENPREVfX1RSWVJVTl9PVVRQVVQKLSAgICAgMAotICAgICBD QUNIRSBJTlRFUk5BTCAiUmVzdWx0IGZyb20gVFJZX1JVTiIgRk9SQ0UpCi0KLQotIyBIQVZFX0xL U1RSRlRJTUVfRVhJVENPREUKLSMgICAgaW5kaWNhdGVzIHdoZXRoZXIgdGhlIGV4ZWN1dGFibGUg d291bGQgaGF2ZSBiZWVuIGFibGUgdG8gcnVuIG9uIGl0cwotIyAgICB0YXJnZXQgcGxhdGZvcm0u IElmIHNvLCBzZXQgSEFWRV9MS1NUUkZUSU1FX0VYSVRDT0RFIHRvCi0jICAgIHRoZSBleGl0IGNv ZGUgKGluIG1hbnkgY2FzZXMgMCBmb3Igc3VjY2VzcyksIG90aGVyd2lzZSBlbnRlciAiRkFJTEVE X1RPX1JVTiIuCi0jIFRoZSBIQVZFX0xLU1RSRlRJTUVfQ09NUElMRUQgdmFyaWFibGUgaG9sZHMg dGhlIGJ1aWxkIHJlc3VsdCBmb3IgdGhpcyBUUllfUlVOKCkuCi0jIAotIyBTb3VyY2UgZmlsZSAg IDogL2J1aWxkZGlyL2V2b2x1dGlvbi1kYXRhLXNlcnZlci0zLjI2LjAvYnVpbGQvQ01ha2VGaWxl cy9DTWFrZVRtcC9zcmMuYwotIyBFeGVjdXRhYmxlICAgIDogL2J1aWxkZGlyL2V2b2x1dGlvbi1k YXRhLXNlcnZlci0zLjI2LjAvYnVpbGQvQ01ha2VGaWxlcy9jbVRDX2QyODk3LUhBVkVfTEtTVFJG VElNRV9FWElUQ09ERQotIyBSdW4gYXJndW1lbnRzIDogCi0jICAgIENhbGxlZCBmcm9tOiBbMl0J L3Vzci9zaGFyZS9jbWFrZS0zLjkvTW9kdWxlcy9DaGVja0NTb3VyY2VSdW5zLmNtYWtlCi0jICAg ICAgICAgICAgICAgICBbMV0JL2J1aWxkZGlyL2V2b2x1dGlvbi1kYXRhLXNlcnZlci0zLjI2LjAv Q01ha2VMaXN0cy50eHQKLQotc2V0KCBIQVZFX0xLU1RSRlRJTUVfRVhJVENPREUgCi0gICAgIDAK LSAgICAgQ0FDSEUgSU5URVJOQUwgIlJlc3VsdCBmcm9tIFRSWV9SVU4iIEZPUkNFKQotc2V0KCBI QVZFX0xLU1RSRlRJTUVfRVhJVENPREVfX1RSWVJVTl9PVVRQVVQKLSAgICAgMAotICAgICBDQUNI RSBJTlRFUk5BTCAiUmVzdWx0IGZyb20gVFJZX1JVTiIgRk9SQ0UpCi0KZGlmZiAtLWdpdCBhL3Ny Y3BrZ3MvZXZvbHV0aW9uL2ZpbGVzL2ljb252LWRldGVjdC5oIGIvc3JjcGtncy9ldm9sdXRpb24v ZmlsZXMvaWNvbnYtZGV0ZWN0LmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDQ2ZjQ3 NmQ1YmM5Li4wMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL2V2b2x1dGlvbi9maWxlcy9pY29udi1k ZXRlY3QuaAorKysgL2Rldi9udWxsCkBAIC0xLDUgKzAsMCBAQAotLyogVGhpcyBpcyBhbiBhdXRv LWdlbmVyYXRlZCBoZWFkZXIsIERPIE5PVCBFRElUISAqLwotCi0jZGVmaW5lIElDT05WX0lTT19E X0ZPUk1BVCAiaXNvLSVkLSVkIgotI2RlZmluZSBJQ09OVl9JU09fU19GT1JNQVQgImlzby0lZC0l cyIKLSNkZWZpbmUgSUNPTlZfMTA2NDYgImlzby0xMDY0NiIKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mv ZXZvbHV0aW9uL3RlbXBsYXRlIGIvc3JjcGtncy9ldm9sdXRpb24vdGVtcGxhdGUKaW5kZXggZDk1 YzA3ZWI3MmMuLjlmMzMwNzhjZjFlIDEwMDY0NAotLS0gYS9zcmNwa2dzL2V2b2x1dGlvbi90ZW1w bGF0ZQorKysgYi9zcmNwa2dzL2V2b2x1dGlvbi90ZW1wbGF0ZQpAQCAtNSwxMiArNSwxMiBAQCBy ZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1jbWFrZQogY29uZmlndXJlX2FyZ3M9Ii1ERU5BQkxFX0FV VE9BUj1PRkYgLURFTkFCTEVfTElCQ1JZUFRVST1PRkYgLURFTkFCTEVfR1RLU1BFTEw9T0ZGCiAg LURFTkFCTEVfVEVYVF9ISUdITElHSFQ9T0ZGIC1ERU5BQkxFX1BTVF9JTVBPUlQ9T0ZGCi0gLURF TkFCTEVfV0VBVEhFUj0kKHZvcHRfaWYgZ2lyIE9OIE9GRikiCisgLURFTkFCTEVfV0VBVEhFUj1P TiIKIGhvc3RtYWtlZGVwZW5kcz0iZ25vbWUtZG9jLXV0aWxzIGdvYmplY3QtaW50cm9zcGVjdGlv biBpbnRsdG9vbCBpdHN0b29sCi0gcGtnLWNvbmZpZyIKKyBwa2ctY29uZmlnIGdsaWItZGV2ZWwi CiBtYWtlZGVwZW5kcz0iTmV0d29ya01hbmFnZXItZGV2ZWwgY2x1dHRlci1ndGstZGV2ZWwgZW5j aGFudDItZGV2ZWwKICBldm9sdXRpb24tZGF0YS1zZXJ2ZXItZGV2ZWwgZ3NwZWxsLWRldmVsIGd0 a2h0bWwtZGV2ZWwgbGliY2FuYmVycmEtZGV2ZWwKLSAkKHZvcHRfaWYgZ2lyIGxpYmd3ZWF0aGVy LWRldmVsKSBsaWJub3RpZnktZGV2ZWwgd2Via2l0Mmd0ay1kZXZlbCB5dG5lZi1kZXZlbAorIGxp Ymd3ZWF0aGVyLWRldmVsIGxpYm5vdGlmeS1kZXZlbCB3ZWJraXQyZ3RrLWRldmVsIHl0bmVmLWRl dmVsCiAgZ25vbWUtZGVza3RvcC1kZXZlbCIKIGRlcGVuZHM9Imdub21lLWtleXJpbmciCiBzaG9y dF9kZXNjPSJJbnRlZ3JhdGVkIG1haWwsIGFkZHJlc3Nib29rIGFuZCBjYWxlbmRhcmluZyBmb3Ig R05PTUUiCkBAIC0yNCwzMCArMjQsNyBAQCBzaGxpYl9wcm92aWRlcz0ibGliZXZvbHV0aW9uLWNh bGVuZGFyLnNvIGxpYmV2b2x1dGlvbi11dGlsLnNvIGxpYmVtYWlsLWVuZ2luZS5zbwogIGxpYmV2 b2x1dGlvbi1tYWlsLnNvIGxpYmV2b2x1dGlvbi1zaGVsbC5zbyIKIAogYnVpbGRfb3B0aW9ucz0i Z2lyIgotaWYgWyAteiAiJENST1NTX0JVSUxEIiBdOyB0aGVuCi0JYnVpbGRfb3B0aW9uc19kZWZh dWx0PSJnaXIiCi1lbHNlCi0JaG9zdG1ha2VkZXBlbmRzKz0iIGdsaWItZGV2ZWwiCi1maQotCi0j IGNtYWtlIHBlcmZvbXJtcyAyIGNoZWNrcyB1c2luZyBiaW5hcnkgcnVudGltZSwgYWJvdXQgaWNv bnYgYW5kIHNmcnRpbWUuCi0jIG11c2wgKDEuMS4xNikgZG9lcyBub3Qgc3VwcG9ydCAiSVNPLTIw MjItSlAiIGVuY29kaW5nIChzZWUgaXRzIHJvYWRtYXApLAotIyBhbHRob3VnaCBldm9sdXRpb24t ZGF0YS1zZXJ2ZXIgaXMgZmluZSB3aXRoIG11c2wuCi0jIElmIGNyb3NzYnVpbGQsIGNtYWtlIGxl dCBkaXNhYmxpbmcgcnVudGltZSBjaGVja3MgdmlhIHNwZWNpZmljIGRpcmVjdGl2ZXMuCi0jIHRl c3QgaWNvbnYtZGV0ZWN0LmMgYWxzbyBnZW5lcmF0ZXMgaWNvbnYtZGV0ZWN0LmggdGhhdCBpcyBy ZXF1aXJlZCBmb3IgYnVpbGQuCi0jIFNvIGNvbXBsZXRseSBkaXNhYmxlIHRlc3QgZnJvbSBpY29u di1kZXRlY3QuYyAoY21ha2UucGF0Y2ggZmlsZSkgYW5kCi0jIHVzZSBhIGNtYWtlIGNhY2hlIGZp bGUgb24gY3Jvc3NidWlsZCB0byBkaXNhYmxlIHNmcnRpbWUgcnVubmluZyB0ZXN0LgotaWYgWyAi JENST1NTX0JVSUxEIiBdOyB0aGVuCi0JY29uZmlndXJlX2FyZ3MrPSIgLUMgZGlzYWJsZVJ1bnRp bWVUZXN0cy5jbWFrZSIKLWZpCi0KLXByZV9jb25maWd1cmUoKSB7Ci0JbWtkaXIgLXAgYnVpbGQK LQljcCAke0ZJTEVTRElSfS9pY29udi1kZXRlY3QuaCAke3dya3NyY30vYnVpbGQvLgotCWlmIFsg IiRDUk9TU19CVUlMRCIgXTsgdGhlbgotCQljcCAke0ZJTEVTRElSfS9kaXNhYmxlUnVudGltZVRl c3RzLmNtYWtlICR7d3Jrc3JjfS9idWlsZC8uCi0JZmkKLX0KK2J1aWxkX29wdGlvbnNfZGVmYXVs dD0iZ2lyIgogCiBldm9sdXRpb24tZGV2ZWxfcGFja2FnZSgpIHsKIAlkZXBlbmRzPSJ3ZWJraXQy Z3RrLWRldmVsIGd0ayszLWRldmVsIGxpYmdsaWItZGV2ZWwgZXZvbHV0aW9uLWRhdGEtc2VydmVy LWRldmVsCgpGcm9tIDgyYzIzOWZkMjc4NjJkN2FiMTNlZmI2NTRjZjcyOGE1MGZjZDMyOTggTW9u IFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206ID0/VVRGLTg/cT89QzQ9OTBvPUMzPUEwbj0yMFRy PUUxPUJBPUE3bj0yMEM9QzM9QjRuZz0yMERhbmg/PQogPGNvbmdkYW5ocXhAZ21haWwuY29tPgpE YXRlOiBTdW4sIDEyIEp1bCAyMDIwIDEzOjM1OjU3ICswNzAwClN1YmplY3Q6IFtQQVRDSCA2Mi82 NV0gZml4dXAhIGZpeHVwISBldm9sdXRpb24tZGF0YS1zZXJ2ZXI6IHNwbGl0IHZhbGEgYnVpbGQK IG9wdGlvbiBmcm9tIGdpcgoKLS0tCiAuLi4vcGF0Y2hlcy9uby1jbGVhci1sZGZsYWdzLnBhdGNo ICAgICAgICAgICAgICAgICAgICB8IDExICsrKysrKysrKysrCiBzcmNwa2dzL2V2b2x1dGlvbi1k YXRhLXNlcnZlci90ZW1wbGF0ZSAgICAgICAgICAgICAgICB8ICA4ICsrKysrLS0tCiAyIGZpbGVz IGNoYW5nZWQsIDE2IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAx MDA2NDQgc3JjcGtncy9ldm9sdXRpb24tZGF0YS1zZXJ2ZXIvcGF0Y2hlcy9uby1jbGVhci1sZGZs YWdzLnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9ldm9sdXRpb24tZGF0YS1zZXJ2ZXIvcGF0 Y2hlcy9uby1jbGVhci1sZGZsYWdzLnBhdGNoIGIvc3JjcGtncy9ldm9sdXRpb24tZGF0YS1zZXJ2 ZXIvcGF0Y2hlcy9uby1jbGVhci1sZGZsYWdzLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu ZGV4IDAwMDAwMDAwMDAwLi5iNTYyZWYzNmYzNgotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3Mv ZXZvbHV0aW9uLWRhdGEtc2VydmVyL3BhdGNoZXMvbm8tY2xlYXItbGRmbGFncy5wYXRjaApAQCAt MCwwICsxLDExIEBACistLS0gY21ha2UvbW9kdWxlcy9HT2JqZWN0SW50cm9zcGVjdGlvbi5jbWFr ZS5vcmlnCTIwMjAtMDctMDYgMjI6Mjk6NTEuNzk5MjkxMDgyICswNzAwCisrKysgY21ha2UvbW9k dWxlcy9HT2JqZWN0SW50cm9zcGVjdGlvbi5jbWFrZQkyMDIwLTA3LTA2IDIyOjI5OjU4Ljc5ODM3 MTExNyArMDcwMAorQEAgLTEyMiw3ICsxMjIsNyBAQAorIAkJZmlsZShXUklURSAke0NNQUtFX0NV UlJFTlRfQklOQVJZX0RJUn0vJHtfZ2lyX25hbWV9X2ZpbGVzICIke19naXJfZmlsZXN9IikKKyAK KyAJCWFkZF9jdXN0b21fY29tbWFuZCgKKy0JCQlDT01NQU5EICR7Q01BS0VfQ09NTUFORH0gLUUg ZW52ICJDQz0nJHtDTUFLRV9DX0NPTVBJTEVSfSciIExERkxBR1M9CisrCQkJQ09NTUFORCAke0NN QUtFX0NPTU1BTkR9IC1FIGVudiAiQ0M9JyR7Q01BS0VfQ19DT01QSUxFUn0nIgorIAkJCQkke0lO VFJPU1BFQ1RJT05fU0NBTk5FUl9FTlZ9CisgCQkJCSR7R19JUl9TQ0FOTkVSfQorIAkJCQkke0lO VFJPU1BFQ1RJT05fU0NBTk5FUl9BUkdTfQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9ldm9sdXRpb24t ZGF0YS1zZXJ2ZXIvdGVtcGxhdGUgYi9zcmNwa2dzL2V2b2x1dGlvbi1kYXRhLXNlcnZlci90ZW1w bGF0ZQppbmRleCAzNjM5ZTFiMTEyMC4uMDgwMTc2MTU1YTkgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mv ZXZvbHV0aW9uLWRhdGEtc2VydmVyL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZXZvbHV0aW9uLWRh dGEtc2VydmVyL3RlbXBsYXRlCkBAIC0zMCwxMiArMzAsMTQgQEAgZmkKIAogZG9fY2hlY2soKSB7 CiAJY2QgYnVpbGQKLQkjIFRPRE8gVGhpcyB0ZXN0IGlzIHByb2JsZW1hdGljLCBmaXJzdCBydW4g dXN1YWxseSBmYWlsCisJIyBUT0RPIFRoaXMgdGVzdCBpcyBwcm9ibGVtYXRpYywgZmFpbCBpbnRl cm1pdHRlbnQsIGVzcGVjaWFsbHkgb24KKwkjIGZpcnN0IGNsZWFuIHJ1bi4KIAkjIFNpZ25pZnkg c29tZXRoaW5nIHdyb25nIHdpdGggZXZvbHV0aW9uLWRhdGEtc2VydmVyIG9uIGZpcnN0IHJ1bgot CWN0ZXN0IC1SIHRlc3QtYm9vay1jbGllbnQtY3VzdG9tLXN1bW1hcnkgfHwgdHJ1ZQogCSMgbWFr ZSB0ZXN0IHJ1biBjdGVzdCAtLWZvcmNlLW5ldy1jdGVzdC1wcm9jZXNzIHdoaWNoIGlzIHByb2Js ZW1hdGljCisJIyBtYWtlIHRlc3QgcnVuIGN0ZXN0IC0tZm9yY2UtbmV3LWN0ZXN0LXByb2Nlc3Mg d2hpY2ggaXMgcHJvYmxlbWF0aWMKKwkjIG5vb25lIHNob3VsZCBydW4gbXVsdGlwbGUgaW5zdGFu Y2Ugb2YgZXZvbHV0aW9uLWRhdGEtc2VydmVyIGlybC4KIAkjIG5vb25lIHNob3VsZCBydW4gbXVs dGlwbGUgaW5zdGFuY2Ugb2YgZXZvbHV0aW9uLWRhdGEtc2VydmVyIGlybC4KLQljdGVzdAorCWN0 ZXN0IC1FIHRlc3QtYm9vay1jbGllbnQtY3VzdG9tLXN1bW1hcnkKIH0KIAogcG9zdF9pbnN0YWxs KCkgewoKRnJvbSBhM2Y3MzJhYTRlYmZiOTQwYTk5OWI4NTE1MTIzMmIxYTQ3MWNiOThmIE1vbiBT ZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/PUM0PTkwbz1DMz1BMG49MjBUcj1F MT1CQT1BN249MjBDPUMzPUI0bmc9MjBEYW5oPz0KIDxjb25nZGFuaHF4QGdtYWlsLmNvbT4KRGF0 ZTogU3VuLCAxMiBKdWwgMjAyMCAxMzozNjo0OCArMDcwMApTdWJqZWN0OiBbUEFUQ0ggNjMvNjVd IGZpeHVwISBhdC1zcGkyLWF0azogdXBkYXRlIHRvIDIuMzQuMi4KCi0tLQogc3JjcGtncy9hdC1z cGkyLWF0ay90ZW1wbGF0ZSB8IDQgKysrKwogMSBmaWxlIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygr KQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvYXQtc3BpMi1hdGsvdGVtcGxhdGUgYi9zcmNwa2dzL2F0 LXNwaTItYXRrL3RlbXBsYXRlCmluZGV4IGFhN2I4ODM5YzlmLi41OTFjYzRhYWZhNCAxMDA2NDQK LS0tIGEvc3JjcGtncy9hdC1zcGkyLWF0ay90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2F0LXNwaTIt YXRrL3RlbXBsYXRlCkBAIC0xMiw2ICsxMiwxMCBAQCBob21lcGFnZT0iaHR0cDovL3d3dy5nbm9t ZS5vcmciCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9 LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCiBjaGVja3N1bT05MDEzMjNjZWUwZWVmMDVj MDFlYzRkZWUwNmM3MDFhZWVjYTgxYTMxNGE3ZDYwMjE2ZmEzNjMwMDVlMjdmNGYwCiAKK2RvX2No ZWNrKCkgeworCTogd2FudHMgZGJ1cworfQorCiBhdC1zcGkyLWF0ay1kZXZlbF9wYWNrYWdlKCkg ewogCWRlcGVuZHM9IiR7bWFrZWRlcGVuZHN9ICR7c291cmNlcGtnfT49JHt2ZXJzaW9ufV8ke3Jl dmlzaW9ufSIKIAlzaG9ydF9kZXNjKz0iIC0gZGV2ZWxvcG1lbnQgZmlsZXMiCgpGcm9tIDc5YWY0 MmNiNTVlODhlZWU2OWJkM2ZiOWU0ZDVhNTJjMzcyOTdlYWUgTW9uIFNlcCAxNyAwMDowMDowMCAy MDAxCkZyb206ID0/VVRGLTg/cT89QzQ9OTBvPUMzPUEwbj0yMFRyPUUxPUJBPUE3bj0yMEM9QzM9 QjRuZz0yMERhbmg/PQogPGNvbmdkYW5ocXhAZ21haWwuY29tPgpEYXRlOiBTdW4sIDEyIEp1bCAy MDIwIDEzOjM3OjI0ICswNzAwClN1YmplY3Q6IFtQQVRDSCA2NC82NV0gZml4dXAhIGF0LXNwaTIt Y29yZTogdXBkYXRlIHRvIDIuMzYuMC4KCi0tLQogc3JjcGtncy9hdC1zcGkyLWNvcmUvdGVtcGxh dGUgfCA0ICsrKysKIDEgZmlsZSBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQg YS9zcmNwa2dzL2F0LXNwaTItY29yZS90ZW1wbGF0ZSBiL3NyY3BrZ3MvYXQtc3BpMi1jb3JlL3Rl bXBsYXRlCmluZGV4IGZiNzk5YWY3ZTUyLi5iZWVlNTc4ZDAxNSAxMDA2NDQKLS0tIGEvc3JjcGtn cy9hdC1zcGkyLWNvcmUvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9hdC1zcGkyLWNvcmUvdGVtcGxh dGUKQEAgLTE3LDYgKzE3LDEwIEBAIGNoZWNrc3VtPTg4ZGE1N2RlMGE3ZTNjNjBiYzM0MWE5NzRh ODBmZGJhMDkxNjEyZGIzNTQ3YzQxMGQ2ZGVhYjAzOWNhNWMwNWEKIGJ1aWxkX29wdGlvbnM9Imdp ciIKIGJ1aWxkX29wdGlvbnNfZGVmYXVsdD0iZ2lyIgogCitkb19jaGVjaygpIHsKKwk6ICJ3YW50 cyBEQnVzPyIKK30KKwogcG9zdF9pbnN0YWxsKCkgewogCXJtIC1yZiAke0RFU1RESVJ9L3Vzci9s aWIvc3lzdGVtZAogfQoKRnJvbSBhMTgxNmE4NjU2ZWE5OTM5ZjFmYmQzYWEyODMxNjc1YjhhZGY1 MTU4IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/PUM0PTkwbz1DMz1B MG49MjBUcj1FMT1CQT1BN249MjBDPUMzPUI0bmc9MjBEYW5oPz0KIDxjb25nZGFuaHF4QGdtYWls LmNvbT4KRGF0ZTogU3VuLCAxMiBKdWwgMjAyMCAxNTo1MTo1NiArMDcwMApTdWJqZWN0OiBbUEFU Q0ggNjUvNjVdIGZpeHVwISB0b3RlbTogcmVidWlsZCBhZ2FpbnN0IGxpYmdub21lLWRlc2t0b3At My5zby4xOQoKW2NpIHNraXBdCi0tLQogc3JjcGtncy90b3RlbS90ZW1wbGF0ZSB8IDQgKysrKwog MSBmaWxlIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvdG90 ZW0vdGVtcGxhdGUgYi9zcmNwa2dzL3RvdGVtL3RlbXBsYXRlCmluZGV4IGU0MTg2NjMyMTUzLi5l N2RiOTcwMmMzOCAxMDA2NDQKLS0tIGEvc3JjcGtncy90b3RlbS90ZW1wbGF0ZQorKysgYi9zcmNw a2dzL3RvdGVtL3RlbXBsYXRlCkBAIC0zMiw2ICszMiwxMCBAQCBkaXNhYmxlX3BhcmFsbGVsX2J1 aWxkPXllcwogYnVpbGRfb3B0aW9ucz0iZ2lyIHZhbGEiCiBidWlsZF9vcHRpb25zX2RlZmF1bHQ9 ImdpciB2YWxhIgogCitkb19jaGVjaygpIHsKKwk6IHNraXAKK30KKwogbGlidG90ZW1fcGFja2Fn ZSgpIHsKIAlzaG9ydF9kZXNjKz0iIC0gcnVudGltZSBsaWJyYXJ5IgogCXBrZ19pbnN0YWxsKCkg ewo= --===============3692285257923198848==--